16.64331697709323806892821478534598654806924633860120865252471652674902470945099348984925846198240765633799211680093848360162970025468728752675698266288097445671107260120244928816028208785269644652998711757265572861631448994493518055607979506929954662073213645248234588693291603426548194312966045290752111509334609909980425581103442880062196655098802705638235806960510200861264062721824339714950557526162789116747324225212032813588764410811699109746977768663823042409423986341522941745008908481051000085453055922897675109109265826732311295048515198142398046820852523983068778646309535354683255911173088947050132330359145531402660910143206529179525158157642747737349955383699170844073762422311173700577940179801064422704866114664640687981169460492157303873355831552886727695557179081554655790444515160519863017889831315188516670626139619548350198305648895154114229148926417100478994176937420606137515746802096320230921153847394368105224511632951785057952146578895056000370604752973113344742567520978729744579187692944194866361467941193058847662201354053616902166761362765954114136854051874180392415566709670956314536484838149203291192514855913917256174295633790112083882956098235587024446830894584222266740709785049129549715644599394965525370059904592029368912843199925345737006040866498395368995937899224766440064808499380034432946882980683286322005140361925322305495689492187184760512873863487449104421217590405228379505835013565876705745549888368743491521979066349210977897142698454449703482831853587872191104415304494480171914508634074918792434039537787599686993889486586067310038194345287413374981971824884338565540922046840026815597297636132677082251360349781709211487788293509789489481227094789601598305693642625139142777290848114889492145431481559985341597623081027517169417284167123567325072475486729290795110882668595347230848903608687245335847739217349429687062876440336701730955792326156758772677044993540894509149407978908665820007845351379898221611454516779572482931995561246237871624521322283700227699114577540424188357414144368970829942043811384305505695874967848558526848293518767323384731744774751196550238981373648959375289421913423494578273221529436386558660278061811154523749690114090949123058612297268778864370160501558891458193576600854798398698984323042661646090238803013871813276851377872482861289639220467238757601319554730800481739198681229347637409434383799440984044804434001956942495322138557815870434631386992094874017439547955882645285806376182078655724002106261609190408234849185460547912807042555132032735701215514872043076518053080276091232907445826322092944242528704938409560208095693159649838711246801006988258534284530096620482053121301151080212055270191527802179299287311411657266350386750454392722603995765950530170586671365433635398419968341175290042946820545829155204003169939139009941908719663340508839482355764000779886345485770417542278360214919648729045203563190483163780333096288047816805518829066036625998589725221449296155096204484733398651574460664649117073705919641100830168356165040720693370889794327708816394497047498089664174063402173726008588260739232200948999891445836775399429412753796468961971997378267211969451541052336828597947658708003790368504646562335525857934744595988490704626590066976587860420333542380253444427536611796172688530220943925542131016448715952344272412786110395516820633363134941773947562415211285330521690498699297935844069642009845433644448932120680161919008676156487333621626372959577407806652014082959502182170358344315395674674318245638072069567284204589144395090570353356042359707380918401245427431264645805601403616068557968101506075012348992703146546013480842367835299234742459280387884544251046454946133370459021454647188119593151633387964513424399128153114551754796948013812406997409182983169396935020729103829906094952610387068962683771845372429377179111315974717737160830125901154143044989739893764007122001808823864184854364816109506134280821324346165245145187193246635365683151578348368481641242487984978934702441569807357462727528911334346420360062007355864260166012805701286125106500638782866212165028629071661570108981445697758165715512659489569920087105325873758870624686078856593325318774713166692860320771770258575793582131786767102004795547477533188048070616908283303111458312461081271772887566275927609152923774670696001196264604576548923939595572058861114722978031418563550350788960305830781100042659285149320457778602029235510747955464511702636668312028976651156808337511958612407179831790460829668223701549148345609127342431620604665017348581505278496649385928746944446411199061429048094612715482975876736484072714072621435948778210007286766363188771746207484372512442000821311680283500554119254862318696814370428338114823265762084988500574230011947963833965590617268385005154626294827578879876966782829608314148543741181880839445225142137832011200592459613493096722650205092240146943265897629247456552711839705906914457790069321725370485031697111199265202451209758919816434017085713659620885676348902739321956993176866088365246276489590151601245353113829675766991542884122430513938414511169418230395658937942778035726062724912941239895386198616373400561626262310988956056042854780776537211330553428092277015843268126056210770073168226660208654182444962138769188861485106087257452455291336778705363749887942956006252433076387058830377325591635743474984966709203938706652904921223478483195139677381979694464972074055113697264296911958819705317489890790755610797911858845072275698910320652346462900720788076081417457642061283295410329967287291728670153607067464892576801008114787539728056253832592681145700564168800917455482444890484065202575021510315483534054020448939144129073900887455088253097990584144140665911984884896101923407451998696888708066613205144539334386388774884916058778283227476684851048602066821827343828184792658849565215716822096725713036017959134743870343657199543211298191703651590845267199303206535194663501675605105936075879923362922516798329877897905891986733242392451440809026233630404484590193784445996673944691382764117204961891722863575460940599899388135872020615672216566729650080779865473695416701572641886004538249247293946524258492334333473359385721245771837118505499178571914789337786780985350604426054723441773410540883677693848902130070368570181820949185295101670626327840182560927010554479742010348147422223561666150687652086061184942139704527250495665570163618517633019636650408489130612220434528804551358047106886333466176561896732345891391635514993962317777168619520224697968321804781562666952955523739868519204245960062868993643270381120150405956137497357733488477898334305450207963664034643356748188144453987574608568183921558625165470177845421837405498250858290780553613686678985248076384022362649299540375260071541398579033335123272941007803144474679188445686019782511621179335279565067158344086067238516055981376429697098562817860974457242757190616725620945415255376931650832200497589198188530145117377246136697432595341551694318594000486173423181760607855996287714880500271464935114118786340432501192183130520785812605720895424791734833000285357017392297345208262442867984674270945607925492321837169438535259433803508734595137008842867107800556119298612258259050086937750339311396246881665737100273140168256429806990031115100171237555054246589639727080735203817083657793469092875122702054928102222367350249588085817314915016897029952645441864824949498512360069980712877712022571484825482500053667675823052751011225697553092009895958980423268261908211533025797732880099411962412598075365000534424691330697041745008477606061492294466372616700789669193516438522191496141870367654763911886847450818782969508384530261940690557938543211985495046017808637441316956309669295972834816077389541197689021811854642128645281867053628123672743250028190519764167904137079667717865532773985728936450793183102431003461338169309831729066836964087523336231316581927968953961492334542422426243524497107909807300206525242052753318613751897859451591738620297508259537758229244458165504556438649767503824230613417470382105479038481589806801943883255818623233763948552562010079535939164281996344797799039773449897405350341835339107797372644761282777529125782727311042752561062108561107968033088866809513003091537923287506091501356102910253210078603307042595624729373583733246994173719501955283549900902168168283330497862306451148021224577087924418414518133273948212416883278279927098098752796224090413941452937565405421570364365335440123024631955273797792455445864806850407684960998519975293589638581830569661433333688122720426528654583512444441996681356953016188572124343218493329419356273079876184657771054003921859875205072164792014782501667385669098898954892105169398598576359578765121619581310941237250856140726878405989547659542288178195407925730080239008898568461236676713265682764891705287886470161663375929696407659961031694873575264789817994945525492744395835678860318458368003017572087436709768687264100944337549460209059817014887525295203882771147399702830712215527304344099717018114193014267077765046951725301961670317951992136603467531924795002824985627308247903928238161952792968392749439128533465076787303862635376152467248463598640137608852770376546277926018880740966990645693885424559945935990565803072620056540355024288004354160782745381314179742788940763800258121011259807048693415457401761638163252854931876599055846245031230550627365507651962137722598793101907884978048555614432788201582468516150357907924874364382004303849893549265398894135495595904608606568757854484889868025615758312146463094524682350381965085545051205810040651046693499302024535847447749458041480271653038637804778282174302512869532849092231271438045225967218375286500451022517824090204754631996272256133788463765174037332613448352366879516206099246211431060902545661306479461927053551486615191865545136657017289663037931288758501665385522308965519603935625928963392232094971239951336190260817501613228034577012275508089322126298194297112425612793389993253666142538396937297057273929873392716697123820208830012208763531634744191899416018786191963216171907279807107386162562058154603121644549564243452976469537513203471179554829699716547161297850011544143903159810124745041051099776942264852572628416636398766770695948840227304247989370982458781235262600405389942086430007880063803320515761505951781040104843796182530938657874108736436943976706011996719178987593825292928314410119070076510034009245455346903746531051490942972713953064515086645992231948885038210887235992338728987503747912159950456184224653792068355816024116796691067878953953345772277133062884290816036718018178312497588874557531770892002675030292849071540348464692620575748572231178509771740850224601518297540649067693530784092389960858513462299981581748141167617292646342872356020385908715542949988701299917201790687140487761721200547495435150232255100722301878489232737220434585942233440033506979007907448465246581558241460237534752671987590997554324351736756022203877569130202698669565791041367283830523105597288724722814544592223861684689318559688307389578376191793735941478045789053382871197025173268092928605118121002544649986680119600844615768654592681728075543820586727608274148585456680307611728130281419852303851866374257298982345730611979267496817036731007803287148076434143985254344844760052471749029908695102477674076754560839590539528607040561829210546699168668585049440073099814224775423478438554008878161183797580071632994261556585371304380039245861895187268716274279332460801862022133084448818356879173093849817019318194422463898621443001283426416651294867892177917237142129346693965998400170477496295146911472966070461108599492251884213148726368571328600863573628932081277623738104362336423449743188773528377683901570352069570792227042070338366131502397209296119782386867135243204942025467206925554130764526146518496426041181722574557611949094357192760769318674714319396141682228535976504316544896898070606442769125053068435679004709721984520407283547711194076688994580955900300045266899506294981528170710000722611793385414758565024617485926513212156676275257685883450163269003390814262035649194336053647763182430155878555608409324903652606142548664071738248513206920633034397871013963517412911145528021448032680485652118797630668426754909616302102130755685795275645986653657151379678161091387313752172431881402581289138287339026322766565881454561654791757656743336289119242647448364425667441284057182734507076561866278415047112580014088396691826869379788968582026645066824850435968329781632725045136207902465973698930943233788348674115196782034870951710685475758092885390639551919098884656212985709615465579477694711225571068051012480610198221819367587303862677572933935725919453528198987918596475408307155728074521729799327560500026921383010978091695967531640251273152339520799720581637000712685342315854040071912663261789728220874041823184513706397779591027798756630097933205218855111036439530295692329708087693308021220109683881645554418691021142533431623942951934550282286016122063335482507224212722535419934194551999314484878264498948086396141591579070059912536994171151060395285483392158931601499821346091739350380855586268404233239026167560726615888786817901650952397252442365784803728746960187074391562656695480149066446372818491733139798192005172206636674368841697817167473900891559881423125757101652533787415177054708220597195529140938290838323994888567514599009669475552897588213432563741710191624966815352152423606214628933160375230425258702500308837019042241153389209300246554880905932619063335264209786721746687948948115302592463724899559097547182516823617465144426013117975711367006362942829176205939094266887918608634577141948157192992706349992225554347705425915311761464041677763088625358083486238000330489619307880362672921294700671821144625310952101019530324664194443966360041111691484612014148074022296488867530911874436493469481186369264538757050093120950782542032904732907528548263708027722937187963991203019744911220023219175520663953575091612105273298117262901099373693737429140586644728930204271187333943242910385110411769894808748455937661391370015402466507257395019534851415165286840360087380675850845467633428403705799823297095390265986037949010593869884275925823672827012122093316995086797949406702413653988425831672087180198061238225327616247212518739929824886346170450567427392189446092810242153863319880347389308570427343785576328358983375121998124111296838392633980981849001867038403169328763988042740980237138883449819276362777100298653261164570437272464259539421536753655622713311437586642590423208631143805642846529626185675693151999788645988951723031731717308466303188096381150656429541426410204055864480191786591638199265518620223947915389681345836915172555052719675643327255313746883645847381554015940762162070178885327886992094329424937899811890348820298041781633480574023668113810711783189688742568140676852564199836680641353510042191446928112505341999476710699239621281309346388781014049749463832796011916111838110417403539414416497168167291814037083582692909953846786907053671241902537577017475213871622884158038582910549294551202891493372449274629255755227843298263636635673114226773209087710045020527254197007138724633568615024156897836683772176646843104180133296357509776870963261429845841675393701643219705434224581300106372674208548050610590931079270302959425512630426138787663826915211589290892419725959074179676140944780729014138367694887463915678240903100880505560007693802701726954305546250443302775351511082090187121049926071236507526443609107136405700658404323281076280965101966383686440108115147760949633889989659283432428499128740221920395524303625854978049590599446092988537540113986976987802534434267608439649394503598961091930806749543319560146639690455636506259505606982542056843414784815825427718350556738952105033731044336854104885665233140366448527259181560023385422559151437432321042211581644356744400902368037978977935608083601943488042070731861050693084422808579391519167010973045783795474686981981752993827013050906595804412830318656426625475929842262124170556684830714869025770280316032759356186911480249133087354696067066564749627214326264590563968072297768590951114033847876041633722061476458483766987574470065470789150414202408584071703321157802409162565522305983693659144972957369145405866708671328783065176022786454866565302152745398756321518870233693857179830694187402960742179748853671001050792865286794654580351348022265749777791430850582039705097226743319526861073254572368620828979376674329815045288688251659180672567508448970948329618571733112852018930979365497561934300403899645540257481930448144483314762331955348235632644200407983127025080003697235708802724811636061150460254486876839566697528237465066711569511789046298221694830226124253606626732741893364458451917716226992509000803986017099687498870002981085196665599894346098396178821713723227709791573702879349809922421727251064560292160521424112035414400753786258870450309966959148321012024024624075975395352968275717801093615555828018579950698850850928759686136559888970749856122974303592611059236029765221419121163033857428354761611898106294233704612292189184882816726572677612548226314177635079011220241828419410482903654125726506272353733968586337190279795734651621109009842420348793597724916583432596352901348417345719439261627713232606675654049501752230807938025881151749087527304690979407594381784903871969649950277697557386852286666140058471364669635762860798763645905213351112865443389624313063400660066833257175558684236826608799273878278890224017611960454964873517973388761428665600308299200276623398689477027761397096640023707808091368524237463140205987706824650187890801219514786206932554808310363812627285205619627364207752316890843732068037132256948123212726661519287738646787677613514835072887076803614580657264468615086151175596607973234813528627342910033913817965494161906076422961781812587715429748501917178293799424112662857841583286042717165322860265505103733979961953547410128964498036479442028937924305935526923569173347480523702693081241892044019597903634907401693263879482852805058482233166056561218315439519266738718358626439333136722341688483082850664352114255775241070665464957963137737880745314436910592759254088989960028459656380586129704166291778595860558850254366148216913572681416851198947450407075748253679017102955858798266398103533095648746843225798198819714158018952449683193118275244321272371464459273482633976773665440504024521683677755193178289722092332459612878451129097571174253805216393574357163332886642864390369333248259714233151757922987390580129457470131817244606558999578174791183730359176666854202147788090244673478233565834124011653369222189280265798634935406389582631595391821784677856346096761585325985653210034520695531793975712513882335686000886531645538754898606007694170808693874522089888878255208799181121525757801577029400683001340799185563845905931121045290344819116108448279158127135386415404725276645780039732992175768100194429836838131019463646455420535023728891133444703189946769644029512687835155993548516168103838175338377095491046045548692079247088975569633603680114743304329243750165999463909155003983776832969914441733517962578063061558399963765015489217167189351491420831646280416219770517947662860975845938725341438683789334013429507171597744593266476355911121687792181959285939970554341941013675558148864328594608645293476679607542669043922935411204468823246098623643222445854925917078302352259531037483110426176704653294123641123445397796041287351344906047281900831667420321324632232354103671144216105348499594435027245610141000085121351624674763575564674291235785211161127322668169268482009669570054280746790675236707042834831039874879783028154059017460446930214890251875215710092338416700680442276513085700284768780349598780231372813560175233321423712639305915256754750255689306897710456276788523936807627201485826635584677891027667198010665777779109560522997549634110172605368612849511208225531301489616184076260087318337191625234423725803076786440976839398241786619924635762407778795345984522760044686248952180890070931916874750561347827701493021887354634907747958551789750039699999906149897594531326327585339429547087268589669968883735027010740767037590099813674880970493250483496146078520052100049937965247031162962044794488726759923322757375830997889643309049307091356156929510249332012696557547165927794712973698783661820716840540851502837685603287591602106869101828049721837270882636560136439196898941579177003975221732110970747424225331676659052485191619579058275572086642278696191526855774946590835785994875550717362299942949043410518482475108842160200380181483813187038909070248189719343634726407977894749494581996207863010727306709080275503210522640272740348909591911833818835996388806988823039825832607478290483593103214151175781769935053259421104146732485201214864828820542437957527389453294880554284680283885376665653530940623486584812701186623757341580817905403947522139530313815983228735969770280200307785251676843399094092619256131210888901834649222231238461531179940670273807494549698704574125015428540364960185185895721318128015612429564389512950560171644922329946834872287165223789128087078514248766257524572101914619367129257951253928497111275816820729475193780224412847886729110633745695722652555730032799616705085006188233882200051210070122211575543551121183648250224449682163944044528026736586233500828413293623675798889675491393055019695268506327196077787018627731323461571899526993800179977991413337469585000431831986611323700101225085678522345844654237453284972730546219387529359948313801743861115009872671098120425608215962236072429464440291726759833885511863293937964981446429424682092271137145779691772747082234342391419383120796345725384640094046225145766807332680853594468397469699394808606754849779895014951292525181908491670885660025302344219898352609174870118042806461891951042209138782964873350953197301724670349682939504002481664132014892221083078602832597975979536950808426229798807056521577197082693048342661065023156661573712352082117081292468135755939865555550410723840758958426948601142108213574417013608981048631689077367186665606525599953000830286592806314647493022716916586995618736406292886045342969500827329742803774000131949018472618951051048098331666556236794545893305215248941193113726141406120993658614892350751610318943899625073644365762778437163752758081881482804130336042562494536496845712240640485249395519312984668888778376975547307298519976479666428560759042739236141353711812841630692120646137320155385858598654676606771845775548945591840882699402750428110902929369736319791854232104256455662412231534515010303824878090231920129489679966458614012717849071832815328351866756020176503304792576165310464050853560325455486909482808253415372152926136832473644790078848089771792857546577448057435315686674469860140119261911621724061115511938238837095303878616688844303467095664974936971338552451232047776532642753168285891706782200769771065614260329020970707223801256030172965305265022109936917576348349899092856099808334683705290115113472546303684241576588591007610486110317057885954671915831615091501749218529937042216883888038721437697917722221668171812780972410825205831856205789274625521194913425477242781771759997297543986809109608366279437964981081029038553346654155401260071646277629372431767267090069372549392580150710515674286962565127782869924512425588813316025877945782537154090667077141622993993361761697302369264096176829250073328574868712136282160386123706676074859843774017733610372200565566590042168405028953165879819995077319573139613508773718484946872585431377707639534322749366787885855703682190428048993149309924070266067560816349783226504044006663474461212134928969951048014821733725533930619182246432882416337118326732633838335597226600958541843392775553893778392213159072849514887076861746162501323836176517642229277565677193509261500905965388362221563522804716823775762873200747965863960674811719981847156744018677798140687184341177900017708380683130824444733911178056511663629550741013877193659672401107265053706892963660682758272748898247484091982291733186830424071547009479756518888385783831004916469284977096993865292259943882948573793211314527947046100127015905662056434396057680795055279707292673276140911407151841340091794550802456791353004587420796336853212026415488217814463964726598233310280080613576717353695350765613800972955840822970905892760699734901961052295003302567474641224157804230439714517200862121067967036288292402763938133791901423279261276876417624812715813072928222568708785806801081812247805586519189699956810029322500219513538835823986331255122242285532708182115019709920356694787467609975631022263301688678972286104100840843017447154865301940915817300692320722583081309678308418738929175562863029768473950813475235801949146290968647605965235624796577601013507276422338891160330005149338406470348508263424323679221802066386172694853857876905915698559889209413462120726325841565280316330494397202844232711015720666990485918557958438097070111005135722756639522391669136268251665435898985107943444018335717715384072484454796312370847296911403837700887969742084766853287899813423606316552287271884310434328833851028139894649131796874266171450303807182834044189609282365320699910808679043986381929702476143722835949748793534158795991469541537884705396587545670211777195961664219317371074995093046105145564290156262036840709548690128883001774038126404087244533498848164059854577777604572366630593112215292184920974609571052589233376710636927982748740998023387055338169086405298534991595835167274041559867454928738256044157547841851411295053072636388390088475691727756681367954953516042920600009267917407768290104122720218530263774685119322004516554094980912864496315852907449031509460577200162203886857723919761781049568928077184383195775491678410826417630200738940472069035053133582677346169498025579046138538866121094543120334794111359144529871960947571661603492658604743839664882115967612777168481559861453974123393582245036923817321901890104477201542591550248948177255868056665941539251692271815339218778090335673888464746697208635937760896952602535708095231403347401789028705886579528299796937156897880163085928119616930429239961409475227126166314902296446096180867618028471117471587570904816908835084778206421994688780980997174312796524740065055050407108219785236133112902453949373970401119977980582338744744747074173669323720907384780037249061550695344743997860106433755662022727361753820561239767271904931379301700331040629234721561394207412296607687062665048640413935997479511960551855257589682452819972207146820827919548265118278542572095726009009178078003246750979200837351679162615062728114572276814250183442721628870757052374318119647894897742351017292079171576237606537801531836167050081015397596464903502539653883881200970991580525979196544252477170706049958748879006132515841020169639842493796899108715169118766659151378582885085409813415027656817578890384640654180737076223166315238305705093378514031555127091933611382674128936248879294914909433716761447133138749407901988352095109639785189383840276726064297295817290592021297728624482570412004082573193540834302774012443935516141801026094048610998924140348805682774630969941220354479285278539283000793519866828578156847623854924274100442456697238040648696756971159014010128989848805983763817075389608815955942721026827067647092585114906767586329060129214167426500864031423127688219829101962666112069002441663355334148221802219844063150897737270931547428667864286466559078886390881795014781895377002454754377755202674192655675778080608031488272855465751943803291931576235245442201782811312496780806661123974562859659049918458846679453634409397572392713272088694961162699217629476136927588143388482332389288127052046520832388456399931457222757656982191317925285064928569430261863903605719888635882930801121533630890230686323718683674330759012784782835240851782033093804986037817709574911607947221683767572274677101795904587708726881209028610257175592833246490722205167942991305709834084498004666612287440563713211935351682637781416627251332689776987829583009259233666633121379856943331303437968402427028221598904891279000678446205040784070237234220729850887923698037847015217319424994135125343998941271486835553448922236941109124514894765158360874038239499200852426459135500752279105761933232231819247950765543184637899861353604259523318573960356133879470857876493618868209838823708572814366964706288661652771691223278800472405838443115324383571271776401996242861991456773430042474869115896759554627262887686895891434139690701968038613316605922268815478537749612249913461719414192169734418679517517627409612363839114178050034821820248545552432421690855474758505537143648060179809678052677641989302082058176471700630911633836407897998945829882328855901518766588148012104258336170213638824993273580437926184269586731194461154799901732505332819933791573988134592771419391582458259456043341028924276246716632438580013510635545814547426877751010819668320201119648901124322750050935802184673619255780378817790854156520349850486064426380596474848851226920868540328437393191098822239834668780443635177744620909614802955546839532744541233855404369946496767291348404270014956975559739568019604527118001002918304626738180638548675626122131974929246484477597828189565698906078632389024885972786969733040748975214977330486250117867272176587897628671222691457407823108365869308862913901230495624221269865174670324566336163001026459379671738916760217155221204564161278189184724527288518117263661407118219532830957966685892362517791273475447589964109814805035858466812740874129110665500905097532658521983089487300654141606420236015360695197477269525735421107172114807318827489934778234304892519559550716645577437686236448004561861125039229164195047340665191197200994887374899034185395643463851690083428054218970135959229929845503896070957724188453196927084603613856886728966450080716700669617345555357473828388151732989284796120828055350290296088357094263286866554139142718985635920958759942138672922464096295599209423921872833529184322410234120489832218512154987864955073303995061211349090173954431209312995307522797898815978231697579818803979615786593728090859180745434258144304521218228575419562934171032112349750428663203340343836819599383145307196911159074237612631806288854279482333499838584110674406786584796400838470201334423026137288549118222530314199624436238240694317256210188747610367606942938943103945807561685643977365660412025504377378641441121450726394778682043493842256936842187694972513393787408229468991406531638712274487668782577711405037022780805547283703129723462846057726549061792595959477537193856469247859223252924903796616971537063151887463541561503167313909835050036261683419291789575499430012854535670337458627176478526807367871710900190368432761440474422749470011135702030945778005680472541521494996120725069675998682958455590684226832129224718921727787754587759553624953263278517286590806618390165713273053877996716070391149982550168387419499954393847668918437224037197627852131617524274466798019688656075736133233193770843237095646595752172563090556769481814852045041112550828717038377025637148707929177298247890346210928856989462785759132014442120060421712613268217444542679547091307246437386321484811223616647491107248834419609003579252683009586967703874479185879573934452902150504072499133889047822915597810468679310658172656208929994466111083976650264834068456025888238140955171068670477086239218618655171622212419698189668684330596812898341491099241192221830288391521657363795710579937508459219597072431514874890534316727919098490886224560478255974335015308013296267462446520094092824507075315193066828965123714104725098647287048501054019526731956946115289093037947227976902789918761068352298810808258355740334025555324839922375731144155094688922338488508866620432195605363394449525567279911934703175195758261251883685069311979599619434787734866008833286278286768031412045389150833354901345549823383920115952585840204363293471237591355363655795488020773244969139890605488879361522046669886908747383250912968005646527790234249370178715264155019610641407407087451172630228014574529610125694024044164355902359717221206054965912397755829950219407928853615684200917382812315625684652467610770169778778563463647762224681756711657281742385629102262415942637409238249338014258600903938494804531150725039074569931779729197473712484438883496934281878308605794338199547447106713345109267688606420753650116035306950274141840811593811059044927568689724112554376282759199137524555298145152668950802141847830483873036023712604450289534063490600427173922036427637274467326876864354435896003413363257518597167311169830889339718582733374206675915462354965536939773802978671542385802301157181187123490288668331661608804144710506741008392165753850599749751783654944376552932565652422229221277754686298961648769123571343923656723679367639264457094905097842633461942159029178398845245690771663916259893394055914078743976598986589602695278163668876393823696747614748235419411134840698813639607691951576215885718859644754655592615504690347705105155732413768722698023380473325455920464008668353612397785720396382313714016699336542634068195354851778315440660511305808889116264334422807335297867665518448594181753067620619214904600224888810988309053737606753454503187741641887130636772202421487427391993151984464734435678481475669411780232309448555270241338827530789005894654687856750360324092867220160139500640145316822257811522105551280972285970185568366123370478830862418569874118758967188338790843884375965684679134758260561192106589544624834160731811580317785865024361123950823186007652068931264434872091578497574761172175342969347795407250109095924397051639584602282487010165589574256939252778626863277000943705541513165493710115201847205593976940353117342932866002011410003089943731247258773741384350329616596365932006350513058995328936017769837655327559311191554493224067004675553510037486587091305186845355732995367348398891348577552071781571596393179520603952184679072485936466859474785122098551192281774332135573652333135476564141568134916755340681468355359971493691578253782263365917466591435214391381245810115560454877756150000741633639298990377846194370810161402929440745273044227115568782775492444946230345640021077326288829247823351423600460108633808831440376925401013883692714002849672564932646764371923206025035784839926153668630616402685981689014114399932738951385059384698893421954711956145215415284311925190765738105806721415343143917690580211854683582901584590825806637617383128430228931607844736000493757521760357942208468937579516955238145736704978554162582184483334288653418081112110638603129304681285917135121607496119327305035000386147186868213987217815113836573636225758326437904478941901090184810728655617867938147403626328239532549386805698264665939608921889886456351328392117261116161418948830064013348104283273152089460624357027143651581864580707768204542559752643529641710675814203360025273752727889691752941027418139539010594636050976547656264101494219091695493362156017726720125342762329433386373982034994189850869282566905703580535175005390999218164523945392332874171066009777292635427724064947671106625460735010117376024826600415439180766667734239093461829568856401305198810279323102712188478658670435424742288894790407147716735963388117458229307694427721354564458833399048854626536020331266660740276074632922427693657825727446824445117297449499585205682661834608352205243349997722042252653654540805211160359285751983611332328574852041089802096649507547008894613441360410591523543795118010171978700115637121121327078748733529901497081209007978264655818612838222724337839223611471324058303659074785062210077728325286123485772660308667482299189608227616794764044453839157377955305405285408609479502972148955911569591839861600466477818266380685244033560628905654049827200058995003179591138983526103888962124954573279621082696814155057849317085895202234857799615987166321312873372054676765772505331872354994886906464957399243714541666844060769968363941360762542804222968257848464973101134490985487520995191186222686788657450324202665995322042111345175624388091590517215860867004818401803887640802382374538311275674447105132206634106230752870981371086709042767517121055588806853583748903828938469922742961970605051886921702308991914130728683292775862447856854581359734643045660118972989681205486065826356450291405261663867058507502663762397060122727337990249477611281204879043723820055752479280068778017519836346242412245536098677953435385687840389213353948885438301065671274033150194088572138495252927135261998129589090674855757905708458362593236968219933473426508876728123809200765782473510142371411441681669236040603776928007523207270051610374446622743176776496329848560562154290656817292341045313300088548928829650085007222298158809697041513454174600696232883435867805021982071398643471711318287291888698524430348228663020169017641721923044106275867757544565233490254164828519589366193021901007457906784399945874293512853418588993397448845606519063199560850584923704750920385659235865390827778946926012002036134577641185427589706567150850895519580168487590989013328560837724323023481651879525319925317845421612439521449517034598472301461472776042956072638362577572586389297845518155300744419526606661793618280304080341189740205754308506205964283810606051128159791722622452489039979859871544222652582012988937901861236240743401459021738802868336771874152334041949057617220934218009018883949559180872063685326244442305038446369696923327493416932318775579871049948658759989839112946911635811272511814854837720439559669246445379166451688087027863499958082066284961273800505533700223884999679536344607310781884890810333891135223172242897174955620705954981369265973854338396198480081228949521075186963606936829832218787836431519567720779440421233480099392690980486494196865847074958006959419969300643635030683327781131254329526125083901445152792507585017778463266192206949124695805000036285864571954481228091561811090651232985712471390448585217681203792060220239205726262430186632240729358786473551641594954922496435400108167028367435502424904666047507722803647340347012816149787617238256629370219211211481004404006967713079310276444811082981186459890224790554089775480870191926893965816012554718220932689968860018978274246820445533536488988436639170895461774836136195088271977531314872740990591720971210158594321123560055628624006105838784087550189938438664356841414426323665362051662533518943911804917381395397061296099192430868960013904198100342635776741692840091108841131144520181693011555655919567984403648135340222578748643775234111738204635160328005422842984356581730536113857467127760846595098270138454633320925911786990717284204134878319950795275033078774050568704955510660760876252179619593831880080909292804575382994933644157823071745013196750108115177986249277756445881975339991420306664376934133736040313311147803419579951602878889992086067093293539048621184764475690233198297984919132921349433747698002634406248554117565931083887928948985115493018893540579286563927032675153897104737635587802636855867133076308672414325646143377101701156641651119264391163852783120934127339385216548473912453501509698319891487241719894965480009257522289040145898139279992740115515866415421893660937335290020698103951189511532793159612434020366609484866805862321147583503569934302394366296057677687818188949269808308203984770751867456944827687249289041684269943470272494016899607841380133178722219478663151790178439612845208547516622784644004498646121947061369100157317732956913665402126345899560241203931522345029555703794349112235566137023432532208475885655714422520632712212775038309703546651054688607033044008154331464565592833296215607251577268978938500762205572066331417802666706123643881257936123762656118372983185763265385063812003591467720549497461740829889604791079027321989809773080858226066905946983031754907278515572883985030042212216139980066199412308496841372716022461831208056959157692656077196121690852830076278659115621391595060657156827197125132204601505181150625338999337698523312589484926178805061918232427821884237879111347730344711671698846941498485706331841463766275699965799657626557158921164411481795846257679289377596904990814935605003342325496027242417877086536670934856988418085704594564232544790826879122537520487009785549693667861668339005254509046061882961761308865112513961076822344904890524921789359479870887933519475358550300764354994151256044914591004870948735370134780630601347871114218089729870906138972449225792042318626555684761933998940285009121138828474222376192768481470837172913346995966794781207452826393804106939689307782394352122087162066456118192917277704214105388847117703815018327611433355369313829513887209088964960623434061828829342924100037954900163491080380869944480927542801326133505063366181877142719821473100116916977868074052323658429259869413048208032068493007080192881679706136369964016408062083974744107636163994868461378907853263560940552689622243686118126555287822724054037636280375808368614317217542418401230617692760926398582069704288583708443209625022532442627503393669530961579902746784273496621635418654890267607551269681782070898335794245071529717415306792944534653863547749785787549896742335655414872516192688697831754718953431794458931737256838338273093574800090391468461089475216590290397354350955096234960434109963817803027808246124882473641310949554632880829116219635891575686037492422695915804126605738512696181897049459559416696948100034558937265402618771610234938234612951327636397366601868441585895697067084448357907654190838267211885688924616418891267339791749119216896384934599469884516594324661524082900161127234503793110475562644280894329560280744802715587294031371827127300825963654030502907059808896942058228749055892324577888261494273912415589672977191384112099618060311136809648091046993079164876839564862241002219504982125080624153958747765656639669654386539733126176851127567677979330131714913563971484133207668090828920010780188475963918311528120369814165462486656936740221315259806923555727060340768478184703238395167959315986072998916728739142038766378581334710482935674741804694941114605069383615738551301225415488663862924250457864774622075544620572043986639157951152377389471491766283150577865577402904253855020322006475956316576196042753760175311637052596254133868184057791518999971620122767011193542600242603343072829246985565174971243378841819810183735788426170650521979812449065207857421133841381784345170206671530167880954771355545079007661494892974993792129789446560446475986571673173085123200435384875454698901494277463409374068657387563378457928327903072373056517842741569636407987248041785372640785282667158554076473666573996828454508215178914480715063662339202594972855946982912837148402041208775123189849024384803994992711350280726021886878795350687356229847430465742468511380534380956698444845351284802292874434003514554008924215535516150433737577599748110224665338621263547012734426176123127556285816904998842743963994833144800271281952121721774253444632922231980478778116154315138398702189206397991366928091073518239008089164265497377053026677659449567070893392083381160528730933696400776646063107192155441821523050080990797077186400959793702675177400125973659369730711148501042481850184869588764938403055252518019973417218182157846143309230311534398604228374111535173209054375003620042822786608680183268666480489595327744555944085099895327417148984323570804692630943754596223481838580776614048836325140470892917984684672155734213509253009698897222128197122079268603141241814753360700849127282286595587895368395765738529703635520770385498813936985054952935349939732642428076628215859307967990441074965637792302409052482696671756017331099890809599431959355489548503012999244387256975972789375761189025895599795333386703125300498881102828007809680443957854095822998444838579067898522407985938971095489411275386649207044103111331449079204945566612509409010413990687969713088378855160423736401691503105188145262853105893783382404551585616384749007340782893009995632382934017217553000799544929950853756669989989566438656131829923574699248401470054956692753537270169349667186586529975411618025324421143270689026493958579106070122220165946259606011441490538641735822507462075580043170276485997224323399609326777557918171660194984855620682478796319451340675003060645312237013313318966451347875716482586082473908614152395638082155677927765603830753934651597550242094073993049177312103144822069466040837257097536465337248943344379161801123770090974524898620764640077525417029624333445523060726733540802023548125951688895238279925017048895631508502246021400263175957174324941041497452378116822810094662781300813960813623533433182689040853836168276189748072776651019503923665269130838563021391600884199523167602836185630985165474114284018654416810916060360673610186564433044741734923274570884889949403512649949396165789402586964078975353799052890774674185600720308302600081013654366422365150595676467824137210246921149498159714362337533511251228344500512054165573644567199603944816925503521336593871778667191487582023447524698505809515736194840279316559711572902081195036641654764919099035817260677059451250617017830576269913458175453176361318067641112883798421678599331656951418932760312264357080092262544850228370284041543147743904297541691247814737949725939190759714703501876927508991575005348271825169610642824126716715644779597727521969448380631846890233455248243841862953391859862108783003220232096902616486489249056595828866099566117736134243640024879432979718470413428359122227878731751416895865320276726140697450585046217563585489105294596088626491578036422032671029892484948691205311019427459155626567734579922467078060481092310211349343492896329495397805205255030640397029864627880195065845463584903211566798815698500572622065622859790839614618534014747777775872006014234457687502980093813392253755434988898589495495818342951514852660449827671607383348768992341297377034186410622747659462382026123485212821996157634484186369651181387751258051793486436667544093408236373106260850404241032998972219532584312090505718462792084206945971021695867727812598047151259413404511797547359806303734460092705299471094272588564077931886872216960417667782741691862478131967270529404193713765753529102989673995086577416231037055995473371286360835938001128266071714991396427779648098440413930713934251730605993096540962780412370224344008769879594893430929858039433563811396122593163423386706408573006337568794003619804761295013684555176402650341864537574890490479157712085381915346199702910993342255836608753133420308854327510921074016382955253090014547270659961559369938009002054505684079332514123974580981688162749314305999792624891664680200922723740137653368492417501995732842370439246467909683871770146473659118975095806732385539820828595510802183214948036723479208537257648402716063048505849417159284822184183030115826696383920043226460534994826483134834578728764775017798273576654402072381866836594315602241558734024379400037704358119666006857198920312705562079709776150393063660243391378327998773483411051459570752487684699191818733760206587049616445908093100353412815835035587790835751936119885785891188342560284340812735086272047132602580547854410284412765318223370977935336910895847314367968635200921351620069782574257990961028661833832031677167898244045270221276598946570990207502624104752902013366700902254620522927004878793243920970866555841983712520265151260516841365845457666247052532599823589365317137315657036067585223288684821256901354620744694949242198994078704601418498385619140453808763977724217692657033794673098736676465994033525044804290969493857758977386363557333707433782224921081418621600882961194610095341376197807531191746184338640674511815105401105747807827152971429870747607361584728909353255101521912398485513532272819773965905438107603081352147721318313056315091765573307064776001752534337139456551410127954920278668494543168025279229681202881543804133868244518435223704949320087241295076136373799934843016507173020370325966120138186905324075780078807689395780336574849559167963197065623018040734170271599533356167150109012178443724726673931281935207988010372808379788879010797247188504442121245102531029648220908224658973272669179188280760311912146541807694929698403162300839811771987977911004563825002931432051747828929660310538905174162611913767916251939594101794490922953775510243707055424882628040277227583078793277320076917256377972270767765948747830541289350818127325016199422908404129870219600542667883470447599636852452411534296858009961495258527487711973889767315780349776398152588334702899988143939428852810439390924794694726351411176137371547542534465572830576268562902128967481192550208511738620930994682980776592034699337428986307705856036077569668447489925981563555117210390895532582382972153662673567425078525080813004424702966213382762943836848265072613712161972315157599518421771245917933034358677813154055254816393950853626207177273683837880047741282742982930226511486447509729838848400354603776674748887939623204089425484573455303083923946805471249694369951343276775680496749183999104815927448581713579094153335421892930695428988931795648749938146432643319095382351288089455234357515097943662119182509969389523851604538373115254954947437863532244132792835834361562315882495916448981369859413210263996590340158135318133012570585736814934371723731723097408796162831841248046415654953063299724226615969283538227540358194647469830507257935253700043388930911260381406011777092272536782782962941977504129440801098651165584997375053232679645398380216190194641062720968218614052693567138769081214815375449685897604792040974300443930527321127077886475906465004476842880320926309155116321131980884989165088871785870288302999265923061295789027666295179538157122213906974326758556163370123575990752833855644351845163248615998379591378829764930482380795377137787714808119981269641897313475404593228303417998543339575863252192943149478516470005085542123719771876334735198537945634287088068239653105226437193811433786633162994921109295882215029992997267167667063025839894627224190660548890356564959973790051622073493327766841951665793900572712238927090953257172389777718862806330326730640151993488258869081685143566384363009415473181717682608151918138044193044870326203877560542315809383438130397484969778644266587471538637226658532319297382268529036220420295291494446607483058894003899658897745957178727620057807488745815041100974391201987609873708347049465604945844720511317684006464854018424655841070466857612998942772855309593474874961994611149230926426216822623312954542941638716784225648055597279029082011487121246986120710822632297561624991392768455807664211737602795878947897455580809100090581729413206221582202142323814902438387106123807889420675546109769050304750125214342255343734238429675187940163584793167131550918819077930882850008933622230037465451283023005923763855043420749578040683752921065508876904030061979710209113698491288017267284331695482262671042532996637735398581179475630618921100610606358672675931091963948701304370144663983061517554717311209202661339073308435972696724438789750380460273679451765983117091061563460212981573667048979232977536034410505488699208644115808851757982173275185541537347374848503407071033247465331966461247402663051312501582700972885247300914155806153094298824763956563051370980039551830079460940443359841259236000351175684401860418883102978649226994857249065738386520058430696949638720812195638938201557123692323664844285379635831637350129082028166706400556401884474757416842271120555731571003460256279364142328146076305332518416382902440344152864456083890072368439208364387416660683380439651860236476968225076597843401494944110331782112437005353308306304868999868920034892200670997393191254852803252018349860472116650819069795062293960083750741043648940091637521042067181146830280756778664841219998778370702348662498904556540946603339376416556161395977371550679033759442546589215788790353759137512467346859061075903793782815591956150351426079695840575574832886373877894015239731856513136401673105852345443523015215582521282759880723938469267175378319229849684532952557497686485804418815280374584311036010740797296729875899920297879677787622520752230905008119432059918903637163255514417727676356322495479756552707904138316792105049265865022819738108300616480314948856537709491493362333816004257499612042993113542749834639868931414400182500177866685660849272406037678653838279448462491221493093698522370470501769450417016707136470282628765791566569589051012127786268553234435978933211518372312553607245492703971385983576897676389054002630058578979769986959805847757335423363146534681439029267811081797233819626118531998203991211636346102344933851973423865115010756658121503233785704911629764256154771643263879360988322667122611848481033571095156205521875730448344555978683359183890246716373342965863986860948293287560992557426562739219216963112453661571315108277717488676089828812162062360564431369678686194434837745272829963000813885041523246297758059527397478507046574828261131729116267425473018424716641391856130177037332998879788104656437662229956060299200368933522531088379054170667093597230002663708403622867650336481990422727800142278414533427099957296346438830910933568740669598091797546174598078294464011100839212241512358840192654786605709766470124254209425263857067806630938401247466751084378244738309988486941918511435640149729301015726583896950471755043395277403130800766322115544457464030919330867152639590895855438128427592173146726315074265412942272872530314507866254517904339760569530576421212916578180198463947504706285036547365238089441925277043389220670424519347427600082971863821091316340218325677940816875163114072053136676758875936213724541926623851461346015953231138646420783820333772133002465751647133818647147960992469688099551002817220683779657129573539042375374975941483766498520993402807508660121810859089579156727490944103327180994894980702018276980765589394349543882714995842495214549144796790663143234090199133761500854469955343497833587369773286008665153855405186992604331849814793250697812618843788893400789928097918451526537887372792919562025726928301053594130607471745421300408767334630770356028544538460026954911702439495411669887009057142280221186837931629652734416341804915561955131093566643701035487350794306464355341920244471478732850743230187330307495491295429003507668327547987906836682473399313035791490113765837587115833833531015188909478255764779726408882488860045134619100119592333103169588555435334220258727206711323903797666739354496384553338153807655910236733755690129521928534344881718966409913117378949919338256888593628024002856184990499742816183093540395567032619269634126882322124144367494497319900509145114121297650986994221545753256364099821018744883608958893369389380143810739233906321800739262018285202284854581523335184116634078075217315822697526760090262272715524188050481483352599993607334985547329320958467203513452818794017966166298788606746538567479624960926499589268281530020890534124520337703018126295885408566689326928731968651301322032893345779516573068506769087719124887853149661286364918812523928973364151649351096627853569918509858782958137120114991113026107474661374005737917267031093134772895579793948016201140838053600705380663084413070560667410508299103821530653054858522446780468826815226842043428699547050707196460081659932493636419028419084558070866986845731288329665011575709073708525463913002821538177546490337679431646810978813967256340564464721371744016526340267956259807440358481907820954687827221649101398157413531757702689174556770111094406176149688059784045511779875733380112824023233200158073250798247837145350060895030693939190292142305212884074572626667364110862459097320295807894404392730054507713602990514354252740820934576749482529583727239686314982688215024939402814256413429366355184062600282728324241568662366503009263644612025895773323061273257467820181157255019177621289931769328737459907792184312527787223222437520148487137460231807514031097775460269861930674697175939436215388239244182326090308983820693221937671211452665846271637675617590288677608525528558669441188592004357008854974865434053155710930099674569983339400272263194072445304518595994692785671621323228174731624091123242810657496265180937958362108901658930066618487952913573514181856519558240758324088239273717214168577650802667403191553009426903398001169427939613982032607234767463281219781540082157614304245568262411158247650380962940480700431658224995185285360275646026994449212211383781869388918828343533456711512162474766687954440554633166709954228578725312608506066411048609072047117721386417467954640671190572879970769200482826227210942841400374229743117320866649705963543587073197164207974582428747201272571546976402510836790105722797294841810782689865078448184282836487520176646328119266158727773008823272852684235886193674443514587069911498660220248950783660654358447884313938504865939392155503830646664308987147679936981949356424958542683232186124832474004673239340237820558552778890006630694160837305700715921079765832579749032917251758628034223142027918213683804449396889434519603409209725376494384831137169520363092497566256510690098538532009926325793338216949399626516533296771637266658724870490089599189132748953245817971628976169857091860422915816646801680539771580393373959456113190810750212455903707371887884576444899831265446448897221161454333452276461710100097729867295733470485136124621621891643348485020478453647744796505164844191428240532122963481151947376268443049317821896351975126329411498143943326174135177713277451038355685186141838908131709249655544231714530876278506968895975390017796894534129755860180978749212923831809063962272111087700697725878983950306494943528053651522479437664864735752467854907116279818474445816092960579651442360084143501781180374695997577485670487699717953568354904054084842024658158327392593380466803888869798371043429422141050252716251474928823198733887126910766042181210728388212850154753772258584384158834072482137790978099194265924593765127483742911671598792332428609731982134672839150536336615387664688417231981839956945547657099027582205978667257578079081466832992783254303261903441253376446663230072509831020112487483417518644706540117667209707140767349443219612282939062892389038179591317176375736913033863094402892013225983984805164231554781722399682890695786074393400064961245206456827236984322681100147923013266672664940095610883416571373157824506407535608612620756320802368649549473284931982784215665981965419313853212645815907504454650686149784610940408151514863514749300594410017720446807829243289638350022672442697856879278340315146147988663550385524604584463708812768723798834969270462410366543195246105871445514642921564369484780513150184142173397912087864347079815302256404822477615590518874927316798625221798628532183430795052656603375076756072196886452440985315160376742600621842602894401938146102464379640537139368671172810569920649648595209052201984943157398083392795413366889491634231600712607775691649907187848629579617105642467524659508466292950177704936899751484451778503412402772896821803013347111023960840331733063542601224074480127519015750933365374596113062114005006780049799790359550109050178555189934816039005655489463555902927029731850878291670086541721467689731671033358656346479734343755313525752014977620769698858950733248037192543090583589757649571535544952134325463827109006644733563109338135849957125797686891612901611048708377773994512888276352670086612815041401565170274020991402785990208021419476790944438244742257658709665841923622223928633906843235066551722645577181630860485730163561864667936046951729218730120373255789051162729927872568750435765420000157979576496529246459689019773294450780560920570435097945618646535005201412111110043764893784467152362022526208748209837533508514905246920957762885303043696652419752002576240831728373083722140568432944621854701597571816495428619684504661847956308379616557047553142955665257316139917527049367345818144188822836344037113978096624613261467975387881721236136178517194721712307667288922358844353394460763907834945219910757212865484212849322229306742270896963407595642783764921316009910953657291644079754715162057477298046827816768152017455746491508906498597143515618498351584395139018870745613293833299207974651955837493967936458722224231717754272291343901190194636684649726574524320086267337066252567657570188047421322933928208991173834688565884109937347614367390004373000975380951796608208814845396251095929527508135925443996417008508189231260305265150075511803336542246057808137207756406006651132830283908040753526022547990517050459649856146079885748682531411965554423384509402232708024004176355186367343058349615535842448002830936824763228470334812415503107907736358161972610659904470255885858611325951674876415312736785952218386520033679586833328237151906661532083527271445034386653716222568535635173109853216559984694590960843963967818849286190389345600213109731606203861600653094117645204846039367185912426035139348970490080979474270672811761142326693276158247235758020756044549696987784814271990099298695400457421250101596911604929756687073050888196316185563318202360660071125310682952462761866309359351861150361090634119171588958355772550669770007261574511134417549664475514062018490174945526970761116884218955418564216885225250780797367598953884519804627294758317047031535750875835265109719203692679466922549034240588539779500995162022677055215662612883355865105303577996799065488478680902182122836759999277854976676414772354266589302702660002957680895366715824824005793721641927044885478972897103114846117080785540875836202706765759336867842391371275923105789432895756695413044621167130657103733353854959528240311783758523942078779175074169863070595537542759810255598872001544811763718499748865435613470838178101627695599675556208939355119704038563170166542976237538050476063261409746509095315276860528334979598273912734742615558158788834495407514960374882411035293594578049596341427362130103703579232167336089267857493465895515159210675412965281497083002095713385464116449690209209436167249299062115360447972568984858153658510793174839783670868814122212661640769618628976701839223541331193845652652417446103038510577562962123110584727709345588975386959578110511189332661472116404448812266794514112833822357610531060025119254149130991737060829340003176025574718410901136597283108615501486412821438308502891372753999998180804328376272510041560261389727904218791606188550265985321622447272611605275783552489584455169923587809996703895835011481557608776749045771170162461877589292742542362718743350648628732957030748102275100785659747684408039578669473370145884766055936937169614723224122255613865730567509203407061644279963712388403547843670665887819271017124040889944245039331013518840228121952007112086773616159245157608464576304965837924495546015978783208334965515327400628819054977734858707009431091067008116181096672192848851029374494145258365600919545453247084248864445174108349155634238950607879801654494999052549476422607041888745308307249847058479384816752703999383078622692782673414444607445049695308878098349160892352737440539989377437971414713232234435578969721688791041412354991345247061509715702755797040936940934279871607313150014773786512411755452784418265256712659169813222012765762528922159508416206337981573281620399681383034501343818830640046582360648412537225791673906702834217724819623529559944402722700186784563850108462814858489845676093666688448178047228165012912296659848986551700223499828741456358357192478176679636579029281734392397719989685685014293143620287131375971165925736992675196112487393944213442500302996550908463534976135338522851435363314265264658022432927207989418431581597702512742340812453747351044637441414616917845315824628018611681254561492312249773990639353255671399941200947843673176259184966980429956473953965693207143922117058440949456187761163001518752207817066842126363531423812443629463541444900917768656097466601457051995658975677114049698458091851215165910794932485428564991945545702644193481376580802713088334967821351147676035588758065714804550189378987614208551270899218216743079379590134769137981224563178299247447462888711376927858526138071365920193634190135698944559219605128669183659601836157040124170711258932505079932927220045235660432416957117617363913691440090233688432794576534033306875960565951892649979397524052104258340270018879534708913811710349816853915569270900733300371480433842751237263432500522656681347169138331337297361252037346196789841494735567037231699097018917789077929405308571076764954987750976308185995942735258395613273737508541854065556851214471416566243714441856131407216363061906872504903576919216050578761736739468154942130767065235913643962431453579443202908224151304625362271676445917741635271821120305678500703632230738998838781130472874046670140543669874140390906681137778865562380490998464705928116393866096621496549229692134779072801607275381039898789090721753592786938612574047641377611709475114325419165459249252641982568104739807771488987421577774515518033016112644430983856481844658107055345555600663953091658596238427904609509816141053830694158805327371174067949991089069108084021820335652279448967404401609469405736635351877503758110658447226291889659848131267516521561646651407192628305421167501430601708338907204158276758787460402367738225052650135603827145515227321943910300281485939126216987344298361037046952414020941067208715933164080851268292159875893731094044787710688631064035275475895859581836713558525082793178259930178972251615339732930837462567683930252549743923956266113652075101503929812708936448114263902448785397196485001415555219158737773235226283824614930770224139689994909623721188329334009170150828854893181363851921595994860126558132148289859807624928618912866172557603558112628835951988232417610268108188844665841646488188043030955778808114109827307095929295412588227232159497455862304035750368514613391994773872112447043882120177268172967296832612939472414220056933215373073579100750545115511994207725292874640045112259862115696289294644585174949728356147422966220000949468586591301489311039287364395880707247297037144841115530639124782144829201414057498377719968106309374730306656103207221276318333970132488838247217570565383167961709603256160686518600330586996951142406458973171944274477066037545549726496926275978923460533594048864616695355811839419014114710928485536846035074594346614738215881891912109050849406165632336777843074406223258109490040575537275796315177354621164396322652136347805182088452641251406123166266744261706691139104237133526838797422794580914706987431595311182150066352207424377868480310109314398173042579051885802302634517473667182690836759862720565021754439875207448277569599860855312441866746757870912968091263262598960591003755831696423925730370016393936837145667302929905582366940072064504740490136213928485024631675131136630602376794416046699454663724933658719565552778997962909889356643574440208834531261065521472587097833825634468474246997458670327674742284777870675183504202558982774520476412774574579320213648174565297555465235598071863272994326579377251297981217567217753494859714329782983157769915212047747722956673660105666630610341958168709454400838141098210355610951910064736319572915292913819268604748836673092381881134325374086884130127049069523527375177397125454515745021031829273979617367712796134559673575493644890129592848575956763173455463654891862072480082273358994122676303327289805414139323072294755555070352681539823407583295717968300443452409668362170433406383371064718700849354176333966676451219395780879154205468348091468424070605047619461780356693962276600836638524861812855931691638974298576633794586860916961734260427452533385721639849910758845123319956985578159628033311747617110169356400479132733398208367760769457102698683570545705205993404825239157850154884521165094917348180287822214213592693950668512268859519748996327832845754980285865923753460123173205551199673137680369168608378028198580802394063984949430842963732732193344561336158421510064053581271508477792806634130502884365651702476552966188615211238115992975536059859696369388725999547208758894579037088827257443414485916593643551752487073250627490592928866078374144049321188327148629038328242847797792152398189452481273314897438431939857341355493523236778342077762560335155012180174791259627916362322768915782068664523377651206615974122311854639988917738367960907524368372387464337142782378575330126592830251375707037873416092414040054259027269225882273011248881425239303347092782271901957320553717303597988436881419410300658043025135923076478613952157202229033752741033925907504666189625512606003835005519881239545645577391783829796413861950061027414552769087527136300645067450322987846041230764657839314836134369180811627753690710191268264073096581271325110867741988347323445931271718133683230803782644911870087803101282995578794109363285842752405806482583646302997510489772360443066901621114083793302357373282583263842057995026177302076198579179115526548121291308381904770133622639665475061670064906655145642666105072413039609291601590944973198455507288909198218766914661218588249845021854237794256518618803645119097701964704042177221333577766060488678434070495262390171272678807652286357400021885218428177389469957268691586614716457311428032321652686323845510519472629526803000173241191683612820145918329710391518485854225721116927058829812688586952832647611568314241075947904486924459892039095530179870261933369266226235952887192233013406332332735200961621205696736845423349051425230960810785742237720201225206504238174342180305729951840614552410893869664410081463949896879580562650588099319016623151179881232742357499453253799953153330614501578284222714734705047953896702641176232959238240442630289675170571610122984449941468504854419116356131825838261054505653579737502907760307556869947395571973395864718923261399927800013024104442620361049850673722801767885689255683101197070491248088917400602437211233344896243124915311872546015744994726178369417698438999092081629157109537869914332676200305572237495478860207131535351378294379872912586995593157088107281755739602750000645064850917472292359088218622659939956049467340222609744608713545901958035142216894699254736098080661484814280511419551771446600265611289931047455977498910308882264418454684932115030034352486194459866577749038634903841661530664085682088526435848204867409483910948191061315301976702336117118006407582864005306690482796828258239714352342457433459782256561717804892879978338570822950760619921426525306090812043654664526830186300777403006784256138119327615180257680286173603530285822753372807577118839037400428024456882303007143436035089909389222290754192047007529648275628590527814918370997788705321982088835148985563057842980037180004833221144705570323962502227467374540054548625387242692746721663777348272589605777772408147816664816520395400442054302028550780876855328994808395601916193323262867744719380712758217800271509703423418952484461207082992018310388873577911030971102331186810052667927524489995409720623006319578992736052999584779286871998009484860947825270576284746510881880248688007128169634146659961348587016854196235421774599281516996691984455067304950870693204425952373625960776969004350509999207171901104154669492469805231258561415965293990180011546543336354210306814220094727244507936564347893304212693423103989042386960687924761107977557616027333872313709722473593636707090618166581951977620830728747304473668275849746605754162004174910094962921130439129101951923742998756399660580175273426096472443344095028493064133904592136318416659336571609432063507961139647224203054970932867816909437279618401380718824196988850956028299014859799557596159127225567803388976574499189599983103585679020814342085746737247020827280416198591843439887745790981817763806139172756863332159224960754107766793702779170598695064837758937160057129307964334545908113346929244124873374696917515294660721477887816490350899290029884817239438379119552648832238225621094061147015788980790745951280340638815193849559937254820149520834455294390114118189783107394684739460039623845705844461721604820792926111285479620336634985796172958892844010103726430763232510857837303932170954899389418348919210735717919124029820663639992118855393521313734601509270575860293188297598460976494185502140563055432338441163054225105765326696849684293090164419039479217420303448454816557682540840556208168842090842707568629491618300714445811816020328303225540028746752773645591345334698186549566287466582047878190494532939238912569478144279364029238690837544960547826832920910350540433166731998167806541802938297200549026458780097604707514707721381535063475029990101316286474527685181240827493197957755706340138008837129304890129863016030552650179778098054530448479189832111383341708187820146220405650568859374729580388133799414443834139175001302503043203101526592842905059912491860059765751695371890680303920747470353188951943298192337828158240725355839871737455153507789391420347432155851472034658601898434500838059819403961532098047497097020643596160738938773338954004880707373074116326064285142288674470952028148958292172347176011014392817748366294085833710985728799019501883238228157679757892675505828402822673126816069143003493717799216439393945976548874514967524442850866911081427433673229249001478412775594382663541298404604757880682160328466960147069916925373445860692529299915402673126825978263235683618273369174821130486547456574432563032133529276598538843135216061720751547977998631924501801291327054688981669723866388972140982211900629076249843244178237464645770315890150058052459913320598213972798838950899750727714700938850500242996369408950772064678881598496281676886198784646246160195303588879493084570293567581491585415256899040416881111690025642831923021801122048894363914641129554685928115499665396003171712890414882741926273950973198053557280976500784809276073515688670742207964016652191549988477242442741928043520370281979451764172560045887235134081669801320105130100834753293401186284545851721884771386939457887853288427626544886856150622926182257647360676669230160441716132343364737718711815026304811145728502761283035400036247864045266747743186184264064155470565750697109732793668125415022298244485967309041186964289514068663758679616561165110210276751812000884220361120300083961717259500446762470790381359301610240443857940174046168392009581347335748800501730253001891546006861639225005766030682255658561324390803448043891008441136614799474191160097385903790732724851757738461051125276910572900720563062084976168334292880628297082698703600159327859765771016862202708263665476640292312361579843704565134823656983305990243372391180451853553065857778006898302766158735825538509157127076510538543502764907969817271320779715261155182468211794130151425805539277708591841620363442070506729114651627437944092313223572586291213988910210031419183680259511510683408478593006126077038794909158838439933680277160131963124658629247741873974667336738904986445946923621493217231915708232553918519139112855254609508517864804320770695546842024307650509901402494326348481294731127736953626020926341030523627361429516506915682218682798051816783037100183555871940135805958049055005539605073074393627905708149712216149455055384201226730832627379851434925442107219446818267523034583398973923095018743994369387972161934598467075657667804240932772134547294332113158399490939117957914305249978016398010078273356956928868229068953773474732139436896600387603105077613686903304150589417528179232327722703719129561498287020533350626485011852118246148546846094116006372504248941430190238426275963323778415324630416252439737200164010040891087790108705639829659249512557765468088378825026886823237200889749821823369780238196865861326890356967003935644585032736065340214139425196743777401513708789561452493051991011922109682774567639850161703427245230537816880650975127668314596644825232771830158758149397784916533026692854951339158240926660301733118341313444897045113750546269285392599631642097569919532093360964014535470250594778354837210682042014477695054795881604151714494303347546223237034028917069086524474571515298668788759642447376445798219404539936620149503273143179013082869625269605040046495704827613719153310915128682586941960151012675521072765220559255619343326921887644748791546064707709561834622201051891343143273181202645928949601411961418654384513836502434077022786437787551907034457404260201550970615448654756432816006175614998586555377902280136591484631207053886376432984475431786782863192023607786493497784842677284063922685069265586466114802178714819128746985353772718101740550360745017396573534514750543041645701538046665731840163048887960078573992438987411281187787936961423448291905590593162922422951090765903593232690774878858577333867680197091078918966084801628200423944345706261138486419906778681598419913063815755393579848815426836718840917476861675238022064211267588609072159174101171391358821667258266794384545013518817618174866691472348219121692235935922908543874328097923629759222473456268199584070905255947812605347598123010878608074616135506834756787144248653206743847743136528400712098356801559094190905620093687174702175098692041979343248828053124690184715719906549283882237229105148562901402611786241729641344272746072332067847679495689633926479153479224752086734224722008293265170890007017428345495773077374481284598205487371059656622472586588349946066033655193004576635569596854882829013525096954175818084505832214760349889838145580872191611056219970791020113198840249854180285764078018655067945271158247777687144357208342038469426037175184887329100704949527532844898170268216923763511984048374841504412263413150053832788279366548617215331697924466906035184588606289394076192250210711155314243776601165919925901184912969118123252421387522476526789873025930051886607753241162219405798894930319626150047213379365644157570332093283504978851667285550646440047024717051567558853751098320219219792542748263624353088826934978277936674239156091942430722382760923745539796430846582319359749376812070570206812764237223514811862946581987209357305956955349814323792536738121896428273715404697684579026499538388368493962465551424635996095427475069557917855565741600703482825404040234388855004055680520256894589063394132617805750998200137538764727855489796810829645402901534342893228200789733905260494391511730922690080516453392908598974911666306555752882624982579775050530205747041155490304953695739649708115111378457480575691625266249379725537738622959687830002947083129543162005817091463962005167764417998119442627134781928223006251052024870155665632591923359810160116218722967438121148780481041612899514672606586101541378481261576003251427010194565524201034369591534352925859823172929127924333192435237287027419452635031162642330453149722517502201372210567330916754272712859503647689620490206196882941413444733268273420687317150494321046505490351816749747528650233427020037548944435907147614973595663639394406385887587247256013668316956387756026707772926345772256323717501520403893963739032750522313857497522294293408712716811033904258274225646934617706684528081142673716975663911518424715477329128922143264229917876792305584737206726784699833304790859111415356454681100148318118209268074849930018910234929644837649730275643509099116544093065894951304947194777704420832024009323597688799908372114965708443221319197933534819375673291978848971134750664411594158716498218278229507715055897239479348233822495815596521179317728431004402805987268908731421649004862492091829483668035090583906638408030399939375438600068886264208064849194576332766674985305984949689791614447181233261756505728631941169393570641565548809342187804953861607602350962673863996096282473889316517849623122254434849462092834573078742043856737850576083846848318584875389512978701270783772082598216235124075945245506142949262559517106080601123618461339745588440351995560286433077348299602232810116049256134999299848326909503844002998247262754125555186937664602569092995837275000668187671799992780306527299425888604980352584585204455285012004173054239521544714236321561040539854007762833809164162152931787829601926415099469431070839499003003165713324270753379956657264236568147663300003710352128692783203956671213680164749598838837278341872376214595193962083057084592643403853559252912141367825188826624846508874568835964279476633732943666440633282147465883422889602137884393894656663619909326294373139418676052150587994168318709014290273516076620365389542558183710719307816451691299663595750921213094036159570230645369062935353719218744121140988354667269692704487708902870507045662994804607181408926841896303191379535896843909208397311490873005265034939687013262188379917661087232790161612681184050205744699174408537879463172279912712680412179820178715893738370005536267861677630858621453447917710641198712825399517601893098087627967366657369153417066108643004942456286279046551873493526520039031278520256943179123532044272284334264361226588872425761102093917064799163409152819009667677329906220730365607016935537245925592847703915165199438863201957369013179885811722989269112564465492488206141255221109631912341579227788338364413175997652863080250478123797571341155151520959322411140952171157208422553604312247828636162033441040956771843109523203878328792374163908363378725089493169611555894395650945075398534724656247209835275287394586519307482912444187630852569912498147600385416251864309815716818093925413103992904307819984020126124289594841578455549746294966892231884170519726361855542251582246953244960173468244580960204642882499479661204718940447429299875847286114707374992835840247147737212587605211214626720919673551459802736043471544003916048666885364430548323652458969296704466807400613503488419198536187468532528690788235068728225900912017695156515298888184816169021391922515714176139519103073782392888132537670559110482336517486418441100853197102493600311450027046780378729732667904204714428232468936332555674520155103599453709470884661563141432864889945685529551144939220401745838172832824121541322849055377756672053213917203807644217276767891948855462872377898149255549795699874625063353273166199125559279772896947305313701275322575680206068834017309181664842729887607941662925180192556959948335544016331083952629149790513118970112744127338256936223641870438785439844819653457471573042124835918455398521956238603977091444155589808625873071654979392725068079623775894724222746056351255786917645660367348471297879025811976216125495275715409963306888780696526454131163814363057882715111361261553160686566405473740189691069502451481904966232901513077699809928163738391141187256032493856246434399169173211773405602183124895410240105674243997126107400297486015639086778820864544688291885272626272385399807972650224541868233217679954892343587666872886488373991524956424635428284973312178966582077545504002276962142563991864797758135293471828967205555826076145121189015748091022970664614718966132473300043971697330874247170839412288362141495229362696959182960237202693812469420538995135415771059408658471593876008594893093300647820856466360573756292233488674576232955195641853345724533486169214072404058216393442336303491629465299241109971974876131274228334796006891503425737495306447275866215486126089370651523247237787283230973018665013085960084203074393511233646014938081779203844046672487014880703466235011815856461544594615606204058712515477330163357074103684780599298033881909056054005425235468736915756257422597831788472607058687010869987464394877943619282115631682147524022090447986347283388546379563936288631630950583497855000733022814112365329989376139950092287409839733761334226148971072572608571166409268395293417073549130976451181717403689586293609178272556079532468680904783655777608479100012816588203243376970397101912000623275430218525627402118000927636424272685844219117153273409823725672904590561158315059269779443900005346551322578029430092375917797155515559558519247352657589642242015529313873445893494871352700503103137701307486892030095218561972842123923977122138994441209887453721030528516049910788282865863092110196943851631557763254052059113588130970745407757002374400084225555178976673709004731985838258751783406594760710915796184149262811555539413500452937850283587898216318977609979942438973686465380588540358899009665906365575111427543749493698865914134237024828585087481664981820723005953283438955133945695415584875919747817197845163729000369715992945243704702190751020566723206329860742643053340146316747591692288006330502050140933289037787158030290144923414334966035916097004689661963914952637836413102451285845924350120852349509526665840121193714801607568239422147869096947270655964210168894698272808994663939963238917993877051245474818895931576827291727445451535238548192927688818842318991190066870241396355059718863710367350974559500798105520290982500125396483963375270030943631177276639375921247568749907322295157825436520189581362321244127541958544111828205443827447195765212171022873972048247359741168218794113742567451703890154144749942899075178440064066072952129282277764879088342598089032068897299261861450528028821369842454789859462206821578390717855867271262236337988622685850569842274492131519413816917343941159311714202783362439017308064982949779327770065831473560986113860513870924283245640404309872825347337054067786948938747891891686236360740187637207989333696320958803856912444613729481001931925038128632284865070344982069924213472427002567486730019657621395991454453441991121835766847814336844022078470985175259065142597511150910281633675017727125134593711726245316364221309842261379885152348372408826855785526884610725276417705277117559333302724713995102104596573868473700873063375440536289975061066602529630298895802860390743883207627968623705963508411001563809355660360352329808830233232296548899707570979302562969247211230167071615001871922279022382850622445889701566049560239950497184680146325821355241918494953141230558098890812570014205117313522779923288920071480771016228721971016496842337294739241008273242265198553003507642154204993444990397543369546326024436439337499989435185311445360131142212021197681754732805712844153684906064843227044846221763908821662775327018665598375995244715827053483890723815399684261175908518445248382143915753237291856069978230373342313641550218778604760077804835400987679209560601527250225883222971052070452552515314360505509020743409310413203075102874723668294909147350117944574371896953199250030770731244334295387684349147040109381130262408965162292370034153443017060671478645241137127591833198420719196462950145757870506829620954473199175194833909035295738556445837473417821867125884337509167718717736963174150670485600555634687109747061198286198335204898040435889517189053693999347861933135707160145362535018637810053717847001768549113444841545592169909679641805642096041516034432577145651128502798360698917710064212726278339444131374897215964715209878865187607471160764494573832769380563192544811379916144096311656679123678691263843693399069980997533296932264254149608341741047611189435209303337505261885937144026674121281718734603987541717750909609549466657089735106374193617135285190163435097809802565593891716835235287394862755316004325304205638651030516886390185896314550630309596565411565526049814322042365744408087729273071531103857231129861464234631839283593180237520492012349517660925435528871000430661573955320368259316932993755330465634693123072962748442733130718912748859070727732841962070771571884422161507029866751083172741580682119081965074483997721064436385229645040969218435718634739953672042693131247479776558631325723573037102520015017562989872936782439295324396961577406883032765485150789417525680643468149061414234929719446700541571245884345638080560555964638758992008282158348308086142820043016135394030546090717017439931250568168639177541529516659329737629198400352829064942085222309248652565501477720599805074327475471907277659103535144790583492434807655542766366642295959042021074930902521766906266809044747675652257169937480053973763223465909779162753706687763439094515292645150765874620971987607515887678841174145272163518169251491417932753538188781832680337059495567651059901452609063916336158466031969107805346769889844692379917658896968564275452972004878673167029531372152963326910026054620733949714572409833458143664643233269028772543352057318435225222621225383136489471970575368290531522232848369166001113662602196707884203313132774858945752905401558727869125199133193992117597378894230170977731032267226940875664470068803611308144960478019146177004987633699372628982822083794678951091086702846763779692945625159326156979052418454290208933236620997144838843468236919147196508515807604574066827991345472898895102657085130295915986607913392316976214587792921758447216981260601303457093294795535859431949137569246727351544667177489810982256694378675962383607096396658521125192409696733960587843590334795212043816102142525112407680077020989291249810572692581787993354226516777185781690367834489030216017232743220529553326225726745219838735873522510469758930572171023483956228193283247541117951624312385311253109774840739184641829297630013970016948690032908542937137009565530658409640463481963927734726674892532200007505808282281051397391234316059838412892577185614035107645083771848390821584937043908342324961638749640650728074074493170448160821318577536283588245950491911085045515914087895618857731388207465579045039940545909583572113007328198869512831274222989975084154422161486008853078341849050261437112192575068895719593699485545737690744528491513982074272800686645944594379297256045550034157836392536644941750859392976997074117161800918598100102212500377564082248952703008343805047983611259521376437102511256976560796642636095438319608969250389878914431937117992772000035789788017996010299420079701829402168730708280426705782370167842302474739661739074978886673069873519215185950989213302291705182921327336850199601583419523604892262680447920586781918876836163625683692636184501406735891687235857070262580519146816737714698116349956846344310817847276962488927194429984094002429133899613555860627966695517098679684494567254924838785386137188437194806392895703898079977194853660388664049566236899908673029324868129343738899868324308672299073533626167439756588879145704502907095314470039652514342955615549321509378502230938053925335179126376138112174442871482260811132306135167077315428088335398102132027171437015817817956610042191042296666272230137540163614984874346799764459716465333232086774039309054926256629271301622933861538666649972011752173136122530400357881327639752639841431831318995055405090237886602531321520781706142946917919985972451769877565207317776664608918177296259286884526144698820265037114365025217858768467314081628078537497421558599233336497240580239402808934419185217170342933587811801936299285919804090175056150765760751732401849518325780710961552266457034459250471507074506104436915832472640088920983924000616085918131640263947576910628188496141687444558935001536997452966075042562734837281356637865153237745951451541452086374346131178445638557753859726379744442636789401099642352422334343936926423913108060495435851087468872447999490976815950093382407267574080822813272805614055960445819345009505908043060169626105639051800630633197374652169827055128333380839784576318528656400982980992131309310859384715282331190728120637504513306132281844349265352113514155251758277106441425472477941132853223094205721770712356820483655271492839277365462344466809435630304158529530732106318346571231887525618795734216157851482840089320499991752178806517501564076975133820006121772121211118441926638693542456736450384458089580268452239832167121786094108209919740490239951803440563772747862089925110349594726534496860370322369589156511929547428091449213786381316223175564654495384077601180149196215107883619991283285232552797508426870465941665828569297567215778359424291590445415767524333846788580279318737291837815890199021207961145238194161121535571257946962342018845721662286018438167660776200062606494509350753867733610385457654855478557118805502983168819920906015678897340495330764427614023692312320562608486346795543014203137897551081709359735683270177856831567715066377064736997963614794503867588842233718899809470485010768148491570635625710367860589192867641761424615918069559837662478595559845019279804924683640497014247320475051831598529958989678306139235780007211720047882566352005626482990517200798050963476450044969367386828902980329972847096628665538159686638923669150100356335211640537639579748514537066429485252325515978961695109683090978905281433887797772005194833325977417725814022775801785711857019569343020339859703620891329564520366597543113714509476417153461155273687745133982852383110610383570062989343453529967196936317127801279278812618060780949608289763582913156559977386651428755112539748568481863629715907332027108469379278215194022756659006853088123014218812435890029160999583406488053745842146709005589227644952299324977082387135311805684052130062619127146036635463881906309085006798240728684609755613840001344373077713089132262417385032707728871168257023373095476442568992250162726455055457531922212233782599350035552541718095617773789142340610114000098399694207445615585844198909615672666637480476380951011641726509701547856514290990516602588236601304073278077322569251133671524660193444350191861118993869065109917612027008986404787255845211989476294819522705073865244918902865723971478121622502398281569441416179989639833262768039696775036050267406794852688780250825712040663710830554984132023378045761030731301724754728728667655020670275032694277480690636368326275772161641927804654690723253535676911987013994397154350411308657133302736728579828339674660326849704221534389468281972388844838365465355128265736006277590849557704069024981846712525891532725032740346227029048724110445801822390727899600674305635097730101084485577734203620080645345365834299306932512514180527815325401927326619866729015213772845718478421759000693620603925574774785513940005073931933818428843827177371610266941773197495282330258468180837019533572871363672893632330379175696177752603440196892680085003941774557046605288620312447165993896637532214927053513989607659891939220048635456149050603721450247598804844726303386502073826359343274808664423472363252379775101237822426041964009828821497591620043016927320113415538930766367835162205336620398770600514954855178016855416127345940228249136120206780828128330016303078468850280323809017613075971361810218947536442759354566846548526789455162705664545643903036713860261783905590888968902952442838348800560707351148210643890920877974717796784567482675860068793617536502220053104672000451778181625581601161404834815221548746880125471758297465061427623361129905402805161808198005289861860609731638022547208070487587842302800023536275540162007464702597866726193099073216979228825003172980532606959267977068686802251720182531644463147081566252259411321612377781509393659710865285706865186014391535199680136711657814711554912718939651210034111593165577608800778278767834768390062242737901479807345630425970076705683309955349209805420309518288433297425928680310051495653320775263319449650338284757088918708475840214871586680509570