31806491972681133947543682880463017898324580229031251392859502183686069209263523678123228657025528588586694485284296448546574394215196714764048387725224907261524597758596474489095797520705171491426105808249251859158182375906303128909977615597257953816881617367102299010953189562539038290133711417559960970084659647523474412948498364284690525656817279269661606555450111886858685223287724888067186359748680222506629819248126598547352542754577915464239123086014718477614425124264700340440181563255959035291713438028952406532675728562544064779233333389862631561242332755356909094756325189686095191184436241152192464947766200826255653851959648947517179056860410720227907769911463464741316873816048471056984135866146968772027343458662163328984942621479255756251698370709953134861269416470544273228537445816893529190787545955241590524607806527858831280449267776560407387837328348843045243004769912282843477933264802713822937816246389712260664534026516465088097635761408778393977508798633457913215361196947280453832196232594262603201107320889316889681672872403934901651485982196707759019211844838329131501623625213853139765497476418525815791943801136280505451427192296047786779323034563382859576386976537266193082862133600547138358521824625658908057709880863743644853037301629685559718303935693579906582662050208341871931669563233585842905169841491628933297729289582147414229265227616773270720654247686484054866306335726124401828886841117748187131992871631856915324330809371352775393590799317990067503228640582666584356456587162969997639733192682940648782202621586216194579494859130473024263249289133327196306336851166335851056048935243124339480550657281341413543623983759299584933404825324592433815068187076856424157581047271650327603365218027200782848329002694255840112160807482302300566984089934692193767101408448557922944845766871419254697540616697951938195532809818654682974335415356283709803171407794337488464049871954792848166181784552835507634242672470953005646586487069261610396046687347660567961508761187487565354106626833594614594525233583386903724616157157663947488951296215974519894237669264588416898921381713436388156620150088146378812944441691739726063261139655227330698640946831676983445763588442323948547429904352480015709337425989863088454326363214213095685078618444319085924199547773806390467365248361798353310141166244528809919677013878343513009831197018329198576841077253002225381404680438138647193141958566471682943237441035196976388686324395701393520514512696521624486032477987521915584051928022566131745669930225564918570902617639688674027509081914230821443063847667858463807864605289439797413389411951905984914982131167285650684892149442234554738131921739480484615393683620526787897838808191428843333438600993073695277163005317491501328906137900900014508359101315503609442448718480135999867891210322354228852938459528760229011746828914997561202518836547783643512914717116921626322990231796423494264229719706837791058278461847293317387884923628513355651309153877060891873205949212369068718429827772903970427434758607678842607409773094444563956833308627352074793689315538154435397016412465071164505767169536608356776925224645392445015852090953066260649567574431311251114646585682089518238577809657342388128974342177972116878144129989828444928106216286074239722312716568194652358701053183496378543771078138599458447959794316761941697366129564116783434951393198849260915288487367306210847456666655817514021603610748926921880122338416125249128154818031425174906842906945210022764337327859304230598673655943657087681184206425043702818659396528165016494917921648608838228852431560789826541170552514558353111798518933747623325750834598434957677690580287341252833161555784527529811950833562322632406731662529421637323279206926604923627846757411071534266752051765935573794213908870844838730976314469343474932871887188946104121426967254097255152853321487431348986187070468272905610552591102827051478897269823159744527654843918138921401558499948084421831522725766590757522290314557885665244993617017136170563121022862639144979809148341262808461997916912730699080931296521497714184354221488689786748239747786928212355077443610541288316568369407490274871382741188546760615823990588378277697956036008366771025735477342639561106198254027614607686181945128826796312886444247037379602247121604700618237761422760291532170297824534255353803126599060879445874188699689200828920153474818058719354254448286696279843425458873901429932958400211225448904704453195061731191701062425546538445114215314189599809191652725465748508793999317292510178907387768855961304656154906952918075964150840886679357851807594996679266245854932758862807833350482524309030944538261645568244598374465987277134336905153158021465977688102727462782587083694248301295907543892426962635290581304071739517597476763229821526554428610870011058699149167510685374732271634231977193595248919323567135523636317201934727913730710432117685812848529675972491403903689719816811462614558365959609325813572692421242759428661583123652624725070092096332227514162998049173127097566486078549951893987659416210128445754154621472924613583047774129317338273684660888006005877257823915230142533524506356985796572617814643277958230674878637870528922989228515821149382887389552294586785834597181887645525378685320511124844588719287461296010191482140527446452150556615302376348227076345354049728993598854006278967214459768949288076511766443499638999651545987811863798501893529893851368563267747744473246779225798826392530590646618099399194789735525645661067250868841573500968326636519387774228822558232073699448201692195649399066415337117263735396696113865235070125923935984318153569185154526493458041928723119105389409432401512519729107312921763257596261633844938549350519339515906341713459417121898858319318160784426216346348105648594810102919405083515368343564162675920552221216051827186466918435648135040895851