482244747482555937583509901894128147791982191599122141190087360936498218773412924905778061193337763626979266430903863217592162437788861472044648052678482191809803266753224151922958418831925296844594916219208017465619944601283704633644665216852433886684826019341693168084049406227442164255045145074237123469370474878759448699112269879135234834891373082551063116368109259034193783652149359747351363941163475866613124714344685408465237508574458470112862718669692336590582376566749179702325323080715722460178927948659175644615137314483336776749597533304453930246504044356182433136235577998685829768218658984792326199831838125113042856282937659894309550981389474029204971824941970555295616179785817825519071929725712445055446582557421344171015285643746138131478662528841936323667614537018131787555636311819297946747863874781253952804576342781717845361946477968779574484012458252402908985417838618445832155862304457184453665512962455416965086796500706556584931978912844314425450827106298705164683097770922575592826865821662477925983553249358944948041206244612725689919830569534235212373110889842103886666334244305111296367851575901574164864378130371998256483822726123922422265385455060458313263555992281025323517823758236534919117316852254478589936546809194684491762194041237349974438088797370177211861655257268485859611267426522143409287129235632984774864811845551929751878164713212736110167065913345966789352227206659414126791683884058982363832489757517838452464078324044247344112014975724533636497570898214645286386878075412355104075699248211024310963590464605239843247875911624728425836862796211549398669871157497919692291968663092529115209552565964116678650908863391031290184467074415657811165357007619678511216793356062937419509899570162308115931054315335036996096311059925839199595358773972157913752525922564468480449393341623483774605498384857622685419263089308253393893263300437704503798797511931672537626870756692565003174732368080621650277884437686838743951867810130768791774614819419456237568590105513951142198855776443554978379249175139669916373455472866613046537905444445866389174047331868325545461613445223667216581488386973585346936294961637576452698337057787626559059015722694613115916623226137519040067593581080371827122582162131140086834758236331280840923264430051783783388878624206024951518308590792726411304246216772944323469545213831354726950270096819189388118467817709162105751928334734842205854085913838606483673484103624973147329577439461998223567889929093377463383992394689541422291516792666326189577382765156542589972204894232057463787916667334511285187175672347634868561416104609201534752316294129436320343356374711560542355528419807495765501418192618042248850743863145108651861923176877633118865408394731194810569464888367960053264934297220519323391483033440567380881324768359851561250279777346811829142796321074969435651481129834964733824799249628558627673460771991399569506732148788616259188151711291424353644280013953036168293373713260326807848302663256527139779835200565053696122659258905955592811174086227786375631008399687013324541142196319982995294271778340922582675801014835762774024254148120454212037345983591134753094077684130384824316934872077957234774982899921304753173497100559685915122174563849292281955950429382286484619182021633279311684561911008536868428174063947923628651991458560226420782224607498857769575129407770790360015587008439424934665039221284253818883284673109739340223128933184469796564808928175587756368165445018541088064769634595163351193745105091931881233580728424663248125804464384061742441361464431262930867878816082191528947954049192237956278613591371463766577905998129390296183193770851238609576488148101264606800106743962554886983908355562211925946582225746271979828292488792618683583396558930965283061198838294295794219070881668322493653592957042902699161982164577906337973697840898253808092516154746816841224651248862234808333431577169753501535513051108916528115655395968498424062559527906535462621989979835418451194562834079690156577259264594084005441949736127434749678785966326204920535190762630448698714268256551592530234017113842268545059635557522284672298033724980103999628217590283933335428747408561683290633339115387836674384974111283719979219948406884883162122102196059276289152738019471185863913522733530137384674262971351549644709509466893629886384959611024578018779398069885178084864096273557128438028367588202489571709255320145974523766474174599397492971695291657073579242753820943826618677901228781779744297925656477622539685125288902893037499516347949333206837580163529996332089469737960249175816647213565224355211305934136211204173644018926843561544477535402492069086265591791529709473969703765563737843587159271307452690501796746121502119527869033398124766454160402824834872401297365791580863257004351134474519786367297811644225362566794671567672057252954487928376232751437693811516561609522625681555909678042270469353754099698830065757571664725401637742181777464462745823084646280169351855410819559183596452824886361465423859537328281109340309466596207240160151775191614041159666617367735807996798564481172381441842073146890931873369115317434967089959393449489012331337058382922685687001379588793481883182396125142878969903133633694342186512508862719280674928471992759516409049774089293127189891535078624877948335206497975359168476956831347712622313316754629085390603881670226203326499786603836749970322415637126329660303469584501102974871257611481105236043544422521831872418559846803271096068822255452516212594563676948144165034748308863118522172312962142490620018643778341198432988541341823816622174063609353029987955838969853303417460824554763999557785729968865018479998399604487768644717611729389897008257709726639187559791535436282638578494482980623376393147061001479999835305954897022988655779848585071942952459434401696554166907317427572905272730176812068857