785389753646206385201459978583721540371042315032288275553318655466662605948665444409344532952662087987295638658851217689738319858626195584159291722202367844263419678385479170942523025648591447604488254848797151933361697856854010618078595222948302173989860988679924365374848754357523546748846073461049152114277379122990252866866443654789867261569496676575131708095827950951426923190937852557860527271136854716372672329562818709824450047181815095804559292146364352978038752642187151099664549185712639608593606539621578538594675152632734661505141408984127239310999225382552538231697032635873310598450265656789025276837246297338966828538585412974475887042158551060491448537827725821467754644847052609024237566559517517560521596548003160073777038439718679410391958462370649983054517363874933707192558047944514558078923114312032173593922674150264158940645654422143628751096635117996987644998717853856043245195288659065007611873773519821083428052199605406657515341409014531361790100831223838344413014856986394556631562851489640388533251452968344328274622926350467044083497569776900649334985725243194438499854737639859136311077015106275196682145423062006232572193737595816749560659326418081750249753080927171956943775607990759255942415237637708857536722199458946057803844632660482727976330028834669453522237512396832110503739627417801138667431867409746299118901548269761510153215853311294273177321252470339650355944202358853522133037258336026845872556761328794319077891931765483893522355833587886473367464452782608354863989988420165005915461785685447447216438658041879819443175846552827790575186322926068795618859975351212263761226224247390441224448800225314359361864378547428424745542834752729144381933393471388403879578284110422422530663083688989786777854262596782469659984304840449933177377375892773848910295006712270369445519703036987586062649451120218811676110512215335282148449999092944484003749966345597107591925273158493905536887645689346225295908144767577318581421021483753785447304929858675526484368873576848192634138809628579408766455658301603185132409394564102358547399989129516549914410987072944821412424547357851988122271275627726197486116654689441200336339426645954850170680414138945608659586841248222798684133494160149513336881536422983430467782384348749803999026648876054189316426488548165245863585841874713322061131721087468985655934020074816289910081884771370464611021303860613109899776231913149829737614562245327788051558538535673922657155678607254413839269569648974208143795485365102555265108546886913591935462288997407449608827269997702935174435754140489852089463734292848746322257856377579953860342184415665267869286113687618476281878735344683913027994386030201478773670992409589125282138552942754412236167931761648818246581402871918641497677616097145460620015311879167055450121518149172473543295906070144277678817330044063645979402330116773219253725658734059367176317449969251172181712084997808783293392834706114896810793566705701053671447269452469364233172649667070144993380383055850102050119459619012978423750727191471763441142620286080318380575557938818552317276931335142383241982131476087738089753273155840943318159811497681549261336129525572183283832410064531673783797139517364533899429151482299333161934762529533044729876245670821105755455337261915880225779288622286510453597500478345258617457511194051282275858245959848977803198498437566270740632826721282161449169682578847349420155343422953133792770298954661736637041955229839251767304079519463697578549494633072497565804372872902158049302768936537306536401015051328500044398141852963312413417868857626053873372299354098677813556775518350856813804838868385799351642053656962898928058114905337195609686597656755895358267841201423717019528069696004881539327695439179696996327699757276162886558949298398717787203686892278642669270917244488159319766538958611532952819857167115323748205769918783214918405822464061574586807008180511015702379842186646796911715007782760644455164946616281770681777823266503121744716933075753773421333974554659363450672037390140139456158468323375597110244158883060560719926676440229660839483839752667544637568645260693538746837788493859690532725836184664103290817799293428861232724477337184497034302437036597389964201649144297214391648594997372942274522838680641685263221229660811463954958681595029993160188570121850036828960451521656361233112649575981320586563233715286344923272926752969476479329301935562542964164538627817177031363285381489581897796275384277045581189658823593954552030412141262479493820033575608911075928461569731095468237301091929898605002647680598970605773407757250839876358687722219426163773261214818765148967196569151440542728341330300811555011857574515110165675758045725169446159448361396599703931748065412173351261576970792161254652237716809445709018190560574637202133242830393951800585468052395493175227453893232557573099754934948792333052029706339681816569965865757246762257846819474115606927487209609328913157539972592573753574682526769802801630767462830232797052774490535366592389843305074324607736988596522570835031616951212403634946089712974431793060099385766425754202069622017213009232538309069104218119201667661306606832320582839138479443867911555958639591388421248225384436668661185411435378963011335717853306772882449566511682760395717720598799472083714037402535374793965620500127183214220747424144291023099119750575246816470536029648677062522453495494569314581152528539444360974212164541307225401222158335852554098050168424171093261118981310729466283048398648988294479799993213141578014235969392907736914867401679906711363482659556669453761823724238884859377433832195794937554393229549720993688569052524156210937018526939660739659176430487313877695474779650329202615669425981926779254705350229430885113397835986974254927135496135669676142761463648231185144753416234739934489595