16366415934032039225283397012451550378328220948621183686154502494779811420889542298991331741240392728922283739145662864533558316092813817015117428743984713724419467316674665987716878043892797299635723431087471648439928790184872499866182745176938813555884616363654638070683194242789344423839730921218870527798137906694384151242347185714773880059771551262333929192764178431191863243366153135066746161995527979012275947118164588540402851562863462161832480852688785602322238733651723769666734103665814403742145976259751268967022851583547593929220570566471606692639299524992809184831229084538467354130969724349375293282722199652420496133133726839449994998838671849904692684451793336016911773822038459209338970999088426091143915791779595752954075914401632009410512829502475466928152454735835582515649073248794585777737195701774995227209195421791420173034492981129158477114018183648583786648099956617717491666599778618096686427273150271062972642018166491108832926399839590734862735897519643373961662388580431286433343920260194147822295438332486615669317181982384481904774138961573946724616552341778544681574774439187294688263658938398632927132578319371753518515743405203828362124385039488208270752451161370996215445936286224043881866906754830222663896376189743779845913753396927865575385794201712238827632221453724113169530313889383189441176761825029123916213927664399194373418585856338098728654433707047133041225127786952709220245271292712204787525293250463392917678833114862207654312228504355537363666507922193168543124818641747666267435398101351946671885618837503179826356955474448773695615785478459653753235608970259688621435925167309384740077711731820026685146148183078054471923277596978889131173049311147442032149040115471463779887636540941471715890834244597938033243356867568907991010239339517393835577140513721158459390614010934744135864131511899566425965399259107972698634472632467970832298045813543812651137343515184559678453574267682555073013210629394585543861006063246360182297978940431761351445366564385929228136221485590317567926688987323713358321735244013124944441327003688146995201623428897139246936267124595787036109634357631071362313757626851040481164279088287678558287112213857701196896242475881153228399352643601734495500473769771248846625111187246911174755168606111281497469144357215253131342864647538007832286793155593295357642646136783555336625316813140934782889652157331832652921435355303561323728257276088641168177209892899839331115161277677986410884532207419519839628714525673114739473481733318018807147388168612746240963268307429043597788471682093591572747693272681306728152211425199867223683733989335335593837867537794493787740453195194769336001530527449354972668723649240385529590927397380325879525464645427768906379467128745164986105677357988602328474945986562745254256224051894499950727360737644146446707768173858458451871893640156428137940222089371357745783744466773867291867260619048662899293505117659710547631795681193681106333041212038513681691903980795869119827264954419926320581364900666169862333871765680518292970579796677627019094844782251228380774852281689763832841425422275822762755631238379868102184842673850971710126212659995959828422695986451700459384333856439816413389627744881222847674463979335843807866343834578431662882277559469690955843786599954442138841532398275094572271497051771487914529190585881633447054704996434464823738239906159947746314369621438495215771021062937736486773129221425876002328389584916397766027588573983299311955901951295498482384122696945360730112269143124781263134678144574403621131360157053908262401395296710816051402823609609079832957651666356217392534009687395065977202213293911695632523338169174951247944935559972416688899311288157530013996141311876913876749061233960386312717144500771537013800308789452353531369185060792752571991023293583252690410583066352212363496069157104440107765899963417823609223270613088393140892886525722142692471393954409134329738226190586469325451989369836267138728283382242556772650434233777651563562578604773684777716563697988422533559462941147962303556624148706497621374354303711052825906361319448061385264878290891989857414900619209095253826042123335788708487659897544218980619983981694374852564572861357350723367527990384937901502999964246554965878947149198252722769697689426392327520489952234329921767120383942474998405709137324742321573446592189765054796769146028767863277429234127904601258680546953936798089559285359461946921893787826360898780322523891599903079842559431632468886916378496656852888470801469609487293953373684082375590512493228703284421994810531515908866126578349086944569964962102693053569232241510429575483035574456371849627181951893176470315838863238056813420564246044486918046465881410548988021146832047253795778426782355699105949816835519510537195192535782666609426808741271881282184196394504047779287352557521218868657577235780737955291593163336697977348128361887516735465218257825766730854386099075502817408133521077012410799370555043693828890419960142183579815799588913958858152652528968547681873388019578672889110116989314812947034126332619587278251341056190544839282657519285672559523538819732784911358016199873838083686680267330934992759218428493105755907088266264796330946355280548850643909852797606845824916922352594482373764904911774562967741709692682258224095362254205804599910251056726842391566727614951356920247093745990741694196109272050806589741759778749916759233532519268388539178591988489414548201962979829241620635053988474676720513879060453848506543998576681175837931822412466613202112326797667746240358071535459681444571223214099521231444629831848688301458350264539669213431194843634259853953941349826328856723376698385447975395794414976267671701691558165373130144623608598594949098817989192797950936744003594507648665472951853083387857857219900127788264129144397960591927793046760607772603610504939