|
Catalan's Constant [Ramanujan's Formula]
Catalan constant to 300000 digits computed on September 29, 1996 by using a Sun Ultra-Sparc in 1 day 8 hour 15 min 15 sec 55 hsec. The algorithm used is the standard series for Catalan, accelerated by an Euler transform. The algorithm was implemented using the LiDIA library for computational number theory and it is part of the multiprecision floating-point arithmetic of the package.
LiDIA is available from
ftp://crypt1.cs.uni-sb.de/pub/systems/LiDIA/LiDIA-1.2.1.tgz http://www-jb.cs.uni-sb.de/LiDIA/linkhtml/lidia/lidia.html
The implementation of the algorithm is:
inline void const_catalan (bigfloat & y) { bigfloat p; bigfloat t; int i = 1, j = 3; // j = 2*i+1
// y = t = p = 1/2 divide (y, 1, 2); t.assign (y); p.assign (y);
// while t is greater than the desired accuracy while (!t.isapproxzero ()) { // do // p = p * (i/j); // t = (t * i + p) / j; // y = y + t; // i+; j+2; multiply (p, p, i); divide (p, p, j); multiply (t, t, i); add (t, t, p); divide (t, t, j); add (y, y, t); i+; j + 2; } }
Here is the output of the program:
Calculating Catalan's constant to 300000 decimals
Time required: 1 day 8 hour 15 min 15 sec 55 hsec
—————————————————————————————————————
Additional REFERENCES:
Catalan constant is: sum((-1)**(n+1)/(2*n-1)**2,n=1..infinity) also known under the name beta(2), see ?catalan in Maple for more details.
The previous record was 200000 digits, also from Thomas Papanikolaou and before that: 100000 digits was due to Greg Fee and Simon Plouffe on August 14, 1996, by using a SGI r10000 Power Challenge with 194 Mhz in 5.63 hours and the standard implementation of Catalan on MapleV, Release 4. (which uses Greg's idea).
Euler Tranform: References, Abramowitz and Stegun, formula 3.6.27 page 16 in Handbook of Mathematical Functions and Tables, Dover 1964.
Ramanujan Notebooks, part I formula 34.1 of page 293.
The series used is by putting x—> -1/2 . In other words the formula used is: the ordinary formula for Catalan
sum((-1)**(n+1)/(2*n+1)**2,n=0..infinity)
and then you apply the Euler Transform to it.
Computation of Catalan's constant using Ramanujan's Formula, by Greg Fee, ACM 1990, Proceedings of the ISAAC conference, 1990, p. 157.
Catalan constant to 300000 digits
————————————————————————————————————
.91596559417721901505460351493238411077414937428167213426649811962176301977625 476947935651292611510624857442261919619957903589880332585905943159473748115840 699533202877331946051903872747816408786590902470648415216300022872764094238825 995774150881639747025248201156070764488380787337048990086477511322599713434074 854075532307685653357680958352602193823239508007206803557610482357339423191498 298361899770690364041808621794110191753274314997823397610551224779530324875371 878665828082360570225594194818097535097113157126158042427236364398500173828759 779765306837009298087388749561089365977194096872684444166804621624339864838916 280448281506273022742073884311722182721904722558705319086857354234985394983099 191159673884645086151524996242370437451777372351775440708538464401321748392999 947572446199754961975870640074748707014909376788730458699798606448749746438720 623851371239273630499850353922392878797906336440323547845358519277777872709060 830319943013323167124761587097924554791190921262018548039639342434956537596739 494354730014385180705051250748861328564129344959502298722983162894816461622573 989476231819542006607188142759497559958983637303767533853381354503127681724011 814072153468831683568168639327293677586673925839540618033387830687064901433486 017298106992179956530958187157911553956036689036990493966753843775810493189955 385516262196253316804016273752130120940604538795076053827123197467900882369178 615573389124417223833938148120775994298491724397668575632718068808279982979378 849432724934657607490543874819526813074437046294635892810276531705076547974494 839948959477092788591195848724127866084088554597823812492260505610094584486698 958576871611171786662336847409949385541321093755281815525881591502228244454441 718609946588151766496078223678970519269711312571375454370124329673057246845015 819313016087766215650957554679666786617082347682558133518681937745650014565261 704096074688953930234791980600084245562175108423471736387879369577878440933792 219894575340961647424554622478788002922914803690711527079554550541478268849818 524600581446651786814231541148785540996651673853972761469701690439151149008933 307918457465762099677548123138201543601098852721629770108761574781735641636985 703553406726493519631695547672115077723159004483382605161163834308651397972251 617413853812932480119463625188008403981945539055182104246062921852175602465486 019297672397405110395264569242978642124240375189267872960271773378738379978326 676208611952067912151263821192523294040692059943864274693215338856671173308271 424083326592032607531659280423102309973584003959403426322276880701186819617678 090563158159784537637578356373590277164883131028876937950535073208018075810223 823080317625043294247222683912297129553513551043147618866554743676921841201887 716179922856205635220547032006918086880661211742040609924123487605154068202262 559504812485894118735834682290423083615554769477770831940874812491674892900659 369616416623436837075439638389451440119556487381342921229820013021079961922424 924493051999235858158082603524979985059186697220123164897104830701793528112228 966355128317437352393011402792389808744569648309013207877658785362301354280001 629055877295006795876178247374871378060042208445346045064702443258085164777173 903196028655538328281415915248735263307150513147882844999238663243198106336515 243311321463900933362159160744482923457177454817169580181688900175285645046489 139090420356029836045652425265797270138586757653899302958449258692189788644388 819358114526770563160609737684654083694230203816826392458579107404870879877852 426140868715178575801006023681703491797733622196629537718913853116739965565885 912164628015582629873541376336076073020045591202946657347571852745311633847776 486838248504116301605227086944442703644251242363971814999234960838959168258036 164749881042639483890042940550431502193126864230059992926361540649262664186583 594904249371523622068403940370108680740098440001512465343535067233845469463576 021186762114341424761178341043127306116782248833969915539091310973231066781117 485537679027231845076545775699887411395686146631581361573674061881125914620397 423401125882131569075175754979658229689846231329257273175338302313533232870056 595688534175204573932758183513982347678009261426521074710456668763134325667275 929891952548849037809046546488268575204454695053813498309021460489718319387780 863409014168285484524248093104343217724788778248739486061800233415225914146138 782700545170971410457656614928953108672486080484204376637936230213645817798022 720882738071736711299822289069125763027779162651035762577038104288680376054636 303337940367377696744757171918712803954370966413877226626889837311111602004518 593973174764621542838460162144526553720292552051504941828003032550267579038252 786139633572720650890367820176258573636602459644914533528141037251683822090097 101943680278336708963314672497329503919259298514966414498521873384370124517467 421871213110205726174340134056876555104187866544518902765005382178609412105353 899784905982180023067890821606141367018393687028304544346780536499566495053180 837980207950365835227622006506786177171095672005629703023553593373869771832835 337557262344415664916005762666604199085276789703504193295554568745338842121304 879862000928706178007678592735175386523677348535053066125396025536280809350562 562821347432394399222442739711562755985244339104126180433506987134104280978456 869518977668882650503756167591535473173668135683353168588440266726203196600785 194905261819016135540883210564405409027216204498851041761292787884227851835200 704439460961571665543448392802592501156306227650740050312351417656526449943042 570531502230552233576634208943102385867060630430297719853224212043298619528633 162199479803021651170071853216768095061934167286284674753307211005511854225758 629292681406381602461376952043278677852351940897487799588262651018857167526448 964259516245608164680586662605844328281537669209501700131691093864391470033345 906701868799246483109181855848104631118954767258303668922657116990565431759988 680286731145873457549777440562265841337924742718870078268554656782290336462515 389898481303382848801578806646984480217166949381713998561787717378778712739969 834267499971632268327257972572115422822471585175485105077970961560718370771383 998265316365376758124751878398350457588311790755545686617395928729558719386219 223573876438607017401059359744278581411271395680504961269960048434583896436697 014771140329178065084925873008209906179587580402996618292021820696155745628810 980223576195163967867626609736795492343789154100185728989816837858427303612448 456532426353483148925506480782198270518366562137380923695907752151698346526103 237738415089830658136487130918231383360055922540017526278742124582625282370841 549068233176525686246245609564332012497970680412465220417099693819728527361263 918229564824346904280303582683293573927934144962552827643618433542620664134683 156370222632876839087900597166332580664331095881812753248627892980094868158902 452714692410818394313034916873369765811519402277339800954019992521514349607341 474539039230411990899640390760329165111929551028666741487888146370780055212485 563601811272094261309853801454061531585422664625843416142595014823689366366735 542832720063760749018108182214340861973911548328544384315811917349722801704172 459572971660809528522210471512385830056016372167813179800095725635672059859413 601259647770490028817068063068944393809042066274116418284908815132355567686236 301149153615835301929518669408266688060717443297219890870195003345427130936321 480897947531976335087806006735145801884222411475843568459595642012392746288926 431857096931750781433192768351309119874941923765705532160176241226139675957034 480490314072757977766284315056551277393854632895972421929264699107855832088971 233051922897717260248197053719683239188010267755856584529891014031105506836583 574883237481454355676661805833306498942393994388379965296325401019799634146428 782283377256296616846911720121828661474404077735591989241075123126002042456108 959229931398206017121311234380896737575014319013773810588142008068583268348860 835919739558648453632085482935260075146055373154056807915110104867854204502431 784812177640696641654466861923921035823089944277756117355726622412507724360772 601174557283433060318105899040780191874490094925401279748286924188618885357723 618971933738259474905697075534520115315402733311828377976124717015057625706465 529679989718223087381422674357748520494951554930115312237349799758257618202831 754452121431136790914270888108434238961583657657348848869901897285510569345637 556197136235680510433375824604783740671629050969122053094969342273645888616180 749732254029065265157374208441696502868219289687780182022916709817519263029166 075560544631057607509820784122037469094403481232669125215712433087010353789034 900090664329264372577975024182433028437809210844805131449637450450720821172885 237993949048626138199252205239306727369305935217637216618890419427844146908993 764901848571379429452377041302501047569886854093043365370302936769520956382771 770453471932906996474983798241227697609433107940858403105491213134469627575233 133732110803099242578856580410400798316619455697015999176218878664471943175469 916497415202518064488778879851669666905018069611778953196777655119951365783552 962285756790257213860335416088979846955972160571371734597829251501311460097902 373072412036354335883448781036365025215337515426356641550685916208348770008127 064546983842306741350697392385488411364274333848991803820765123559375590563012 417219171980889432932113650166895367035795783718714129279518231967750770527301 435566890987728156213938442321621621619714293261707601370746636004397668423210 772544037792407419121770198942861545330158425131835182081137819138154235421559 608389967085629516895262671993966405734193091489098184941482188411810178142374 557350988488825815942045631984223214360317409340713561767809014347986994190579 589435555830750700972883787924906533440124683055020087050873645653095557917071 622999437962377763190566337687723700887467453957110781672472188004312957875214 467796449960511800034246725245859539203204670880889789317541179493224981308995 641838295378715037761463626258511238016069358074126973884404030409739084583137 914246290915648409556851262693103058511292005846401659476028476552408610605191 022645863054054032634791028174912277615366809620188627833142120644805591428083 298734118414360771660608731081949848484492815147685896339154809451338055599975 013469167678833652319853053583863333532935249293050310083172054433905050376413 930794611946777014640762590492778084651343952309552492153717435229293942988546 906689089111158690716054868384732500504471076651958754718458234785732434368548 833783871995617076483652381581775882106687691199738438887994684127831197614230 187333481444190086170200582604207251386376554624596299270296087829284515227536 076813961039567082881468033399263849883851517369906170600666320063069982547852 342755408169692580300982931288816845379325227504659787688963309573341060164659 585398436920742751496110274307126469676151836937086582026277051209542930439143 547965918260728897001187517345029606509198500136933628468394612030247503897543 589083078612913460889836406485044857015659677762794641541803525734051363485532 129950844092689612310940754182744027351269370218532477846540339600306219998878 318039319704292122495067614229002210715292351093485086757190433390511894693203 488114952940303089160914952098133026717570241776747702048465647977984387889350 893780320701044377856974402417553704657109846759091830221597568486217210138708 825254328906985144629218157238053861792363563698358706440809632911658563595614 359386346282238196122201356546966739288220771888508306195019156452016298554213 864386433761993145383651868918258176647027062375367382370897020672107900679360 185682046291587722285956060402209937565687974455240910912732822595108597224444 778399281565562088534838269442581400691380247361462202060899736983794449529070 119917881219370470809089734189712410315397023063331178349119734076268473989110 612392614402045318979278204807618498097421856104194597221642281896519731426902 105335385078269228032681905896448698926177536581470865895031857067258439249126 646921556595921463358417125127078556409733127792330834411800917211931482603316 472440285309531133416801362768340380656843956224901064370494908671162370101323 936333540331303482946612442291832250784904113459290936037071391403701640573451 435989843391250388711698186658623254071786832421840463850524922402294215252122 219746627890892242630352467165376788333616161489703724438114898481157046067438 588570956522791783226579688826613323267290015053503821071620540860875544294715 041219333078364405375830493287051435015130482451945497585034935205259578117234 780294001846247692094598694846960880926178711735163206818028819896261746322160 291576336869342567715495799463074610405499304632691317449812255036823267710191 234996107792483648674459526675230581370250480362465582246628910898031100355785 864480880974065849602998145682158416712262174948833437240976047910724363838702 614759709497782154721992961544399335529828152307598090888043036003879566321290 037402080486911085378912885547831326375799173473825279867518797825294506726570 553248628326265671959763322223727101073434792672964156546247735482954780949636 804529498374256495295751180048643190939852632732319051479912514631474488773002 204989667095501472083994719960636635875356737862996568695026670954696168431842 247284545920244602392896107022827103035172738727688234842665225206644088771292 841615804886744133343251154037199885483639749144086796114104752654810592239140 281719729298030588717934532522003225017422123424499627259789994079535389206504 191411359720721803071810804828658481244097035637611762987368821708516809351849 207641693156131384051153249286540942623014541601333466224647952172780652175063 512270382989521794534652994453209532643110873190584673587833562428457902818905 325423670980697735617904021722332265296608533456708737489454764732592286378040 464543812334110833044112313886605097457586451390038632625853675631677303165726 066164971471045067086318102875035208373241249420925145863198760299645845391231 563618501170074844874842829825222624397182151173215342804107184187974937499985 389146312927062586396363808604706577343407074173237281399459278759773292381069 105426202092090017623743082240629560919253171645226238046142833198930030378864 216946422876391023458494195850399013687152825184022701277950490077032067972245 576726494718932952075176404206425327778659538762171514621960214546086626810163 732584419529776054271644916927322804715192822149159563750219496725891245630251 662137729008831063889719577318471276609670576831516940848707527663026427136687 964704635676134598479176542522578221100923099544722575192307068631241750671481 895947389345079039763438500491986214881356697466172437262103708610949660153920 575627883088430812631657873324279779021954921514023668810641852019737002261344 485354433767019881198593723742825257717612088862905972995714528259794444345278 631918691855992347139345792525814782111551008070114520288591962778668286799253 672323017857780570051276153966878614481988996436475683377592289986040495779206 342202484831261285713483876164490122176195841856656511155230709621720979670720 461570744116891683989474248051336261022394412037740459546819934919544947711982 173852904788572628732840127540859220601520427534808856690645381336067422487925 263856375601154215213408721833481761715874307589068235823510134327030137170155 496887866539602187975257704492678601117789876720200097787383699742197019518713 705027503199230369743860774349865960858925384896499959607029009055428471410589 551467154779273315212485648911571787227374590414712195315294446632232035605558 737756625213846765330501807117669929053137742070952382617334181862731566041322 258032397827978329610482529169611577432037579163796404635709757917196640060946 909140077500849607829187532921089007544229799088223799242189625906431396534002 886687284888385516959706454562877126972675373896158863230407543339416313845440 066845416518082188833668970336142290974282435560555786773274815374657174078164 039163184394768495919702442094996275646063217029545706132900852860132498369952 292361831145643469409708451089623547805748399929858678225400628876632880486754 223541844390405303995076434928497123348376359779279588287274702380527623618350 690981823114305192278639501075089361713244560009688379588693464215682490648449 128932106915392161188059016802124055837807361892792848509090087139995492422330 086779797029557548254582650748704538807681700027235815227777187744610078008005 681922549531632232364957656829884723952152282383196940749144923498368863633899 700135858848890321792792843510119244981606396622859428093716216179397073596629 990042675669829500947635254185491168761918744907552602130070096115629703210306 879997810294365679101393266363354311282840552810079586584119761904239883736720 726175484082860097207573606012948844803614028655777522958925805418772793007043 124612956663699521186635958949075208277649299939934608517739459803010449436146 201743761453083076488017286650424462858361949422217496367337622242243039777886 035169280577628070400702868841349031007143252120126499090811527397048552564096 859704238829317489522921958806636864183121885065409789898960713932002140968117 844343650682552354545065582311056067566983675278925161362206482131534555739670 668802224958214283585091057114840045089214440326647438492613796148614536758167 945969362737631199565326351704510043392228494826734911792082137745490554124530 176884798501689778977291710660787098328146947831255829960153956423007879788184 894784024162808468788066884733048214486524877732314756996803153236229106526097 050805326987653820445373610053261235810666365477154897647273051668198131384366 944245848103944662129762769786601855298401659189970079032133205093509387991696 140762083145819638669222005784388969377148100504887807669944908949649200731617 820644920289386802777417536594959968985756722695396958441323760095046871993349 718054847569403682982495680355776974552510816871207299349477905840558610094384 426055494596443757203937970166469088896672171082428054204561695792660263046961 334241195099158741342167641916823618151721800916386647813101933390325266788467 247343409076050429332326678398250009202030723798075632689068928995766258120083 267416391488349942663027880629820074902491743541108840159537935577452808322782 431320181569682668326045229932540798274082280236106493448252601672114215207412 198466894550411580581095385927328847716454901989405373777732214742459958976451 867583786929110720544376968440047274519609830320319454155418822265657311995190 181963200654131096219592562474012208706325238283748814560092340146290980231000 153641270193250746927006953642201883072782925096198147285469500291118232704169 472852305398522879898358611903680853294108726555095000098382545160028798679517 882244213037763436248564903045544606482217990443398021967090050535331685807810 455964180403631646716682533587738514099100799841463636623832623798438981634534 721854293792436913886717623157534221268686589410661390605319281629353438820667 788840968644044115465375548916209753984638321421332400529112532394644604722928 313156815174202369877498095240805015411008360994993123537799943236862611142070 758226320852115215283086959391959286957520048656447899901041677195403288427606 747303662292777152724739500283802658378868989088766918529174998275752938322794 578876201210132756393638103726981793697231393707526312345648135283580643768061 100979875102128475021949092737452460415580986971650998918284105544674939395496 160016830695695274784901890735370358622923063354871841988100724816393260344114 116868694257576055754530889843229196304829312399026141189698439294191977930409 416541984481817058953818522851936673013086829405889187982168273948239106832931 090692023415389622399780718066235821788770335677194453040498249676213897374516 379875945631257152314864776866476953319652531266494910994911563945825468502300 596803942301164483294374292214780881796604549842817983982160074059890038846661 847978382612198790465523587286271674189191713790876153035557090624636395105979 728991992681627648827249215846327323015484322799842592616855364308960252547029 730310840455016304711286277599496176569547149368064994774883007372853659983634 412565708882862576181822219299507481783869310862228748677558916376478323088172 027724073168611455235157658514729001298731429502276219971188618638083953531312 744289024611847495875320544380718539137517188569599188150936351922318408404422 472331920169880959608418291907986881298181602289494962341232317306985822866380 270206173160551040595167685958643600032281814482058717708658207732249544432422 388838622071287946513026873334693822886472807485614747700882632930719330572247 017399994948552926714063630750540591863174186039032728990957828948282423111956 066955573796233950124452271928435165269971607476957092112093613917838015152980 352241540441040648909188179866510568691639649139667727266634141667647912076749 531286257899139198686408615564369937580488114202272734363732456956052806729440 170919812021322410430356336128077568023126546516868465192242887798687220537455 503800027427991305412431729225438875839858526467976329775063885572870445495584 471769522159054226503094437198590713458900081205086464760107785538257083674187 530176249264127435887899362663693148082506367418013694765085142266537649535223 182009716735331250768782791220363578713300900992391233529484208519400788434178 596990506984827315922021055529861965024189482323637297270373335723942610446272 347738758848746953782099799630782524288733273760371626306042942545004460327667 872474760759843427424212660082682743724607374049925753740248635103153598300001 058819807784516073619721513525470960752041640752107567985308434221704041588569 398515046559591495796252948533311227610489155065046575586425787788963731499559 726647967826666897010983303827023148663182812597065153299700903953658191973845 943154755116984195156844298072261347164254988473147613699389753101650491472109 873156881031060178632045599216628005081932392871812705608637401677502610702293 728527257316924151463133972719882233994255776808714551517882460474832366726986 591016391974951455800287998631584471910345823732287899712654691877716912889905 406655995379885112652859645177499650124281523481785011887221687608529999688738 964730810790136848754318217922985875807979409116854880230753413010856277874617 065057705268467486892473036452215595077804811097663862050713010200448828627614 994075987909497309356303766908538741329481097989706920315603886955349761445121 399792361222994958743253189592526859218787816032272850397628136338704318109238 783838852877262324202331797073888495793957519569277179895535853853672281644878 937707771006009843298558363506781107615402037618538114203568834885764346129304 567211422606055340221823014074876701058739066494655347264779091647627969747336 732611113921089353661686748221653720025298865086896566291535996167397456855012 309093252068463437475160950622227295846296254883573230981747719508172615566261 132698250554511674424246488873286730467197902668687538308613533670412627949120 768891726702098374270098851937068786260965415599792496104103858299579403601361 830937998086010368373590650172912332458821490019463981552951599540414650333499 350553189156713889047888770606289760771685177311354646563283341793553834134410 082612786056166886356649168377323610760569276531776185302889633191759549336054 363536989398512924377726514967078812775292279931309084700404218700891471754339 001065516079299932167464009488204288672622556430727214246494810776047829506874 758493278936374220265605264716897647843703430805192683347618056635065468722215 950979120953475916733903514266915280744170238985042662844188115427493476446200 453966134618113152384599661938278745602198813825141234003861715000457474379911 933646058342197227778605323828615016951200447742498731377584750318319198002993 457497541915784056477248278947771211020752439206419997831617333373256200887159 928232087771273315585204992637609072473745173006643985968060213584358283071895 307080827638625540044220479097308967909678353645387778467289838441377020689588 982981674163429653938868760556011939364222719005736877931065400119527451742088 176116152995141257263048172829663856856635636739793561274742905903324550338432 608668111924283293118886853526586553057316211052322689598383731369229143740087 954605690950585818180025837323865021122274850521097655993136592990508106103605 434637758675996050945457428806055181268636606039385389722302562845160295113795 207828325197919268482149547905582682953028921987187723474891120518175666000402 184013766506129265394198320724469256075226689874967034632533500658413722855923 295820810862328466799407933609955568926805933718617364067621783127051294006453 669706247177544104458444525626350917494633792341208899705424617544307916293577 354078364046154824449906316939756276202904212749820653413756748647563164951336 229573957501150960956917134569693845248654484214918203963933376883278866013127 333224439427773504343323400281649823707724271409155385757312763689757692641751 458196399455653851564517514140376213274190180755104367929769203986023519959365 928744042110473021780846083031298484853175211836088274342217859967429095793926 010273795994153193159917612386548296463116278652274822494997768245571795554256 150928946576597696551757236737421457140620078890541408784544260082899513849588 144932011479703875743389846080079894083853695515631622706682538655004425212369 338839759483217737768600867027083248256761193110043885198379835419820659761639 714792002522164547584032656508906833957660644981261747449235462807397629748294 389921608238687778738526862881756493617067018404275186916283956847922331159595 695194465487439529244447804405865830788125095610110226309373006924196094483167 558220393574935743767376498685652516581924264056599068166032105777585856351350 799569318750227835269650951857572322839225021320760031054359676385013274009638 785289261892990612364608381629951484516545911985582412883998769156590813664008 814023343162101317498732398061872442022810753327818378620956235986099513892259 203275876750827257159037262354681439939689163132435524039188879648593076075848 885614701967169381540149511697372752517444516562689033182063760211942984033322 852526174527240680898751064963132075315370483240708356278166799033274686796492 287566694955842135473063665135197854545004082407349124761088595180916432465959 887759263335743977913115663148400547187099363646262106821430064928937324201181 286100002105374912616155031961412345063645941802595926742493442920909222736565 556230238234706230511104796734189761914326914887707938733203453229526519827417 925466086594667030140763659454046597584966223993113399718262625025946091007232 123806818134756723000348046776374726954413809296859468465632491039819491217940 871892994653991539926134269327359677632020123410110344780507679797247667411918 181815497319630038768293649893566179071245520103284467384981999997116994650340 126607373515642089693641448574935539672428849172483996958743220679749660727002 618944142647660188419901100434643740506767690243716952269588141443581312064509 622534565917991569636497811463032374322795211547871587941255518550587323393314 918949198366729812002297159855040764517901467926272144574587295391436663616910 969670328956167617448220672748738672427279517781233370516089885929694929244449 742283039927647682875973575810562804289331332505247093325982791228024862970706 294381649958799923735842177422239380822719127958012068250698072804526226926655 139110539340090929905579070560432152921842501512931874123656996375006443324772 428841243049893510324708789327283658126504566258695060304266599250754223024812 442169650945712987881272951763279240540288963591828640022776571030115042781356 293240015700207538981395325444515866179204612013530946393928270585979205963305 172803654924094677427755899864718071881293337269553960901050115487089817765820 512022821411563667487136012382608587645301063564709314804688581597689719702223 047255672003461673999505538471774317867416599648687864400548552791445741554098 576440407075510828815239221568573697715490086357080631225050919662898605474693 931848248119749875644105651063636998726471855244095539623728116411957802443269 046687846944565367467582779392467358987985283074719956494545269441530803585649 035002152979425264395959639891949216059973525821326308090971333798882135182256 020906264445303030814896893872473013339459072078096772479411649039902819311515 628497029100941364118912852913067569109714569152107789092414331771415294064543 293643159480299313467290184301390344454709741355211194299878527163014534223852 136818966445413435346274440792084517806009894004856839665852822773832241141158 523454632425591755697655241657648394067083861779409771033661017620957244851366 697436198174929304095124596333635116787588648444995857690317460733312380405026 216415220720209185762386130248200634695858829692415182257216645604795773727197 034836233570832908452137304300338945968773683386780976963706185458629263472491 705058416712283876553306989180426849323853606600684023663288096269181912903668 938658268778004032830190301904436440667615584348775863075102165728390784604393 216589041686197943838347609769129542128179389356385009726461604747616844791203 589236931388753287614359213805616876245245776980372410014315857979747063047413 361914024296285966594977667529431661489203332992713144440506861717009818236867 237090236950897186144914998991028617357833505967980565770723134452410156379005 188860349238831842070897161052218343221813545840807843150720950611655378336668 907154591791174896992962321986545919841148453627792638293879576762359442669069 425576495689934577726834380909163467969274084562251125324661947422469816337589 912302351299456949985585467164438940122457838046620014849895768928296068583810 862449915131786533461842546595855779978085624468600015715829893667902142157680 183594175607548826967101808612488413028785250305864418344066801835187932130638 591771247065557249339220056524474359296652694334156923220115649639063037052828 266971047312599183470481859226887702297996288158001295929117777352167442823841 993092071910461724774376275592370454224800671179729888277239226969446555153750 915351364995802574117805532174338064464234284208846441723814827554468345330085 181155847624461679212943011519608188039593038250367329432139476830929470925529 254103100866804655963684250937366621574709987559596204844204028107259959775032 867458755248104558477860402697144173502728136309719615694242178388489177541424 648012377311139104497478180917517717350270676770505726235157877435229368713495 307278162342588957581152862930302379543355844237983987636848635960281083279977 182017297207454837456735444046629803246575054878732368441082194049890944136933 312055392249387059869784320475965194858300187071121409278554210130709586609760 475258635421392340839477839442107671343519490687553690712839340959348674785837 089914394578775276221959814018145497650903526553358965623908546754298140807447 124396500550860759208206486581563381509445662705526809630029133453215368375040 853622463805850920218105680835015050350462084504981871540051014808666273244694 251604857188334494480457041254664799294731154738765105464291457438886340564382 458768672687174121207599307997664718921599869873086015389070019375420254421939 999279905759794891878147267043152961316959097525821051978551267522996983645425 294634620349650727067361575285326962677792830876378021149526647529174451366309 859783322270189277811327182728378074782689984203106372783131551727759639018152 898656756587906208924815638105665502862233026458546014393042464208297022586620 146263317077085346405259169086385056622755889182881249569958010723313244588241 037384967512227529534963593232353820937438209167999023793841543728755926020882 094770334745183311114473193120656603864036065939897904856763305922278828394405 208171281242948288336552446581774821123238185892665684075792071133697934505212 648076065263900856661120476258156553695611471174583906735218359700587066847742 669689400146433985886004078222228654633497772104925619824553470843726893952599 864605354604550624648667820024243649427480128906069218790693007840130972660574 762086252746370289433191418505442698949724720074619086520872081059597903632958 106183770969226211468762922596218892835162473753352545136868244570895740250550 853526026733395844123115717678917079605615447634406744446172196838637308545403 167549097899648694599992678520357325234849191133459748031997160896178555979012 625671465947559218897452220419473449230199587793194555555429903566713088943777 713686619188585980970478582359024081855649194813872367907130331794180776540116 118755688816607427763191187722600438033994973981713619514502939440012152756749 951223082384671878781234465956379634307196186520132465549083963213266877996291 794292368065670906181908866410819472280274312584726750950098207209545227790851 572904296003480790077941969860602893598122753469496825194492660091276454976521 103416939210544828739603413106240017138012247921770578214381629499507736024881 520933301434875178216752038428374228296103618401059452375982040345158275883106 888213051852565521801616616498572007052198568375250909031168508435098247703502 438010677593424535477917494140071308413747684577092849409963748701026231172240 371963772882647117531040770139034724231157754785286901497065784137084434430265 996610458420816524352799622950409099842268672367272256975295602304949565461758 131959302642899954446000349436152505581029319389803424201423309625789231655927 013419247123893026590493421713596629797036418630400603585649983448355652605110 089166692878737116011114876667601453364357692418467697518184966113493204631732 808565726707896936922354972015179131881296026666681832068410156717462252051231 359871320101084998996211988192119257079648348991220590585863304311143042963099 324494427518708624002930860588780310005159396896046247355228120959394774076266 372325260353019180196271213246607358128243765521851853950583166003227603914564 373351958467346011255404382487665114366137013647815498255894738349104958817704 248761818934648050518264383091671828872082042622770233356023223427035591413419 324264347557709313454940085110314520880176756645858606487750716722231357473394 270332707496354010089227692436876379929659219247170451013425286745479135846877 510706582254073796784756636984589480779158298398254690618571421247479067459884 086714149237664742787465111731572636470987446898054132407177564890158105495875 963685695963852979876422033342606803203491937840009825466908847672766871387158 164525161596548003578534665214698592372842113728432275635918140070604782074117 368530966604119951318837879744680091536112900598637347222649270483315454859827 447392500164971975592912578451517736229684545166525219788984386670229777377293 187895618805913016874630779109813953541825218228420675532394427159194863078497 703003811904886601618669635434762930346396905899265031860858983758086257586922 468984529015776779119838942550582907171802601671469858684355891815822728497894 293660674334849811253318614816871112703009123731746265614280034637596476398084 311417661551349309310816930169264797959301877084177391310893849127948511582298 584736378132221893792436311583887386025292968276213293246363914432191469001577 203635781603837841898786243936283109395199017224693361705140393035591588222555 111544075223346134825222776183638165011815501942247356712204027337340396081472 646739480157406406106281844362517227537683500971748308458045373718724709794018 782396762939679736626169376628188805507329001478462713848888150202990854989779 911289740673482971146211315127948101982223083783415747984659961492167252144239 762072888282225995183554274271472646942132316449160092270462365279175993088937 328493953680299419210534596095541915413004827916520341203821507326529664515131 676922128761456931167507148789753886657718174248145003455248035598053409465137 356368846067112151240547477117060047567389642878187729481258498193704352582950 717758914305191176277789287451694288397919367387944654862317158862566004606035 656667437696707745876186999790822816887128780840808003528070899004842726103178 514211798076450962632420721196867995817252872657091313818570424829520110957843 853952258615487062963903342788925472065503843889459002696076340980765179958799 864140593292634854311769430662895424534735801633777460453614466443803311895306 851035257980956969966977888247491572703557261886357079565465522499591723942686 859534240035292262285728601560600007992623003711578773818407825873202481237840 454869863035801635582414699983481899946914263235501140476049538946274903517910 407899305050242713781988763240849045336325276065261024947015370470572319767541 179385797576345171333978068535869426414140163785307512296531322466009901708185 461634054221468681139886431356370278983003922697733531205056849175466125618970 001117943956720733588590644346961978011277511334339120354164480743959541661289 654422309439645076631678958695468198393930037218264127641970196548095905645585 985303403690357216056231919993660917123070886818847926777405322242804806709587 021352009150343552200963546433899739280909764356108057918616941573698554610991 087047805102069557797218725789704696872640920583328977484674495085328713159385 498763564424466450084913302673200254023676177020996865253539873445547057104180 109496295555238821697452871215913030424275162741980166087118297088586021569225 067982508203840239752018838751077630662135109476272325069842161466776479021502 093436116232087903562338031179695505903392034267059619378085488389711108603483 526168940702776389300139890997545028569701065369546179559316046845424140447818 857563623811363117942335729353056803396099264993518226271622820465534066310041 975503631586236709856988271151513042564545052867170319856433631313076854415941 227963364076248994175109191881857664887603755572408442355664374662256878667470 468971747352796908142734004839461795994769652934515161791764695426483739142094 922518918126184114996972562520548373880670953221358302617724503714903419335223 389139280239669335589261290043091354004911725766533004845387760628375698008156 357781728225924657266939581869052641508745483541023230040095663160930250391829 905892450499875903233932066298529379954194570848819915267121122440320574212362 965131712697100516225702366969820061322322310212501684197976242470085637396954 937842208372554940519028972896701196948837406381535801068706992582507416363305 565323781005041555944318351280011533651823810207539229486581530193233937917503 247073353659241786160597312374287970726438892107551835056055185307356488101586 773431533353059502650607476368877980878659432524610229371720561220697303829301 274641268027265654519684405650482414201956060675521996050445049169268806251370 393281040212246499957642965758207267062168501874656993745311172013630242836454 052610452894296045891323489716108174460691773756124795995685121420469354989413 701730634590059579483936744503573111029918952745789306494249422690026373548589 988935592571072686146500363585492932796293802104496336049960008004054600493389 235526867176429211006607050661867523901141868503555402765142567677227089214888 895537104484012434060560476844454172144471092939453365412239191488625316467094 306521537817467054690660488704266784595216243798324014835987375724155805634481 896020393322048990380411205497246329299975535703323651972000566246162905447960 704837754040086227657751902436144052077743591948366771172584005110406025023635 255518277799986470269991586566048374472304296110564018628307883121866269686529 469126749767151061898082647254252890060244783238542727750482005523983769632783 745380410409498174344813065746641429988889222440507065339682551361738808076754 529352511559402201950654661613978620557435178677570086906013851788257451103662 792658445614711171967614756686006014708137568789247359501153737124377998734018 591088979554200177521635893278798842747129799827114326743227206212042998196319 258884678372143767870044968609045634164389330905241258447791215909409636975852 203115912081164554952936959557174993624435186081342898711658726065657355130258 761078480485346824076308537316486525226342977466575040251685973806422233610108 327376312839123911296211624876745750043681561410114840219767598673414835481121 159866460649305894703341032377185913072954756169477957051302649029939530767779 654302885617248444675901060835964664432896732809088247620832572873783665581189 091298647409158223975038017690010790576368558353012809782078073326501528248875 538780181875109807694963650005953409946676524463486326713878700944897277794019 853847679647596245780604581683416291942089216790945612183164441974668668389332 689513944746775369688300803697711608288301427500526115818935424999165044542914 328334442862270403985939524243806016746764574010158622168460886279433419920945 239046900599413909533405027495954510076934282921440746827338338240764297446425 786768886423804095030421619784176734931959500644424604647722834275845014642072 225788177979083497328299849236899806824308550967142538197871678058726768029003 383119949105884698680257972873775466412884957921961344262063392963957552624853 898376030044713299434005831873957541845950107794527712167297003974351818687998 263303879775007369456609203560175910992123600837279272110452315986621355920338 042712194531138766190595195218889761013010921033805735286910666797755601784733 226293241319433303653886944816609476159684106506047484138455026551250639994934 974968266166441066551802139031058950942596932934888181984665813528399014893630 327104886103027153448352583690071146754785633122509245092346847461306563238553 435988563869996601567186058612474588988257925983049463313311362425041150367526 605943976465359264532327633223319860751018547634193129972821972812936917765373 540523212220572346832475001299207035100665762384727402360384697885995722525908 452266062691863282211458075828199250172308507115002122057643943620707427834155 896022955746495351914508567512874929794056708656539849871744412488817334535608 559370237478935102349426821653449679328500582218159689050573591689721439132211 505274663264207286280411226782559084572351779478669479383479157704906403912293 550330704112102924516835910335986520232091882997202408484458254568473159485768 244652855633966093047981447838235749952390643296960640427594595079815050322109 469784243288068591108941898937896157550820516744316407054439807581169313640269 129171642991630385965316300822806706949491156026615212738584517369434059484144 775903620822556479341552719416868004921836995551781485477483975205304202788655 061495348481057278030041416983749059686164017934133669334073734527178444912947 843844310462935739939040902980148998649493484704163930702722474652200796312165 756044622687359632494487164209199768090613711885941521436660552698591646263533 244455996626272840802559242054257589343986404452836081389978002591330301930935 822517563467904835451068538604861286693116602588843283003985569850855644133262 542316362913236285471166779905984501926940735617488269912585186782940707967751 150931013151606826822434837858579588080699722769925602037462882249678118817608 764564913781718121890224717594255690193502795232086999862955596579902791443423 675876662298314474457760598273183265393271754842407551406155089120484275930345 732618374685191590684516417544141463803609413979685388345041685892464127168632 344682258918568629454602204920565917797131358285154200441964635331344205736343 107130843155119302950777358076785333838806043196777195504876131349890900191839 285347806420781619856089677472601439174996470335774115534142316125620869833514 415443255666118206765463782722520773025214000381086330594392760644961501035515 195682940796852615119190973114314917635464466963432290898209231476931916894038 051233876504421677622559098506844870085773819681939574597939166891187752003975 484894753853984731539026977101786567209028067996274932072141402973814580750409 956165906615444836653859373403172313481336554123086773063182166745969842431477 634140714093274019482690564864909354783091966881846894497861616837624118800499 595576365339220832942263909490543421202423024269128152029970981965109215448889 818066900033607371471091484162408323949021267341285654658027260921634828085880 748855012536477024921745418397124187124108421569669597589748265135350443798203 083965759997554814365041805360513120861800406348121131180290885645073485818852 991283396147525216402164179558486194788414415783743067748760119420846998469217 666130660970854460378980962705892479414613607001351406000098067552937395225099 086837806617648871141489685093851014973462906463980638735536838024822961970953 107678125915303701582241021323554465039653412311688557103292746579314045489850 780760512896217951120032656796562348385200700994523791869572917160992023842683 603310877353834324297886707684630403325940847966101796013645441455749556065367 619782569899289462263894274594610021451010623547744567867548842470976943316566 036594785131062843208112125111647545970759513170677192499928085724418678673056 455911049190697560267009707943927062464783913772586246445549797402750511581692 295416671886194831700328217545033892173871635914930862586695047048097266047816 143287250174729268836963059122765954692725163394231704179065872375528280600114 914144140325473525153569834996837500424912583198617305817914463408643646517014 384505600146198789577900341058993958911473311427734011816276991607356658068837 502801835671154187418527402547729677386094377127429155823968421254103189433944 699588705962289843198226883721319870786721562042419048560799358298042900208606 457935791525970125373231053163710610926563166168503587571334680640307679940444 060789784545099150587498693813358098925574155766622168159445990260477765693393 931216548249783317133410958497891874254877830512545721745065724343551881594387 753854615182429238590268973411229929684411961965320468358857634687757780554977 983897659194982931496779168443842634362136985362802597385703491909556038231399 171757910567010882026918478509552358527575926894117897413809526891406292117233 997044116162427192030976316146645584489560353375212279875372829341702420706905 059232617908642659322837905012854473317758315343848132091117419463412138432286 513401793430140727156818872732284255364226988614696519353160648231191689157480 230735467460101311459723706346551419057523081807153666054778103118230543782434 755626986526098929094483275413545332730921866673059920770211873754030210312471 250231435904167477397929347169697503355720613802110189216451282476075054123773 831714851634463699647740038350278884404155447604325320758536225050527508806761 345940926740697502047932552889701113035082680958516000417523028203574885929493 253893036111848604561009477357170470800040901672145007440527035872960845507272 144648558151349878080608213521297937327044332259010629049066537039666180672782 406562030489978637783122304282099018084037969543771874184021716194587044640102 262733599818158593365452326877598181927503979385709516221261073350423776989468 372171875788041055260048494601649203545440874627538520732293270370348086757836 354731318063340788128602694851019869015427702324096815909854656618366149329189 232805312897454049507998283066461027269467832369111443082564184517213405909467 946847373074046195707787671207246870191107888630055547642081880771811961841198 339685742526988316544528516443706474360152793492435649325764903595724384550659 996092411284327238971798826825420250457224063981923009556383103882365498074891 808266246695708504307674001778446545911933427991389597296710703161405895417906 583737939519497303263305349199089276731952401302438767455163591284266158875763 373008347740269358406294860128411305206532833977935893610781186355145975692621 671550684936292327964473984063457314475231823708556136851652853747956348776151 214230958523750381025030952742157322061462083953085032140689572374844879111418 175913457973488676586418509863128339777194791902745154120250992525875815799668 273496844816356224868028778736605417341699916376566538581095634919642246410021 617453036166646767784493191687688037604342455682325406325888890510255125872387 020094507459965682207682022372401240208209428136831620711042665728552343755203 994535506870498582151881444798946681763590435724767487387031313867273666423769 572620346130517620869612270834356271293322754244814441539762720328603234137383 411832281787718959075612047446860928844366507065326401405937431561702125012152 897829458463913919521671255415911203662617446988989738953558976129096935643101 760553413097616200778317663793839172991822217771699855527631876415362159050295 660065405609429126673910583258757789975918507663262661937192596555297915514056 319132096459039262421449491795986762741875170656564452685195881296548342882035 648409991274621458114987659408744652471538986596487203211007939581684178653887 617750304241325568183764362430899022510058918663252868040989769526515207654193 805642961777503783842477034169745357141688754466614766850847279648458465706227 774334151119299751212043310405492298062443061970780124885833964010844208954972 678536603328348370824846333642251242034255438554747923490542487369732412155062 977695049576940322598840527323833838700773547494206625292385568754759528367361 896950503254975105475685582904264280288223133583017113458619750197844202320417 857560471058859095762346770565043077877585358715489938500855188951167005590631 464963846456224224185199851310612230676179904894428488317825175065443465384251 332713002302404383062472621983061047601858907494381215097083764992948968483123 978975240059120343706965306631739923470616819681720263900462328085534076013964 292364420123047678226703833623258852546762685363678261507534053159337313071457 898910856926960637345974288402225005290155209988840428093453917218475809170375 130608136420984855729076695828421855736099971976403540497075703445820150158257 028881134452044496425524101031249676626355293181434949379326010482772434184706 399428953446222200412993451422074481419033378931555068522756309684544363912187 670081612847742123338998836148123820790426352672021614274850622618875836948419 117247948330004158287340051234018949209028767417865440211256360975020769150161 031730685245191308694915945691392796245928108995407625899546354852238544875799 414709306507726768451250588734995781768905528225674785956202175853620241580733 897536259435693193627514202350752121696191367212237935483432189757522193749511 566098362743671674688760399745687626778025082784567540835581457350675069310164 155301861754793662772940834922234871893773711933435647383144721809411353838943 428834690549484721567494897166357418853498986877125372894967217015374967204028 920038091977769053259435538039541030192310486758936937681983639059267156816018 726405672201424250916680655520569294405829809380194330572029684666000783764140 181555451438925045231496109100442498254576145514105068210088918833396704587811 847052148663943918028156428711765630865258717067101332225766604292634769246899 873003825020947509408732193929797277222165184482521437363062661500906273381471 560628172412951169410227490796850084604423363335120981329924781063830188851178 987520111870089499394340148384509314528032587331166957402516900180722639539584 778356843138684511354462605623290430800164514616372329597678259608739620388021 911696732268061066659942820250031122396075044597321369468855274375199846159302 264318400938016037620588591530231147507543217941495241386152185844100046721746 115786282155320754268546341641223324502248355197457494830997598207476203598458 553861178776117091611842846234733965619562624561265957583201139977697669929410 552398382522334054848782257697172610571825777899998427914386750694009828253560 700450889999265086650563240602915052527087831535674185366150249160148918863598 641716495484203286320898579528762221024459958538098289846571759564070795435884 464842786147216271816063827634546770146827533067757844957716681596836933120493 555645785156347445647222403411023455203189943146677812758700717760229128727812 153884127522795145673229093514770123493141779551529255184199489045458062174316 770001872914625555492636719407242868382751868497504021067531822862653277886758 587589757047309159134696241766295187506504909034934147878753083391320447372838 935587328545023092096517984444772427884316880733145759978893644180777361910085 676286644684416438176921333632559039347700334317377649647362575842415788444300 889485233208587871526500050691126334424439657315439126316591822350061381939077 791838825713002518266673724016276852190592182269900410288377422805113108056052 078907550382208141733415258597812578309938624405176604685506009627970458408524 914433496782639748863395427606256644086652031456110728562669475549760734155109 018382873267654318810455999039256211945285722953045128257626090844853207330695 487986853042894503115900609655192019442937099129267652651977565699367821565176 327731073958217689669658630030733138193569356262742174056971132096329824880338 482075266443578876440829041259871534663933312714557492180719422508250711103454 113839273446889930330260209356542595437891137025608121320817176226975909921549 286373510996971026838929130590866671079852674170699633224731776579391451674911 507086898977151541247764372088469142117156032678679940233613284385816900925956 540836728033788083226282383672243265239126834606480895610842067312646227930911 047885276570156697783068404501043891550072638396555048957337863001594535232806 742782621794145876980810954905584692695563687777938491604119576120571209769528 050747473987152244806218741352587051914357190035697197795186134880988579157805 497669972829949362856550182141256796691879327842898697684622775611319553259270 105727628576932101618240207318340848714593413824574814675844986115398865478026 573052647433215788443367515314116147090038675905606603317449184506126408365301 127697010801326956627169221791523627373515092628882496998772443154350299339932 305487039409021519989283745971657390840365529747454139483316354125955313903699 327655417686394191739090020078490755799608064040240393400227427229576938496287 941375072020260615285464160762321102731299468042845234326145442354980826236677 599043671010624440478921749266099575746732816121912517035877384263698892251137 590990640323042559621426395288847886272073948955784597303877278159279083019503 170457488052751227697077672823869828775825937610838545322184758148651835644783 649503364030188741468964075377843751228706255233819394714961873053299615055397 265476626040539980121295112636823006489279880905663785698552861168245756804575 540748564845952644012608180583127216136244365248134139163794144634730543828298 805025016320843043179771580000031916599487025801898709570317981015727124299900 903127147591663397039087130900010186740175386236999607292783050152028659217851 119940002202924826116539988995436569081341972909425856243756203895973059855077 686803625588713295629021809123615711745739465030992733939089154027056430027259 124742663501578662046901175399606269906910873036000992726558957515298129698414 631510780151126516158262638012046330758897950105597007380136612714822066681481 200948629085685340309039868950439524351553860343508410242603852342770736776818 255307504324948016173005780592122840402228140884311230979332474576121961936090 079208295450970236446427689669746975228593895922853876651108081759069742697952 003307911971690098257679932704885820161802206692332435594684336505386467358120 739976476215800855159587398020355754628711131642521099117403060325315182148886 291172758840023978951163415136112106165483391817639818075222987791827830523326 610124752434358539772955456149275999510009618441807305035616860225699526465970 327029136587005140271628593504058197496898406640182337888682327645408505077457 834745144933505025988027575445816623315328396381426319399594137328294358629930 054103650728011683767852227914918513853791943180631475301615532353678630907546 983539309426311532033712122821426536039340307806608698699124725595897422943062 923303476104606328842584959924540855333705753675672097955939164644428883631061 799952688028052073786551356890661309140667604502898274696593013959112229625236 267424899217682051159162592272609923363190673285646462988591597232879160105542 412876241093947269235916336623925095577318762005354573051229383960130476281764 192144605177896157420509687932433184709279461807436762756145910129371843454601 814504106207222599907287247448767459326118548149394922954203855890675451694410 246817189897142031287294121173133410592687699363167276774018600581131413817362 911298442120627982641069904888488513655991138443003150096600074997788642628078 379083290204596625706369507631399951107430448637806643282184302823362287641288 629359357830149411550279951906482457138006871585116268508146194149008954906372 355542243172808403400419130343162150133835831815377990630777933707834195839007 152363375974961473949116309436436425591373870808332995852610554224020193458895 839987876535602712847917018737489026266196023324061786563755928949980607649658 199000158590371172110026743376166840495420107735819117092822840294832834445379 905491579791867026918553423690746321851539896754909723582169507992605314492112 024649849600536930125687740645491776281297325278262094584479450871322393052928 491601587956584106679658706436811624733987637330356167526424726686319774762229 270706975477728367046885195187929425571030500102230198347832637286045624647118 073665160234667154368688040606601548490187399388331028172331758628719177572131 748900095655408202637279800257722693625197257649541986165882149409049141337464 714220749961792860059051138559868261790059381357330969281268002243029291200168 077828021778078959944888068609163923116361324751374279937188245395419076451351 425586294626515993972166209518940874093715920822569843128928971400185321069449 788197470943831569399645290830133744436786872466919763772149859259543307506266 525046525265621017822730197531004287306277729485858315051411078786108783742457 152918146691279138245357714414146619797241124508714102177138541679373327577219 616067048599045357831044004448713385258930428638833753312791397227068545977868 543874899754492135774101921727278195792329055922959196471251833874405116947106 585491905108986777511061672750571598494054119711669170933998913143164975293139 542919533994425509293577260797415213802299922101112189979205175577073074795395 048959127230344601147313421949906045194075139764494779213443821780788592893112 236023312057099323697677580334060319509918965377144452276225400433041387535406 835700711539969590302500829970429753124789392137970126575555695939051180379839 001625750683305637046070897595855472723197288278811173723966983384721159475042 795820608390963282620830936706323770793370528975534716173771738635978064002426 244448210294773392896629895175478975465079145845247618691862834443031063608662 251279775401800173647373796630594990068687576939904517784320974887535104405528 246436958061135014934014293973512105734179152861547966613023560518322225609101 030230730684693856970048894045116155492772029437986224167680586932209178902486 787482341944629510650508174593481415019087964439175109270543742252351897822491 512371871614131467282093307386121193373159737368122885218280428272860105926851 223412463388220916475660514471715326737384868499405301221698466093190332397253 717441312611129865670364282631114601047844155987307307953669638066420878535397 037434612346766646088543155000089919001676730138630820946218535933783656625758 454732714739488551614961114004346899681877831136200809871446003353897586259675 743750829353845811464521146707022192131540110258086477968054279265554575100934 619342862869970379278804437457352319318314435513739000945465920900161796450283 727586388033877246991162327235419077831277852287410343030415642346839298292476 159659394423331946341850529195490180739482965548325158279393018861990265346806 692787118775137014145218432598934057872019879834590560986872280396108309589565 722269656947489376758771171599138294545720829789204495143816278401431863343394 611057054747292927150151492087106859769175224170545854814523336623869381293382 259218371364395860041670903544018437775465982100580563377685690828945830874830 408538765145857823067942253184485708194093264581080930980894346051976567271578 722238209168937781099561205665975466816043057174471654341745460420343127960675 810044273782465330104671489501345700668606133906855556373852837468752993346569 667215296572474031313193587342098104457048783769597325252977289247225785295548 969395105518144058284213406303182280946485968760457957698112020130277358933508 662820904817139960639721818977158673346352691055443251577510276433739032841718 069254449470555668250823909038514596170949648850674114736866729027184173748799 577843535914789293545600593816694410050061110838018538996323115688582883485403 509773256372393461930179854870409338694217624537312224362182232666245197431181 186377545652424737298511737549019734487831722837516354392564504467743595574016 184718027109151794283888352418344181579300156619990470311544268662454659229635 187935572435990866987861193664231120162768123894163173470121498095892678616746 883105656571349952172225756392031558699038334559351668630188467690170473360157 005527101052451040021636097815441185231747735016843503204176234532948694688553 831476136085328592148397820562799518875893214075688196409145976848914707291472 427607701680101074012137929728413387039112551943138919291718452864204470156566 403869898904085046682456890861325353470025836036198692391010048565892660963030 279441376878119444343065092838111646020281651865612454085347447671067440914627 444934134714281134703711627274784755003636434377444991218075069908191246549314 379652745592277602542835821241579688255514213626819799942935221809444695342606 237588779495443916820618698480656860012873016285466847540065319836450462431815 096167790837968352472760735819175112682311511484160624547598946054249547790902 248994183404381867628458725550754193224930958704070106801873372064611336555407 263641206263642513641124526314882534976696307484918111978701712220703375337577 352433076099834375161354779722877740087542362794008374575359466728472177333500 384847937660328504613606067578523245184911020032118354756875270905041151205543 836029411355461099906959822855329963768516271469907488405723239918139184628041 144186975264458448664607129471716348828158935208565557476357706575128141328500 143777573843363035911017683071017166889229162984332632053570254955595830564559 170237343169391043316320768962649227890176492709087836357198362250850117738335 047038969769101352873492335826286622766603382803035953478679287237132490062105 017625537643755494793515841495676990279795874576881932902699804387773420512936 398418579608022425542127202324455065525064400163632019761405361459522969298969 942994120939077418377340866786862757521429952430615007003799897808489059893216 952937558052802727842487086746881854720511238448416197971090215465605091401697 823964703913729020178188957171282879803504980563155103382039704336544921639626 293997852596601195243219349596665939652709395437785061741920011781884201504625 103826968929746111257412997683949164108063288038359306035467949482103989507189 628483071472316704422802364075608363762105150513400092048829151054997272865806 940085406231030838146996715968277893505023852192593460963726605555281238652303 889939828218464947977465937201652559144933473358283242449235545592782828762691 118487746859424473583720509735833032636244984774067872936971127533385070564713 510604739320626014000262393925513766554020251711526768076241303952889997878866 485573159906796974346060643483104845507350504608642164840807904729351974187108 126957046822530513430940638084919154901176577820309618198311324813358670882429 400748907810871052478782855566243845710957129434599836638504213480752972808725 580908928890762658038100975724542448669193377841693943996926080461052840722876 949396201745220945637270224655391039429128753837998827618874369057900350177591 558045557295144791102686294020582706586487623744829211581956382110179620240687 116020716940877997072605250309091598823825796096497387932254768300687304514941 261359919714936141573642968612300548353940158369284443426907921203280600331201 400306014505904032199194128551342946242143494178176445679945766108900458089981 554313091329247763251586548360443113067906454351871295343040000265238560342580 660726025466286513827835392611334842020826926583137851695093386488808880078588 516093666643387824009548407968424645682407698025094184155809790205277345199906 646263130911774294796146711408011001338710943670737431971506554393549315360433 537383826109198623202270056619303667250709974633881375304255417821091280594034 902431650513508954851046480167444268554542457351558132379001074563887872244738 853512564683512695677168664625567790628119635309351504831082842358034474111238 065955513189187857834150234580398192525004956034945935016761766006063413065840 680908105800291651088920483909103857862366472864422704247352859031300712840287 053629011702085793849533442932800426202692438740310269882221315972645844754432 766356673477014475441661858465740430811778387533912672462018336617485276058871 941752953624522953204123100847471911813440356730538788075692642357889590913062 272564534193274948474774446417377172941241562517062422940239558124643907288856 209966947475142018734388074493962294335212335186067575120318258459049394156193 433657090489860071292174640791416339551984050332626439071838903467734132364262 664814477970159119473451942260262130584774697286600917814745731997352169112164 254715408083350462051167286155039475888200753548153894062410962853344655600948 971865035365846751835425851959692089980703012101528597475260537654449139211044 608574805780550140043190863259537288443941553761789905341552405808368886131108 557844183102844503903884324639300972867351923505527264558639311143726388356538 877208191198433096965647653795336995979935273992709705174951575074389993225387 797792048244487988256999809775561903094427957404978978002013747344335133268849 688585746806461698267350831516599649224829199642905698520511175212612469847757 201947296551714668055721381369206342156109315607365729716850979690662419565220 227007370599650924951540070869046798782638201420144315329399174243567066922650 433041153660631089603790615520322524461176965968607364283371947702227251858981 899408450698870770053127547053283761729722084008712105727278790701320128925481 110213183799722593522031515042935953591850622776914873115357190137299355662622 933921408745943833847292163100120244149059604188373197324712536991283445593343 396043485775259608584966726846731995723528785191338071820533613528962154122756 518946570768677288284294952399042356805762581900754377787943797727795935968432 889468674583518954738668888535148225369514362103822157187411827228417531452690 953091433098946743769877384272337914642509076436731934068683382971387498471947 671161995068014365918386362266031328312315990857888535564914703036598020493630 948087117551370616995732753539882275232741950751420578578957127306441427482442 894425284024635036645327146088683603715997126026962865154633754289213677392104 213409319357709559344394822245827959989840257868308867138349491278021615067014 264657467777933373147699772495646972787944197346581113332967276326159060661253 476045394061790402840234807070701799428734377250465092798820598505004631484645 278504443004282464088784648177365061862366382330101359419819430045359345663156 842881276353521050281851849179648152280419538612725124899177776716201419844547 581078379926101661218564429225269135954059971781709102180765256078279689411900 995698081374547715499120370233814594936462473903414511737782935182150672850979 076304788919761299875400648295296465935724734868843262970827877980251745457625 835817088433365003066531413036624144311779845365608813987874406131560367047148 262486973866330330126485321059943912746320171951744626999413933765570891966715 296645830807375980066410222949637115053217361535225325254420179234630954753667 077907696085605058270187485686689560518686371698456779129801893430045749591734 618927956792056847685067637497090890378283673778207004572629349843881107654775 751371183668130228454586041200949759178165650363101103256745611288367145298605 383003764654858426605724865886588797606449097467384304730274185324160352310142 030437850370971381045591857790052698717940072570401158050255731373527806636945 093442318871853973095866464690823191720259727491603903757117936912622238830576 332543292182027648592886274935145164080842791563498384785404317391148103655622 972589411212236471750492640163549078296160790036616773268906161828517584394565 998601689685432275214507403602061729238729399958769452383625956751437977427893 109898805307158611524186539239154113092346161731618384621826225964597278217280 768891474220810014777464719291970300273387427843532959605221285169157944184438 961178798241226033399751905496529255835447079817117933420355419604832866662273 654473525837473849542600952350395994449818225224265070567494268395486394611932 672384622934384767677944718344736628433080236851417172767763077234749822344241 882644212252357092531742021473944324000314728945289020775126654365042543669242 137900891121242309661763101387165934657315087669413270570879270859020761088673 478506095843251705213450335002897390023576807828426387855251407590915287858726 759791288252505097682413571985466755160139382250340632245439833488363725490072 735553499415765078229201942335306884276673130752916240532575957239175823955888 440829730346344653352055106507059712685228296954494522473882797037676367825493 867223982161231014398224851908034053110117482575782807753644675517433970630780 070463892530621481181570629681191589099513666988531871636251229581551456247693 690288327273081830449773248463722329915662662896290603101018994508235905342809 524756999826260220025658669043267051781898651096754099354461417395126003763953 825984598518137078273580174162209269668236265715746997504698990366701848381617 615941183000772872741691676612772268188615456468834347521214016219294705850639 498357997387619255133660874382625143185545435997345227885139717084924489031953 682105895256640782058948711596237917967430598858783510251244019338104478792784 496348062125047762522203800682651506258057067776372855745146703534279650897466 674897443247498966994658258161351178794155714776961577507289078952715195279842 013164706054694045093271329049419926818735244064453978718060154477718473545108 811942145295674483274725874009458982556331598141487800755993994019558608553785 834962540840887488986888162517082087057739792052573906620991020603681322556703 256796731801265907153784565101517259681598346130994036812352970678032126057136 907135012294006490761827529979197523180210070044046469987711388618341763972276 687668340957448093330603123739800407718394912922640886409681253364902735921556 513255519069514321748927250676676870239582864984014839715478963971486022497726 875739311657231782864407465254325637304884017082664939255988510173982119610763 494734874988562620819739280227162956397004125888294520425140069021075788091736 725560307873042301158286944925222130731865287494959911042639142499298119078075 683543466842829405566832252918844202395719882342860892127329729694435339963601 429819508337210640747666950895314428791237966877339914803538620076772547980277 457024119603390653315330426644840731108181956598274319229132355409251854256742 954321209298039059761670855312829132258922453239189501560371135638770396775526 843958739485928655682497126147070148311636407625505062002173710800208305367506 534634543243037505881824818898939392714026228518477776495304227948289845525407 289696233106494993421345920993196614868814556332627242110698830513641230668821 304825179859139585391384393461990356615119767531195588606684851522931830051924 371697881253965990633077970162927949483561345823808996505033987270111853295210 508189895751530650139226689121825130497161868795240348506361661433580430421202 998551019709978810405602847964279192945220757791677749930733622487157901654350 989294538691729334072796575210155749754924075032077396637107619382134433509844 189638995019973128812815221464198366698311823659509195293903507558664216085179 821486338710931745258514697041937805459313249254724650305210191143502631038634 805192883661223054434652444684615362495212901422385564300603244333746479239990 939774924375748257058423914092362913255497230466924272589625119414495800953336 925264552092678646963732113027078744415771851864601555115650701648731350991644 540576960188451947464766722495210384472780383711268548222838472252435338781876 729805805916191361838955943578229736057772352148984068603918619617242169879600 210978685302261045598803449314075237177173724738757764791268347005345917887964 098034945691167181757074031546758005626316553642982930021285124840879508741968 645582299757890851026012597686607332794293164845142701933515725401712195789793 947800891304924094442049404039709482138905155318980387000937544069007794020298 403677662187092740769898441275827184594680395348360109743590504736731418104064 925930105141463162352660885383633135229198368753987664754696589895300384162026 569752312854659502467747837668077898052928199134218920461345119214766846190916 480576307799365229378584743384892060229329366683144671200649344722129894214470 473002556751171499671544962011089760132894602597980333132458850922256106237157 175045143015851080544092629448402950945066637119566659698569988298707170240857 807091579404687791383095762335358011076211625529969461487179306616118093225376 446386922002198487502202461130078077257037695646285806078491301508831753353225 948848781139886989257178425558743454444751804880659082370188451857171039237954 688965023656565424060254481670539255990701920163931862188965768163861279836182 486043543256898795981791124906270370147844261757654086799568975980502960453798 950112452558818165045033501046579693002767512372546219475714804175836167354685 290126307841627576818903703599030717001182680249027207066787984017771653008719 661687676448359566211929328693277483515165660203648480005241700982775840232606 777407902161095274911309495113634049114501581034645610064827645953608569006414 586489108925702434339315558272309938907001845532849850241318227138739833938238 709319047574438601824608139826449870760807558582433754183845557388009380606122 905541807684668910122685560498487203884823400761470758140324558911541512909975 684142374123092780918659141358671222406013049303852574316210660806013320769583 593841689316969196290672088569774484653197576469831365643848008626972320408263 785893803682161989263409279809885437902634125881959978737337865772855335391927 285987715558689405096931593429682147892821583924997907067733600483604541375709 091188627371837258141680473006698594364391753481136815870431873532342597979216 013018231923987930536447510140890895575967486001835123921310217298870382254127 406575454336367616871472153827199961728187139205583472252975913288933179572637 702139965637384056944326554489692444283878282539879892670523514372473526207345 042664132996842686983028262149207420932068680594409677073727986132706171424457 115277492869424896766511432853913547197616317751420227187708832510415248185586 621135044202120390542431090616613137650943994536953019749943621540160924639576 161174137517762186953999087005968113802025046928238177425546609782064516931224 212129083307664103115623618434841873002038866906220909716519778608847799739130 984254364903231068220268653417501199652048958975230931542451506383371615377063 194677206585375563732844994863521843797374954797905329247426836738000281756919 639905763285121123301675275295668552796012609875641820510326203404455945960095 287790672324901601952012207614828807384244531187762742200663988108526230688196 573535506264265811798413901444610814495807443207314864851693984197781175795279 770375485301004895865340745578329663319571549812143254504404969871943994695999 052253929415936443799852474226344511338902765717059466914576230885232131183958 303509107911652253006569950685148226220607352171210447643171057834369305232498 313500836551058787839001405557408640564713261642391470182386224662829019391724 297780208199002122854709487668686623675611833561863395189317471283264459347504 338489446628990005682498711199949272797615502895629447265841872935228323125408 004464819013480595696381358632537469650576701646249408741927905474885427398228 326554875038062191384113734389612523055680102119276079640392881338919048590640 038023341683684156898245129757150965365106502979915636847150969351302835204491 914453083063780068981646543448942035706312974883844878625880160228817243031339 968533191342874756954210563721477683946381723770265020274248225416333079701455 009303993352762856316834414746913834500850813935845371448185632231462355706144 805475162387678156151422335775278433347309676145217926997018172914267293396601 254961025761854612453159176214066289134481036949703832545752886406843414036761 905797460036630404587403694338231692664393985908994300262622084781545224496580 779974859633168234424035099786843652652382646052967419618023791760920676258913 292412695916285445468554302857260699690662260191930200739441138013852112389357 257516882951271694266536420346702599081460772212023040255611428620753158136922 769799259163889365445640857953755732332050972221789700992945565141416513065720 131426919361580794819410189988764815068512895875344890818843262531585814518519 273554334501857834006309888713945940232594482233154383873296329025698968291699 596915270788600282041978726480262715212766934616802851688061435109152303767155 014047589895639312931651946471492881568741319215148700113341972043029752826181 012848448991572027206677315919591583844206479427095990242488025317592845758290 017190866819677940556228130573166729289682446351524067005602488432921186328209 799640572455843295471721645076656327963680578013721890386680019638931368605754 413148929293839584834056860396635366347641982222582274405660401028106796333169 078072970153987757023149383914586360347034544135739492880067000854765152823868 240914143560136783428164661342130888851079829109223578552266978000222269440052 395718258449873089404415910616581663742933369471806865536790644820407365679424 320391424489890284525390684733591218944170483568754082173943414973855056012566 818059174120679659833231522827300956580244980153971520357063471876454465232406 773260261095785320858718962318707627821879680357866531959667122335289080278651 656237634056773440784888077692700413675910055035612672986384643627854693012813 882111972497495424139343085130101443023850961523285248822030826414477970868165 428144396120426663333897491680574524051367980330374550592884510404037824252010 627602688263885354015663394008817732440193277860316493819243687290323583743980 755168296327078141283187670265709298521836881523268636029359890103441250428154 436560520194835470588309655756833731026245749570995667717728972676342618548367 593768824974253450820254749500245224425212459815054941261506166821690525120943 035355300904341019584494455028996238107326034508377374604747161637009877878168 910243818705709180103055328169366544138483814893703687356369785033336644977299 470284358532733489432134846103284151630633191670661148063909658482958084159068 523623896115729699417609023140882513317403949483365416246008478314505577339620 938515938436666255349762999754400525488342688855866377228233312065078938142451 290803586609777882873009280054148554896728724647727171769129684996805261678179 462555300998904517073400893102111916631121783995627814218003554771656392050885 164152655676784976822325464407016855999306650203115773200355281565129988191200 714058350406719050497914943015647178514866567990319577819239747739276749443202 345312051192112728186482244293600960741733366481458384165894398745749008370885 100492401082779067878670165773548612054163260898249507653732991932070870882970 251391656337008562528638749871538208080813903830436691368283014852198463141357 980357320024969232147182660877340598300996067774139001810232446666896001006310 093079156429239004963935056122506886842617124221218773497397286231337006346833 587166643474511569233019402346730747483524057794495140390273769134758207790879 731247534536933886049400262117333996618523404719351724875711032247265249899450 095161245778521728374550019011324506824775267247925607558620918808428212314590 987386583463159613489695284398894659452779103336196588220904934481637293302938 817513895255232480138238507021301536074410176887236126717357342868977623576165 901534823193807516500545628348412368585932478946160426033727220001551850229844 323022307872960181808046924626132177138255728773589615276296854124329039808021 368578916273011209712059600363418203229500113013033772443128555829455240608406 705659660024501072760620143433882532530652493719973171974429511007274704642033 708602779155620010970586683137332782760370600235889754406064730265069471353791 988372334929434831265343477549655125436661715363273320748868121602569823796679 227033030935256019530006994866947372101392640902903153411719000150161791628503 963949547431553097127566597623507943665827912946659087388736264595215950048525 191588542402800339751339800991239678133136984103142894034892321893272642494014 607465054248897377362841934231802177359519799007282546887203479651524103115661 846296024585981512380366683506038071537328205836957963199111301684583527326497 773179069705194603036195041155418287550901177380870238808341381095879408748590 088388852591075239080940650095523380424345664177419042061868149826496269861943 244615487229449132033048912129156981660568041098002384872998012117867641296959 151688176092480281011317372526260047658982797911222742203026138800062358642542 480355155061577619932536646918101876289067923800217779666349185198068809787578 051138869464604824534751990688359098587087809428524886940595755644145180442877 445757387580035671993954228567315514551013650705555527918241221147656506282634 803271307303281754991648031818893562812818541729268642985933594227793621213458 307813480775233019084943429696182915119831524947322951871019473946731715846140 091988518598025011980250670169589934823504054360551873242976916649260372089279 098989570979643567213144323110651217512328556421008235823432691461737920554473 495138877184103538962289500541717192343973384000015012047500649530520691756996 705596501898911255445652923373862788026245065060635322199304324943596232321813 492607561563214572890024187071596383541577104080890709896847955130779476989599 756870901872487773670869244025896964115104609063871717733825110113224320576092 506338774852009213046516976930771377308583764785926933757696495327321838551344 858608706045115963862445508750575316607858287881706903771657119998710469853589 466931533275151784358737333057571462315087057816907683167182278780144575263684 903843925685383923211502729010716760228894246853007286907100967284633632046575 793752523889080208723725478049045338543595841500155571743823815639948447027271 239465795812293838281297551709530030375728989793272159839645629730531991077825 279305277552684281789000338645955550450984690356238235475384685849919252640050 078687482484744326202050308778540026361405373301677868445918470378329540808816 735310945649108278634552848889002311631973582933948119206932091602493695994291 296348942182840464315172051997223020398828356244275515756065754423012401752322 697187443954788095753781176036661260510619370772794029416228772836806117290342 500872281725597180468240983815354634102785572954668281637314669637518501296401 711135269068688848048339327068849374853474844173847060959436657320776419937177 432502654000474732264355531814909594810237736672833850526242161911401633349280 197454466077593195770746760004075056940878460852420241340501402549886587760843 892657598776615053731398643047900368367038771701816174512956397043226745235969 064560616433558390797531269717686617719461299799418906221438883804945355055172 635448312562392755559665613123565329689426376603649242494812978124008714875750 625852906809939003704683946304684632498438409977688804874165994879279852300590 551994645310554885631837025791190820333275583292672788127509865096996103946764 519572407197246287300768443504730155771853874991350584372599469704424297412172 188185900131803512676073589431599050342910180665256986077009938872417560444197 409947056735753370267450095725610634712342725849419842481401673487096351614476 790254769404905149332557797955967313767440368144604528402171624574138181568072 548819828779862081259245464564396230340513076160201207560241592393799360651351 738895112114144612523023952366445417224259825948989929498334859662931308935496 755338199763287885483542206322943286202606078595664486914165052798351066608834 518232728398337131240853612722057826784631295179435412793300234514884276211253 482199902485560050365605750444922273070691627810781768572447580935746183327578 603397343637718794818292835815237696750323967333865678180490826616113287903394 765796294315394058535086694678674237223916200517789927478672956254310968690132 737925139436121454930368334707641118801844552997125093621636891902652543509096 929597363409707805091907032789406374734442104411528524998482618789416181333307 881427538931740405178513146740065606416496986698207799003528651729037213380519 450852945317699983309738357197444524384882291005700012105408983794524721523078 325506946853880570976534874157159145591746378784022319971112906442608237475532 478946531226235529798766849993688178828914790098573299994808740356957760731135 377379328264945452259820671820903162572494231760453535704731737528885899480820 061130164584140945947731222563988363172169662924892695026866217527321905042288 583579676834335117282494503845230335827550179892748704068845769547420187503786 565394962495360897770768470033186637213153894946503302155569416979887136429586 984535939583654092371652907950277171219807775411110562176948646251347289770554 862780395981607032696667819822028317437775363430611065444146765395690850275922 644420694716299135111353269641156436179223430374843837362226890095717303408683 100502066520136847489123409870948059971847049246707092168871076980407480574377 555925212946969934962859568161378285404263943922589237974094314451222426346889 315896606096382950089676063037904192811728194070660659524219514089850818037495 322657002667659933655649788554480529392096902344888835114592013451045477636733 294592337475950888088968249766734449316211852287196326279128708815142338008646 893347226865450781372110531305152727510538236647344207746709381642915524593599 156772903142245494763969550183595148472010009572053674319169081309110012830011 683797937738324736406735786519110739535630011669447588937081520439538935644895 912400833166944263298544548220658583841842050906072249142412283254563223595996 865839694091360955625326899228186733664491168670076909547900454170654380009739 245093604750576446153877271569613143596213233479435817833289809986714583338700 869523015195533199498857167568414503151837389484467828739321753587474538916654 556986300707143486467989089434438318278514836521379811634319006956311179772534 985688970805278677565837024824741408250943136414335995986344153065254992123620 947829808259290726009908987997434948045201121028898444069058599792354821589385 077093877795898633671501610832225513477290838822029396541329882400138762737150 776987849082295322087686539848149537458189414586982120947729892617978539305264 201419289087328379922387685933949287922665554713674145742122029839879233112875 997117623119984654519778517661784277516132271636076489284608523770592665835395 483637150856054256037455276027075621070694421206195585189057981850998692188363 200389062408621675505244829480840794302430956375415076626798398101169505327723 741822139646132955764995229742146598662254427205941728482438309462216785614146 178041975756266848065904918318421782192057332318457882343704980032757366580582 187197516627165558194435266203934227307691133095059314595267246688862057642672 062800031244132466523465621052370095161412978921086499141331196820665057476882 775943207605069794986989553377056234944951315966957517180485132238866116078654 755671943029781018228104486277498401336777492875644755261491549324035419771915 507247824525407310138073364122064367763903450812142712236711894317296936272332 489327031013262992510232058541655014477682413912127822460811925587583575346783 612295751607719037331013964965415113453288143152343317920694955496345914866860 857687171169268754458417406859280309062218671537185823675950789203589693501467 331785018568662745650061836103220529307849269951555900828512209403442466197242 875590785397088535940154628067263520987468004633418393373396985405848272030742 223547787976838988581398334639887139902976882979244409024278104653921850329473 527436337848151675035818232373296300806311053013078147888442582813695009632597 320455132363150524024236183895403133311387967741607247894688704149687637641703 056636154577765901109672610165960350785426902421049988968237364570775637932636 675374047725749578210405891682442399996114500224236977689908335192624607676635 734284256773561653988391497968648052705231897881582464691650414623402018852470 538266380884492606684697411817457680553589835911725793988409244094609371400838 776791613797924525305757780825812180475224207176031732023365746317943674042379 328021061415470770787552429505898465302644070860100832585038001800524233876988 710613173579824080421729927055050397785450969459126838741679249909239764770785 249926162400382538848009146757621316463483587977240156644728003089104742321605 793578148893434154754983542689921682206491591258605695962738717299863858356772 112006707472364098636914293644408410549360491191868804869591266630698299709618 618858359938415614606425799731828525112955882623641659702739143991419904628564 725082654199739546291524919236842987134381884255878851498377381604505190996803 019819700484530494747878410786658332988546264647098513152217154149196208453846 749516574705399778698080172535054425916964024265298088647470422528663596917578 195802814845929879484067870339107590329403426094761065567709882735322997223669 764374683637375102724236183974094579446655755950889539728920533438814484291475 639130016839767063598904416675055355512405752891304984826377496491031995858727 290893875375561288167620869137326468342162833146429513843619448759802431552216 881010923707227168292099265376607842421353768156279208089245568815994683250073 163724163176642880213667872728919949613459105584138820302152740488020734962295 536015024191293370805109214508888443919253651267322692694127670525169820717552 838593326146540864441822043457755736257327206131500516972090066271475019038783 618177487904076182114898849691347895604624943261855851982471892512369682939846 590523806923972425175705433415404193350585147325252142270334397769965808650046 745025540416441303824141361887594617895065600030986507946111621217588773994744 190427973470647343033684866322476282618789721049911773184973258747107863204307 642018909583147749495953989917280379690893296511317589931837554541949160202051 076913932258274064740238356448102978213419195122452796319082771922262186682944 779305153003034016735612452977091023767608348458456321810458152254958717602779 576010618045920501342378416734889572817356605845872749660457844523358721207164 584423090497801779292422903243254315506455264703537881069195762146668979497991 071290625891291210448747078546767078312705687222135520877924817141038506194617 375456620270590983798553709146402739176043133941812582218367093637033023214343 |
|