500001
750001
625001
562501
531251
546876
94722765109864151560000928180799615847658123444688041512976834025952502869687464226937225500746538993823834388770216353268267064912500081774410981538672693578505591013744270966226348864545271799345656106960816764914214614011479966888728437276068080170798240732249051863181732040286016509649873169465653353751698449073177651528787934778970991046229224889232693854591171597678107463986628340522932452662762805666874448182265517004168321067552175057444107886521849728680700969438322847363998553025953511191911439820437664620326366692454729021874189049558690289098495761807585365701541338291702712923826558116293760146615655462040241311004387171626326289174600342658226552644689457332575142994749622071796859302955457601707321889242553459926882491884445817897233474138546207232292238385825178680308483905877218448467723689795729534546324849358558095137217042403924059081881443455658583109144856123109482797384202775255207142628255235185467715423549038494481478434589830088553797670353940433077004049723524396256598033717937615905106805075707515456729320707870368433761617129284682085744600863609254507324338355623265241466188783308639041535417018281200999031512018085752135273950754239105552707749925422486611796438004639148118044744784892017313313462934332312181790241775128817716628528645864488294827627270807155841235151463716404374653345606226541412782337951979686452783400351995386935176188000991269309416226498423812406403440768623386834651778807233574658646811675282055995860684037002000452004877680725685207817882183377788412199719447936229977237006214791130558122889342279277764461433029936250184652798430231607697266137905770948782406221661805751529109455827220535518965696814329823440663558469254878477988340673649742893192998596972732240187331874790944198063237517131353129879221966572694084956297616838039126859134069389793431987409850714563110376137388598268577084083234595298900733353836727365302706061138414608575338453728612892417503117104426744107116424382537720034751706124845179272386271388974787852326991303096702388504688386343096504249376228419948847540688919503772761819098550111558914389227827418257497612015216672415122935491766077941791154242244632892913548450593408941776143478171650951513864617410622253251232518517053670689399996464521699871345977516864080674607485778246117924406756123871538265841672501567366797078324621880421233273513642750754978748674232612873124330835676611838959136330608530847814471868668557601835627158955861912885951473347575532219348135154103827971041590671607804076940329825908026623985005757348025938879725924475789630616216829922557518398698151484673394187843406449780499975368286753872368340567333480513278718667771443138712285982549316319594244704259880736036778463052783987129125233839076617821961852180614073937993262080324569493609664810952573624116382726804453924974226971581100586836421197270212898204685513338775989357781990980377465376855829523224771773887264563181016600053117455928516167657219524821222765313241439121483109512866499333097928743765018782214592749967326561099194762488789836641051646097198109819103380452562236826776547650493705988839438757324038127438667669611141378038233362263309587737621279839096318491390770762727166206989392126427893215753733323108639161492841190854401325745114820015179301395443912041499070678555167484223204414472799868166343420426458581385545532667070893064426949461748661035403611828103100701738765021357858216784882977115726146296495710191567326659353107294224637182439266741034936613174297760358047289933325369793334417129262031543945961751387085784339659398888716969092679372539884092411368224075699038936956961894542990537933411815459762280313197915808409323405332904156586921458448223052150975689976164501912697845099262841463374376736087399046467662572539310093531678778517569803010287945353229178070168421988668432526281175152602397579349431231647298721165645779249786736469241455041546268819856017818937501279776222634243743879664074503884630996620893911210121211807579075945943708250674277151171691579138951685924490460849133869228831848566514979122853021687948266472608165178547513035609890007102047068111409073596195113736090227279909626114779001755925775589320705611963771817838814292020694383085864674929069666390857900495947608636300966288059409804417029163641224564766900402079669903215249605089364815298871296305836063303896739685275465799325556773658869674287181420058729617255862170595795419947522130158358491833164025123304699894861942144650720723841734230661791023069122093778559142515762337787272097268148536269565656386339797030658098953649594312338101425248563323479237337780994393802712436325799135529140711798710924469091456174097132843010546169350893714618520485881783467854609365398785006939156141192486927468119900869677377448811613905562164633069269824200179223714167523011250656779697123220926155718397092310939671554974682191993092660852260881628183201634008524942527992383072671498540935261025872805213482256113352097431897905854973554595146651148743690878780115712101481747936755438794606785659753814567484745446712352955285888188241203084458109618405229159268021095602789745726752196538378223098974702894148108108249724545736899180493498412162671133476889022420180562032461320828291947578201515758436458773256886857220365786159564164877359624969667869273546670093078797956133165359580436475649406784649745637965780537138390694180326754362924029959110260901855803280533369608423467212383548296439049632221878951238325343859728069807071858851779608777031196575549489801362580532745151888273249967608546506269997935129177596069415152415371202369975868646176513413498856552096444495570827334244030283899626083627893131122223706695475811084182190719541827900422070286263830433626726341558238848411731389931665304147735741771201196770237609754828723731414417394825155038534544338007670227586320660528753709594965153706108128191512457538869986750564491014103238809724539199776818672350651690495362850754257850780437834722624673376917157141762594800739095587257360950313540786235841136268671319892055118977033991415998728850235178255255186730881973609547126173504411625653650877058646713577089516100843403493169383325814057636837140154612627137654383173383004706005555055866381877018143813391240971839701149640736152316566057412441227147724276550427424823896698778944889760191006450365535257573058180589332325611911395204506233089176605621422388210529806781011133364257203230727591629448043854621050018771866398252459948184875326883432494811398488748145313042917814071595978194030272244838935782805444628701749440512959714413953473199166655756804429541324572442260426246448775873657209302966652954268859131402637429897734874438730370946161920427023415099554627504282640238981799710238652649649396831557606506707954041232203865045036514489758221190103754731050703161987499596635545936106274838343545155286953658284631375124738765056368004497981954340450949880604691820755288821876780115357621069633601676177563523463823625193112975082182110780491893945774976290185839285888341244887314132733056386088028815821687703212278290050030116574574951104158693280593957844560659663867159544387336254964048208573340817955575164071188092743179176865970636681263578316794631010875686517855761362413744718324044564997791903305175497778034478071200641604901490927589028006176091627208514434275270584537749391336657462316103914447828249081476313505368598889482664918346259782540015471191106919505122248468060014827125146411526104287344021016210563715379429842746176492754224953501177834498143672334163376581200285033614453033430490536295409186799728065554453294493169580138477994636284604440060383425922090748600598197981514777701547435508738873314934326719724050363588653407692467967493706087372851453093781336626154509044943267184789693595485650685908662914994584262486032970375641248456972363446238270283412271670161189708026474456529375976121827345437639857411081892089978779610248384032917485530406732859363929989336088133625676204830037687817596939949184674924589150859368104737042718856734636993240921926673437574696140297441376593102564943080793277184425309037533365982281103262208779636228761363645459641913263830672556277215210631262120011567153992224088282027506983027554877559138415607097182472183049327072741647313576081478800277102728460520070833213954659462958800800623144338092378338145152555021208453517844972685538295265299827661288383451932079637664291713885025962712273883930193162640725482161877992344951030753119404522474651858565958222125025416220352999210626941010611549448483785324241473793649301256658610509998479645975729777946480362405524784906822874928676976873265206033495277289862292161909357789992225856773833481581268730247623627879377322015169005462312313644467547684165920660819461064830790530644683451746712040080764255228865408061545620375830836930866415115169065780005395042815093978543786777865416194739081866989184804368558580120647632853523737393212692445281549420825378014237728125143483561142575541325135000211097995706060632897110453619859647705623975592746207946038796753768747783063887167066421911226783418166214595938816389310442598073165227317071255823450491252919684899958128722368079611020713110953187291349566297447922888985362109138211813717802094235759848618684352175492117379352657866947463874985505600313394383159847913734655511540509572551704318837120589122607237785249432395638090942262673269427134984949551438516788842491154471458922251263302115049687233128086430312393010446929185614355101046979689455248108754604416637012153355883676689687958552269716081710908676529888743946277391769487561763731280879463214239561035619320664116442343282625576403427852141290118680217666235689828619743742125558282312073529829422986329450303506971023207572417999946145615036787292134885301486852045984318917624382595704419884288561568039088973876476433197970325550662352109134334975180951617052276023519897943776895779473649371517737388907354761593608546957893616641158376551601289992708809595093082252010527173316790311836862812451598697684057624111352974754596794448849818250318517854389767875915533370579781443317286404901696324694065733318428500849137895774069233511830986172959448239158498347867718074241573190274160127542075543680257507879321194305054489931311091659426089069320240073594952484149270972203478909556466531936266783664917649807385378369241907676857641750619553328057420836239658678545101486267371756959290455337098643315233850356750161089772719313268607609257736255581687676976559043164026705814186163817941081786186853731695779254424739411276854850623412849628792038218928071622937447850376932512491796973489230260833169185833399998881749564428917293327791637762232040011457315510634141954334388845574278813473860219553004985047088270970085962988678779985626060646947183979038503086641702177371920147593796676758808893939192842871380352167215072563916503924485758461161826852349487182631971900688414576666615018648115273608673652194371392149396713277274213432299799083399991247362819327519445394619243762951737406295242256319463131332989918253225069875402181230520407418613148089232855160683483664944986854163984697907160558265573107521227664888874757244476713204581039618198960949938716284192155383238715028114535537453511436589234755734915899351712690767806423719896289837655060142945034560601846386121164389452022934428703199949068594264522004947699445097727395330269134464453757452988102854263113657394279073368368711331359952931385745140266327255963721917167379913969500882484461121808298552185668911951181437859118223864681706386106966686556916378215020966340232516141123266090286884949980464765240161396884291889370510918812241183149854657363471299344514144253540154785458544406755449872831682387856121478120832316125437697087200087131486193731915837042624708171970619411781833145539224237171038913164315093196493510521666883936777401083573467427391843996889978538271823369553714964909145014880191206312465394263106441225877200669494005671809760334235548988605363930179911032269861844167304429245535597080248861695674723976041351141136092683251336820897942953652490810804783221310558538063911911733301191035592711444766933463270616313637421898798988651038546986557121283637766986690334048556759596997092268861659732520948338473183319637263423890881719858154786708000128625266592171499886488177850360278135728277744712172759254285217904073293278949263026406099919800597151540975576354367563453202689089529599380823540522588358676453687354208564568825711191887711941261610732154876265808994832237799595582227367513316073633874824414419587250463773111351708159047635713499873909146853606369964567501840699983785039171928254359942821743837093985291186601524289582115012001026214818662027493797607705096888673593323451263228706299517956160483269526234213020357847845354193581619566718404159969927313032615087545655946251913551338889921228671364738866815903342596305719461244835139356268875496459027010112033815446407067489714314361596788972230440179656598525253430269469510513255990299389836013617881671552627335197195253950882720611469631575932199226730769088393826242408460771719869845212655194626722991097121514084160300363682660263172947165630316402413122997393641311858568812919063831234729863544314429546529681069556223194128087182097962632801861920634892473196629213533700478422885799134092174901813835745851881059543918894756529100784734588480798174399343944473090210483456138790396399287889966988485177352622440477636456083431228503758211859985537161101490689369727193849732691097632869371242266939271619914939662386160578378614587354132818496437745660186288246719752347597901613924576432318362188100929936573877081341121049138389898000554865113831089904381440134008486519171775373345947142582615091411103457318292906913756318907078066627028983549331392867065883566872891473964992481485211129156570796860316426545412426361562180604799665584703031438427144437399159974948487898222383821074891994625432281878514660224855985483768780794329626012480303098356851379128510336650657996767871050426848110529091326137382474689747868108223116583734315553395485927653677823155917360850330341426111195680191189680614499186208711754395640541740275865093093629651654920369067549777840927441243207385952122501991522979253685935607710302931401030345871124917621798431447482166342515362135578533818846443777750582967683454913504607869907767003793763997245392288044503449134049024707158549785033128033930747293014026402436778772758955614888672243218889348533263729615610243347848542013459424497083233690599627788211812390978290814362104303615761281500236936026752652381466778552873088643496542185267543717946163241025847744441651872527094388431109055843074116743781401345761913753445854451957114481461797978018843138179820553432005270748942908237184712285193336843798723483291253168239967044181194209929001062576496685925040511676753541030801488661142485917333522371141066783993312133417278773835155234735632476482462046892772467469083437403803595839421299535022795314498119480735668682081032488936878215788131794556340754920436854125189080088609727206932791817209083761565373054156791033181040279093424537788679847369952663486349450830930737123470490595677936651178352550930082273693469916783947345669784104115781349525136609567579116991487411424881526563718862773488772672164454349199180936999997899414396553954611939934956685080675894918454718327752122676879815610816155811592543969998248029632071592627425632442639529680159470770125977390796870377526605267678138353124146102853699092268106145884912392786637911669687251615341119722547094790356091482929809400538615353528559491686896992347829741419248168500965918020709871653555468423632716000827692292912678166588047985298197595540525282382261567290096937249790853211105171279717449818734597978006167599814091588707225446702199537364908740416723430478631285449888236880590459270431555185955643115703340719078895650197945393452696566109633268364247964063876184481254098264671898010240713669685668126986222910011799693453018853979961729280142268850980861646780751666363568146932894260826356494332763492185003933775480148165905896255578737997809581556678929384536955674367322387226297624222123230620737317584624270342113767475748833548497503208394831699185134967169467191739466699675173688654653491422971459338117282265622215182724484745902434981429778472069953277363437373852896231801822436114162661505141890167886922838943335527597703091731357125626892569277300825183819245491550676188986761299137449273066372187708319017630641013544297073563713476997517364168935306352655067567572135247626719732835715953872803351788739481341468092464584516441318583221842095123081642256343245762790265648050444658945928398298766504633269517120945137663655765935799302977131064388362902062139184304438133412497647124213747920760856988840231064058896440321102314409378745489973789965473275635338736580675146163350911972148131508164738122914852373433412695352741975205996880227246320571739777347396529968367116365047725883642030586661396899300102778803206737456605151788202602236539901575836832574479685160107526549065388090433577219764508433512993680845955258939591678255612504957499902770977573991772188084233978795793068294848505846484219984687434309054181001948585911174996716450246898082235521099548181354632252266678940717321629557337057794227859340456044925107969544047085364546083759012387584802757372705068094074431040047224166725422245754984732778203236088228168435316248443549710072880951899072231745533224179686334644406296636313700954614651031698400472035989627683534930753822199148668123879829789456061561295498994419801185931973972682187436022833265390231172077759490763095198672977376637842346070046150367690430525617238226696737420377702230547415593064610739912592852457161682534774995783433096292529132642917793562833530777863191845179641152481659454378498155411832219056458821673591145299395184119339858773555156864744233977607377376487662355217112126077981620945250673091545252574294276653919878659387563729113428735785476433426784687250244491226361944863623925218271678617643871899172525553214857165398369193884019361053623175828783067248762191455041484514418793338770954740792964627491556947862915398526469797907869103191247594853745646831511733746400161579309752145744499181561898204697225483753083564199038143031253850398333187510991713981665650422754872913376408321337854147694193821470665302665288920131048164475874477395152163259492771172467426056119979245854866982411531134624269378264662404066839749882823671693419197595188358918594349017853013751609357472558318279272129946161381450668317941218922735888347714267420462263522098953117473324334358828718104779835175167881241785942551602359205645828710446353893085105614662193915763502117181078258702325614032953613273271892022481153184652498112301525108865614559716944731481252132769883752228139614745214413024431837918991462426239796494527857902356756299363739087577938180286793813882740788370337389572531697663758273628788630576667783797719795278444340242344286589209760860556283120626548103529661979152751504158989676363550807654260488864995126194965755844205371028891848986829522589399716381741842806958085573884123546880037551222414748892158218081309861593739007707765740556626220374623042934699472699426208319959204942696590717071297026299798082860574413345990155411115399166288568641878594265215763033752590570895536641753514730346894482789568969354642816335092352558407565134930946254769365518368303010585284896996334803274814264761143000994970340798616259024719978891869770342138339736359883783652746873342812322368293721658753741861764554097746974346060334017827110843551855949020091520683647202046574694376416872873598294471853537011577910461661050935459116738859842833136170284214349396808507280394327884238504874740120376241363108640501131783070595531389487494012915140758232861965439543117564370744981046850129714265346959246544490996664521436784146096738651227865769094671875834573061411130297679235514913826846971198018695851233045445115772508730761926245307531867202643467531705878830932128858367691910786956216516940193389703645839925909695021982491266326996441062084559980905720048041472841789315525239567589781867825819664673713609489055899797533644936393103136951028748083250237382211459538849382525400887951339729324513477986782612957381902582784037047701226917072521592916059748295008243890491925242417556410246797669051333665959835221250857218292866092495223404664835170898717490389232881050542373711712822294384550362723323986229770519299085149583502765374177772248053632651451780190606628675375506643421564159932052609253281624952894899229897973702792966774808483067568658393182453839789644377144739958800016644701835946218113351709143646033608859887297054720262965506600952734841450043412796429909198038265743121547303633727864878943054222386731262229214089112320090640597112644599685166967435761162984577623244549674352920559057856817830299285080980314919612659315571817030422219056345324177925602351775371661174553146021634221371464349615302852994805274008511872808625176891902746686341277401440165761201423823896221885008121640076872683882688889876742420131512016813750688442245057099359789097311387558718941040933156918628347117925370748931184965173742823191239371714397932165707489639673389617713045983105023523698289054784495930535981348626513634023271589742777885011131319715924221791847176146383957904717749406152891261198181733484884941774948389536631211541418603522906569743473592844781595878090808936523684968505219064981127997256413308159106853256434500002606298228817603068491269965574063847107365310028331078938917935153299211674820407446972881598488278879208193887857439732641556230458116370346427899647349494243093802787494086962883572086376935343017692881185090930887550197147763571042229569682781920543724028232439135734887893220996416212938338500167705003272275572083669324984925495515335936646658395296401110271655202994097134810898925347524507689769916673048708442784606276834780448637926400226831108463004752546418797999227954805539464788441426156766942319157533190375237706913654998338667347886975135684397585427618505312335307041365644767282296309229092798307114051889744280002335068137441934279581955671375371618137832135980122234209185275602986565452511315231605693682669077549476114144034365548830934890131181610168518675532894164859781883953909762883913089296045851150685090421586894602477046253138171459407331628082719566079899037945422845223670460166639055075340185460020985259071341834376894519754736740897436868510902817629470257035360344551350852369631044505857254223808051890541319429594243399669513580248741939614116115738963648979156830944482398132447513892263357888731675023241504777826338556812969065151094523229379094264349915569911094019585875742462803183897486897531555577484781461854770187717086654925401760038238193883087041247485649503679346605193734406097507753636858501668479789865109653046848156158957241702005903149807639502961557615761525939591465637629677329368924377504521369053855979213254421367591749343323450530223297198626747132654035794677057812920590849860454240598219695553707259723542785341505071949957455344958161869894359334587284448426297550738670291943300140680048181690287738822495200421187095697199099622166825721287637928625719192914284782423388461745231325063425729270944825774129056223737611005575372995617214437205070677938584277639229479588739858937174777723695265744153845134309105952656952084773329801528342048371180172488286867591110470143558040486009264279878735306955924884596739908492248141775799356026701684741478200314919114819695403227425116861888893815474203267162461125682962576955629790595292245795519553858967476155882369495950432959022127588329416527569716930653106899445904259697896273632082691484698958193803364322778800395252877174677588468198511693541296863784686969570911938960989752833308823933180284951874355492777056713025906829344061778936609669491635152119522343105756352216319483193808048335112015701587847057084780516736590864415869999729180121231552282125652265221467846159951392816277425804060995985971754018995547994079642294708275658425015539069087202246451422338495863315246490314150089812801092961060982186950392051212415797554869200583303557777337107293027268016857675359155538226801534539415365167122340409527591933672356911959458979254223778523942266210239819341969445972207390070282802734726484458216827457501911426240824495081650934247150775483870315417559279125123284987899110372932756439480485526464159249653567459816704817630143118336999755366605664626337017216986166836083556442627156317172390469194002542151791218994520248799388977320995153847673838879196686880345692297453293315018142648226884528076798651884422425723692628190634220966586181330986890817173281181692410568650138720105928465733575816923516268670925480396502592781117025548959314446199565554318597591926405106297418162635109738032914773120057139621779640120688302528328816086173733335062135967160588484895913442502377388756342419573071521440268893201475827165258188145291676429041826233691325708057150751118377702924806453559529117172228059862074441492322539941222938841535715753086900979228691177942808026321703247843474868016755857755912223284839123694840568397465221242192082300018910063889730345162892231468990053129374484440939861743635337056696718677164156200411793873123552931069854801814199145468066652103515434079985585960273693722655040586111232273630298571573012367049861892696613380887779313505463347873428188615960388553967874016347224384337575213410793118181287635331797841861324609893309573300178787367940038434820682047198379718356853441510606387953577825685059556667716198130631410661730754330033911197244740810866475731217264152735811754607159351522408045902110190247378597443010450033909462805876670047977491727831453547906267448353219587761283473547550926821667928284428330552700681332894302047103957673410698330518579647617673030390619123567958464842009186774971586029485735505754986953080988161179585872120299682553934202562822762336365728953558740556514494203153876922106028936617091835954656144356748740130653536058203122991417021485007564548382736764367480308348091136646589498206434859639376670568752748433719563743323500104601110251703200667977312374463987329916652237018501051006232527191478264557736739333851217135439643866919027416481493776233273043246282938355246459975244059011601926359848569955641246376085424233236835919364484286584600222884628050410099728240793988767682528696661937472381376455786283178586374944423778064641147752400240437879429099631927684710721723324891036710602261494949600260396084055203449352661511360626832520730141659759881263689373335673078561696539929176744705618178815123556799904577702245738679697107979966121383747490946193895371918398145141489114366136125346807488272604671505509044616318240633458624633361384209284122557126691279511046355149523862311052909343671763231383748013858880614783150436119620207762963907869773862561318953153946565257556061715324519850302069356064448479763027403950492784343904165829989266319403314566515662416659840777196037732149466869091795619448697322466994688127535782136775146811596321423420194761601020836668742731528621516357426132980613618812702740972639599839114521677384685482035925744467675075664305469495873940743071547812814955091433458943305254626867824874558289367230884378241978392680764313715558424522182547799312702033731805378442504314305683540895608226247351494732792263442268082696779658265648851851193661912425590663530067140258644498658187192976609083048314316570017317302492027358665056611561745959025148316537290399495847251264509319570295699995439959468943948684682690127390100432990475071481471081631931740571677679307480071846031629985131794852608955875417676095069198085850581634641647235944519640173016456426056512252652934582153426521098492442028082037793458312146002636780915129124383339284083923584461028011544050465928508884772204184601148939214999800456365686916653442689044604439383598013014799476599221833055626347209412464586242294775606591347937798382790026447713724573152531582524901971191660864896145010066974304174862259638218248025335354213939050286960143163597962441007279630062177114591360256210602339153044225989884328570508216722221279686334625116359898175263757508421339997310574070993810382425579584468575802501794355502189338941389289502853739085347641114074969427053184223247341250392622402450221216613977629822763651624364364849209124927652556925937123286133444281294495386994845015825920870897260328238243748530471174183788717551606738225819142896191547715685320718224696519176295421744408146739820169471955625092947367278292562390575185023603179906252532157195714897937985124033784095546495359497408529914174454665290093132833202609059499886625685678593259795441030433963071354571129231524524046707362590742991863543186200838310332889284498382474413365394928133285754941385567546329717642438264784871637357791281339011211730829253780585584167013681624533294126058651370567194566809394655735956598255897926376975598570211715789248880627224602219080844883663628999751657164928863719509647689525064380950922114768790904618662920799349190269361453506028971802514156394801108226993729716724996606169538410881638528699399080786112765182159472047007364266174266586442870347146740132684594983509392205147437302816463422912286530132813482784973222376226775312979789253426749378096022611767171180450638866705582677034034509745789922843636634613021949663848581526991877832041143620853641704146034148231622781889065471157211448249579262393431798958870184466969826895812118033278813350817712046044149435109161650062638533142835164383750416859518744416577647684323249519388644072989309240526462195617912742264291913884107458872360195483888660634578984052882142988613871966244766616195414556518055916999312603763145563468675970981505169059268995955182527717371987177097491055236936411737128724656023021965237687196693481275814587536588274457236045339714062869423962673855869560251271299671815662370899853196836219656567389161035336266557898122888897666495813133376878700839742758446712279374594827037722868497294328853397399789015798235548261728148210393940606141916426607192852448751554167327825894463139988732968753039795969252204956486571010950180986160234830913289183339267074383092501682340683564416702954545489369072783734861085210447926782381778825923461884916622227580217245524640696427579345507386112082619553811952194269875965931413816591826389163058241033730292014607177550668049443580749700890651392560959604512418939554409634619370833433269564394012226725612871691824613495768723753203953329164109075247203887736069762497096707181642550006881577061474290589132712978461765297226947467870884897879849312987803193849973101496956834841631292643145747983868929756061058173562559274088292932223247456920887874990183291734263332470823288736336463506428760232894085449306467903262644210819210267615992463934476276203485615462660485795599264845864735401353700672457519853323528183847363129083666373305137480773546212814335127847778621084760773917232232739331650217316971363857764201108290703597431042585966952246996087345024684317626018337498099349954970107459748448566788056985031760374354624860165363579711876966180860282045777250333571816625666389659868163464117826475669833599082563369356478926301308879404014257599432506543980996000458415817826694124381029218742550638974618425529765958602622778931743062354150113668683298536392663497026393495482025771963537215335069103128861039339619726033448352979428071223899455268443821186350534921290347368820080522315617913321074400678496474849740910259850650092457639293071820240185092604917611197504860679196704554990343806429507347826024148184503498436354172592412984517527585032623845693190203290982890765884769859039111521520678853894696397686746941012317850210724575516542954372131909782993251406501834016695101118806405468469637692770209426980998127375634034534078920913156793184794650143127512463584714631929081652518134958295646617115244361991699102769807263534705524885813548431234715102741402907558858197380497905864339512858026134636611676896519497337653881629840946566060871135648047420112780953512361008785748024003291322289370991594285199358222961646160198691573129341994704815257543002173182835821102066608463650723443261093366688942482937014891805456968452775193155519834851521294487916069734575433535414421139947679326460687688643322912566236826714445974983406935388118566249255365254986454749172088377748016168944197096484062013164569149759680432659677419162272496661175856926515652227551576725235179663531285238548427025093732319389395967190667709419566528492953773395647419806511706117489712241005052986743397597838338492603340755576681428849428305578383376754615761922142316082653040162876775073130092289673297906230055097823910058754615589999999120782210485047644883208240675011799354227822083675613426301364657293938849029576609484562324637774683771188318476179112844259723071730522469168176137769188112258273652186956031522528865231023772422518927399990851124159088873974851534383846644598994206539940243501302030501754614013897545138708290854293778604078714768293235502785432575099819483843704216741968312614988040809474027294133666377800604555709977166935002424123317012893522743801459679036877034745282789429366416586024066507760531492478692069512892160178937028598022786481526785040349469124148003307358005326112283200854328618742494919756068249733460635230817260329896555108531140735987783541369375874944534655953962154750396751231087870939372044032396637253288307837140442289814054435242497278311162724097010172612228052597321896160119677208820456702114076405699772115033800506826121939077884342313653898698504684008741304569519859409446226867218793025702346549608050315735186563681806688306822165969446872531324079028306798787332630578700502835016665857623492785351308846719485559902029252233761050373890999516579922789000952947509980728057275464977003364451994491657888210816936709600342004456753486271371287111515896329165776561001435692954153936019154297371518779160432847470797195725127411397328698536253732517363458692478673769935775233851295894901294787446785251453110267019604040823565112565590006386755216565226869689996207819976513981610899612294172577682136579488129719352162377800179169680883761532430733326118777227679849263817108469955317177176519822672723945011089641772330165554208470729089639862315494850591976010739157173797541216406086083954971283208073325713725325077452063516584903127972339642331957857763582699179944070904635907512284474905252464492389137091681058516185183974314509868182858781218705196745025678653143742165333553122526276610035169922248644023883369464942567907535841762867607444977456537773678376977196462750944288699308423775830598084269486386915250161097555283125757878399794865679005879378476331629679236160159891748758341704134916825677959794874951731543335874328823340497960663794147508540276914615244312282787143796507356649485858745180376315421749912071939200611255939059451028180547799606475903346516224822820274397635183758750874004305334691366303600897020307711303383943590368024129316777936174508640818071420942408046118585867769976185913991110259423127977455162772481552791652505788428419517951971315432934084865008464399350933548714129803980935871260430297545838629140391863136538875398554622779828479934105652370963559885621191794598762245094754689428199374151920205258548616727553885714140858357543128623546898348251637421361415965410615356350147534836895360473770931828976516358365918718648020000070342667586821480152333706092787406381486444613771477867805626716607342919396130748249052587004323916910352058069709552752799556823959599332510961285381531895064873040713999931897335437056697063350754596554151843557315422598662790386114677372399814809214565587962260429738990591320264988510623002917137215566313721164464816735283345144329242973090152626723704208347734416099498270496396775362676625206114843882757654725005791145423175783999197881571506212404588742671668788721764154859772465876156478083454400584382072093951728699932284312209759309138892046745203437148402258686236899903285786740155150438007465589488452066123318051712331981188896622595491996609145051187771755189026357760353982891899472319445862342288778754278676416613665494093255816250909559430950358281732470978419400434925573036451780462650491623109869132616714571317586620399795842507616402167946979116107971405756809727154227943646950991283221600328268595793645640720001909677793916211469716793736103684928304815301296629881838922868603678877004963466304362316958095438042234125825300139472859986081066672817835091514261577785666877182842123130278320170173274798885087054742575131284044988402433779941456144716433656316972442606060515059225579162632091286591485250362690175152946366883153495528081297916394461034622095432623635941499207451268943341952885973929185851576370737115054313628412483723688326145574506618244163953766793470719538261755551395587750118581420395687433430961644940825901481662361006908312433375937527558549024862040173498634446945073731170142119116288952790609633705076950866383818832816843368949254112773865966657278577352280137836067752015498785809339981432506789417353712044559887931748636794248910563534967429503809454196243956185863921290666194348187603367175824776984716309465014464686783945405833661167772983903537604014413002661795547599076966267029459199831426696480021690724220744727879742573498123300849179367250631509808897601684603885015406228794501006912445665613975276548968983935916128494435870616887547525326309846377825274841471433494678248725461149195480836734022765927974789743752509979822932332781987343631328773367326920454055043879252970845367691615823076094022569260954531071564846674279522483294846274823971764531134891774274728389175173138832897339537211916302690102137143296069664983648123188171967110902561474056830455361766262510817570522749291841288443052866077041045042632738236278525650140745951848471300672274238743795405590983356572444976874351093396136096072852740736023181957275542807010816850644842237056896963690293917149877461113730041249806020570512179533196621861020034365551187464838719858421104191117130080158544963072341148310949514683548286793505579732821510309784790618803379022538100121548432485301169247231995868781277191405559750956898149862877809963374517376762565875128424276944254282124118599248824388985389782076254129578883286767519171683263745094004649144905797736899067885183693875929697981162627426221521732808957948038432039872363928499957217640972874038170145563946531617425349085539771433961911893343451601098705940748325385629160069856072456090644911955363447509810697943942732489899297132655807994837915549418029385228539878263746890115207862331920742174410506332481522870850239839979829985128146415727545369733390312389167226286550351190512539938138948805256178000561149550741552816357960426164903377564719892230868578254789897874561072927649359564343098775009048633116105069810210588074488553631241918144472569838334954935250946271238208496658432090889473794907721455495221275753839368569881420469770182270799421825765412780321665494528712245389834215819533071260869861546356325793921711235317325926419199498564657236459791804222542965630055696626001125479129268358364360057977869583417214698205044727497398671969736781081931742768492685151528911431211748529224096874649962638804533253213379724042224514446889498959438544553418052817501518256482345978018678907835890926499091144352410280407818650585343763427187986371774382962559569335388353401729466177995699024129841556650646253634377149314229667167844022470993287888977973725888830595674704129427315548481507965073628146127924923803419805419781723152968630365323533225890742780982681409184469689689503724282584704622145019552434233407464888456260155721124262203494640162576137219093361063332542920893566232890172554938772776393323482925751841684234433689166596040287538783295132319287393573006660173194594504857444511054316281237336503657654466596652622014322167343641249009473683890467797719041426112028633381056481194727762927265885976931961537480124799728403923321804571263699353581993985521730511918857135092973066454853160459383039185150531283081583618630388143793656661889284479224131874670688270532605104945085580335931284270087415232845471363819755570377684315041163922600504337823646748401188639353771592735926556988233179655845480981788402200441552160756812432319774192140188989838548925363121223830866909359319588689729434578569587258739449684848541076371291209398334756709601289213787226981703059867806861403132231615163728530553046348642497080357561967943369664169278382592738645574577585841485663192528991824237300779396095127366317777356982528379907148250225513288232743978954550845197696422247936933864933312916266475452961172778115280628657842565406929246326967117471163624660735558219368936353017662914820214233071345132865775058158212767630785102758716323762392872442326641124739679410368326915248605553393488791793928101599956686629353733433242413643810570047845281905754967395009046020571888733467576756392201268846758738535811607079667078388826729934671851499465270543973747937795393015354575998933552877885142420340524241732030868390654877718068942710673318723338942877288484044225026490499681188078217330632370871129601843334256632953550424993838227658803066825598699639739640555725222941827816724154930199273022628066858545528249098946094388566154096639264326467122349619114425529879693442361447960173419175617079003778806834211571481940641242496177265740314322114302605914145387989798618519065327384794865269319103846647697192019773748579169378967312198222099015837906143849481744190446742132167688538055381788547745689280205399845905764211899962749637529407891213606624523047440715387533289131589583119055243522324360323229766823579672766037142682986582309097726446762473087279468323549123694557907165353249512550105324581834519663428654552804189557043507285365594601204580781247171039378554242394269322449219619670579796911495131943839438287367671312840981222712337419882826795332270278890782169744097062290668049582422549405918008845626002074137901526408566621172442242682848439401989112128680657934059841414455748401840584957140228073423878391899534874270266304220542956901227624908876985640262634080694378974646814855996705384372718837725320651222921565855663744518411841151337869030642682911680434314260459129299514920791883334349145096699759279061017684550176355363491416951484030755696189632850501820928995654412642676130374128282519723444258717021263387153347849713757871901121774352526814228720612991709332347931920146417735081226885561741753770768185729219911163782704558713203655299643120173719220702907419973333853165365717407393386176019118187160712518496761223839345042750190825198928823470536489974725317169237856460170341041075679515309621364648390085240786939687305953598581661374661208889826860457624546252851901731829769926641461973672738579849939521659597415246169573915622463733421994219145750547960246898881670943304015918313864517924819495498919612938126175093333364458406493692564474372918222096315914417959614692706735066284636225521607071136428939427645528390856579481204876536638560008201003442709745063455776782526956141953158315942818741638337781218959745130700973345838322563325373176476146906906323410873502492690621406644606782540533355811057922830967861562644588007391530034347693876896421518637473928754899097904922951746527584088330232075797255969076168462942510181109782190993324632473151163097183888299139267828166045802326706942268414574535928554669907582807970785445898154969662672283394528091073581686548126567288629894486444043677312862532955133413605883330052158287090581423602355654109675767404810773070353512511543040764979303337918452828912142236658446647491486479195421162391957680450146239654134297272932712082767661057524634283104966621653065738321640009062666398613245256113082590477652097651906855393573699282240167435237314361673586143868820837408318903278820001563981732080021803077151556182754809673212318577376488819549134874783889701968168569501151274356740674138545348966153273983157071125976055422673578215931489675761518953571612789962421246979567057418021584795857849223295250428594766967633896022444414253223329391506829349987492256824490791105006990717613079299014797571338803929732559351844383125492895723255296294822593380947676694158597501386345757616841744398156391848569397695167745433326554160804585652597825339965622672409383331768494657939691149217390520429277530222700246112732850769885713067748741250736459268958011896682739154893833551459648968730549537507956536632534303211527821978765637347915288251240470297390349891724195437040589892988966378134259270103266207552184058371258488166456203416179723014393436549111372900324433869536973705739717998330113183561894482509918107799594158665495029350786965851705667991998417662700302109187933234839268275184841622363139224484114134061038465202671485624607782682544951859662650163314689658395297267531266998445435406059692938957070126829818746621319135324596930783610772818912249133840984924346318994445991036781028567451909174126117698587423407175598702393878837949653591512871966472774837343945878470315369446640078936692230888545374404306842586662816868241471479553000535932112204821169295620881167759088976222944038689049218449962661273221001979483131063219543162994373131917074436144159961667665688929864105191695915314860369714879833945696978825234899499498864328955193790961583957060260979152093787930146050516844187945432177682660755098780969285648636670507137429726361574226649354567649855915099149581387728398282448490109225168651227792561956332466312346870952450846493015461895606759886920038696071627179458293255002187653861895458828635075664757219035591287780135691187630097662379240260343676836030465686676173890504662902991691763386119201496876585641341938314319112087557788997009034570947274549000853011419523205917010918320623454063776937755335706893434969127498407780853047578050114799322132492942915055556092306580573277015063380427880566927695609906372221391179731955009060642455715833645510421422495604990549526556957347411640688909761743769959552103450424536913142023746295598591025377857219456094392242319382330811489208826929186664360632197485097956677335286819309691198671939476171888713305249566224550999336619842954564463131663875256288501765552295351802486649117506072278158163331300654849526214444464608106354167216150883728756932423509436073929028340718423608599930850815183607828610846710142611217264431701741613159807205646285771484877320096323786092418476419187109436883035734144809573673266594692756095831516681584148883346998045145969267111895313402132374392913672529057181117325710395166511204648554718163096686309782013108460860723313428132967620686858445194506317708750021895824479929383972449850922140590582014956717047235876441062557538072678681293212255877487346606999741041811086242492184054915147446927474439524150246477119964937662482011749334396695812338314932448589856749949835077163622819118636630565276333028539630124951630436771527668399811394373612944575257957464112344351689499262291183398770420481363150223963277942262929832345679511518865093747964502984922079684847826769513669114356422326880892113746188693418628465771270217854199027701465490942020645282680057218542169225475144699544740951289252052254319108695680792922685288219133124476397529513767859636367199714029651401511891821387674175765422118043394961320805690072300695178098448892301938602638059195066870640055760451130391771967528176014569559585925856404747002384375292558299515843231119676941866184976376789146650783788976474538146985578716807700629823949656779200314516897373167419128227314918758885574914096723906611107091556064550120073925831862546426548271689994882374978795215128723381638568749825765637232506903603312876458682591964275342233511625676774689542691021600856331489866325475532395094280795180422616291630016121353847899689553811287295124484928454116052180111025131085666488493231025981931983924048887367411426606267041736691792594373585774170167955220698925557436465225979603464966680316316571248401072884145562748327817637843626305237378285168995019472892359375393088760066624158481630830171955729610114906026929868912060547642475349599256012536522011326978642170298080735498371573967599796282868311327443839491325973258905910563879969239126342001155460983950439634872121514883712034856285867943697288929343644738562504135523716097490219106739981009055382842797528929286731723083165427917650425364672533543222536455393993246247611799938017158313465322194126512185967218729679443784944598321732469207306748515557298082647291171672524061104177877032563083710629663228106211113477530829535702235387042063742757197747507945185056297399040464556744120267240173358633029752362158503981603614532984553537304686179746008168453480412759830489463343752253647992661891553127453055129937399454538714655784187285458111320893595108350308859752787380337113346658947454826630880142167783354707983020695738765653336744762237664359376692091612062763881431404129659118132965400862210835676328024918970198970900373288143661767753017932584711499898546369903686831524442095420016740224873896973952802913517059952081137399575666045914302355380540595179322397651757439679573237502316865202435628772205636829068289652899322347483134707712633140135107793903652034211154943476820398084759744797012052016682657252665672348437527541694276147471862666207908413906994112439357236287120412332306786833246630763557769917496128424983121076168306713219437243751387767304301763564294901953066799457670883657113694601254382694580156317419839801364755642845918468566464239159293740246256382455216635773846359899691708861106958631937818962918933826305321605084416036845159927164058542788789464247751986873491635199281394725645013780417900438539682644893807876179616886052930032519164291880891025201815868366961825723064402494045326681656941254779250712774444926492090288610494146448618913546249675529013197117226797153414123818550820749856484017414893445214943281331666014734167580138383055494519879117486056507689518282452374720338244421158243739657523836800076966087152113290202884451590773470892291116663035934367541624218356857763543462931511141922562412201969226594618334029221228029546695748846703431726243269305036519603117383379357568664392851953868411611851732955304409671529187572889370734635287192694918385835437940612274424642115332680907351458575109281761195711237071829999190496598428997337402967699560713194063430631295586969809321514192942044745464943716064779959117475734970768278244964676715081386575903952187866576366954250849279317575882948489709787339122387604163551212157571964454563550272327665621403848141569766805175122182317824485176826754553917377262683681492407799837395929938104207240320139852356175097061357201671326766048302807592865523253993012927468435786677060634414668208644970853761691101320912894155395336177541070971341548040417028485116212375265239945303390924845773152570931471492002976545232685100022887565391547415623123090855589530555777267039192990230910310745027058950150147219135894877061164023166315771090193668497978352628713932323127258427887714490747210031345811493338318158467503774499336919779718392854821666535566693744179702418001308197896285421049037692439253743093084392426641771645114442110717412569056929162557181349677401707926609842667660568586372937218238962363600127516241217746992010894443111175703530354960595262994222886501528868573848016209250280242680414660274865136357966766276230404001321957377199439642986035759697547429321082174319330423392861484238239747978651312717941840228626783095455878038564941531471290874892710243764190181455254926817133179300844839814172846479695869077931237923448503961185817461235487432040897618142938512705843219509024741215195152280747199382820686989582717346139643375128726992239463865014391527608353927220769141244336518964139596024755084927376818308816404150518427431819228290952518226973053266337200751167064896710561166129714190127853605473269573654682449846101667189012179971062162268442162956045992312517349351976106023359936677985318090419603624405276660791003521675221072253002597016839242758046904368966645877999717616261548340331556270309617668196683041635252640280620510624474371715042738335857360667016678624378775731161287774606954735583126929366523697253152097787060802742799266899475168967206641362196601528951399564093305530432119295418549315508706339849537172016572531911962219475756039838825454608848828984159969347366876050577728264092604322247974153277883114272239681148232694890322517931035846443671684777901435568543917999135824409833447037995181845932870673465766361745129669284152126238142878714567350392178327118191578144681328490251199032521406356297253993525465926786590553852629646049954386920525832193839149987512188928986135370162382775740554405542704819268416885316419802491661026348816012355295918229725369381312226267544376955135428098980775949417223486710970567861451937262811287450183269069593648474876598554193751653531749977077982903837470478201969534391827915719337230667648557990190478396486771165364942436156424861161348744031625822349457759259832955337787779788623111472079857666846651889148644948864056410845980423214724328286419217916304720183568218257719476344207018278044851911079019232864450388828097940065878623960532747351490434222208715302113200187220226295428577925164589817893751648529675961943161804144470756419631994571048288735603757830029680543103063949901249079284951423839679655015168511565390857770745313569842903242897855958324497591341553909374577173574570481568364452387120971568500179628977604801263313964155051594804282094440827262786461075400055763591894065973035809206033546285074000672661548356075583954679898102970345490656831527660808728937990313925576708353134893273977689351500733219445850785412976779932428816675164373978779823192525396212280594573091040984001111412997459839833791750054106750165161173047909468463953705350811433254169844291601702529794508149008815738450857891918680227967423792111377494662022689965353474125573409979521633570152515146921503496689282801022157050649303771648528575705711972601684222289679435022532815593747187068293140563446314264158871727543755188896121498299988259187867787695134297260862943093320081563536138623457949181472118496294974667401878521596997352125296378573563651285935223190563521326128379366621398029507683445269653095741235081196709557756646895977158025425795246532341976352063281049919844419164587827869460867196522493199504737557970140594041525774943408870669529562143882940824991502911670235401188553700527755754718788768362758534501456432629419939831494108536121723312804389987458459988319346794719914814277975340370619362959678265723444229655549198962366485107334557008355117266826404041877073122087759065131588313721154856484521882749797613385632422049707379239539097525051762377460264753631189003398696924742242205425996104793772809851462434184099938224636386445266832638998205511184546219451525859868054161762167467096664636947967485489024640790876535315926388197809571054594866487377941395274209747575299834639581941224807694124924431010339283945419883301919641561516967973465086861335262853232039665245166400558145308828293869685530355633519527961902943501767326935584968297223495985064256875288595555732835718699661251129116281851702315289167374702186073304408414072638345933126524250213859927343038810159604143307517599506977291674744948988785230954434720886278248560450540657071629104599252712552050864867804168883345674112753470265659799673433193567874287546019471516510342814960512480050381685519838158790927025325976071901937217447406471697274727747006513685350146930507194972432237767245879815118038505905764181042194795075713552203174848929944950345167961764738291229380537341652843311625392621205383293451174623231645205127968512043661516450959307367194676981466681184171036111005588677396684591506781645713901401359828994308987406469833648843571882923949919351685878634050379660946293603489588702730652648956215982336893583125829223211198293806015268359337826197597455654907246305607608571478993072940192165949947745561703996217354655797838753991575518645147634947579588663909759868915653925910039126461531697714272540859868253320723637595686836845033647648631721729612947798746570352360909983579280598169460214325840840299890562869410211967111518329920500819158467701837257502100177778685285735706279515596094910682116126206360590627542073389695930974965403989947554375722416061875114408535700992855203429116638596543801120672303835241229438059922945321202644251766280416015196154143210459354388021479511846513718229389447837929451327226097445235249788019464356237421815442498989487857124945692652163097062412960306776568675626155385072027789242698543631562597406833658070193570650588324440268469035730603833979077903491283167653558056459375067836568213046493049270127638318051672170286494742980779473425943570747771690685037845008116836994106829019459235535752419383584176965125101498518647433721860576345875265212054763561937512446243907611240928314913499646050198215662437103251342872099799986324876903023782568497761466360576983684850083339844564178235875569996822203740032337201155035444435380924750326778771673488264239237024488356852795000224059325870297991019991734682495258393829295577248977683542722635932084799065233641212566919986964034704479320874914105720851259061157487058293130998839635941954894746499393652662953206730724752406544557781901050394606169085672586566210908242278798342424677479463085378674748350856717778640239546244188139113537503754553130729233123819953878960690739351567519222163381278829486559793677164336597335191661811501700691492849612998599459190274191113409759251871454052170294976528445043716517396937431821953443271007658486553189571336433841200707743445990672832013092881239348252221255726474417672279495913906681425332995861407225296179282753835491320617738412265447326105772658112100558647696092935793198453954337556309993706143686649839686571265541114381559568176695187660140775749192819649978663180286977559072444775529448199943203995598969171084234559654998068273639229133622433198283411354119605617758701046527014948779043980649624271932852250326892370874482495951685397834985339427945878425246492347828170501121335838927911252332568814728484355856612154472675102597778482977176877644597057015686911129816471403098717053752298568644395819312097737472857156724114684158485711713586476873893474175857223839679235478677996153517172216978286188025170591445330545315728624497697669364712541178320155715690479567499828587444098175331068096465023042330910577308586503292369969347665415438471835770919999612061568946815830340169718640319073265916981865779011819760171430329944782135976448467068527931966620679325579033581951701488252148932511426032846860454749790750418047167364178431125819446403133336088300943692792695525120916613179200239963543918308502634246878307208285603534652474065713281020584825788724032990374581570255741534183615992228122389501661706383115090848020286939621949894895183018210291074188694844291195722736006242695813323692078734093926367581393338433679272598535535692160293462956657704547733563851094435238049059629394298645324125217155501754263736181248839421573862321813831001315388110229591118093417477584311343847018668121154466477848348906035420598835980336484841187572295242928362053180751638110626339490165513358173506770356401629172757608236553482684807345594618565984359632012192464951579238598669979023714407313688969704745069598295128907604852268862829909088287061154790436006958709408269836446043182406109362787629820948752346893153159201212850110122847979057268957261562126720334082584337575842936336219919931281828921776608914144310033243637026334910037183927064322922261397279135127420996222366239958144507035891058735330943033669556566988842662874851328001733579498466677648678585341096916701573032975642951557546312983468948411939193650545852966347868245610594923056659651556541545246714999457181611425744819715625407312119759254471234302228187966233947174239426903618133315881334269395383732787239866751719951966140775912320271082469012725219792949678657996329909444701388846667994171906558234769814739204915270577720396345385736017016288659881212457019632628733474817248339819186112378946636359073786432587022896825883544387967460515422034956133383574505410062498353562985740053605202344133624466110146070016105811458886840578583873742059570743045083654287499693421941245615419790782806005544388196196590189481291918462485957465612034701111121138329074311241008864412159709771441852647499264769022010366605506143769819791735570806238004210513611154784219685987626503649042883206986340818694345326558013531970531437770781681187703502508463513201977559375271576324392373639803443821698564728102043472638040891084424750935996247499895659990521511722177233031715105948718118140782695225308296925427609205917910219917843663209843265469042719253162603103949879512618306611628479657802385585222558349244069149609672788978294816303505580595565535655689178522875711952963013682476408582515945331305450768474077506953448488420527038881653452373138502589987699215107472821767843036788780643569875018654033310515843855016422111928199820651668438955178992249026856983884559461815297138161100984813703849347258258898328272940821471825145560771511258669844265652236678372993720349489779267461990876852669165229014247250717395666646319815551311125264151147417182538802096949141146371501338727508997780790747678383266009488509364710187606235978276770750122283409310196864831626799790723590822766996312507419313409991729818213199683774372568581297869168674519357261776453275202783628035529673295354017931443581819791235390327749868627629190903666569061134727241489784473830945418704886958075715587387024574555479723434388120377567054201667801122156486175324230453512644264935754788579897852636270923551903728626502530327667052418291375003360952743292962786610817227529115351316418566166999334234451360676796219583541356893240044704989942178244758904051615755642581629399203047700189755874033477117463813012161585150887831939885165226170408698156665756422443340419353027148610868510532636430552216086296332534808517010761404973670729648517275110406456526319413338780276796122931469947807154754082740865760218154513670006122336903955954832122012018034753542867065757713164046509796479745565776612556316841827793633745493576256518030422946477739121275145372079072214023944158475107163195451957259462487932668965298902108948124161105327621165763776333942491667196164793758856179153516305589042307535540819357059532486903746196757231181974051282435196653380917091998198789565555544379146181891984527826734996893950547494876915513848145282179195931191626695757733428045314514256245152511122860818053762417868200331159199812467597765159117517056031659731771331327690728111905784298563749848179895792758900241701088176697340696834323518393644592847634253399454795615286597163553118175741295149239142823117038649284719575671747320708778139851375571004065102934081743856146346567244251866217857300934654747586436155423310526534481944256289794848196925836299992355555282073249427306287518049930275043316727882409521638637085794631301931290557483078788628991206543176751360830786133768149698656266439236508735094750686484416339234816633662428314963756458385797123873963159827635597179794422322827470459086549492762366921182264699475643571990068397965933395936884107617987841217438968273703623843341759308929169557938148577978366025085527155114371526303850093742281076158078903695791155235226711636667868880012676968272650153500234717567383620981174580857589457027297259354120642452390104484606631523724176828490165483187065894964225096416387665141348146983824285068339550296895197592623361646264516357049810338360454226688909841047548289577810644096517859996540367886404971134732933682899803862796192309010524778210217593082516929199151120182346483910153245252441729789426029429966287692909890754302995382343065407562528277968707834029867214267845494075854429754333634753368867126287457547252114667569585695778728413535843488982270229096361597712606767027638974685293756010373296419909368112242444029623389867741893712749184109920524163593771717464127396095688063138287705742990363723058109774147253480456363106439012367992843778656596570473104267696587954493403829499801383660311415379417105605247232093460199531309755626714016659990369882353277527472357199518015938534277062691670108610653580072262927263626908813675655793775691656485974894165480047588695983165011477323492341499687385007332582148422084264073892499385995882629736337095693552537390285670684621175673590474252902553253144944813758634767509078747769459897388259144802859786883729467142284761079028218542502587066164523125509054611406220436541919909743080884829114990720092847998672857189198646999365738895993128159323454595391471008431125383546622796730876115321794340519508698521394828293529132140512065296966210905342145978671053901948988633910061776035294091471608663232995782623065753795263388771242736829986621748590135316033519277049562209609228920787248494767701543412691582575815748947391026497023073734946589084045878818699583752447286298521977466084135679066094528224378378320457907863807678770442145784647235366920717474167469245203814204739738452631583422198782018721964100625353931187567949754618712335332910658225270122878439608721134910142989882666426730516063719640205753358888781866054760167525339809637185245766243596585473519416533872249811409202498118349221971002540590762295290389358368164529770261939869710565603568985143562501929299409920368549993859693210831213822554675317461526197499484194209971426760358634898995171629765412998716696994536072726110726698282504652132605592941053181673624898986876962128682563880939031131157440630262110479401407248293451273617047972914891608965471549168570333195295508699432697203226260891599483800560500444629310570462935888899525333460893045654989223962532824908049737079288697652378985768069322634245498775285703260354214794434033812651853715272019439181799222338531762580971339719497311965204863963109819607393334812921971513585860985058190378031006329331182230753413670861250677710317295549569250450341077240395688580407888269355842895002720272703758809031552614638886981846469918251735636074903506760002096099631109234477345934791625621728059041331096478542666275848767906093598572822675900622994275390784032052701382861328674287431743835181453519555144948394112149124484192581678044536606505894617225197182538169748320593068939751181600767196094755883118129505792122018393203278641496676586089751829782719857385700564126278485346329763675132899148149308235774829527091347191265338605299509286241684248968698027939047936793633526104689909640286602749301452957949044868728535143321990246239926792057696747078865354566998024404768049963282330648376664037376772337280813286740136139620124433279605013863133461187983515143745103654672210436038701293574903192817974848338062604705606684275188750794165039424887111623651885761959848116418733246475368174675967860349392219649505344136803182968378504843523638439509705357943550330685319933253147868130054498497491156234527693192521731678971637814417684283699278118726814398572706602491247317426579664937711885066103951360167482560373101315978169711372422210077666944778178761245040233688560899657587977052491217926993973614039503627040428371244687128208812982474566679183644011331884139193744473001028557386329921299094513833496496802407424513827068489954395349502489810788295461886943356572718285428244318194996224590097440471353857785641978950351522552657095042582361494830399614652517768911766986822262790355958382042624197256205338435750251393855199180817979463304788166676480078747081586994992964124442750091902623567230595643814366140855063521961367946424529712643362895720510881020530432436726616978820674770967835831288029231195063215282009028504478946937465461373521053065067375069919339760363008269256117346447634779411283985973832372697513385397033036708350223704304435094028569833245411362995289113878479467114046091918367873221425806343330317888731594250453132623292968527377873806084925708194675616677595905938077723962347393426335818146947359166578816548489882844533295361680405663626953718672036246815221246932845056720136177712229807282929649945635531190794827081837172634763872406847676293725329343792912278697660953592439282221776031102764503057178967749129215123223844362485329435496374773980085686926553655692925862882689968761789533255127534791384668528509825051715093655536653796432617678695110627020474959446890393997802136993659274126371499999688171609055630929423462200571395087209441566774534021674912502994805288765211932238620803244251790451192131799920604980210334462555265888818631216098481203363098567589269671892893458490843928565968409948348565812966877739456118516546356552670689457843589928420682941570265128122084934484268813969877654522280451699620412417786612378821254941329958175634169942544929639343821567403756926062514969811642104501810819261435118420704736978550038727194037099193337390539986102542864732924316776448070798757376893360653643771960283000144065958628429344352385412907321876694954136892113194098274451916681095934043349718550539944192999944918765677707145787248558318760514950235760811078723243712371982660694918932699876693351342089498267509268874487464196615780888377855605857649326787895110820164384598121610669776067938184334350254885947897578277148141724626496239079794761507472300684003635815817172525271848331144683895651522251122560352747468637199037878962263387751218742549142898301646295726123181279877614468786869788991186765343819509359245323642784155164067657632824131300614186448536423501849575338666112421083464318895222430885270888346343885758423520743604698851261075499558471728952665841918313447808011335962113033162836283408145453191985894029704555852945904336056198851145794632003622443826463563713555629744640129548875310043823844021552501536321890910837395845189875879850965578366134133594950487059719166758797521471154678120855998574274396558748522163206768978389116835137778941342326692920349755093713671130471798476967057158643028992059635179236716790862161902261410171964507693673583228125215588904520908056563625531228697713806382472878853862329847353890631875433425120614894802476016699534198498428541225792158130276700155472884158175424153119978258089599661881903620753180920606923906854515406383612526329872549091396827280977208785123602028081147558498738229591912421863643663798082319674641798618603985320985003219916309021538291084705641405882806632438539633759455672550439785963838626064620898282728470117692514512722212192672670490191433374403554569814952938084241149355093553063321040402416570070964139722649266770628534441104367227465978943823499101234602917055982269278658163494124319867085920373422899890433593596672090728911549980758587916066386250500029941231212032992947803685544088727837114727256890867320975082820466473023852841539557300081808814610451381586916607596496470475997911597744416569989801729295422358815402512211514586656064911801886092446984201867786034262178570191669544723795465821304774529574205555178387958399159955696898492386783596393729965862840949249505152756113612800918446512362666680122008856251915995187531694924785894317382714552441319669320619598778932931391091998416412121712069020593579758121131139697744887641952245832756461408342136280383648049330446388135074767315373262641797215845355664001319324928459632070279762215290991227488167567022603101978659297471574742565449423997635353292635409010142263377822777493119398952372468639763496345863194515918219295458665091114110143132251121828166484469907947550175553416929931898583793616884202530779545694935781971202697749605524021379132985018887459296631100375289948238858999653572201379918922317611063740848994140427271284404688527933961307184756616527276972672543165996908312522839648247774329486651227810003370294489030744857294804127289374469225700955438174547289423260188200034286772779195507909108221884483558328834697232426490164810858323391722577111854469229945068269542979296091569249074799487405559394560325091159402621184584009618831026431468060917367656153101161143885815552594003937926013860279303858298280268383600267001685654268994569088171504472844744472216758281538971400872643887098875211205446556151926671223813962731450178232191454328185110180172727165125699139382316388334513155642297304324272541420227164663848978878345342297324128736663497774308239286541832315131590108307383694195900764308216418582569393919744601003625143983504097522995210326539448887326445524672307587061295487552961778871536908765101075451790575366774957848900142435642561304578641797862792321798306425633938325254258612458060601646074862696474926046771448867553226889212473216343994666590775458437431270655339996445820442319905903656487820263790126713472753186450279388326210532403793800363541530802134064401444574004457559710371987126096495540983199954200164412696800388474161922350039494909620191850754782891368343549114496081159177130341246888764698741839102141560557405323678529393156569368328593606987927831704912908786184285768917131515134191853112062550489280443583352743124990637046193028785012315853145152775123956936631115996311548042177831482676597339001586398620581015444418339595176098200765659906575680078653716608057167227408517783849712084432224163048889764367665206321951399406966509997445393035258466966066663700339246185293357692924738449387797735746582298739592248226293816608104271518479205521893147973572309801147821351762653988389565955666014133734858791262371173816231147925035516651755649177004628725828628935795753618439774467648222348508838904277954324450297341445447473034488732599222828310961961943955796082215477389058289406903936887631933999180666659501793892055300329796431097935726302473972102504525456602892823786899992249355863398361676681457079628075633956459250643920513346124579570722771035342622188178276858616259367616189939338662884432808699273461719748078834054168822466513312064136776581448396918353707745296201112204999502138951543207963531156294921484184619342487996966181559735745032788262901648674243044062504443220593950126398156215516721654706763451861802589088259583380139097535112724819541642735556331856133484989157409469052379742040286016252547264795773658215489938489255722228437866534778034926452670639283068333166127529902453517557744393184492575157084118930376165220588641053124938851180642021030942314361811150618345604187770145838327251615159438257645113066796666983697599260452655808470316887702183919450456739347824664563302733339562237352880043007015319629299160485918696471235785887147839769103705592904981968898575684853184701246391774320492053668027560896660553751246623586493823365204153185617429189153680041838051418136023533379979648393280674531114795173698937606081305121966702695404607479802216193498141989710698510207827102910156664316041184000347459237464739637123793786577155045448538470933690375102795944315475179674562770646486294618704993585572491295702772839880311614499445257272256822848217237288754295795536217257247028165517374735683663380437020766050845599287206237881018771389201573942411368608688587598289528328788828741012591548249714242860584665542993944871431697789968962300453147013303563426067994524032088829652143965728337486017807111462882153814254074754345757492301497316882302041338526675182683778895339594770906619031303014762511938828893383704681572169356903972178345833025525050436538116384988786347378785633512435416055613064756203691154864352248157077027755649193720619704950916171399448762315459419283985464195650461298603724544166481067117636952732990544330019405237474747717732263144139742838071048598270586630681707031753522144558742742138136899071242699301563847179846643673349395438868696023596779484309395423363093865207868730636683345851711138454728623720981874711276725629635148505916006652134386685786504544999918769262476774136671151640173199469382730222482459142184419482336271724557156697637685297075858554785401438341878075388764889070518526246732485737251230553680251855051235898719699667621515040661940300480326388616078099577776547820744733011376523108262148169571111170129005642031456622761697773853762643858459378188352692523128428735121047814170784432363570464984443623215304580834657769681184146145746450309975508949305201884054875246230215467900644398800385875703532074169693178006157369461662908756140350181361514074144713278658974321654844235059104999548674927149248790552565965878324205905729687975450716777557485574673389486483971267172684652633287100559158490833849301456637086617681780975986898414450704968560826970781534137430180251029510266676998127528903000860896319303266741233576894459149365024855834968455653729286776541763552595387055476888551328783759890968354243649997373044046593657718995639721552568743784646363781761283366586406196447003955510844721850160351683634519830006462415778182329995592263584844224581305200502016890048298119732645887177383305948001139584625602610465949648509257714495895114967054546855010318991645641575995984532230645563232564864293738354537801098367706268093214533435309109476547136374221630513511857769681282374307096916993744916409539722404454515385522336707064127435089013906117715101891135916329056143114815929038793091985902488302350692681629814917184306130995232338146530347734180352531194783406493939268185892151470248705512900219981419770789476034144858832500934336450684728862224219894121805118690201527528658917462753567496343956339742567289539224990561057741890829583294044383759889015552424826706198218941806816793858765263097354815621640557366167782798685100816620313763960610164733237334998751312450198688041212856457047375723361131515654474358822134736674333304647888362319075731735588731244342894728390401198289156656817153977616210214790788938031898243449328776360174150170377493714117870313257149610381970137153782425613323903977679534797344083578839757169772979629916174124181863909228146615741637158537468784296421556342243732790351909714115541317628833663157450572519450480103149894388834393653669204146139829290435321834252413780766325144375814971928536640661316230272003107680344174663754628326004351765198380056543896358651482737629937980142569962314827107138452544045686037313496988163388349489385421329686729312969136576613679151187761016648011852283322607940745298685312325454528588526020121888091497689659166416304581803738458952027693118471066674337935276051198606423373306527541456230283353146991501152493860805208986947454965860841546375015835421461182962706202818516666835541348269810539739711331349305320005279484096386555018372265317490222799062159281677507565347265488794717744323981669729115482346417599896004248945528114577881085045512723476429739238277207145340413064059805981824542794427005184636101061924850142863830501262602406901711810601266309495446908439858111326639166821165574315388429673955426448748607044636330782335886193467957184425230804745661239150971842580474401297053552164874411154566437320436598711820222910722577374097961858741599154463497586962029688336923219420928563310685906689006603351440383634536631316849426920127248746958243484213515000435749368797193257655133099148612932976957625843994629856815584170504022215499813260159743136425261102173650057657843366965189229446351454386192378325092361286397557108252736586505028950550059516211831113746962449593527891310749179577918777301416899009531848286756199795803740672617818988341150525081319557502982165113614123633395879907195468486979797281631287699637199010458592918617437597221337210302850764608141343661772957111257549223854130398453924519823313789575994111894028664705697471648444384859280723289316595602881200941556134543166545942426164738346931204756883475521684150726275918995477889370210891276144612761073310257979102265192352307027581255030579890159098362439983381061178603556920906911568334657146720929010206640757104508396323219402026429610117471531611100624002214249652388836526990794730018791653117300741376354074795046645085178361204984154747778914288140656357292300919950179588746720198440682928488679067815980185709546364780335395567732017356712116796027037273803723354072137123567975235126454386315646813198733286503685058939652449105420707014780247922574841352453148899900507399963620937272568179298617692568874754363028977499964080245344833780275591177889958972778175217322271296726279904411827311155462658813941335882564186013434832711207611161248663951041150503853334431111273237564872195618572408856739786485735992965709898844545489195784640432577249966593784617105286980586393196522437588210589467384589798957844315056156773369826313233837521383885678157267404382706921735580945101570424954594647185449734216325835636087551184557598989894502879298796772401780848486759674027653833473493749857587218325961456451710262919941998299072533961923960281239476467891333914337572005674412679463213182093848679482396234014390130520930006402254426297506408918485304074688379936047590025444518462651907817472170779405738529553627295214121984702713267868367376260176685410250939422255013551608452784796098455168793140460510304025714288305472948338429152477108936241853725978271628397474734265781350490106019933889356702314044700979732579628798144204675634525943170431914238534570216075437025108834765583860658769059141474064057485671892551421168555161065821657375179437722572899364131683317974297324191141049538584206995854671002462605491467726400265452424643377954833226198944331603481953642637495749532096183795224523799994172600978958368193717673340166977595221589870214894147517929739142906415612928232199516505612657089846835929155972401462220120930995758248035723865942777841190613368139961535685885564743875764983745089845254202741342009991513450640409425632559009612647482753543429351282328295536260341345171685320244256785870740610616260041318852395917321672484510480369513833308335200351135493561195294821820813342494426155447683706073305459707748173937892797870935157696675251830996704501172974478568548825257212422411574469469572979213911508881132900339469230113447010029407071289295821446297751345963613485267896648892556641554201286782775142795220503620304450502591923241198670687022095600183431242899867555326136917139688442266290219843920803260630615196157095228533265532671664409015250555263211114202255605782228935248201377861100795398675780855620160346317653345539739204231499930625281670523171379208408214427261893688390922295427495129106486725389589422851397577159277016978879043887398318258649682586048489083297942100381697959276287091519988497658206113784512349506137443132672872383402276621984167939669836806921844202324005199825239990466193009910613023083392854429754792366442232938834484969902776971639809075308693994966761301991795640400398388971813803995384176635379264696913045161454198112925379264096483361964600485832251061822250903759400906958987649515329631819204960009767045509059302243196483611473879149596514728655546212013173472145413560251348527424123496700859785322093736087314473825375242377894330597034576411985329198373771358641194229700639795169696571496813784914331665567750205223462792282938145539486191432407112532912316226999618351897132327294403545151847506304169918469522424453999911971518702769290214769134997664230089617185455394536686975391813414598100738444547945504661556517774581469228141187776960267421954150912841838688151991415964027307636832287531733177489381936756215277292472681659051796228673984622749044506004287278757752110966585124024723738367285109740518846956237433832274092787086050094233629171372824382839996864919329214939815484769617826217043941386489301512764766518756488714088530258987815204581723649085134675169017147320119877958957405829993550574603461654894279869204198734864700925561357352920972446858244810374616229905550624872640550730792836729268330931846588241591371664352550951629882937626281381338989383053144041285191235115732160606001625221660376196803299042682030233339838719648548367470794677102837537281852945872089940736315541291995997209495044501999762054441182156813165422355582231491346709343996598773758281052393705131103297750577489599183535191767442727122797720266513891639396614393762923965138407459867843135098559538572363259056823273481264102905441205402126179778666965576512238643245512413392862506881235074656583033318739246827693461176735693524732371317167988288372723685233970622215770688866173748657552326323948187694722672003901551461204282611668295413849560991922063471856594946059838190964667941483942229402758041900573659563654083695694242980781698299618622864953436757744222886958220214819661011778993099401262764961840602920425459473856345302231646866788962278519155032565549211312736031698845642897191018858829202048875495029231765379152071741028383781098162884612014623509666697621752591226303766684025763304761313688154428175993266236738247434965177019087055206993997264352745344466511176821548118315076033111238742144722968371043597862983926045189280357711197010560422096778661994746520974776501151969804874355563582230975546198748361628450034885066443741637343897913878535667540193820947229986945127299726161648756281117631932423237384703171801760276195569120856474486237843017730310563149367805362566510062294462858393162185376256971513484662839182491021167252887900217335891781565935329186667787916407997775381311109772598127778731751884511649263694234564733673538382095917155972191139952036915330764539121380079710363921474013490500082308496716813799505451837178199649025617237667547644915845931200688468845636135972818633391502166402839994925015403211083398089022768837044834824499511278962840528498287613660542045975289081289883017220448481095574973261251131372449774097019775929925193357477785866810995404108444808359384178146696307934105904185338552416748786189922625739647967501063627877752370669496165423208317147762995601572435475417648590826724521064334943845319531694526640973221127226094446389359829153865037568283483166946518588435041373726819165364705692344764557335343623170987339021351641610585836674000971313394984719083030720287297217560599172339435861673885716330323825646724454535058983291356573215503167408973923359816186355948364976305080804945176863031294099225354991968936662861928398858964505545363070767322055969603820811975936790966978998456147463939561593097415524302653570860926129300612445257066981290554890694894997571064907363913092492012932121734510869182042968554260197892618158477312278264399427150591881232326062827772923365843982687583713731124959966777095231668918553965296365988530665169295575098413987600031644685640481454818602692978442810477781946292663597462990356645399644697095019795634111395207567068946802441479394567469553511748865287275049875183928112372365547901113561122261878349756598554452254404284723295965272360852627952819731805427608807268091021392552198875044634856848593186881851911355186629903334426817516072515951024797949551150720763311206784965714200698243542356715670928277055843859124469084735256083432869960680529939161477316227571649451331883965768384229158437438456418624028344817992447148431456041782619405759069052588357723750952528981224189927591674464238158808786528322188068044473389313527652629954142077815426395642092922241632837132675673025466414303965381587237136311943216199207281182117515165148833738033779482421215259613838961585018376463696377479806669127694598122207609096433243322798068235197112135715672779418285704914892656128892141064119665882070250454265137675070744799936261136381132423087098489672636072403954650218815547965085947122249970246264531065332740344343277405861215582972189834406440465375001569153464970311611358458282527050635996577682294238153720619110628691444248864518441696854830386188818735863677855736308261548053781149224120477948157883007113060813976837856068969986114958775445055504609704152336373723579929547338773719173422378661642850747929880422680063969651998513979028253884735511956853141225626888196127745583083437233715564501287099712861490521552150061328814787063857120655799662211336240353848407292853388650720938236083180396155772268414699284288738142790487922278303946458967511466969433428708394309864867588111479502029358620261294044620468059973591948674430088893077855567820995073878294816727930642696276375669538094962403175312280549324174477484713987681677459313981923811123157899784813511695379455308384531896592340613371515447965855075304137493212589735536896797854906634684542027383815554588167500361895297942642354101051392655516960645338051585279466214497768317139869569066405644205685127988086279398153865980077129421957030422066831923260420489882569036299822511448984852520470749796891270385814605216794989942196844335913104689987982519263432445410756456937570774721824165180759469261089667556194107953816101299209740433180362965845538800632788222953947599982999789961629237644895817265258089356832451078575578907096709389174577242502319870596438524957097208836938916223003211441704694518684796164563930135337757838690864389716906738637392291039492270379716330222151623935086610763367275413136821722463125387948826984595227286981763842266669951289601853087943942124947914645055098654954444674542620193286373834845587579717666993155088124018453967983270479074431319591077513340530624589983381229886342868738498737513875705458389721652013685532708318930073744359168839327647503787252151405444085301150838681381320605488514520749168407694808196527294096021843519384173063763372960599907397275497759528657060555656832039554740531166978118909310748170529098999945312381427546314328544165690814065780559722395356017566407263991716206252598361812411302233472702540442340121256605312478923116473976030465932575977022625132242212251913563002522367749867893452862438984836376543991419257064014029767046338367528111917079861097849782457914196876821002996578342996882833944316106891672201942286762887818813066627520472421435605128447311573256557887268600453729282409611317811530904723723526194862269482225843931334135552427492668343389648164272772988245173758437523679877313983556639375256396727681671242621967546916122185942886780931873769325739736120242485524875981873545204773810564920670861288492438349773752616855916974915964498228730524798988156598259044526288751905976715242232855346947015893794403083573349781789770034460511343172791864513503623666687948297768704147122885132770155699559135156986400167279425037975491946099710829314382856969532970392149456661460605448333958152801127180698527394922485756863204612518662134415166162762667961018350122099808297582387663362533557792646439205404465920310720844267271981420867283965816381767272193492515033892781716011283641972600922257704639250220809997859040153606655069423416593828966358429994570577558187963308497706009252931126926919238042083170069565883637272548403430323722045586147103360313278941961803458884152107663859688932727605897758887787783266071504721002866383035187501195109169505928781778586572632214323485915181339754968318383681597761473313797631850083686545614970026315383118228399978867345833185424158731165998317031089176185154566607301887263404948881438077755557837136001066336710412651821495251411901545569932161199072041726853312283742714288718842011856829384177968436259489106415427859700312135948823461520989838220968566650546145924015931148352398272433541448771546958768130228858751968691208897388897078647553382557566879558006318782946533854048926021489789432683124878320580489810870427833788741637344120186411121072249188498626194817519151338333456326681191864126682336951734538901581557801728351698136276755317363853448798388141407694936924404485911675526742643637978753753726173184802993846753925855425345481620637139846942152213325672395172302778117889948412867729614949532499958257084439338024348509283459088770461643534127934431454514174324751883256552762326583339444536014515071541851337327356222648550104015599978057243406679928214945830904075747903163375752008260016759286186564149007915918713811059752021599342269929393901812075877195091333786428939312361521864298948982088437781686455516854688181512835712812492598077735382062656651982935846423593131164284946840133045638246078786130090739122683455955597688679774099110787245238793408134108666275249757948937925562394821159895121765395339380625215172130841273665