378286092183363714835917389258826964285590891672887212253563668920472248905646176625499436735825322261612609297015075523361521527621341714541143351468194572461510435198970198403911522119941856627944236717699189165935222304128604886492090266287971283252189484777935878499771839265942693618404482229698731724763229444073226277978784008600471567377173758664076660177754845715323038905376356209135702056507599562248531723519151796615964520878416023363975116564760220142355026877268237551013894984840825617192449223498601655617160098579940033608607298113129644153757926476865255393232328746189470227211405658899941150403676299795952211432575326844583615142375219923588755329112555860781424935235641941832335529107830813259579215251252302797522872212097350621446186723578334962952262206138729120578543682323749502372896375824290554701728439473333600939210102056801886158061168471351901339596129589498301644830608220856336931912449823453580613136744527299573807553623284854132676843532743580330617359380741979193272275518645323234591428286783852567577414652133356066474040333172451851603259054451151350184832974046979402797311721840876263043854525420341027272576098625703278238034684727536754965246478248662697121676691239224520654231849420120647075251484371559661720714162875533360575157112184135523785360242691309758489515350497556308208971051373708380192625273170553837542649669449807214176288147060980269243364633351161127475476452529495630289155245757708623829787332730488927176645454133576707525873321445238188071192442837792591814352685466213276690592625872733438614444487276069466994112098763298721345247464661192009427568023349248519899499224172635598757397380267843963390829369611903337931952302989629661205180885292772404657396715791292099729205676532021300495625653478258497699818235458132835977511548365748450824975256391844942154354606980266095864344043188496574783126088792655655113317340564926980870376762257567493519561254307881186785226389591043434280523942932544184383313192996343532794725498452753956807321913690893620889304913576486810461179695764880378356593050994083034779154873102133345816887047397182859675381352244284790793968481530687845982389697535166888856241745788514472477338650641759314397931475542299714655757918770722306646267577087842450149214161226379499144162955587577541242804106667277902234889637454347079923239245973588120976749928685101770622688197253130823318084119122212784249728629665717655419367685143311265769878362266526157709326513617250341089241029573550953575516659437058665426154442724680184876131681728169027949203440695037737239057171736095376060185800027647257914196523664476456745427491156254685342845169740953301191956666090029466792235084448854221618721546422358262317523793228762259526012852594750715433288899838708984345521982446247013592140561182663433688941018460165233259281224558187441286382888859848254504915207355236876920833187955577793833877613235167052519789339071107081483899263914735699977777543698934897174940927637024987427828036402765913868986302627647920126822875124459438329538314943733695183373399111921823588653021460963791517550618916368544516710815325131539407957630762293962593885851393145515839677805681689782916810631765336932171720356172860367104951442264797707507253273076872316173339196867897199441138128992930250040908981555260932054213542548365739705920709850672748336597474925226616785311029947421413269529117794967605120127083533939248345805893026217956451622656953668751546524401915421147412773617253713359516298639575915176426160453152206640616410822254437247425443093263875871730433596598694714424847991159348532989219725844953058227947568061763095671642509091002466841313629094610682680765461542580064554062759036806116435113882951846155028600402251966536938879352256475208567638412659719123831103431849533514342468529487899175083135779604644358203141743887645631734923565159645079249284325901196841438075655662898446076217773769219027165641521176254149138228050723322529124283717618249107435138392906326798565979480286118045887195107160212814225552523237126743071691752210684652435349722495311231067525702211066936158319620988711049357031187164628352723242647743704864878210337767294374684085296528826802664651387705291359531770119277257724590890285073497676670182856191947185193711698995593911167007587579874115014386396194080503550408986329535877576793163636893449565584841833148039658272699793541675656217194978314974477931791953580832393461985825799072006582923695395598606622025681980837988423206532977825957851066832428958483695842333168038947576814616744296107581895497268742925021419211960241060752613265856688054478568426269967892316850494918827245641688453862671638637422267897962212810682583536932300076971783123656831367294834805183754251231939128057847830361415605044224301617103685988494812381893943613114685081623716267443499763998512769761032718476591439875024273114766766156425329543497138354603523388199153368761622748531454114578789711286188844414219019047695376442237579992850449240886420346642588986279660434407095154113931689732298276689902170349678794902171222483880568715115323664017903129879798137642927010324065228939642816255559889681181909498101585302199491648880822073274280828621991767969778297164980247836734637358800569203991763327049676533976272124427585817807692698081364492289472321857698483806434796387825318140394350316879342903311486606583285380226980812954322827793125856929966745949702450062983977228566792151372016313480733835544541999523794270854978423709893332555150710129035959830351448736263712668074818329410248277183213179416475277867959606611826295783202247165291205121432592642297620833771651827190751100574669083367639556901243277112481367241452652791243409762853708190777985895128662062413856946493769859519978901691375639579236471091562222163312729153868144644645059492385546234