693395288992776422361915973641866864671497807444724909070232780636736994461001758277929723342631134045553215276828123898081339366738629039942279649047904899100673439744448544975412058501316817752117769006809111283164805869731198151642980583192943546983644123379518182793469162798714367907079009520919563867023119870604723850647606333467971198371855786958889967717248064073715793332268640575369615274078983228288852793796593479927973986160181557296330874308299362856119640284574208937215005442285336527612275224266845764170053822121268678793185315033457555922595953631172233852607488348598897383255865344238314667141661216518515320837431793034897395516513957422466275288167045346037155407712046597912992885687347952846687445304287435976545879979172230498734734521488167547908354952226644681999048381200405125749925431170555083249581825943807911513791555598687847337730693938818343013757577993889961404848969080048798926512345788511864762113854125206969422930099812632880171293779180515742206246539093113737516838386521943976023935320381506773773097742828230649894466749546148101553723366522046477455658725169439679844198561697929557578198614395366315199451493865992710317899642405488636350706531294139227263640911299193193641362892314828135451391542873379476155448072321154443127237188315564452745807942924838331113439779311536672028395125882510238869068627701428156102341152174421403290870042191256558315578935620791912155247507727165530425270360368384116576352608501623573074734106851793871282836813394218883355433972689163132732146108599454210322293655296562662261982963559156020910017835513643736838166569178938502276883563238432194222029996206044084679931423946756512670838035864842467633938266671123840608640884687318022553144632531044924364740717116878913819652463517339321932477578500014349135561851569745464755289510852496347062238373271367850909040873341741660315479212547493831167487596929102329362772591614036316556051034710725531833124433767629780640984807865948569996801155152406950116324078598659727396614525825365692956743228378610291960421652192834871652593187871258429615633059168107165125462458967174806992854420699419915235676893478950798015951941103044542384173364376660948911147712798620751023998044877119747265821990640472445222485878594135447455611064283864495313758309267843007530601242321772217814751331539382883218869203939376671075140789262210735494331168965423326160263434226640402578501171710091679565556414661509814823226993597532534391865904347541146624938844235509709962287897458940262402394660189342182806993599630276512676118624204627697144937883555025278164481787440968116381126634822469722700886946124190149351801548166420627032503115542218759831187488656896026360125429562900368765044195499263955371609292298187797887886748399896239999256737887211103278222466460714827895655115763235118613691532991293653200487331058796350014859463219372953654944751237187833245930308897909363153782366536540583812401662725962456255820446178419145699437507323038842338912563847447664268771768298010667045686796095242361066685164333447915565023442482407776556149124685247823744406832434677355773465019100158519379660194323847822435154426279872586555002282750002515857389589592213681920643664992278311455453696617441312416645653717931818573365592634824612483099049058306284751823968107997468958042543841438365693743551731438150470472547726421567485552536997067308249919744014294317320254843472901555643268233230523966913675706577777790025799976584287964819038267414118977671422328691818256261272169288715104081989583119838679035106928869383723161208167650338061698190564464023758751360340952816601290094600493950794045848110884078540223395435101962927363382385152837698753546968424899232170034442172464593793659072161150605337995535863795837138034032775503199725983340815682987461543953558424547329552533963318765804547772764948880695576312140341595321346490820077543171375138299883477961624293590254249969635162278774860853758495554177036611154877294982657524227540445693729712902346242170842925563485978955573373429058824408791739983484131609403910443563586585609091712238682326822640194739275261114502293305311921263387901009507654586228959983617627137293991276336614625689611137847262504089275877544638309461675566168768763592590437383130297037375924558802346532146548374170821847422625980744446619056862977196220420656701062118423135362495461057027227160956992294338431989978739080429980675554969636495654087455873856212294913836181692493263674444303256881833512819916254528595807532197498710128497921556146138978767290787579339165611544717354809083176702218741429246314186452554244792462215615518962864836682553154294127820839593524809022198602780840201991184687873791929376192992740618632631435529722565753314650617364973870982632718737006078189121911009272256889355803092171601829476917833312683350124132795094365535823842310677474598479789628360879310579708585388271247818932109393104264683925582141726124833777372109396862770173357359799145373734550927975278758984093508655833961571376682366066911036173085489225512606880848310004837349826053931277644727229936133625264859066171292345107256852845522685308966436594663570960211464494226687378982653884431812793077465235662311448535216417595503908770248009748566245472688298587185849041585979545502638597159454922011131010903456285432435947526555577325099676529299689572063306306226153167982753436147625987410979435475178960570413952368208873364313692842627672168480344850997472538830192319833012687685258427687498055911692154129431836796483770735013808357699363413952414975904960260078134713540333151168739276519758114010395176808478227136837758284296798098381005407491836506173653079092523814406967146877624337338647753408144356652736466515599297637380160738664333646292916711990582029611093706027917420972814975831264134672325421981670808463254639352486716994179126540238