247680764590295556652605104256773379157225691739451965598089191975606786373396366317714433499595781475444776185657986444938462408211292188916188253307758377880263982979995369522138890622365933964375328570514767449583505282265939777922718199802635937488544874132398256358250634783214961956756582967690262148233584764066500238155149446404955842973785456328476792542234775267277667426056838851411129831814612929619951022588080363684066915631774887456838896897326064316416778057995443551284294359519986810334143303329378816614157220153432403883661894888259928828367725976692546738494484424951282590808064917110311629355634124912904888338004379984059190128082873964541883970022978860639330193283133521428033607065197507696762847153941621172289570657244411261632893916596001224271862600617911406839309790622699010767498388835124433834525855846505372794562828595777215477673403967322720392493621006781364934999399128272213983222356728730954464155996334346348071499983910982369176108444361968702909561944621561164449717518714463735162279210298638528738089486152121293055659546090257438918032495939161183622187193269496554207924529607135948711732685377837838953836407439197052736702963365567223885462809460672290289958409866807487302402740945073549023547153198019271643856203393905699698971844292205319698464676475233159242628455592129599856766389781793824796561895893706135814452506075677963451994916459852935531613678641788573220314419069358469669659549861386251343656396625445024386499332494326522433420674053489754726674747658921856931041922857743862311699154807571162585789048287402777131591863928174941913782820580996845204835491915617291431650362941244118045451621587812027792947992557334469086390874576042196589301104426217319922473114451983599452587006896734325796560458342754586088798259620496024282436921882426478418989563538052436807749173614165083428478296728829193260761386968803429037996790390518015397199729088122634879449422477838518627655725286685390939238196803581804493232014145659574348199777943158674095527533519662164519326477763401499542586167662998875048496885471563342105884127952577305231336413280152552337204753790638794536489621520570285077555152246118157001971657484852372657457161820622815533244406553668005457829863158082485881632851689290843121138494216980990073389944907729421864528664787936140248576003424026756240225883162523216745659197845849781001937289928053429593523342510113250664262370363934879585480327339649395163356551148781699225386876075927117537401864844677211670337152124271280943557983603471031367887557793625091545968056117433905871001126972095976543978187542288731452714026114362401508653110926824801682475678682866975874988329875806688854955790195523862782560796129082315359156666408863780185474903551416316413775712305878396458636371572634678139521202554576426435678231890623953731356515626138364371635167427453297378677278979977970313433117247379413987345561278159263540969724123966018854002107736045718823569975776332246364726167946620127894410970178567833675728096611912625178233857746918632596617015014208921297595924540953511223430387518845428393062715447046606174152857781415993475819812796695107199140650889191768467670864532899433347242726858336951168951911609826929838937113446685843157290771075999452296282529680086595226421335740850244405828922042587103432342043105685157145358466519272589855779594242771414267164439081185227254386512125605180797755343201142686915897443536702399659640837524851752975399845130971060507434411947510626853882914767831251584355130227814639070142789522681465024216768353248290366128675271699969567331737484999984462421533246484338765650813453169834417152410514468912789307775574401188338872021321994191975300863293232592271447352348115280929212481764159124127318968922802303154122206877741686309178577722763816636038991218729929322744289150228731715129296042966513336049398133322004804349310796919978649763052874573055102669676712908845277894670519941641536716547884692863164118092338341478938233481295203104754942365411271964185237547694369057544695645065505081283991151779826971146091173861058742875516929401045602017525189252110929937523220339175321176036961076859779272209594913124979836457547785790253893256247846703619467464338917486091531303824256316353245076171449223194061335771944707801564285574141054663206387224775724513806145773114957095500164346339112132785936365644638648773871203812174011464248123459348701933416247523379186646374462087452946340113432121346321494232171652546153695493899409941252567657699213973836857853196512847585633927334111550394406586882667235426538071585662940727924521456897311099892398711722320657236197086298546795912055449892805314967368627363881881538012861362464361599916779533762612818303378387502995596225972769416832790263794676210591147941357904521638297943385452255113482215563761463136833614606674471257328728220745744388860134761324313932231563411247643793940923275944405418908151170268603900754126973678605863813444749970443679355720390837167587999340294876822861366842611480573564027049929896469278117281586436552620875313336327193278284671795531779417432353613027033358239698170472284895704563090388098669570532702369643835324049047233864518042167164822998000816631363407125278627020571185858743538821047491021112074370249854063259183591345740314954609974807742744073243190876024419088273263128589663226792796197395632744328576443319161945270340486373753864590241171735466301078288214568105945877858164102530665649888338331236582603108571212420909987350356307569535794580367759458655883775062804388683222042122517772294389980112224248567966467868330889216987874658253788306393638429492360385475251049579694090499918742792910847577219178662839670612681119869212103388144194604157201624235735445914827408352635398006066167189520157248669536443124584784187555643436445325279282157847019349