4.カタラン定数 10万桁

0.9159655941772190150546035149323841107741493742816721342664981196217630197762547694793565129261151062485744226191961995790358988033258590594315947374811584069953320287733194605190387274781640878659090247064841521630002287276409423882599577415088163974702524820115607076448838078733704899008647751132259971343407485407553230768565335768095835260219382323950800720680355761048235733942319149829836189977069036404180862179411019175327431499782339761055122477953032487537187866582808236057022559419481809753509711315712615804242723636439850017382875977976530683700929808738874956108936597719409687268444416680462162433986483891628044828150627302274207388431172218272190472255870531908685735423498539498309919115967388464508615152499624237043745177737235177544070853846440132174839299994757244619975496197587064007474870701490937678873045869979860644874974643872062385137123927363049985035392239287879790633644032354784535851927777787270906083031994301332316712476158709792455479119092126201854803963934243495653759673949435473001438518070505125074886132856412934495950229872298316289481646162257398947623181954200660718814275949755995898363730376753385338135450312768172401181407215346883168356816863932729367758667392583954061803338783068706490143348601729810699217995653095818715791155395603668903699049396675384377581049318995538551626219625331680401627375213012094060453879507605382712319746790088236917861557338912441722383393814812077599429849172439766857563271806880827998297937884943272493465760749054387481952681307443704629463589281027653170507654797449483994895947709278859119584872412786608408855459782381249226050561009458448669895857687161117178666233684740994938554132109375528181552588159150222824445444171860994658815176649607822367897051926971131257137545437012432967305724684501581931301608776621565095755467966678661708234768255813351868193774565001456526170409607468895393023479198060008424556217510842347173638787936957787844093379221989457534096164742455462247878800292291480369071152707955455054147826884981852460058144665178681423154114878554099665167385397276146970169043915114900893330791845746576209967754812313820154360109885272162977010876157478173564163698570355340672649351963169554767211507772315900448338260516116383430865139797225161741385381293248011946362518800840398194553905518210424606292185217560246548601929767239740511039526456924297864212424037518926787296027177337873837997832667620861195206791215126382119252329404069205994386427469321533885667117330827142408332659203260753165928042310230997358400395940342632227688070118681961767809056315815978453763757835637359027716488313102887693795053507320801807581022382308031762504329424722268391229712955351355104314761886655474367692184120188771617992285620563522054703200691808688066121174204060992412348760515406820226255950481248589411873583468229042308361555476947777083194087481249167489290065936961641662343683707543963838945144011955648738134292122982001302107996192242492449305199923585815808260352497998505918669722012316489710483070179352811222896635512831743735239301140279238980874456964830901320787765878536230135428000162905587729500679587617824737487137806004220844534604506470244325808516477717390319602865553832828141591524873526330715051314788284499923866324319810633651524331132146390093336215916074448292345717745481716958018168890017528564504648913909042035602983604565242526579727013858675765389930295844925869218978864438881935811452677056316060973768465408369423020381682639245857910740487087987785242614086871517857580100602368170349179773362219662953771891385311673996556588591216462801558262987354137633607607302004559120294665734757185274531163384777648683824850411630160522708694444270364425124236397181499923496083895916825803616474988104263948389004294055043150219312686423005999292636154064926266418658359490424937152362206840394037010868074009844000151246534353506723384546946357602118676211434142476117834104312730611678224883396991553909131097323106678111748553767902723184507654577569988741139568614663158136157367406188112591462039742340112588213156907517575497965822968984623132925727317533830231353323287005659568853417520457393275818351398234767800926142652107471045666876313432566727592989195254884903780904654648826857520445469505381349830902146048971831938778086340901416828548452424809310434321772478877824873948606180023341522591414613878270054517097141045765661492895310867248608048420437663793623021364581779802272088273807173671129982228906912576302777916265103576257703810428868037605463630333794036737769674475717191871280395437096641387722662688983731111160200451859397317476462154283846016214452655372029255205150494182800303255026757903825278613963357272065089036782017625857363660245964491453352814103725168382209009710194368027833670896331467249732950391925929851496641449852187338437012451746742187121311020572617434013405687655510418786654451890276500538217860941210535389978490598218002306789082160614136701839368702830454434678053649956649505318083798020795036583522762200650678617717109567200562970302355359337386977183283533755726234441566491600576266660419908527678970350419329555456874533884212130487986200092870617800767859273517538652367734853505306612539602553628080935056256282134743239439922244273971156275598524433910412618043350698713410428097845686951897766888265050375616759153547317366813568335316858844026672620319660078519490526181901613554088321056440540902721620449885104176129278788422785183520070443946096157166554344839280259250115630622765074005031235141765652644994304257053150223055223357663420894310238586706063043029771985322421204329861952863316219947980302165117007185321676809506193416728628467475330721100551185422575862929268140638160246137695204327867785235194089748779958826265101885716752644896425951624560816468058666260584432828153766920950170013169109386439147003334590670186879924648310918185584810463111895476725830366892265711699056543175998868028673114587345754977744056226584133792474271887007826855465678229033646251538989848130338284880157880664698448021716694938171399856178771737877871273996983426749997163226832725797257211542282247158517548510507797096156071837077138399826531636537675812475187839835045758831179075554568661739592872955871938621922357387643860701740105935974427858141127139568050496126996004843458389643669701477114032917806508492587300820990617958758040299661829202182069615574562881098022357619516396786762660973679549234378915410018572898981683785842730361244845653242635348314892550648078219827051836656213738092369590775215169834652610323773841508983065813648713091823138336005592254001752627874212458262528237084154906823317652568624624560956433201249797068041246522041709969381972852736126391822956482434690428030358268329357392793414496255282764361843354262066413468315637022263287683908790059716633258066433109588181275324862789298009486815890245271469241081839431303491687336976581151940227733980095401999252151434960734147453903923041199089964039076032916511192955102866674148788814637078005521248556360181127209426130985380145406153158542266462584341614259501482368936636673554283272006376074901810818221434086197391154832854438431581191734972280170417245957297166080952852221047151238583005601637216781317980009572563567205985941360125964777049002881706806306894439380904206627411641828490881513235556768623630114915361583530192951866940826668806071744329721989087019500334542713093632148089794753197633508780600673514580188422241147584356845959564201239274628892643185709693175078143319276835130911987494192376570553216017624122613967595703448049031407275797776628431505655127739385463289597242192926469910785583208897123305192289771726024819705371968323918801026775585658452989101403110550683658357488323748145435567666180583330649894239399438837996529632540101979963414642878228337725629661684691172012182866147440407773559198924107512312600204245610895922993139820601712131123438089673757501431901377381058814200806858326834886083591973955864845363208548293526007514605537315405680791511010486785420450243178481217764069664165446686192392103582308994427775611735572662241250772436077260117455728343306031810589904078019187449009492540127974828692418861888535772361897193373825947490569707553452011531540273331182837797612471701505762570646552967998971822308738142267435774852049495155493011531223734979975825761820283175445212143113679091427088810843423896158365765734884886990189728551056934563755619713623568051043337582460478374067162905096912205309496934227364588861618074973225402906526515737420844169650286821928968778018202291670981751926302916607556054463105760750982078412203746909440348123266912521571243308701035378903490009066432926437257797502418243302843780921084480513144963745045072082117288523799394904862613819925220523930672736930593521763721661889041942784414690899376490184857137942945237704130250104756988685409304336537030293676952095638277177045347193290699647498379824122769760943310794085840310549121313446962757523313373211080309924257885658041040079831661945569701599917621887866447194317546991649741520251806448877887985166966690501806961177895319677765511995136578355296228575679025721386033541608897984695597216057137173459782925150131146009790237307241203635433588344878103636502521533751542635664155068591620834877000812706454698384230674135069739238548841136427433384899180382076512355937559056301241721917198088943293211365016689536703579578371871412927951823196775077052730143556689098772815621393844232162162161971429326170760137074663600439766842321077254403779240741912177019894286154533015842513183518208113781913815423542155960838996708562951689526267199396640573419309148909818494148218841181017814237455735098848882581594204563198422321436031740934071356176780901434798699419057958943555583075070097288378792490653344012468305502008705087364565309555791707162299943796237776319056633768772370088746745395711078167247218800431295787521446779644996051180003424672524585953920320467088088978931754117949322498130899564183829537871503776146362625851123801606935807412697388440403040973908458313791424629091564840955685126269310305851129200584640165947602847655240861060519102264586305405403263479102817491227761536680962018862783314212064480559142808329873411841436077166060873108194984848449281514768589633915480945133805559997501346916767883365231985305358386333353293524929305031008317205443390505037641393079461194677701464076259049277808465134395230955249215371743522929394298854690668908911115869071605486838473250050447107665195875471845823478573243436854883378387199561707648365238158177588210668769119973843888799468412783119761423018733348144419008617020058260420725138637655462459629927029608782928451522753607681396103956708288146803339926384988385151736990617060066632006306998254785234275540816969258030098293128881684537932522750465978768896330957334106016465958539843692074275149611027430712646967615183693708658202627705120954293043914354796591826072889700118751734502960650919850013693362846839461203024750389754358908307861291346088983640648504485701565967776279464154180352573405136348553212995084409268961231094075418274402735126937021853247784654033960030621999887831803931970429212249506761422900221071529235109348508675719043339051189469320348811495294030308916091495209813302671757024177674770204846564797798438788935089378032070104437785697440241755370465710984675909183022159756848621721013870882525432890698514462921815723805386179236356369835870644080963291165856359561435938634628223819612220135654696673928822077188850830619501915645201629855421386438643376199314538365186891825817664702706237536738237089702067210790067936018568204629158772228595606040220993756568797445524091091273282259510859722444477839928156556208853483826944258140069138024736146220206089973698379444952907011991788121937047080908973418971241031539702306333117834911973407626847398911061239261440204531897927820480761849809742185610419459722164228189651973142690210533538507826922803268190589644869892617753658147086589503185706725843924912664692155659592146335841712512707855640973312779233083441180091721193148260331647244028530953113341680136276834038065684395622490106437049490867116237010132393633354033130348294661244229183225078490411345929093603707139140370164057345143598984339125038871169818665862325407178683242184046385052492240229421525212221974662789089224263035246716537678833361616148970372443811489848115704606743858857095652279178322657968882661332326729001505350382107162054086087554429471504121933307836440537583049328705143501513048245194549758503493520525957811723478029400184624769209459869484696088092617871173516320681802881989626174632216029157633686934256771549579946307461040549930463269131744981225503682326771019123499610779248364867445952667523058137025048036246558224662891089803110035578586448088097406584960299814568215841671226217494883343724097604791072436383870261475970949778215472199296154439933552982815230759809088804303600387956632129003740208048691108537891288554783132637579917347382527986751879782529450672657055324862832626567195976332222372710107343479267296415654624773548295478094963680452949837425649529575118004864319093985263273231905147991251463147448877300220498966709550147208399471996063663587535673786299656869502667095469616843184224728454592024460239289610702282710303517273872768823484266522520664408877129284161580488674413334325115403719988548363974914408679611410475265481059223914028171972929803058871793453252200322501742212342449962725978999407953538920650419141135972072180307181080482865848124409703563761176298736882170851680935184920764169315613138405115324928654094262301454160133346622464795217278065217506351227038298952179453465299445320953264311087319058467358783356242845790281890532542367098069773561790402172233226529660853345670873748945476473259228637804046454381233411083304411231388660509745758645139003863262585367563167730316572606616497147104506708631810287503520837324124942092514586319876029964584539123156361850117007484487484282982522262439718215117321534280410718418797493749998538914631292706258639636380860470657734340707417323728139945927875977329238106910542620209209001762374308224062956091925317164522623804614283319893003037886421694642287639102345849419585039901368715282518402270127795049007703206797224557672649471893295207517640420642532777865953876217151462196021454608662681016373258441952977605427164491692732280471519282214915956375021949672589124563025166213772900883106388971957731847127660967057683151694084870752766302642713668796470463567613459847917654252257822110092309954472257519230706863124175067148189594738934507903976343850049198621488135669746617243726210370861094966015392057562788308843081263165787332427977902195492151402366881064185201973700226134448535443376701988119859372374282525771761208886290597299571452825979444434527863191869185599234713934579252581478211155100807011452028859196277866828679925367232301785778057005127615396687861448198899643647568337759228998604049577920634220248483126128571348387616449012217619584185665651115523070962172097967072046157074411689168398947424805133626102239441203774045954681993491954494771198217385290478857262873284012754085922060152042753480885669064538133606742248792526385637560115421521340872183348176171587430758906823582351013432703013717015549688786653960218797525770449267860111778987672020009778738369974219701951871370502750319923036974386077434986596085892538489649995960702900905542847141058955146715477927331521248564891157178722737459041471219531529444663223203560555873775662521384676533050180711766992905313774207095238261733418186273156604132225803239782797832961048252916961157743203757916379640463570975791719664006094690914007750084960782918753292108900754422979908822379924218962590643139653400288668728488838551695970645456287712697267537389615886323040754333941631384544006684541651808218883366897033614229097428243556055578677327481537465717407816403916318439476849591970244209499627564606321702954570613290085286013249836995229236183114564346940970845108962354780574839992985867822540062887663288048675422354184439040530399507643492849712334837635977927958828727470238052762361835069098182311430519227863950107508936171324456000968837958869346421568249064844912893210691539216118805901680212405583780736189279284850909008713999549242233008677979702955754825458265074870453880768170002723581522777718774461007800800568192254953163223236495765682988472395215228238319694074914492349836886363389970013585884889032179279284351011924498160639662285942809371621617939707359662999004267566982950094763525418549116876191874490755260213007009611562970321030687999781029436567910139326636335431128284055281007958658411976190423988373672072617548408286009720757360601294884480361402865577752295892580541877279300704312461295666369952118663595894907520827764929993993460851773945980301044943614620174376145308307648801728665042446285836194942221749636733762224224303977788603516928057762807040070286884134903100714325212012649909081152739704855256409685970423882931748952292195880663686418312188506540978989896071393200214096811784434365068255235454506558231105606756698367527892516136220648213153455573967066880222495821428358509105711484004508921444032664743849261379614861453675816794596936273763119956532635170451004339222849482673491179208213774549055412453017688479850168977897729171066078709832814694783125582996015395642300787978818489478402416280846878806688473304821448652487773231475699680315323622910652609705080532698765382044537361005326123581066636547715489764727305166819813138436694424584810394466212976276978660185529840165918997007903213320509350938799169614076208314581963866922200578438896937714810050488780766994490894964920073161782064492028938680277741753659495996898575672269539695844132376009504687199334971805484756940368298249568035577697455251081687120729934947790584055861009438442605549459644375720393797016646908889667217108242805420456169579266026304696133424119509915874134216764191682361815172180091638664781310193339032526678846724734340907605042933232667839825000920203072379807563268906892899576625812008326741639148834994266302788062982007490249174354110884015953793557745280832278243132018156968266832604522993254079827408228023610649344825260167211421520741219846689455041158058109538592732884771645490198940537377773221474245995897645186758378692911072054437696844004727451960983032031945415541882226565731199519018196320065413109621959256247401220870632523828374881456009234014629098023100015364127019325074692700695364220188307278292509619814728546950029111823270416947285230539852287989835861190368085329410872655509500009838254516002879867951788224421303776343624856490304554460648221799044339802196709005053533168580781045596418040363164671668253358773851409910079984146363662383262379843898163453472185429379243691388671762315753422126868658941066139060531928162935343882066778884096864404411546537554891620975398463832142133240052911253239464460472292831315681517420236987749809524080501541100836099499312353779994323686261114207075822632085211521528308695939195928695752004865644789990104167719540328842760674730366229277715272473950028380265837886898908876691852917499827575293832279457887620121013275639363810372698179369723139370752631234564813528358064376806110097987510212847502194909273745246041558098697165099891828410554467493939549616001683069569527478490189073537035862292306335487184198810072481639326034411411686869425757605575453088984322919630482931239902614118969843929419197793040941654198448181705895381852285193667301308682940588918798216827394823910683293109069202341538962239978071806623582178877033567719445304049824967621389737451637987594563125715231486477686647695331965253126649491099491156394582546850230059680394230116448329437429221478088179660454984281798398216007405989003884666184797838261219879046552358728627167418919171379087615303555709062463639510597972899199268162764882724921584632732301548432279984259261685536430896025254702973031084045501630471128627759949617656954714936806499477488300737285365998363441256570888286257618182221929950748178386931086222874867755891637647832308817202772407316861145523515765851472900129873142950227621997118861863808395353131274428902461184749587532054438071853913751718856959918815093635192231840840442247233192016988095960841829190798688129818160228949496234123231730698582286638027020617316055104059516768595864360003228181448205871770865820773224954443242238883862207128794651302687333469382288647280748561474770088263293071933057224701739999494855292671406363075054059186317418603903272899095782894828242311195606695557379623395012445227192843516526997160747695709211209361391783801515298035224154044104064890918817986651056869163964913966772726663414166764791207674953128625789913919868640861556436993758048811420227273436373245695605280672944017091981202132241043035633612807756802312654651686846519224288779868722053745550380002742799130541243172922543887583985852646797632977506388557287044549558447176952215905422650309443719859071345890008120508646476010778553825708367418753017624926412743588789936266369314808250636741801369476508514226653764953522318200971673533125076878279122036357871330090099239123352948420851940078843417859699050698482731592202105552986196502418948232363729727037333572394261044627234773875884874695378209979963078252428873327376037162630604294254500446032766787247476075984342742421266008268274372460737404992575374024863510315359830000105881980778451607361972151352547096075204164075210756798530843422170404158856939851504655959149579625294853331122761048915506504657558642578778896373149955972664796782666689701098330382702314866318281259706515329970090395365819197384594315475511698419515684429807226134716425498847314761369938975310165049147210987315688103106017863204559921662800508193239287181270560863740167750261070229372852725731692415146313397271988223399425577680871455151788246047483236672698659101639197495145580028799863158447191034582373228789971265469187771691288990540665599537988511265285964517749965012428152348178501188722168760852999968873896473081079013684875431821792298587580797940911685488023075341301085627787461706505770526846748689247303645221559507780481109766386205071301020044882862761499407598790949730935630376690853874132948109798970692031560388695534976144512139979236122299495874325318959252685921878781603227285039762813633870431810923878383885287726232420233179707388849579395751956927717989553585385367228164487893770777100600984329855836350678110761540203761853811420356883488576434612930456721142260605534022182301407487670105873906649465534726477909164762796974733673261111392108935366168674822165372002529886508689656629153599616739745685501230909325206846343747516095062222729584629625488357323098174771950817261556626113269825055451167442424648887328673046719790266868753830861353367041262794912076889172670209837427009885193706878626096541559979249610410385829957940360136183093799808601036837359065017291233245882149001946398155295159954041465033349935055318915671388904788877060628976077168517731135464656328334179355383413441008261278605616688635664916837732361076056927653177618530288963319175954933605436353698939851292437772651496707881277529227993130908470040421870089147175433900106551607929993216746400948820428867262255643072721424649481077604782950687475849327893637422026560526471689764784370343080519268334761805663506546872221595097912095347591673390351426691528074417023898504266284418811542749347644620045396613461811315238459966193827874560219881382514123400386171500045747437991193364605834219722777860532382861501695120044774249873137758475031831919800299345749754191578405647724827894777121102075243920641999783161733337325620088715992823208777127331558520499263760907247374517300664398596806021358435828307189530708082763862554004422047909730896790967835364538777846728983844137702068958898298167416342965393886876055601193936422271900573687793106540011952745174208817611615299514125726304817282966385685663563673979356127474290590332455033843260866811192428329311888685352658655305731621105232268959838373136922914374008795460569095058581818002583732386502112227485052109765599313659299050810610360543463775867599605094545742880605518126863660603938538972230256284516029511379520782832519791926848214954790558268295302892198718772347489112051817566600040218401376650612926539419832072446925607522668987496703463253350065841372285592329582081086232846679940793360995556892680593371861736406762178312705129400645366970624717754410445844452562635091749463379234120889970542461754430791629357735407836404615482444990631693975627620290421274982065341375674864756316495133622957395750115096095691713456969384524865448421491820396393337688327886601312733322443942777350434332340028164982370772427140915538575731276368975769264175145819639945565385156451751414037621327419018075510436792976920398602351995936592874404211047302178084608303129848485317521183608827434221785996742909579392601027379599415319315991761238654829646311627865227482249499776824557179555425615092894657659769655175723673742145714062007889054140878454426008289951384958814493201147970387574338984608007989408385369551563162270668253865500442521236933883975948321773776860086702708324825676119311004388519837983541982065976163971479200252216454758403265650890683395766064498126174744923546280739762974829438992160823868777873852686288175649361706701840427518691628395684792233115959569519446548743952924444780440586583078812509561011022630937300692419609448316755822039357493574376737649868565251658192426405659906816603210577758585635135079956931875022783526965095185757232283922502132076003105435967638501327400963878528926189299061236460838162995148451654591198558241288399876915659081366400881402334316210131749873239806187244202281075332781837862095623598609951389225920327587675082725715903726235468143993968916313243552403918887964859307607584888561470196716938154014951169737275251744451656268903318206376021194298403332285252617452724068089875106496313207531537048324070835627816679903327468679649228756669495584213547306366513519785454500408240734912476108859518091643246595988775926333574397791311566314840054718709936364626210682143006492893732420118128610000210537491261615503196141234506364594180259592674249344292090922273656555623023823470623051110479673418976191432691488770793873320345322952651982741792546608659466703014076365945404659758496622399311339971826262502594609100723212380681813475672300034804677637472695441380929685946846563249103981949121794087189299465399153992613426932735967763202012341011034478050767979724766741191818181549731963003876829364989356617907124552010328446738498199999711699465034012660737351564208969364144857493553967242884917248399695874322067974966072700261894414264766018841990110043464374050676769024371695226958814144358131206450962253456591799156963649781146303237432279521154787158794125551855058732339331491894919836672981200229715985504076451790146792627214457458729539143666361691096967032895616761744822067274873867242727951778123337051608988592969492924444974228303992764768287597357581056280428933133250524709332598279122802486297070629438164995879992373584217742223938082271912795801206825069807280452622692665513911053934009092990557907056043215292184250151293187412365699637500644332477242884124304989351032470878932728365812650456625869506030426659925075422302481244216965094571298788127295176327924054028896359182864002277657103011504278135629324001570020753898139532544451586617920461201353094639392827058597920596330517280365492409467742775589986471807188129333726955396090105011548708981776582051202282141156366748713601238260858764530106356470931480468858159768971970222304725567200346167399950553847177431786741659964868786440054855279144574155409857644040707551082881523922156857369771549008635708063122505091966289860547469393184824811974987564410565106363699872647185524409553962372811641195780244326904668784694456536746758277939246735898798528307471995649454526944153080358564903500215297942526439595963989194921605997352582132630809097133379888213518225602090626444530303081489689387247301333945907207809677247941164903990281931151562849702910094136411891285291306756910971456915210778909241433177141529406454329364315948029931346729018430139034445470974135521119429987852716301453422385213681896644541343534627444079208451780600989400485683966585282277383224114115852345463242559175569765524165764839406708386177940977103366101762095724485136669743619817492930409512459633363511678758864844499585769031746073331238040502621641522072020918576238613024820063469585882969241518225721664560479577372719703483623357083290845213730430033894596877368338678097696370618545862926347249170505841671228387655330698918042684932385360660068402366328809626918191290366893865826877800403283019030190443644066761558434877586307510216572839078460439321658904168619794383834760976912954212817938935638500972646160474761684479120358923693138875328761435921380561687624524577698037241001431585797974706304741336191402429628596659497766752943166148920333299271314444050686171700981823686723709023695089718614491499899102861735783350596798056577072313445241015637900518886034923883184207089716105221834322181354584080784315072095061165537833666890715459179117489699296232198654591984114845362779263829387957676235944266906942557649568993457772683438090916346796927408456225112532466194742246981633758991230235129945694998558546716443894012245783804662001484989576892829606858381086244991513178653346184254659585577997808562446860001571582989366790214215768018359417560754882696710180861248841302878525030586441834406680183518793213063859177124706555724933922005652447435929665269433415692322011564963906303705282826697104731259918347048185922688770229799628815800129592911777735216744282384199309207191046172477437627559237045422480067117972988827723922696944655515375091535136499580257411780553217433806446423428420884644172381482755446834533008518115584762446167921294301151960818803959303825036732943213947683092947092552925410310086680465596368425093736662157470998755959620484420402810725995977503286745875524810455847786040269714417350272813630971961569424217838848917754142464801237731113910449747818091751771735027067677050572623515787743522936871349530727816234258895758115286293030237954335584423798398763684863596028108327997718201729720745483745673544404662980324657505487873236844108219404989094413693331205539224938705986978432047596519485830018707112140927855421013070958660976047525863542139234083947783944210767134351949068755369071283934095934867478583708991439457877527622195981401814549765090352655335896562390854675429814080744712439650055086075920820648658156338150944566270552680963002913345321536837504085362246380585092021810568083501505035046208450498187154005101480866627324469425160485718833449448045704125466479929473115473876510546429145743888634056438245876867268717412120759930799766471892159986987308601538907001937542025442193999927990575979489187814726704315296131695909752582105197855126752299698364542529463462034965072706736157528532696267779283087637802114952664752917445136630985978332227018927781132718272837807478268998420310637278313155172775963901815289865675658790620892481563810566550286223302645854601439304246420829702258662014626331707708534640525916908638505662275588918288124956995801072331324458824103738496751222752953496359323235382093743820916799902379384154372875592602088209477033474518331111447319312065660386403606593989790485676330592227882839440520817128124294828833655244658177482112323818589266568407579207113369793450521264807606526390085666112047625815655369561147117458390673521835970058706684774266968940014643398588600407822222865463349777210492561982455347084372689395259986460535460455062464866782002424364942748012890606921879069300784013097266057476208625274637028943319141850544269894972472007461908652087208105959790363295810618377096922621146876292259621889283516247375335254513686824457089574025055085352602673339584412311571767891707960561544763440674444617219683863730854540316754909789964869459999267852035732523484919113345974803199716089617855597901262567146594755921889745222041947344923019958779319455555542990356671308894377771368661918858598097047858235902408185564919481387236790713033179418077654011611875568881660742776319118772260043803399497398171361951450293944001215275674995122308238467187878123446595637963430719618652013246554908396321326687799629179429236806567090618190886641081947228027431258472675095009820720954522779085157290429600348079007794196986060289359812275346949682519449266009127645497652110341693921054482873960341310624001713801224792177057821438162949950773602488152093330143487517821675203842837422829610361840105945237598204034515827588310688821305185256552180161661649857200705219856837525090903116850843509824770350243801067759342453547791749414007130841374768457709284940996374870102623117224037196377288264711753104077013903472423115775478528690149706578413708443443026599661045842081652435279962295040909984226867236727225697529560230494956546175813195930264289995444600034943615250558102931938980342420142330962578923165592701341924712389302659049342171359662979703641863040060358564998344835565260511008916669287873711601111487666760145336435769241846769751818496611349320463173280856572670789693692235497201517913188129602666668183206841015671746225205123135987132010108499899621198819211925707964834899122059058586330431114304296309932449442751870862400293086058878031000515939689604624735522812095939477407626637232526035301918019627121324660735812824376552185185395058316600322760391456437335195846734601125540438248766511436613701364781549825589473834910495881770424876181893464805051826438309167182887208204262277023335602322342703559141341932426434755770931345494008511031452088017675664585860648775071672223135747339427033270749635401008922769243687637992965921924717045101342528674547913584687751070658225407379678475663698458948077915829839825469061857142124747906745988408671414923766474278746511173157263647098744689805413240717756489015810549587596368569596385297987642203334260680320349193784000982546690884767276687138715816452516159654800357853466521469859237284211372843227563591814007060478207411736853096660411995131883787974468009153611290059863734722264927048331545485982744739250016497197559291257845151773622968454516652521978898438667022977737729318789561880591301687463077910981395354182521822842067553239442715919486307849770300381190488660161866963543476293034639690589926503186085898375808625758692246898452901577677911983894255058290717180260167146985868435589181582272849789429366067433484981125331861481687111270300912373174626561428003463759647639808431141766155134930931081693016926479795930187708417739131089384912794851158229858473637813222189379243631158388738602529296827621329324636391443219146900157720363578160383784189878624393628310939519901722469336170514039303559158822255511154407522334613482522277618363816501181550194224735671220402733734039608147264673948015740640610628184436251722753768350097174830845804537371872470979401878239676293967973662616937662818880550732900147846271384888815020299085498977991128974067348297114621131512794810198222308378341574798465996149216725214423976207288828222599518355427427147264694213231644916009227046236527917599308893732849395368029941921053459609554191541300482791652034120382150732652966451513167692212876145693116750714878975388665771817424814500345524803559805340946513735636884606711215124054747711706004756738964287818772948125849819370435258295071775891430519117627778928745169428839791936738794465486231715886256600460603565666743769670774587618699979082281688712878084080800352807089900484272610317851421179807645096263242072119686799581725287265709131381857042482952011095784385395225861548706296390334278892547206550384388945900269607634098076517995879986414059329263485431176943066289542453473580163377746045361446644380331189530685103525798095696996697788824749157270355726188635707956546552249959172394268685953424003529226228572860156060000799262300371157877381840782587320248123784045486986303580163558241469998348189994691426323550114047604953894627490351791040789930505024271378198876324084904533632527606526102494701537047057231976754117938579757634517133397806853586942641414016378530751229653132246600990170818546163405422146868113988643135637027898300392269773353120505684917546612561897000111794395672073358859064434696197801127751133433912035416448074395954166128965442230943964507663167895869546819839393003721826412764197019654809590564558598530340369035721605623191999366091712307088681884792677740532224280480670958702135200915034355220096354643389973928090976435610805791861694157369855461099108704780510206955779721872578970469687264092058332897748467449508532871315938549876356442446645008491330267320025402367617702099686525353987344554705710418010949629555523882169745287121591303042427516274198016608711829708858602156922506798250820384023975201883875107763066213510947627232506984216146677647902150209343611623208790356233803117969550590339203426705961937808548838971110860348352616894070277638930013989099754502856970106536954617955931604684542414044781885756362381136311794233572935305680339609926499351822627162282046553406631004197550363158623670985698827115151304256454505286717031985643363131307685441594122796336407624899417510919188185766488760375557240844235566437466225687866747046897174735279690814273400483946179599476965293451516179176469542648373914209492251891812618411499697256252054837388067095322135830261772450371490341933522338913928023966933558926129004309135400491172576653300484538776062837569800815635778172822592465726693958186905264150874548354102323004009566316093025039182990589245049987590323393206629852937995419457084881991526712112244032057421236296513171269710051622570236696982006132232231021250168419797624247008563739695493784220837255494051902897289670119694883740638153580106870699258250741636330556532378100504155594431835128001153365182381020753922948658153019323393791750324707335365924178616059731237428797072643889210755183505605518530735648810158677343153335305950265060747636887798087865943252461022937172056122069730382930127464126802726565451968440565048241420195606067552199605044504916926880625137039328104021224649995764296575820726706216850187465699374531117201363024283645405261045289429604589132348971610817446069177375612479599568512142046935498941370173063459005957948393674450357311102991895274578930649424942269002637354858998893559257107268614650036358549293279629380210449633604996000800405460049338923552686717642921100660705066186752390114186850355540276514256767722708921488889553710448401243406056047684445417214447109293945336541223919148862531646709430652153781746705469066048870426678459521624379832401483598737572415580563448189602039332204899038041120549724632929997553570332365197200056624616290544796070483775404008622765775190243614405207774359194836677117258400511040602502363525551827779998647026999158656604837447230429611056401862830788312186626968652946912674976715106189808264725425289006024478323854272775048200552398376963278374538041040949817434481306574664142998888922244050706533968255136173880807675452935251155940220195065466161397862055743517867757008690601385178825745110366279265844561471117196761475668600601470813756878924735950115373712437799873401859108897955420017752163589327879884274712979982711432674322720621204299819631925888467837214376787004496860904563416438933090524125844779121590940963697585220311591208116455495293695955717499362443518608134289871165872606565735513025876107848048534682407630853731648652522634297746657504025168597380642223361010832737631283912391129621162487674575004368156141011484021976759867341483548112115986646064930589470334103237718591307295475616947795705130264902993953076777965430288561724844467590106083596466443289673280908824762083257287378366558118909129864740915822397503801769001079057636855835301280978207807332650152824887553878018187510980769496365000595340994667652446348632671387870094489727779401985384767964759624578060458168341629194208921679094561218316444197466866838933268951394474677536968830080369771160828830142750052611581893542499916504454291432833444286227040398593952424380601674676457401015862216846088627943341992094523904690059941390953340502749595451007693428292144074682733833824076429744642578676888642380409503042161978417673493195950064442460464772283427584501464207222578817797908349732829984923689980682430855096714253819787167805872676802900338311994910588469868025797287377546641288495792196134426206339296395755262485389837603004471329943400583187395754184595010779452771216729700397435181868799826330387977500736945660920356017591099212360083727927211045231598662135592033804271219453113876619059519521888976101301092103380573528691066679775560178473322629324131943330365388694481660947615968410650604748413845502655125063999493497496826616644106655180213903105895094259693293488818198466581352839901489363032710488610302715344835258369007114675478563312250924509234684746130656323855343598856386999660156718605861247458898825792598304946331331136242504115036752660594397646535926453232763322331986075101854763419312997282197281293691776537354052321222057234683247500129920703510066576238472740236038469788599572252590845226606269186328221145807582819925017230850711500212205764394362070742783415589602295574649535191450856751287492979405670865653984987174441248881733453560855937023747893510234942682165344967932850058221815968905057359168972143913221150527466326420728628041122678255908457235177947866947938347915770490640391229355033070411210292451683591033598652023209188299720240848445825456847315948576824465285563396609304798144783823574995239064329696064042759459507981505032210946978424328806859110894189893789615755082051674431640705443980758116931364026912917164299163038596531630082280670694949115602661521273858451736943405948414477590362082255647934155271941686800492183699555178148547748397520530420278865506149534848105727803004141698374905968616401793413366933407373452717844491294784384431046293573993904090298014899864949348470416393070272247465220079631216575604462268735963249448716420919976809061371188594152143666055269859164626353324445599662627284080255924205425758934398640445283608138997800259133030193093582251756346790483545106853860486128669311660258884328300398556985085564413326254231636291323628547116677990598450192694073561748826991258518678294070796775115093101315160682682243483785857958808069972276992560203746288224967811881760876456491378171812189022471759425569019350279523208699986295559657990279144342367587666229831447445776059827318326539327175484240755140615508912048427593034573261837468519159068451641754414146380360941397968538834504168589246412716863234468225891856862945460220492056591779713135828515420044196463533134420573634310713084315511930295077735807678533383880604319677719550487613134989090019183928534780642078161985608967747260143917499647033577411553414231612562086983351441544325566611820676546378272252077302521400038108633059439276064496150103551519568294079685261511919097311431491763546446696343229089820923147693191689403805123387650442167762255909850684487008577381968193957459793916689118775200397548489475385398473153902697710178656720902806799627493207214140297381458075040995616590661544483665385937340317231348133655412308677306318216674596984243147763414071409327401948269056486490935478309196688184689449786161683762411880049959557636533922083294226390949054342120242302426912815202997098196510921544888981806690003360737147109148416240832394902126734128565465802726092163482808588074885501253647702492174541839712418712410842156966959758974826513535044379820308396575999755481436504180536051312086180040634812113118029088564507348581885299128339614752521640216417955848619478841441578374306774876011942084699846921766613066097085446037898096270589247941461360700135140600009806755293739522509908683780661764887114148968509385101497346290646398063873553683802482296197095310767812591530370158224102132355446503965341231168855710329274657931404548985078076051289621795112003265679656234838520070099452379186957291716099202384268360331087735383432429788670768463040332594084796610179601364544145574955606536761978256989928946226389427459461002145101062354774456786754884247097694331656603659478513106284320811212511164754597075951317067719249992808572441867867305645591104919069756026700970794392706246478391377258624644554979740275051158169229541667188619483170032821754503389217387163591493086258669504704809726604781614328725017472926883696305912276595469272516339423170417906587237552828060011491414414032547352515356983499683750042491258319861730581791446340864364651701438450560014619878957790034105899395891147331142773401181627699160735665806883750280183567115418741852740254772967738609437712742915582396842125410318943394469958870596228984319822688372131987078672156204241904856079935829804290020860645793579152597012537323105316371061092656316616850358757133468064030767994044406078978454509915058749869381335809892557415576662216815944599026047776569339393121654824978331713341095849789187425487783051254572174506572434355188159438775385461518242923859026897341122992968441196196532046835885763468775778055497798389765919498293149677916844384263436213698536280259738570349190955603823139917175791056701088202691847850955235852757592689411789741380952689140629211723399704411616242719203097631614664558448956035337521227987537282934170242070690505923261790864265932283790501285447331775831534384813209111741946341213843228651340179343014072715681887273228425536422698861469651935316064823119168915748023073546746010131145972370634655141905752308180715366605477810311823054378243475562698652609892909448327541354533273092186667305992077021187375403021031247125023143590416747739792934716969750335572061380211018921645128247607505412377383171485163446369964774003835027888440415544760432532075853622505052750880676134594092674069750204793255288970111303508268095851600041752302820357488592949325389303611184860456100947735717047080004090167214500744052703587296084550727214464855815134987808060821352129793732704433225901062904906653703966618067278240656203048997863778312230428209901808403796954377187418402171619458704464010226273359981815859336545232687759818192750397938570951622126107335042377698946837217187578804105526004849460164920354544087462753852073229327037034808675783635473131806334078812860269485101986901542770232409681590985465661836614932918923280531289745404950799828306646102726946783236911144308256418451721340590946794684737307404619570778767120724687019110788863005554764208188077181196184119833968574252698831654452851644370647436015279349243564932576490359572438455065999609241128432723897179882682542025045722406398192300955638310388236549807489180826624669570850430767400177844654591193342799138959729671070316140589541790658373793951949730326330534919908927673195240130243876745516359128426615887576337300834774026935840629486012841130520653283397793589361078118635514597569262167155068493629232796447398406345731447523182370855613685165285374795634877615121423095852375038102503095274215732206146208395308503214068957237484487911141817591345797348867658641850986312833977719479190274515412025099252587581579966827349684481635622486802877873660541734169991637656653858109563491964224641002161745303616664676778449319168768803760434245568232540632588889051025512587238702009450745996568220768202237240124020820942813683162071104266572855234375520399453550687049858215188144479894668176359043572476748738703131386727366642376957262034613051762086961227083435627129332275424481444153976272032860323413738341183228178771895907561204744686092884436650706532640140593743156170212501215289782945846391391952167125541591120366261744698898973895355897612909693564310176055341309761620077831766379383917299182221777169985552763187641536215905029566006540560942912667391058325875778997591850766326266193719259655529791551405631913209645903926242144949179598676274187517065656445268519588129654834288203564840999127462145811498765940874465247153898659648720321100793958168417865388761775030424132556818376436243089902251005891866325286804098976952651520765419380564296177750378384247703416974535714168875446661476685084727964845846570622777433415111929975121204331040549229806244306197078012488583396401084420895497267853660332834837082484633364225124203425543855474792349054248736973241215506297769504957694032259884052732383383870077354749420662529238556875475952836736189695050325497510547568558290426428028822313358301711345861975019784420232041785756047105885909576234677056504307787758535871548993850085518895116700559063146496384645622422418519985131061223067617990489442848831782517506544346538425133271300230240438306247262198306104760185890749438121509708376499294896848312397897524005912034370696530663173992347061681968172026390046232808553407601396429236442012304767822670383362325885254676268536367826150753405315933731307145789891085692696063734597428840222500529015520998884042809345391721847580917037513060813642098485572907669582842185573609997197640354049707570344582015015825702888113445204449642552410103124967662635529318143494937932601048277243418470639942895344622220041299345142207448141903337893155506852275630968454436391218767008161284774212333899883614812382079042635267202161427485062261887583694841911724794833000415828734005123401894920902876741786544021125636097502076915016103173068524519130869491594569139279624592810899540762589954635485223854487579941470930650772676845125058873499578176890552822567478595620217585362024158073389753625943569319362751420235075212169619136721223793548343218975752219374951156609836274367167468876039974568762677802508278456754083558145735067506931016415530186175479366277294083492223487189377371193343564738314472180941135383894342883469054948472156749489716635741885349898687712537289496721701537496720402892003809197776905325943553803954103019231048675893693768198363905926715681601872640567220142425091668065552056929440582980938019433057202968466600078376414018155545143892504523149610910044249825457614551410506821008891883339670458781184705214866394391802815642871176563086525871706710133222576660429263476924689987300382502094750940873219392979727722216518448252143736306266150090627338147156062817241295116941022749079685008460442336333512098132992478106383018885117898752011187008949939434014838450931452803258733116695740251690018072263953958477835684313868451135446260562329043080016451461637232959767825960873962038802191169673226806106665994282025003112239607504459732136946885527437519984615930226431840093801603762058859153023114750754321794149524138615218584410004672174611578628215532075426854634164122332450224835519745749483099759820747620359845855386117877611709161184284623473396561956262456126595758320113997769766992941055239838252233405484878225769717261057182577789999842791438675069400982825356070045088999926508665056324060291505252708783153567418536615024916014891886359864171649548420328632089857952876222102445995853809828984657175956407079543588446484278614721627181606382763454677014682753306775784495771668159683693312049355564578515634744564722240341102345520318994314667781275870071776022912872781215388412752279514567322909351477012349314177955152925518419948904545806217431677000187291462555549263671940724286838275186849750402106753182286265327788675858758975704730915913469624176629518750650490903493414787875308339132044737283893558732854502309209651798444477242788431688073314575997889364418077736191008567628664468441643817692133363255903934770033431737764964736257584241578844430088948523320858787152650005069112633442443965731543912631659182235006138193907779183882571300251826667372401627685219059218226990041028837742280511310805605207890755038220814173341525859781257830993862440517660468550600962797045840852491443349678263974886339542760625664408665203145611072856266947554976073415510901838287326765431881045599903925621194528572295304512825762609084485320733069548798685304289450311590060965519201944293709912926765265197756569936782156517632773107395821768966965863003073313819356935626274217405697113209632982488033848207526644357887644082904125987153466393331271455749218071942250825071110345411383927344688993033026020935654259543789113702560812132081717622697590992154928637351099697102683892913059086667107985267417069963322473177657939145167491150708689897715154124776437208846914211715603267867994023361328438581690092595654083672803378808322628238367224326523912683460648089561084206731264622793091104788527657015669778306840450104389155007263839655504895733786300159453523280674278262179414587698081095490558469269556368777793849160411957612057120976952805074747398715224480621874135258705191435719003569719779518613488098857915780549766997282994936285655018214125679669187932784289869768462277561131955325927010572762857693210161824020731834084871459341382457481467584498611539886547802657305264743321578844336751531411614709003867590560660331744918450612640836530112769701080132695662716922179152362737351509262888249699877244315435029933993230548703940902151998928374597165739084036552974745413948331635412595531390369932765541768639419173909002007849075579960806404024039340022742722957693849628794137507202026061528546416076232110273129946804284523432614544235498082623667759904367101062444047892174926609957574673281612191251703587738426369889225113759099064032304255962142639528884788627207394895578459730387727815927908301950317045748805275122769707767282386982877582593761083854532218475814865183564478364950336403018874146896407537784375122870625523381939471496187305329961505539726547662604053998012129511263682300648927988090566378569855286116824575680457554074856484595264401260818058312721613624436524813413916379414463473054382829880502501632084304317977158000003191659948702580189870957031798101572712429990090312714759166339703908713090001018674017538623699960729278305015202865921785111994000220292482611653998899543656908134197290942585624375620389597305985507768680362558871329562902180912361571174573946503099273393908915402705643002725912474266350157866204690117539960626990691087303600099272655895751529812969841463151078015112651615826263801204633075889795010559700738013661271482206668148120094862908568534030903986895043952435155386034350841024260385234277073677681825530750432494801617300578059212284040222814088431123097933247457612196193609007920829545097023644642768966974697522859389592285387665110808175906974269795200330791197169009825767993270488582016180220669233243559468433650538646735812073997647621580085515958739802035575462871113164252109911740306032531518214888629117275884002397895116341513611210616548339181763981807522298779182783052332661012475243435853977295545614927599951000961844180730503561686022569952646597032702913658700514027162859350405819749689840664018233788868232764540850507745783474514493350502598802757544581662331532839638142631939959413732829435862993005410365072801168376785222791491851385379194318063147530161553235367863090754698353930942631153203371212282142653603934030780660869869912472559589742294306292330347610460632884258495992454085533370575367567209795593916464442888363106179995268802805207378655135689066130914066760450289827469659301395911222962523626742489921768205115916259227260992336319067328564646298859159723287916010554241287624109394726923591633662392509557731876200535457305122938396013047628176419214460517789615742050968793243318470927946180743676275614591012937184345460181450410620722259990728724744876745932611854814939492295420385589067545169441024681718989714203128729412117313341059268769936316727677401860058113141381736291129844212062798264106990488848851365599113844300315009660007499778864262807837908329020459662570636950763139995110743044863780664328218430282336228764128862935935783014941155027995190648245713800687158511626850814619414900895490637235554224317280840340041913034316215013383583181537799063077793370783419583900715236337597496147394911630943643642559137387080833299585261055422402019345889583998787653560271284791701873748902626619602332406178656375592894998060764965819900015859037117211002674337616684049542010773581911709282284029483283444537990549157979186702691855342369074632185153989675490972358216950799260531449211202464984960053693012568774064549177628129732527826209458447945087132239305292849160158795658410667965870643681162473398763733035616752642472668631977476222927070697547772836704688519518792942557103050010223019834783263728604562464711807366516023466715436868804060660154849018739938833102817233175862871917757213174890009565540820263727980025772269362519725764954198616588214940904914133746471422074996179286005905113855986826179005938135733096928126800224302929120016807782802177807895994488806860916392311636132475137427993718824539541907645135142558629462651599397216620951894087409371592082256984312892897140018532106944978819747094383156939964529083013374443678687246691976377214985925954330750626652504652526562101782273019753100428730627772948585831505141107878610878374245715291814669127913824535771441414661979724112450871410217713854167937332757721961606704859904535783104400444871338525893042863883375331279139722706854597786854387489975449213577410192172727819579232905592295919647125183387440511694710658549190510898677751106167275057159849405411971166917093399891314316497529313954291953399442550929357726079741521380229992210111218997920517557707307479539504895912723034460114731342194990604519407513976449477921344382178078859289311223602331205709932369767758033406031950991896537714445227622540043304138753540683570071153996959030250082997042975312478939213797012657555569593905118037983900162575068330563704607089759585547272319728827881117372396698338472115947504279582060839096328262083093670632377079337052897553471617377173863597806400242624444821029477339289662989517547897546507914584524761869186283444303106360866225127977540180017364737379663059499006868757693990451778432097488753510440552824643695806113501493401429397351210573417915286154796661302356051832222560910103023073068469385697004889404511615549277202943798622416768058693220917890248678748234194462951065050817459348141501908796443917510927054374225235189782249151237187161413146728209330738612119337315973736812288521828042827286010592685122341246338822091647566051447171532673738486849940530122169846609319033239725371744131261112986567036428263111460104784415598730730795366963806642087853539703743461234676664608854315500008991900167673013863082094621853593378365662575845473271473948855161496111400434689968187783113620080987144600335389758625967574375082935384581146452114670702219213154011025808647796805427926555457510093461934286286997037927880443745735231931831443551373900094546592090016179645028372758638803387724699116232723541907783127785228741034303041564234683929829247615965939442333194634185052919549018073948296554832515827939301886199026534680669278711877513701414521843259893405787201987983459056098687228039610830958956572226965694748937675877117159913829454572082978920449514381627840143186334339461105705474729292715015149208710685976917522417054585481452333662386938129338225921837136439586004167090354401843777546598210058056337768569082894583087483040853876514585782306794225318448570819409326458108093098089434605197656727157872223820916893778109956120566597546681604305717447165434174546042034312796067581004427378246533010467148950134570066860613390685555637385283746875299334656966721529657247403131319358734209810445704878376959732525297728924722578529554896939510551814405828421340630318228094648596876045795769811202013027735893350866282090481713996063972181897715867334635269105544325157751027643373903284171806925444947055566825082390903851459617094964885067411473686672902718417374879957784353591478929354560059381669441005006111083801853899632311568858288348540350977325637239346193017985487040933869421762453731222436218223266624519743118118637754565242473729851173754901973448783172283751635439256450446774359557401618471802710915179428388835241834418157930015661999047031154426866245465922963518793557243599086698786119366423112016276812389416317347012149809589267861674688310565657134995217222575639203155869903833455935166863018846769017047336015700552710105245104002163609781544118523174773501684350320417623453294869468855383147613608532859214839782056279951887589321407568819640914597684891470729147242760770168010107401213792972841338703911255194313891929171845286420447015656640386989890408504668245689086132535347002583603619869239101004856589266096303027944137687811944434306509283811164602028165186561245408534744767106744091462744493413471428113470371162727478475500363643437744499121807506990819124654931437965274559227760254283582124157968825551421362681979994293522180944469534260623758877949544391682061869848065686001287301628546684754006531983645046243181509616779083796835247276073581917511268231151148416062454759894605424954779090224899418340438186762845872555075419322493095870407010680187337206461133655540726364120626364251364112452631488253497669630748491811197870171222070337533757735243307609983437516135477972287774008754236279400837457535946672847217733350038484793766032850461360606757852324518491102003211835475687527090504115120554383602941135546109990695982285532996376851627146990748840572323991813918462804114418697526445844866460712947171634882815893520856555747635770657512814132850014377757384336303591101768307101716688922916298433263205357025495559583056455917023734316939104331632076896264922789017649270908783635719836225085011773833504703896976910135287349233582628662276660338280303595347867928723713249006210501762553764375549479351584149567699027979587457688193290269980438777342051293639841857960802242554212720232445506552506440016363201976140536145952296929896994299412093907741837734086678686275752142995243061500700379989780848905989321695293755805280272784248708674688185472051123844841619797109021546560509140169782396470391372902017818895717128287980350498056315510338203970433654492163962629399785259660119524321934959666593965270939543778506174192001178188420150462510382696892974611125741299768394916410806328803835930603546794948210398950718962848307147231670442280236407560836376210515051340009204882915105499727286580694008540623103083814699671596827789350502385219259346096372660555528123865230388993982821846494797746593720165255914493347335828324244923554559278282876269111848774685942447358372050973583303263624498477406787293697112753338507056471351060473932062601400026239392551376655402025171152676807624130395288999787886648557315990679697434606064348310484550735050460864216484080790472935197418710812695704682253051343094063808491915490117657782030961819831132481335867088242940074890781087105247878285556624384571095712943459983663850421348075297280872558090892889076265803810097572454244866919337784169394399692608046105284072287694939620174522094563727022465539103942912875383799882761887436905790035017759155804555729514479110268629402058270658648762374482921158195638211017962024068711602071694087799707260525030909159882382579609649738793225476830068730451494126135991971493614157364296861230054835394015836928444342690792120328060033120140030601450590403219919412855134294624214349417817644567994576610890045808998155431309132924776325158654836044311306790645435187129534304000026523856034258066072602546628651382783539261133484202082692658313785169509338648880888007858851609366664338782400954840796842464568240769802509418415580979020527734519990664626313091177429479614671140801100133871094367073743197150655439354931536043353738382610919862320227005661930366725070997463388137530425541782109128059403490243165051350895485104648016744426855454245735155813237900107456388787224473885351256468351269567716866462556779062811963530935150483108284235803447411123806595551318918785783415023458039819252500495603494593501676176600606341306584068090810580029165108892048390910385786236647286442270424735285903130071284028705362901170208579384953344293280042620269243874031026988222131597264584475443276635667347701447544166185846574043081177838753391267246201833661748527605887194175295362452295320412310084747191181344035673053878807569264235788959091306227256453419327494847477444641737717294124156251706242294023955812464390728885620996694747514201873438807449396229433521233518606757512031825845904939415619343365709048986007129217464079141633955198405033262643907183890346773413236426266481447797015911947345194226026213058477469728660091781474573199735216911216425471540808335046205116728615503947588820075354815389406241096285334465560094897186503536584675183542585195969208998070301210152859747526053765444913921104460857480578055014004319086325953728844394155376178990534155240580836888613110855784418310284450390388432463930097286735192350552726455863931114372638835653887720819119843309696564765379533699597993527399270970517495157507438999322538779779204824448798825699980977556190309442795740497897800201374734433513326884968858574680646169826735083151659964922482919964290569852051117521261246984775720194729655171466805572138136920634215610931560736572971685097969066241956522022700737059965092495154007086904679878263820142014431532939917424356706692265043304115366063108960379061552032252446117696596860736428337194770222725185898189940845069887077005312754705328376172972208400871210572727879070132012892548111021318379972259352203151504293595359185062277691487311535719013729935566262293392140874594383384729216310012024414905960418837319732471253699128344559334339604348577525960858496672684673199572352878519133807182053361352896215412275651894657076867728828429495239904235680576258190075437778794379772779593596843288946867458351895473866888853514822536951436210382215718741182722841753145269095309143309894674376987738427233791464250907643673193406868338297138749847194767116199506801436591838636226603132831231599085788853556491470303659802049363094808711755137061699573275353988227523274195075142057857895712730644142748244289442528402463503664532714608868360371599712602696286515463375428921367739210421340931935770955934439482224582795998984025786830886713834949127802161506701426465746777793337314769977249564697278794419734658111333296727632615906066125347604539406179040284023480707070179942873437725046509279882059850500463148464527850444300428246408878464817736506186236638233010135941981943004535934566315684288127635352105028185184917964815228041953861272512489917777671620141984454758107837992610166121856442922526913595405997178170910218076525607827968941190099569808137454771549912037023381459493646247390341451173778293518215067285097907630478891976129987540064829529646593572473486884326297082787798025174545762583581708843336500306653141303662414431177984536560881398787440613156036704714826248697386633033012648532105994391274632017195174462699941393376557089196671529664583080737598006641022294963711505321736153522532525442017923463095475366707790769608560505827018748568668956051868637169845677912980189343004574959173461892795679205684768506763749709089037828367377820700457262934984388110765477575137118366813022845458604120094975917816565036310110325674561128836714529860538300376465485842660572486588658879760644909746738430473027418532416035231014203043785037097138104559185779005269871794007257040115805025573137352780663694509344231887185397309586646469082319172025972749160390375711793691262223883057633254329218202764859288627493514516408084279156349838478540431739114810365562297258941121223647175049264016354907829616079003661677326890616182851758439456599860168968543227521450740360206172923872939995876945238362595675143797742789310989880530715861152418653923915411309234616173161838462182622596459727821728076889147422081001477746471929197030027338742784353295960522128516915794418443896117879824122603339975190549652925583544707981711793342035541960483286666227365447352583747384954260095235039599444981822522426507056749426839548639461193267238462293438476767794471834473662843308023685141717276776307723474982234424188264421225235709253174202147394432400031472894528902077512665436504254366924213790089112124230966176310138716593465731508766941327057087927085902076108867347850609584325170521345033500289739002357680782842638785525140759091528785872675979128825250509768241357198546675516013938225034063224543983348836372549007273555349941576507822920194233530688427667313075291624053257595723917582395588844082973034634465335205510650705971268522829695449452247388279703767636782549386722398216123101439822485190803405311011748257578280775364467551743397063078007046389253062148118157062968119158909951366698853187163625122958155145624769369028832727308183044977324846372232991566266289629060310101899450823590534280952475699982626022002565866904326705178189865109675409935446141739512600376395382598459851813707827358017416220926966823626571574699750469899036670184838161761594118300077287274169167661277226818861545646883434752121401621929470585063949835799738761925513366087438262514318554543599734522788513971708492448903195368210589525664078205894871159623791796743059885878351025124401933810447879278449634806212504776252220380068265150625805706777637285574514670353427965089746667489744324749896699465825816135117879415571477696157750728907895271519527984201316470605469404509327132904941992681873524406445397871806015447771847354510881194214529567448327472587400945898255633159814148780075599399401955860855378583496254084088748898688816251708208705773979205257390662099102060368132255670325679673180126590715378456510151725968159834613099403681235297067803212605713690713501229400649076182752997919752318021007004404646998771138861834176397227668766834095744809333060312373980040771839491292264088640968125336490273592155651325551906951432174892725067667687023958286498401483971547896397148602249772687573931165723178286440746525432563730488401708266493925598851017398211961076349473487498856262081973928022716295639700412588829452042514006902107578809173672556030787304230115828694492522213073186528749495991104263914249929811907807568354346684282940556683225291884420239571988234286089212732972969443533996360142981950833721064074766695089531442879123796687733991480353862007677254798027745702411960339065331533042664484073110818195659827431922913235540925185425674295432120929803905976167085531282913225892245323918950156037113563877039677552684395873948592865568249712614707014831163640762550506200217371080020830536750653463454324303750588182481889893939271402622851847777649530422794828984552540728969623310649499342134592099319661486881455633262724211069883051364123066882130482517985913958539138439346199035661511976753119558860668485152293183005192437169788125396599063307797016292794948356134582380899650503398727011185329521050818989575153065013922668912182513049716186879524034850636166143358043042120299855101970997881040560284796427919294522075779167774993073362248715790165435098929453869172933407279657521015574975492407503207739663710761938213443350984418963899501997312881281522146419836669831182365950919529390350755866421608517982148633871093174525851469704193780545931324925472465030521019114350263103863480519288366122305443465244468461536249521290142238556430060324433374647923999093977492437574825705842391409236291325549723046692427258962511941449580095333692526455209267864696373211302707874441577185186460155511565070164873135099164454057696018845194746476672249521038447278038371126854822283847225243533878187672980580591619136183895594357822973605777235214898406860391861961724216987960021097868530226104559880344931407523717717372473875776479126834700534591788796409803494569116718175707403154675800562631655364298293002128512484087950874196864558229975789085102601259768660733279429316484514270193351572540171219578979394780089130492409444204940403970948213890515531898038700093754406900779402029840367766218709274076989844127582718459468039534836010974359050473673141810406492593010514146316235266088538363313522919836875398766475469658989530038416202656975231285465950246774783766807789805292819913421892046134511921476684619091648057630779936522937858474338489206022932936668314467120064934472212989421447047300255675117149967154496201108976013289460259798033313245885092225610623715717504514301585108054409262944840295094506663711956665969856998829870717024085780709157940468779138309576233535801107621162552996946148717930661611809322537644638692200219848750220246113007807725703769564628580607849130150883175335322594884878113988698925717842555874345444475180488065908237018845185717103923795468896502365656542406025448167053925599070192016393186218896576816386127983618248604354325689879598179112490627037014784426175765408679956897598050296045379895011245255881816504503350104657969300276751237254621947571480417583616735468529012630784162757681890370359903071700118268024902720706678798401777165300871966168767644835956621192932869327748351516566020364848000524170098277584023260677740790216109527491130949511363404911450158103464561006482764595360856900641458648910892570243433931555827230993890700184553284985024131822713873983393823870931904757443860182460813982644987076080755858243375418384555738800938060612290554180768466891012268556049848720388482340076147075814032455891154151290997568414237412309278091865914135867122240601304930385257431621066080601332076958359384168931696919629067208856977448465319757646983136564384800862697232040826378589380368216198926340927980988543790263412588195997873733786577285533539192728598771555868940509693159342968214789282158392499790706773360048360454137570909118862737183725814168047300669859436439175348113681587043187353234259797921601301823192398793053644751014089089557596748600183512392131021729887038225412740657545433636761687147215382719996172818713920558347225297591328893317957263770213996563738405694432655448969244428387828253987989267052351437247352620734504266413299684268698302826214920742093206868059440967707372798613270617142445711527749286942489676651143285391354719761631775142022718770883251041524818558662113504420212039054243109061661313765094399453695301974994362154016092463957616117413751776218695399908700596811380202504692823817742554660978206451693122421212908330766410311562361843484187300203886690622090971651977860884779973913098425436490323106822026865341750119965204895897523093154245150638337161537706319467720658537556373284499486352184379737495479790532924742683673800028175691963990576328512112330167527529566855279601260987564182051032620340445594596009528779067232490160195201220761482880738424453118776274220066398810852623068819657353550626426581179841390144461081449580744320731486485169398419778117579527977037548530100489586534074557832966331957154981214325450440496987194399469599905225392941593644379985247422634451133890276571705946691457623088523213118395830350910791165225300656995068514822622060735217121044764317105783436930523249831350083655105878783900140555740864056471326164239147018238622466282901939172429778020819900212285470948766868662367561183356186339518931747128326445934750433848944662899000568249871119994927279761550289562944726584187293522832312540800446481901348059569638135863253746965057670164624940874192790547488542739822832655487503806219138411373438961252305568010211927607964039288133891904859064003802334168368415689824512975715096536510650297991563684715096935130283520449191445308306378006898164654344894203570631297488384487862588016022881724303133996853319134287475695421056372147768394638172377026502027424822541633307970145500930399335276285631683441474691383450085081393584537144818563223146235570614480547516238767815615142233577527843334730967614521792699701817291426729339660125496102576185461245315917621406628913448103694970383254575288640684341403676190579746003663040458740369433823169266439398590899430026262208478154522449658077997485963316823442403509978684365265238264605296741961802379176092067625891329241269591628544546855430285726069969066226019193020073944113801385211238935725751688295127169426653642034670259908146077221202304025561142862075315813692276979925916388936544564085795375573233205097222178970099294556514141651306572013142691936158079481941018998876481506851289587534489081884326253158581451851927355433450185783400630988871394594023259448223315438387329632902569896829169959691527078860028204197872648026271521276693461680285168806143510915230376715501404758989563931293165194647149288156874131921514870011334197204302975282618101284844899157202720667731591959158384420647942709599024248802531759284575829001719086681967794055622813057316672928968244635152406700560248843292118632820979964057245584329547172164507665632796368057801372189038668001963893136860575441314892929383958483405686039663536634764198222258227440566040102810679633316907807297015398775702314938391458636034703454413573949288006700085476515282386824091414356013678342816466134213088885107982910922357855226697800022226944005239571825844987308940441591061658166374293336947180686553679064482040736567942432039142448989028452539068473359121894417048356875408217394341497385505601256681805917412067965983323152282730095658024498015397152035706347187645446523240677326026109578532085871896231870762782187968035786653195966712233528908027865165623763405677344078488807769270041367591005503561267298638464362785469301281388211197249749542413934308513010144302385096152328524882203082641447797086816542814439612042666333389749168057452405136798033037455059288451040403782425201062760268826388535401566339400881773244019327786031649381924368729032358374398075516829632707814128318767026570929852183688152326863602935989010344125042815443656052019483547058830965575683373102624574957099566771772897267634261854836759376882497425345082025474950024522442521245981505494126150616682169052512094303535530090434101958449445502899623810732603450837737460474716163700987787816891024381870570918010305532816936654413848381489370368735636978503333664497729947028435853273348943213484610328415163063319167066114806390965848295808415906852362389611572969941760902314088251331740394948336541624600847831450557733962093851593843666625534976299975440052548834268885586637722823331206507893814245129080358660977788287300928005414855489672872464772717176912968499680526167817946255530099890451707340089310211191663112178399562781421800355477165639205088516415265567678497682232546440701685599930665020311577320035528156512998819120071405835040671905049791494301564717851486656799031957781923974773927674944320234531205119211272818648224429360096074173336648145838416589439874574900837088510049240108277906787867016577354861205416326089824950765373299193207087088297025139165633700856252863874987153820808081390383043669136828301485219846314135798035732002496923214718266087734059830099606777413900181023244666689600100631009307915642923900496393505612250688684261712422121877349739728623133700634683358716664347451156923301940234673074748352405779449514039027376913475820779087973124753453693388604940026211733399661852340471935172487571103224726524989945009516124577852172837455001901132450682477526724792560755862091880842821231459098738658346315961348969528439889465945277910333619658822090493448163729330293881751389525523248013823850702130153607441017688723612671735734286897762357616590153482319380751650054562834841236858593247894616042603372722000155185022984432302230787296018180804692462613217713825572877358961527629685412432903980802136857891627301120971205960036341820322950011301303377244312855582945524060840670565966002450107276062014343388253253065249371997317197442951100727470464203370860277915562001097058668313733278276037060023588975440606473026506947135379198837233492943483126534347754965512543666171536327332074886812160256982379667922703303093525601953000699486694737210139264090290315341171900015016179162850396394954743155309712756659762350794366582791294665908738873626459521595004852519158854240280033975133980099123967813313698410314289403489232189327264249401460746505424889737736284193423180217735951979900728254688720347965152410311566184629602458598151238036668350603807153732820583695796319911130168458352732649777317906970519460303619504115541828755090117738087023880834138109587940874859008838885259107523908094065009552338042434566417741904206186814982649626986194324461548722944913203304891212915698166056804109800238487299801211786764129695915168817609248028101131737252626004765898279791122274220302613880006235864254248035515506157761993253664691810187628906792380021777966634918519806880978757805113886946460482453475199068835909858708780942852488694059575564414518044287744575738758003567199395422856731551455101365070555552791824122114765650628263480327130730328175499164803181889356281281854172926864298593359422779362121345830781348077523301908494342969618291511983152494732295187101947394673171584614009198851859802501198025067016958993482350405436055187324297691664926037208927909898957097964356721314432311065121751232855642100823582343269146173792055447349513887718410353896228950054171719234397338400001501204750064953052069175699670559650189891125544565292337386278802624506506063532219930432494359623232181349260756156321457289002418707159638354157710408089070989684795513077947698959975687090187248777367086924402589696411510460906387171773382511011322432057609250633877485200921304651697693077137730858376478592693375769649532732183855134485860870604511596386244550875057531660785828788170690377165711999871046985358946693153327515178435873733305757146231508705781690768316718227878014457526368490384392568538392321150272901071676022889424685300728690710096728463363204657579375252388908020872372547804904533854359584150015557174382381563994844702727123946579581229383828129755170953003037572898979327215983964562973053199107782527930527755268428178900033864595555045098469035623823547538468584991925264005007868748248474432620205030877854002636140537330167786844591847037832954080881673531094564910827863455284888900231163197358293394811920693209160249369599429129634894218284046431517205199722302039882835624427551575606575442301240175232269718744395478809575378117603666126051061937077279402941622877283680611729034250087228172559718046824098381535463410278557295466828163731466963751850129640171113526906868884804833932706884937485347484417384706095943665732077641993717743250265400047473226435553181490959481023773667283385052624216191140163334928019745446607759319577074676000407505694087846085242024134050140254988658776084389265759877661505373139864304790036836703877170181617451295639704322674523596906456061643355839079753126971768661771946129979941890622143888380494535505517263544831256239275555966561312356532968942637660364924249481297812400871487575062585290680993900370468394630468463249843840997768880487416599487927985230059055199464531055488563183702579119082033327558329267278812750986509699610394676451957240719724628730076844350473015577185387499135058437259946970442429741217218818590013180351267607358943159905034291018066525698607700993887241756044419740994705673575337026745009572561063471234272584941984248140167348709635161447679025476940490514933255779795596731376744036814460452840217162457413818156807254881982877986208125924546456439623034051307616020120756024159239379936065135173889511211414461252302395236644541722425982594898992949833485966293130893549675533819976328788548354220632294328620260607859566448691416505279835106660883451823272839833713124085361272205782678463129517943541279330023451488427621125348219990248556005036560575044492227307069162781078176857244758093574618332757860339734363771879481829283581523769675032396733386567818049082661611328790339476579629431539405853508669467867423722391620051778992747867295625431096869013273792513943612145493036833470764111880184455299712509362163689190265254350909692959736340970780509190703278940637473444210441152852499848261878941618133330788142753893174040517851314674006560641649698669820779900352865172903721338051945085294531769998330973835719744452438488229100570001210540898379452472152307832550694685388057097653487415715914559174637878402231997111290644260823747553247894653122623552979876684999368817882891479009857329999480874035695776073113537737932826494545225982067182090316257249423176045353570473173752888589948082006113016458414094594773122256398836317216966292489269502686621752732190504228858357967683433511728249450384523033582755017989274870406884576954742018750378656539496249536089777076847003318663721315389494650330215556941697988713642958698453593958365409237165290795027717121980777541111056217694864625134728977055486278039598160703269666781982202831743777536343061106544414676539569085027592264442069471629913511135326964115643617922343037484383736222689009571730340868310050206652013684748912340987094805997184704924670709216887107698040748057437755592521294696993496285956816137828540426394392258923797409431445122242634688931589660609638295008967606303790419281172819407066065952421951408985081803749532265700266765993365564978855448052939209690234488883511459201345104547763673329459233747595088808896824976673444931621185228719632627912870881514233800864689334722686545078137211053130515272751053823664734420774670938164291552459359915677290314224549476396955018359514847201000957205367431916908130911001283001168379793773832473640673578651911073953563001166944758893708152043953893564489591240083316694426329854454822065858384184205090607224914241228325456322359599686583969409136095562532689922818673366449116867007690954790045417065438000973924509360475057644615387727156961314359621323347943581783328980998671458333870086952301519553319949885716756841450315183738948446782873932175358747453891665455698630070714348646798908943443831827851483652137981163431900695631117977253498568897080527867756583702482474140825094313641433599598634415306525499212362094782980825929072600990898799743494804520112102889844406905859979235482158938507709387779589863367150161083222551347729083882202939654132988240013876273715077698784908229532208768653984814953745818941458698212094772989261797853930526420141928908732837992238768593394928792266555471367414574212202983987923311287599711762311998465451977851766178427751613227163607648928460852377059266583539548363715085605425603745527602707562107069442120619558518905798185099869218836320038906240862167550524482948084079430243095637541507662679839810116950532772374182213964613295576499522974214659866225442720594172848243830946221678561414617804197575626684806590491831842178219205733231845788234370498003275736658058218719751662716555819443526620393422730769113309505931459526724668886205764267206280003124413246652346562105237009516141297892108649914133119682066505747688277594320760506979498698955337705623494495131596695751718048513223886611607865475567194302978101822810448627749840133677749287564475526149154932403541977191550724782452540731013807336412206436776390345081214271223671189431729693627233248932703101326299251023205854165501447768241391212782246081192558758357534678361229575160771903733101396496541511345328814315234331792069495549634591486686085768717116926875445841740685928030906221867153718582367595078920358969350146733178501856866274565006183610322052930784926995155590082851220940344246619724287559078539708853594015462806726352098746800463341839337339698540584827203074222354778797683898858139833463988713990297688297924440902427810465392185032947352743633784815167503581823237329630080631105301307814788844258281369500963259732045513236315052402423618389540313331138796774160724789468870414968763764170305663615457776590110967261016596035078542690242104998896823736457077563793263667537404772574957821040589168244239999611450022423697768990833519262460767663573428425677356165398839149796864805270523189788158246469165041462340201885247053826638088449260668469741181745768055358983591172579398840924409460937140083877679161379792452530575778082581218047522420717603173202336574631794367404237932802106141547077078755242950589846530264407086010083258503800180052423387698871061317357982408042172992705505039778545096945912683874167924990923976477078524992616240038253884800914675762131646348358797724015664472800308910474232160579357814889343415475498354268992168220649159125860569596273871729986385835677211200670747236409863691429364440841054936049119186880486959126663069829970961861885835993841561460642579973182852511295588262364165970273914399141990462856472508265419973954629152491923684298713438188425587885149837738160450519099680301981970048453049474787841078665833298854626464709851315221715414919620845384674951657470539977869808017253505442591696402426529808864747042252866359691757819580281484592987948406787033910759032940342609476106556770988273532299722366976437468363737510272423618397409457944665575595088953972892053343881448429147563913001683976706359890441667505535551240575289130498482637749649103199585872729089387537556128816762086913732646834216283314642951384361944875980243155221688101092370722716829209926537660784242135376815627920808924556881599468325007316372416317664288021366787272891994961345910558413882030215274048802073496229553601502419129337080510921450888844391925365126732269269412767052516982071755283859332614654086444182204345775573625732720613150051697209006627147501903878361817748790407618211489884969134789560462494326185585198247189251236968293984659052380692397242517570543341540419335058514732525214227033439776996580865004674502554041644130382414136188759461789506560003098650794611162121758877399474419042797347064734303368486632247628261878972104991177318497325874710786320430764201890958314774949595398991728037969089329651131758993183755454194916020205107691393225827406474023835644810297821341919512245279631908277192226218668294477930515300303401673561245297709102376760834845845632181045815225495871760277957601061804592050134237841673488957281735660584587274966045784452335872120716458442309049780177929242290324325431550645526470353788106919576214666897949799107129062589129121044874707854676707831270568722213552087792481714103850619461737545662027059098379855370914640273917604313394181258221836709363703302321434363977896507999931922412924866320338922236554081953264483979757594915185703477504454618577787610396329395555775038464680770579685086288737528204010971573178519076140416668546428176096013541443459560133471121032693872554325728353217582306594344256810623102897747724857346465805472630432144647021065666126347505364760448981467037771121473427103769856008867999915752913642769297695766111926328424851974985145221550753393265853436576219788901619366278438303287163845712993647899739608155852321190473817908419086966798524025836153699773424692091693025607810040389667154631636285845212581287037860057003491361994752501804020423472347650046883451348656170593358510980821758739584092606740073746078884777665364374202631878312390670161133909451425849154624433170248472378341042767902240503223404570209075823189295281762059208826350920873773274189907911860457691438805162155428026366975589898505288112466223115477631991221817403575210594983138644293123675529067723335598127970971610562291282990694721198541446749109525611061936162677952906169530004476916107633901577916123272184167856098701781288944307836479094391504538267474678889003877724630642512861917175138205405634506628555547569501754179795234311077326746278541817092121628781733028198119417092370759194059623673043479483083786081539654264243701347073121025735780203520885498953427736216583557151370560425427931180046487738105652032778542699334556103353788791089836162806136267862926278735298360402862805167689584737057111895330374827931562881428277789932473583947127726869412766779665004634490335716055333113619084796174919247621272423958735095698420986691078459613389764004219245988579524606916686928476728311986019024551160018661694273589963842163811874112491098238120052040290269050300599853845782035675674048132877115593345503110856552097006656766831334195128018621204283617214555907696974262608031741858485862343769722591233041435326530990176486470706969845983787844039496007893557130040162171255133632387835435654795031793920948049494635343255008177923846225484126933441635017174644299020409763107937123689618076579179099514922109520988422406742083882749419488203120104760172834567315488353093731444119531132199126217433711917507745719683873346955304590922603615018527846844740664874607757081071305917717107888432368057895946657910675447376204314902043411955499543762911149185185394618356609651263892060878890890981600376541053774819503213344488440668998593295815583046039531025000962079888457980868796591881986018428383377298901077094384569986751932673001830747040232882237240019970362141292127841049065577160162755678692898533623551734337694959738406271007286493366824436331462254742064702724280500271646406217078239244444856245404216300628973021693337113018551518060791775316778847872791893210234330979469887835793907154517641003380095798240362755679385138080397578698507244210423150408970664042960149206991265560107300800539949051810516250648887943271426548734240713197450798603982718893654068296826773693892612568925725597111340686165781350117886698959318268381865756946479481895487066553585395520610885073803139701957396294342698759707499357965152295291648154746494803541286881714532434955264753568759853238992632001193579183713673897278464237068531445697563471937975461293140116961907720247375767942359796324855725889818653212694521719017235850187323409696177285597691988370956964723931908880181967269144210855675958153788858703794214570182942003618107371356359825198947686855963285764797006305082868270084122756607126542107579384068829872346835250422551215653329117040016830033966899099148041997244352368595721403846236149354453360280768122456777658248208234083987728343804762405301557977306284799376320036524482289825320617181635670403404385153685342538480682048278507376724802971050602995260647834984795569599445178553727748358040796734120876231639805677162375619789342542937084093140146425977649645887699174362654356124814020190112767476716015393702841663005091440743364769427498356839658224246217204334144203353267415091612020026659924447247397722881416560038577962005101650418571823856069621685899060298594852880734174907912984325243571564308329312455641156494300636574802614958234078097166346999633676186182862932890934592766949974336965565711268771723329415294319977529104852873115683744109252176393257133400103559250763739221852061855166746297944189654265199834361154317358225455602188257327055998827970014167931188545704217433037315398016021739142887020198706787021966813587249882259965657645198012876399681637210327690152285373922906656487081892862988859520574821367683195195988970526572677367284314089913587669390815063864635212376394827695611778070590028503104215426674249614772724525169947644741541136883696564128935211745786822338091181724704988929836203635687744950616616532996650756387109816646482875676343197060137623366601840329995553749511743423291599765949783280739785989334558332875350205279841473014034417984285226685490862596824501774976638042354357568282251887867626168873109013043946117184224330468235044409167622298951566999130365711224749168945865491705251642948837874227791920401589069973248700271149376353465418407162750990398432615445755433667407119718854133456850826377269652486606893919901450193922296667543038703331428931448288007496462240083296964369446940457545224825732102161537274160288640045927761824450630122704899998110681566797760275575190213133114393818549771555319747705850125095071707130213014622806261431638377421061622967552891577598870469014176190794778251746826458543867258667198085794162776765645394030182006066890329284717725528121145359512413330861249689363428284789858549215364024263017135872367454271740389665546801350173089031814296034285075409941277365670909291762813050048611152308103616705914517951524636312805239085498639492150232622381205630299463526108202688617938327296669978298258765777313462331820197887969147938230898226079740234612130149742771493212520009132083084198474939805890963607596243520875563446224897139152513647508315400903285918368085118239609755584984220702160849970356834857573515159544208572795202228320922533651299335582993755898432057936226629572237800626004403327793817666256015965135563652933345887225138982932124798856713495739067867965299146435633407690620043338133051261468409128005955429860379601750136329844737990174741538513286167037262228157639994622206655880715155729372198516397983743993746006980677123202876530696550271670414355152703300943614500126949044263243475203392066083451134509978936396717458114064399181407576775841944100853054380376027368099783911716168233131233821773819609426493016393179961917156171419144694579051516135449884859009553092011492088672334739181812580640586819615570521565164429223037300328879769213122561834112917740137750740005325734553598586760160179628378043411575937254989473711911744868682366875421858873031676796056318398788860616457588162518880816228422600565175192647762398407287159758495743233043706533239934743200129070021591433824298586453241653265604247664873452535655863965856147784813942613941235236290306861496614177468000585426281677461152346721409730114200880213931227552975716676834527823351206294228105886219683445285665187613249853836307756867336352391248766846325142148201631919616293534332900671736293039989648871127970188629545950279174831432489845513165276684593376623342211054015701109481414807529698497452042083722252117822477264995748605175601294069199422893377784115943671127022513549583110079389823947133419849413471118456634828422053763982429014504594853887743125408334938816115941594277412984221461998984932019349063468381461806606252590918024695612384012892038824579440971651457603493655510887888015273041503325739179782188348811986402913650789261399556501787754312010444127161915871494378805053306179413036743441442043509730837417067183768651803727214229301855328506499955532349217222322135594715601843675663291675804486743253135427796978489112686897509701070486383384764537866370232354209372631714712564869109573184270971388346361150109480635314632030599839622460351337041721723060010621066447980091856416898015796981955527025609668443171963325420404870427617132250076505846848324410457353816996159157478894701941041278387175584700706533392971476252470298660019876047776088464137105262741010472485509192349402180771115325684087307455364320762617523165138205271000693480307920258407998431418851580241250722432326797663426803816312938885507026898515354876566537805680588910461498248154838234294273724166542343926274901277398982154965226072963413411521125801569770205268224978794415568595164519544018589423782165131282161320653865733468009239214475276601662689806808755554751054672753422403862762497026365364344770497760402721056245725954105927309937342862787591900216336287483278655359753201945200571706383930898717249717116616890239140224468894295509846713418888712250113103517061276236296900929865516124245354473741272476625479914909499550367930993407754352358069896486974289461739797170753639864751104959772858462587908332828924709981611282771104186699862144341276799578395014304762052057529880076629671540576172626267386225344302740600316606458629513599078169153566190020530953499541077877755806713144062943714447015633100586387230064790917460386341235547127926097939435114934262926074812176530148225533097416186874042370008807363867025907726015569873832931275692451104746371763160467585924858389506426116227819475265430737521381665688962709941805198199136627823826283850016045736103085379904431528856672349545317875082938912960067622352391128189199606642385920158803917013956532521220733062460698224152445649097658261659463115987979694506456459844379503242490471562804783146522983657761999669285586319302548220119615335650626946578257872467139188041569726220029640064948694901410736646784970395034707376668714538538642431377708605391277