52697667801686137622992524682503657199489415653605735841233150028722799787325753562459169582172356386386519902537666978432151296090129718807305381350056407109715745916358377511381948413189764013633376097826809319728643515505183865200763670392574196370381024875469921775311487307561324597982840298055950914719758106479387493512167483339446568621827794765221898281747304374628018698212521718810334964939579238745185409527931691376556945779593258865648353722064446673671886752230578370344587469373814205087839913577729147291003595783365278956960515982492910917653147596480772154512177733248375293715518756295332346433232438979860784635876359173884685496955768061231449368991750588450087107312814371786501130170713805119872122380933359489227956428420534293139190136208515467527190996372115252193982821138180166821070475972393579926510832013934898251188687972478764460733748267250213173648785878519894771537324943583429053347533513547730289970705442600425262878294143488724446749174839377234446443555649546993365595773552475672564087763299611930473328423897362613293287696975644378603144415221172562689724953107517907650304333045606869429912392321107610479821744555349340992459528247738640083100857450919385550274432456468690412217811354568947929430831135765148534948928412497055581802724453666255106291221865161961793548977341304424311886202442541292211700437173433352337951844221792576187373455797964320123492270254805339500774065419956474407166883175627440805331741853963733936811698227829652755755536865006911165245986518752335013730629128755356535814679979319729765154993423658931029919171601517376654088325293519382531154853189639027534493751558121995889169422654072385164530961428195079316875972298541776379158322784527094652150747515713676086417194353824480590645297503418117281472317193965419983575617283299036521782854432604139029416445898319582185485098556481490023981480515340268923445936335578509877846476178586123637110906810955098516418042340336936202144234653973945742570290461977370550928882767487288148192807915318389627333171373462169360431214863250138435058615858567643590976494103347412069505483337694428733929558070224829984508737442867563406544444229314268552424642396634057768689880046016955803189238333915926368652515971194267126282325987707256869915590144288426317743181034727214006936289702681738979763294152219877175893887778697581086398625701725452306389840750050621209271335678391633658148304367878882516380163042364565409143127178223676885101076118310923525657884052170235165804876822418182184789413781364474301334818576927430185599928948016134916382311119871142741480581225642709842746275162448240497666888354736528135573319026733466224610064293624462945503180767094877744573952750317522633259815227202481019152118985549048628247166721659758653889715536987808533238253275824249593434353413431398999499408800635072785476882748663626550515875162330706280400420304822427914068980419191252077810111429355521941781763844565512635858909459212092874431633085932356538953409565940863541134864220898780487130333252109740271038826940271015997928498466526283895938749969358759914731058841097523726341594299609649350892388448049393999645369274658547477028747771891586779039425488402514674849654324852731437583691237724056159418673677874675772482719263577172170794921265918488462486457080871764559910782691559385866376468498473126518973309684086766792924784675955257104475156135147713231768035313254745398273012552488922177714849622769717525844563632488936864666776074122811146852563569862962844294746735415133360737774061016218538507471292198918597726870035119426526492563204988721210892968751464163382069813942243636784410427045679994239025212330116225798227759421136345183325279940990316884887612017254703783812627318270045367164919827671719176812073934365655084862632130836924637452443511919936274937473759975498842871411572417888868068164896492821810007217932427938739396349983424165323491322400743292287034597428257427419581391594417179378282373435762092795818112662289225187119613639673432606548958284209201465634566936447810627609567675728407588436454216333915242381885672716205539030718575879969659391267254086905725962847036928108176597973973729338182752127361179909074039931262770834847914072391023876661885206283183394800490527108173987425831502735816668412401800114566556486146983982352165967305534430045026184134943589153107174638272809758705374066309005855095048794689832776782663064753145872249464455696735702323117413064434554082492695614436937961015885326386411475683066881222239274174818748769485625753674281416544833338534044298127722258775844288974979039541734213684572913950070454658845737913920374359833824819395176357643377924573109576613311276325685372838344620092764745567099736364550821082204371109748094188220634708389203925494563507178533797200876759634141853183902210917638306181267845509473999348337996161927616906594815994228724172814563921069258632289048497279717848097373636218272747968697638107708571829093606271729121630330827115524443265664314709400241206384639572219318894011521354266655207206657829826557664596223776276767768501306798929227089259615455764380331792402492875822828225914681072331229323942606556895174974380171346360395253387127322101362778423007678794787388015845273358920222587433225298986563926479722643777552151882796296308438147916270169861829956128620538750886067137543576360627384806104078772754471883866402570422680480271592495721645317403298819196947121638376784509152774853608840870957828657113017506904265093561577707168287635942171697721520146371364556366953238617959159955158043454085986324236325919389515511389292317797381976813868581314532515206959829065263102147224621617611712487494505786328952124940539082231192471844305106477761749686870261008867547066175728726843771282635788831789313022256843504516250689524403717919614933728210989797079338931396765323146980154176000