1543247131084121630371745129225883904491648357991469656784037205108742182269514993644933027823908752646246228611381238044174520516668897050658602618726921948841083749159082102695911257434898247414827700409316926683136455426910791095698739302252883130988703857229954943396729926277357260415578738241094953558704739762375630986388004169253036826996113669525553186395175284298725596294372627021205169355049935684079401445148160935795688424744446228818219082927852019773839513880956044096892795639334367851419979313712895330880879311404938783578981374131614925054779439714903138197673477736031327227624166964264112525771127769424787836585289905997315056798918043271304413798968861182730278999123307247404048604771888578325521708309864055222506766923763257591346113558000164234671472239957248963793795987659319796806403344313350801425454487107619156102194607726558919419240466621308070912611409950106736796212351412443425003708416993445740280868985686622089242686918260778819476992973845251525423811130427221372520671513108590379194376827569110985398594763530549367362696258623606397580542111421978105745286827248757598226933345188659986311231418824762938161563645559761025328092496937848150124671953757829526146255224112192966117774303301226474311407834822800199769051844509748147453763884993925623843672383624839126918572578769498627245651255179501584930798894974906648849247223207822544008252225615954965621635183643761781133248715901955216186531148031884854566993878514842967196007740395445358081823242539739995278222652685313181629892183785783129038393145775086545717477326825918492166327886555937836653697919973158631786638108348475999669557255331768147499121355731098422109594595936597882956142714073627941012951507122794346790192282453554709545534173700215395187551264223816548513839674130082162584712242814804944455357377153231933157673466885786898554738060347883613199191178395199694582901605414278585849678236696694324356722792141858873131535594695444057754905091692567216141590576100131338750407613388692800653779654743761262985793826503788610021748850358457685217413526535889555765644867109638293526429405237832119917709628048892196818222485103685536292364978960036263829641373461949554284543804428295233339722282901326451119250895131693430666598985504788536108374436263259421159378561580644353226429300490175181527551710399254661734789369353205923130074198320940655246373991232564241392824876600357176864201406239681919652023833720115660449580827851373823491214774179912151259510865933526940518129966593347236671153816250326179254464081010690655057877108780089829213540819687001817260482186714292225482144042575461768981282685850186312035212713218714151926832429082205932496711056475442903929581224217860186919702586618072905763497026834020658933577046415387648763944071801297678154289578860370814894476117968217444213171901687954669544400217167928841214199155594458157592843510597394564743890851212185575588247853058519883346188084468935882095983802518562491805187515093363295225943066394341681312307567353253440536760016830520295652224182985697263210924472905196061381348378472109277772852062891641124683818416610824893610310132671905270028336014614479680257388192479946147014768319544353973688187116660609478652278313425098305554582312746856200757863258158832173076374166472241142921914337028208912327681778116757404734793666891605378827574716163282788693158439611760063307956257189301270851446099757799990514880126532153061923533714705548554118496139451090748194701493208662452015193141088884627541469127688034818834748372242298439529750902944679133747091156097150884364135369771764583766239082759768742114993898284795483251961849538753752841973547137134685747856810585787504139177918514130070952277672751218945498911964802261946675619514613040117112936191925771927190271538767676027756435595808981980037631888221039557565163076588362413325925868695465262017611240445546409996635445454258743410503987494904717438667971810095179088571410094852741347369246879683227119287043804777682590153032465737823254466868341005409452823131277281474346899865080144983944030422043593891872084372379665074000426193589984664078437632751393551302972765001317124239657331116897665721638184613281289206308117159541881731491418715113112635853922726833305586837964685209810811819161639187400107378492232255783797196401315041204527478156322640727306815511130425490997427971445423405392448491539366691386909167252241990241348324565749161134998365396663301499168348710522859325174558504267979132565224421131212223927120321672836231958431500085385502638843662075808611193816004696523482215834789514331931667535563318629144228084133757013238721792464524938125276397762982580557655823350334400334516327838474237765644153053691870665707106755102487790753702309423145323731924436575154484131598663621446623264536939881167460177987762845440818897962491101915181688120468382232410495166111649281519151223954380361262377646515914959414824127312914602068497294954309715536104381127830412974896861359367172941171065244336379781505851696252283577094441441376687571422339423104624955198765269538873683357224255045992910555682333967554150521734222815026114262417379001679916423946503301893724531017871547912072439807848008222376253651277415042553364831162453746892570565824670601764945666579084430977583011520655931470328179741035152773987735333458846454716997587281146892462245863106634467499189608373845122437673646406534124315553329153221784413645651138153877666711945575590345915917398795879500393943893338305585036716566900623671227338461102640606654678864289505583157529435670387072916183607645502542609363652286178973627034332029922738832789991132166178437704319088838428959139404796358291734914599823829645550521422041296452711189827745231302840326672338327653428443278363299182147449624063792684664044376819561677096896703374810883053183233568061