Home
  By Author [ A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z |  Other Symbols ]
  By Title [ A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z |  Other Symbols ]
  By Language
all Classics books content using ISYS

Download this book: [ ASCII | HTML | PDF ]

Look for this book on Amazon


We have new books nearly every day.
If you would like a news letter once a week or once a month
fill out this form and we will give you a summary of the books for that week or month by email.

´╗┐Title: Catalan's Constant to 1,500,000 Places
Author: Thomas Papanikolaou, - To be updated
Language: 
As this book started as an ASCII text book there are no pictures available.
Copyright Status: Not copyrighted in the United States. If you live elsewhere check the laws of your country before downloading this ebook. See comments about copyright issues at end of book.

*** Start of this Doctrine Publishing Corporation Digital Book "Catalan's Constant to 1,500,000 Places" ***

This book is indexed by ISYS Web Indexing system to allow the reader find any word or number within the document.



See also: Catalan's Constant [Ramanujan's] PG#682



The algorithm used is the one presented
by Greg Fee on ISSAC '90 (using only integer arithmetic in the main loop).
Again, I have verified the previous 1000100-digit value using
LiDIA and text comparison.

Best
Thomas Papanikolaou



Catalan constant to 1500000 digits computed on October 26, 1996
by using a Sun Sparc20 in 7 day 7 hour 14 min 52 sec 71 hsec
The algorithm used is the standard series for Catalan, accelerated
by an Euler transform as shown by

Greg Fee, ACM 1990, Proceedings of the ISAAC conference, 1990, p. 157

The algorithm was implemented using the LiDIA library for computational number
theory and it will be part of the multiprecision floating-point arithmetic of
the package in release 1.4.  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



Here is the output of the program:

Calculating Catalan's constant to 1500000 decimals

Time required: 7 day 7 hour 14 min 52 sec 71 hsec

Catalan =
.91596559417721901505460351493238411077414937428167213426649811962176301977625\
476947935651292611510624857442261919619957903589880332585905943159473748115840\
699533202877331946051903872747816408786590902470648415216300022872764094238825\
995774150881639747025248201156070764488380787337048990086477511322599713434074\
854075532307685653357680958352602193823239508007206803557610482357339423191498\
298361899770690364041808621794110191753274314997823397610551224779530324875371\
878665828082360570225594194818097535097113157126158042427236364398500173828759\
779765306837009298087388749561089365977194096872684444166804621624339864838916\
280448281506273022742073884311722182721904722558705319086857354234985394983099\
191159673884645086151524996242370437451777372351775440708538464401321748392999\
947572446199754961975870640074748707014909376788730458699798606448749746438720\
623851371239273630499850353922392878797906336440323547845358519277777872709060\
830319943013323167124761587097924554791190921262018548039639342434956537596739\
494354730014385180705051250748861328564129344959502298722983162894816461622573\
989476231819542006607188142759497559958983637303767533853381354503127681724011\
814072153468831683568168639327293677586673925839540618033387830687064901433486\
017298106992179956530958187157911553956036689036990493966753843775810493189955\
385516262196253316804016273752130120940604538795076053827123197467900882369178\
849432724934657607490543874819526813074437046294635892810276531705076547974494\
958576871611171786662336847409949385541321093755281815525881591502228244454441\
718609946588151766496078223678970519269711312571375454370124329673057246845015\
819313016087766215650957554679666786617082347682558133518681937745650014565261\
704096074688953930234791980600084245562175108423471736387879369577878440933792\
219894575340961647424554622478788002922914803690711527079554550541478268849818\
524600581446651786814231541148785540996651673853972761469701690439151149008933\
703553406726493519631695547672115077723159004483382605161163834308651397972251\
019297672397405110395264569242978642124240375189267872960271773378738379978326\
676208611952067912151263821192523294040692059943864274693215338856671173308271\
424083326592032607531659280423102309973584003959403426322276880701186819617678\
090563158159784537637578356373590277164883131028876937950535073208018075810223\
823080317625043294247222683912297129553513551043147618866554743676921841201887\
716179922856205635220547032006918086880661211742040609924123487605154068202262\
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\
639778965079999319224129248663203389222365540819532644839797575949151857034775\
044546185777876103963293955557750384646807705796850862887375282040109715731785\
190761404166685464281760960135414434595601334711210326938725543257283532175823\
065943442568106231028977477248573464658054726304321446470210656661263475053647\
604489814670377711214734271037698560088679999157529136427692976957661119263284\
248519749851452215507533932658534365762197889016193662784383032871638457129936\
478997396081558523211904738179084190869667985240258361536997734246920916930256\
078100403896671546316362858452125812870378600570034913619947525018040204234723\
476500468834513486561705933585109808217587395840926067400737460788847776653643\
742026318783123906701611339094514258491546244331702484723783410427679022405032\
234045702090758231892952817620592088263509208737732741899079118604576914388051\
621554280263669755898985052881124662231154776319912218174035752105949831386442\
931236755290677233355981279709716105622912829906947211985414467491095256110619\
361626779529061695300044769161076339015779161232721841678560987017812889443078\
364790943915045382674746788890038777246306425128619171751382054056345066285555\
475695017541797952343110773267462785418170921216287817330281981194170923707591\
940596236730434794830837860815396542642437013470731210257357802035208854989534\
277362165835571513705604254279311800464877381056520327785426993345561033537887\
910898361628061362678629262787352983604028628051676895847370571118953303748279\
315628814282777899324735839471277268694127667796650046344903357160553331136190\
847961749192476212724239587350956984209866910784596133897640042192459885795246\
069166869284767283119860190245511600186616942735899638421638118741124910982381\
200520402902690503005998538457820356756740481328771155933455031108565520970066\
567668313341951280186212042836172145559076969742626080317418584858623437697225\
912330414353265309901764864707069698459837878440394960078935571300401621712551\
336323878354356547950317939209480494946353432550081779238462254841269334416350\
171746442990204097631079371236896180765791790995149221095209884224067420838827\
494194882031201047601728345673154883530937314441195311321991262174337119175077\
457196838733469553045909226036150185278468447406648746077570810713059177171078\
884323680578959466579106754473762043149020434119554995437629111491851853946183\
566096512638920608788908909816003765410537748195032133444884406689985932958155\
830460395310250009620798884579808687965918819860184283833772989010770943845699\
867519326730018307470402328822372400199703621412921278410490655771601627556786\
928985336235517343376949597384062710072864933668244363314622547420647027242805\
002716464062170782392444448562454042163006289730216933371130185515180607917753\
167788478727918932102343309794698878357939071545176410033800957982403627556793\
851380803975786985072442104231504089706640429601492069912655601073008005399490\
518105162506488879432714265487342407131974507986039827188936540682968267736938\
926125689257255971113406861657813501178866989593182683818657569464794818954870\
665535853955206108850738031397019573962943426987597074993579651522952916481547\
464948035412868817145324349552647535687598532389926320011935791837136738972784\
642370685314456975634719379754612931401169619077202473757679423597963248557258\
898186532126945217190172358501873234096961772855976919883709569647239319088801\
819672691442108556759581537888587037942145701829420036181073713563598251989476\
868559632857647970063050828682700841227566071265421075793840688298723468352504\
225512156533291170400168300339668990991480419972443523685957214038462361493544\
533602807681224567776582482082340839877283438047624053015579773062847993763200\
365244822898253206171816356704034043851536853425384806820482785073767248029710\
506029952606478349847955695994451785537277483580407967341208762316398056771623\
756197893425429370840931401464259776496458876991743626543561248140201901127674\
767160153937028416630050914407433647694274983568396582242462172043341442033532\
674150916120200266599244472473977228814165600385779620051016504185718238560696\
216858990602985948528807341749079129843252435715643083293124556411564943006365\
748026149582340780971663469996336761861828629328909345927669499743369655657112\
687717233294152943199775291048528731156837441092521763932571334001035592507637\
392218520618551667462979441896542651998343611543173582254556021882573270559988\
279700141679311885457042174330373153980160217391428870201987067870219668135872\
498822599656576451980128763996816372103276901522853739229066564870818928629888\
595205748213676831951959889705265726773672843140899135876693908150638646352123\
763948276956117780705900285031042154266742496147727245251699476447415411368836\
965641289352117457868223380911817247049889298362036356877449506166165329966507\
563871098166464828756763431970601376233666018403299955537495117434232915997659\
497832807397859893345583328753502052798414730140344179842852266854908625968245\
017749766380423543575682822518878676261688731090130439461171842243304682350444\
091676222989515669991303657112247491689458654917052516429488378742277919204015\
890699732487002711493763534654184071627509903984326154457554336674071197188541\
334568508263772696524866068939199014501939222966675430387033314289314482880074\
964622400832969643694469404575452248257321021615372741602886400459277618244506\
301227048999981106815667977602755751902131331143938185497715553197477058501250\
950717071302130146228062614316383774210616229675528915775988704690141761907947\
782517468264585438672586671980857941627767656453940301820060668903292847177255\
281211453595124133308612496893634282847898585492153640242630171358723674542717\
403896655468013501730890318142960342850754099412773656709092917628130500486111\
523081036167059145179515246363128052390854986394921502326223812056302994635261\
082026886179383272966699782982587657773134623318201978879691479382308982260797\
402346121301497427714932125200091320830841984749398058909636075962435208755634\
462248971391525136475083154009032859183680851182396097555849842207021608499703\
568348575735151595442085727952022283209225336512993355829937558984320579362266\
295722378006260044033277938176662560159651355636529333458872251389829321247988\
567134957390678679652991464356334076906200433381330512614684091280059554298603\
796017501363298447379901747415385132861670372622281576399946222066558807151557\
293721985163979837439937460069806771232028765306965502716704143551527033009436\
145001269490442632434752033920660834511345099789363967174581140643991814075767\
758419441008530543803760273680997839117161682331312338217738196094264930163931\
799619171561714191446945790515161354498848590095530920114920886723347391818125\
806405868196155705215651644292230373003288797692131225618341129177401377507400\
053257345535985867601601796283780434115759372549894737119117448686823668754218\
588730316767960563183987888606164575881625188808162284226005651751926477623984\
072871597584957432330437065332399347432001290700215914338242985864532416532656\
042476648734525356558639658561477848139426139412352362903068614966141774680005\
854262816774611523467214097301142008802139312275529757166768345278233512062942\
281058862196834452856651876132498538363077568673363523912487668463251421482016\
319196162935343329006717362930399896488711279701886295459502791748314324898455\
131652766845933766233422110540157011094814148075296984974520420837222521178224\
772649957486051756012940691994228933777841159436711270225135495831100793898239\
471334198494134711184566348284220537639824290145045948538877431254083349388161\
159415942774129842214619989849320193490634683814618066062525909180246956123840\
128920388245794409716514576034936555108878880152730415033257391797821883488119\
864029136507892613995565017877543120104441271619158714943788050533061794130367\
434414420435097308374170671837686518037272142293018553285064999555323492172223\
221355947156018436756632916758044867432531354277969784891126868975097010704863\
833847645378663702323542093726317147125648691095731842709713883463611501094806\
353146320305998396224603513370417217230600106210664479800918564168980157969819\
555270256096684431719633254204048704276171322500765058468483244104573538169961\
591574788947019410412783871755847007065333929714762524702986600198760477760884\
641371052627410104724855091923494021807711153256840873074553643207626175231651\
382052710006934803079202584079984314188515802412507224323267976634268038163129\
388855070268985153548765665378056805889104614982481548382342942737241665423439\
262749012773989821549652260729634134115211258015697702052682249787944155685951\
645195440185894237821651312821613206538657334680092392144752766016626898068087\
555547510546727534224038627624970263653643447704977604027210562457259541059273\
099373428627875919002163362874832786553597532019452005717063839308987172497171\
166168902391402244688942955098467134188887122501131035170612762362969009298655\
161242453544737412724766254799149094995503679309934077543523580698964869742894\
617397971707536398647511049597728584625879083328289247099816112827711041866998\
621443412767995783950143047620520575298800766296715405761726262673862253443027\
406003166064586295135990781691535661900205309534995410778777558067131440629437\
144470156331005863872300647909174603863412355471279260979394351149342629260748\
121765301482255330974161868740423700088073638670259077260155698738329312756924\
511047463717631604675859248583895064261162278194752654307375213816656889627099\
418051981991366278238262838500160457361030853799044315288566723495453178750829\
389129600676223523911281891996066423859201588039170139565325212207330624606982\
241524456490976582616594631159879796945064564598443795032424904715628047831465\
229836577619996692855863193025482201196153356506269465782578724671391880415697\
262200296400649486949014107366467849703950347073766687145385386424313777086053\
912770413852606853060253692515576219767225492014222694168812790566007016454473\
464257238046183954900796180646696487202088031116827237007958824231665613158916\
894766690562226341085405247666496410503012257532731719089775336036289855441439\
339931148204806386691600511250947963648305346779451560969567834697100232182151\
594295778057385032478763144440003385283708028842202115904722882080105525416512\
554500720335731323912720752646810750844764373847390386441110388758025091710264\
037377562446315254144703825313612098019748585377583878271144931096211543611649\
294943989888968778061098552644580124954304715229715226254737728297733191923966\
593688068083626393808527418661479884204111268506970179598193713595183032346845\
916012498867500321264120444043087209089676607174511447570922861672752413249772\
498556407524044943557922786355489746828435918636733385467300827679736729958999\
848404364603939198423092631251704606036906428675435063996511433005514471242068\
464413687718570050864371329418962773259814718234994223736203258065116762866861\
431728821856439745471613912918729345596444640988074359986131229173779946013733\
007511737195842374037165478613509994646818436000528670243294777697346482293004\
768338745714103869177479814876841213281544471596311894448032148331953684099525\
603810484397969302116709870688838372369718243976113084945995446251234794230455\
918653914439888754848386539755853323184744998841573101375867930558805697370423\
022074925097985873916191720439174080960034450082500842783314919473005564480136\
870634285431922860309866237791419847279734223674680042945521301590144862564923\
015193293332785392307191182413042586898763744303783885453210251717737371245345\
160005446951635860136722636237277455327760142759125795665696194323689075649468\
605307132494687025818583862724476808841231089613012504539219041040282341016537\
686923862281792720492230557584917748119058900718838385197355514905141901096871\
597979917863719765305745262810016084484733536968256714579149909431046369469125\
593338584671970519617695475768431465714876626700038442753988035469958594156477\
573960686363669130960758251502268341890122070131912292732542800366442000786621\
154981543342215045618441168983265967298970237823142360903758253247712585715657\
219891574964607893203492969615933140143085905300533997757826625363717312764947\
709313828305128121009637088505814421025618321062813361435047072979127561761250\
216458498865209235963930068358155523449316844005850191568828014198093965539397\
088997192411001850788101909067673700487835790088685216285899876735082819802881\
519214780888574930504860069020490249412214453188733734914986198052977015246274\
352007595499034650278268603012604064104448925220966239951062240592755886786003\
973063514298516554395983782888953790428690508899375079370783077223970758075704\
126367747083721681916506217568956747930814929409655405043357540558267621379167\
638312060423412075372477743305746228148194632056077756947826297786774229700847\
072964928009525930337157302999370821922646029578196576212639745385044675021518\
659096609709584060045927023093152401114485305678848785593576667598251235099774\
895259982988405412879500841531784351295916126589084932694083197951650264084170\
252495321958916359623825759753845093257731499664989266181385046618199085835676\
316396087035807089652338148397648966059361682203646120843012257860718746729873\
178659937954140031914979123303159453757811606362784901124899282365177714980379\
094502526178602807965557904129310697065096447299215453257256418029324463743394\
645443218322920139170896390281172538897071005217490520076200218536117478360770\
287048221358003897206148026004965046825254961643461208644139742487907170309018\
795262868156203020869615117483078142416509199147614616581339451980485614712597\
831089769557523234498989584465013863479386591792116716767595829363940608914579\
246095984413240514648584916837135770382797047501742874393503681532562388522408\
688679022323253414632768211952530577370342339185989147169501444600372639585457\
181962230264273735107080456503096991528224848575465385722565087151160678288796\
276156729466039243451121773146144429160344908961086002399027467426982754758568\
148600047026506319966409835047578164283823668829440667312502264446616813809644\
421982744027094900978549373228118355539735747353783394463359823885003895148246\
014134577784727754023476259605599015596490171648541535677046475017399886948022\
166539997934209249081956026168921586931411300286548054193087179005506186660800\
273876065848488665319377492677680402739779415889678050531466530035830785143144\
188897997570551588334634226516229868969103721754899770340258430725734167366320\
062988294364404742141612190636805191272835923188187801337667480775808884536393\
177094930612860529017497448140631993039902159803818838136109390617743999614035\
099497706052561871218466922159508166965295496721958434467485815728624596935400\
743234528355726531290329812318509832255014091734804007717305212397312303819035\
260277018054519982431238987887053283212730191016104103139154547470649501258899\
621806139454620094426303422031988490509531446238608280454454867946717228691407\
774632726580008603896856512936596450743828852733978677802036017440249133066778\
449721029349673428698616963644023763184529399203036674668087927751256436908182\
406680350797066874071130098716755961854448957646794159367675998599525260875654\
641280580595990143865285822639916964606799751230282475421877654403017991649565\
558519790674336277422143439333732294258536548388204392160675818175587845963232\
105406802253544038147289907803402449477798529836969266488897933486973104744483\
651264724582143485218895068338852201600954647006021463651450353754190307036400\
489400417222326733208091890838382910221832585196596259450043740326246097537501\
373580726141832727217863803486570053551750418441517551848977033185496560477354\
126005784330263024375209658172274827853277226033509045067594055309131475475623\
279964591439542286101674902122222204351913838227257083068818787260693034860025\
854066033688122151410300046232891260572519913339909972626830187304066988255629\
248321473592013519172866103231634642514167165855456972539298984174084293643486\
607437100810215043320795852177798014372934620934241982269929703998050771058530\
465759630232163398341829621750854820100384978714890239730019781880066958283156\
820039684715638366563593456946384501710522813031864753401938359939620357384565\
163709337733518270550713026170610700977978248402496034526944028660333839594492\
535611698445398417598828800089188946506007184986163454058183590541631250457459\
037555161618315291292923675997212493961449728862094587024395020772890096026178\
411681547168911216892075017742348621417636518242273226048554997721878211274816\
428404614562345497299635409324461136275424144201140666414646140455289351990794\
172748861595001968665888933476841954055870921115810688006804522455140425731552\
767150476977455264155223788638910163374177004858354072505685075074496942940617\
773696311953801694970468787820842568223001715176387047139461708892351064545763\
569183362384026440350156534553641881649233252062670423774272994074379080464557\
869531667107205258266637840729090330943096918811702132818275897449491065489509\
786652301434978137539060946945491537802139652934846381546316404908060461853605\
088308773742313252051024723094845227359998566624813920925595618569949579186067\
392557498970100439433310381548532177502046169736740825161347036636054806868787\
458654620565042996082801780425768140842170380966575574972428424222587711358974\
056013030607180882655845291691230597813775915094102528136849189703183655406042\
129451019855070241291368591314175914568839295288273125057050496931384784342790\
613175986237046346083879745281065648399869157964638231042363026442336533151213\
749895600855134211573827578075531813296184255644924532430838894715764188671962\
222904107677268272640874861525753148667016823275643355441843252169829066375357\
181399046342982274398466948676616988642361112910638335174655131721934462148152\
845556364325794056867796569988620784287371347047039342552580903909803292548819\
613659394181626087439767335124008217161403838695929981531003254926728999650777\
621441038413805273792164866146967922209192262407082611014965340333544075990741\
586887587750953471503453940858890015062113220536921924431673947809054657351778\
072745627178282618697514788903271853054663238335592912906242720000677597413917\
560358795659231455839449349956837830949582068088161506109398817638086712464820\
357881293775783674979927199293674676804855849344360038685314863167552907105912\
815396548901455570408128495818314736331949498820950281381688256613170838091850\
112515999904688745831548199406815385271054517397221218601109595731499195740970\
827641107875298763512612816737964585115497365797258710390655648491652123693586\
873181685180681113527108164471311014816609837590794461676999850368471939426580\
359973037237777093054568928558527678665774872908942822587977811386374414645121\
082163785263181773649241434537885662481813986561993244642490500127208409932386\
103837484976469674550030301674021880556996585609953737873259110623493093232921\
697774993734743637997091928453082850036209872245015469289755948597454248150868\
115814357488270988217765501637283475312549333481987149624059515293931865617159\
329171935117539794788845459294090425650761841410336130202306428085481340101980\
586355061145315106716611529605926774681395986611178147014666252546619187865253\
139361415688101893912909152270358676744603595179602608339423434922700396982484\
054328380741028792112079394919784222567074547830174609097003851958726329779711\
185264972971863450057260950477315463306257716461021237469788121229704369633690\
198485067564177744998185839507273390966886970563726731322171094229940010006230\
465359913050364274092125454737087186115802911754417530951294740521609438990678\
808438232670843887243478046656451521655996556872956008233801018473610874240997\
621962914102152772073299111445713504985424544437759694119833653849800615652971\
541743932684413134009444596446173790014143423124103375380388734961332713032822\
549858830377464050126087225320302409235644848873561138765111499354122263467759\
229301454166974786799059483352961730688391607986683619538189043411969853870096\
814943221986984342783040969585004328814161628904582899102670883208884077251587\
721008121196924021857498106741040650669399165496509122564227451978121712523069\
186198015932264730353820654979512923783695879713410622806703563264095617710303\
505163034588842200480419197350975767105184234979225738812868439333247608583033\
455065854989110567160946715692083349182855938934552967947677707465090538080806\
319172265593973676441459106342459152284734923831818962732351298900928271542945\
723363821024973321397961601490067725417724953120474379687288102477112967413948\
129939195666650381133986413273460797531866278191567087260342492710650212010365\
254616177087514375956225905162633669674747151294693942935428600734502326858368\
851262432123731177282285498177573145194332169893219187442279213837742086404242\
143195851107090239367571130373784747579938643648431564952300112792516361946981\
981764562919833749080976558135260631226622681960542262532664959735190787831177\
199122309945382331692605416913382097068453358746170534374543161224792669354995\
145401700985690566160422179367789879595404920484872148521401414481179090993402\
180260012485304287880233350536516783401956080869996435159215952821175903851427\
263757299087782210403556352583588861246545439518279463464680287102463107252117\
640612546570389515746704202044460543029762739217135418216283258986861744855618\
272769288248396895714047328144875432320562052796090492807566268554995582118373\
362399419673429483937986731333330508401230065997076488523706474330595234066106\
746162719828771794363489299617569356091274417948558680356804555945781634206653\
203032891572385824535847601881457630329396363527085632666520458723230320764071\
432305467477839229771231131418089765382739288242077541911612142365818316975577\
936535694122124964236776191946876255492141140141427195840570256976532801079139\
021785540564123994874830245385797225002098273235632656671287998166352416628315\
508158178238070234605135186911876279276726867927327560105778374157155206150341\
677353770780409688768704787467081632276534653394448470880474858704052560710340\
348270429315217712757325042620528767117959416322275153636003151636596889083693\
912951204849529280787533869992807099267486062622229731134213187717139424956764\
949787005408107443791603923675852378245421522476597279408429483873400333393444\
908069902187646326884952263256954417720544629775940641251817995720062162798876\
035535078071306940697213950518663464886260434862541326449572342567977261694411\
520753432916048376871485624892656880388464109981652944779457528917435459079281\
737054330347660168266782872906617312619847427588478637636142114766667343573667\
748502546820305920471876123446507479091448936085793378187792699102209909468132\
420439551877023842810679848594830446547794975983095738837122099242108582099391\
259311618169305552534510439400727844248528541177641577044568704717956774391304\
614977757724438263195194997554528642969847687610006284717612991653279674620737\
100059045792201617054581820721379285245591730675962493786180961667666034275074\
596137289702979700307132669612027091422029037468000751582780538209301434429484\
397331286845034470877217060008140983864022275338206768951288662544567133279419\
008546925339254589443633397157791908908054306509901805967890931142118388775108\
721426852665228354933976865146896793178904949583013375233414280981194646252728\
498615989438788530104832490709523724353689291379862936936814828949724756039435\
694968108197060995705848006231088462514444063187363760394166324840098124985207\
020457506856659924645949332514417122588259951299888283394460192064932914344920\
264319948805144534176588013910701116528824797468260549943263520680414836566302\
033367698160332457240802293920886346864705851253678118323037999242047307004998\
375786889285738744236077764699924058608359285285260791217098735447240284740298\
891798847531697259058489734830551655771210270990382129856354114717169207457539\
896103933271647308958838056114164194264829747627615130159919626441278499476749\
019373217508815948313155873239053854352970467317567979849399619163429333860235\
198312428940354771584566606061353257600100670357332999384447660582409060473059\
506507964055363193489697919229391699095966179647374880159373006569658302392142\
265819985169418930713667638634703337232300069690839409706887792042556719308376\
556834097478198387542835163697959216076425789322346487491712363577652381718405\
525412787953772407825707544386878548574241017618671663597032946379003145774195\
449626098108034612560996193622909497789267140307554138312349541810268623538683\
053700963235149744843976743760423925976033443319997152937962417985485676062196\
888425666166707155660611921380084341244022366934599675926010601467852433785153\
839479486120562153460950947966581731471364787881569424578610890101585821010569\
041688325311437469748507051979129964699928916943108191765386518781659552196006\
637106522073570016317809669925804087515169154964843882369891540681427810273141\
044684714103737793183627047063968940038476690021825068444931098052216728224154\
875022249475221947658007470730844998332948712737624333821881307700044412181241\
533641194176840494707074231975155470973039699059674203972516587670937290244680\
523696129007735073701126014924927833284231301439425839618172103678498856667239\
433115426755710221496872791690026480879989167146971314287753511412051505822735\
580068016343692833727335603053527506532843530573512467291247848280598959239996\
709826146126017105567895181942400154153994610187014588546942768709636783307474\
884562752349838633277898647629629847676152485713029793683639183878375191300835\
489186716236511015806163064505330537754494112526461226333959961308217351953352\
292443804493191234822460610180743685425734757765187562426901114565160068100042\
579537605703096185102364396787873764754402165731859821945648346494960139327204\
809206714253984233200729471159669974083711337083407941250605302988204996548745\
148860229736439876814270069119570116396956137643814235219537724371977841307580\
084052864417064232861788938439020060451629078737427812138882304756475732481233\
800374061298550150095107627922511117817068067028905836378785699833820407526410\
792297686077469554714867775846693025288512747375219192666894167060467725250381\
782447665736751220514641804746492119558706360167776367954149650681511906990096\
263255429676752876606521942175443688822932038106910057626114388781188784792361\
977208200594051144729858708477636552435884570138926302217596587479241613331684\
856108570652509114984858377993110906011593468045224202511248664206758291697699\
535695763866204092569628631050420033033164676786824645244057360118242598721483\
139417618310144378634447797633324965805834432736162724800527666615060649941099\
823859313582145138453972443518756597168974029981001274519074744225445746637673\
866848768244018738872097562748506370689740990176242063253602185204002638046051\
612242657492572673979994422556567660216687230567603035980917341264893059161177\
712790513517163729987471580393010638379386239711795096906791381601066072624657\
434863261483171956033967773183681178313548273890859157076880678395252473176630\
277222412391574766236932953715545086130716465419905137494453938047732858396215\
082540697804152791388734789334521219068870746856399778335969426829613477947974\
966019946268369310736995252189116262986241969264005809213899639623121409979380\
887413011156557854095673783920408731965690044203696137166444584663273893829838\
550296937636226159328021707731445685028316383374533726975576622832272622058463\
680125938743330004652022807744511100662073337657005905154122288269933369412760\
680543543588707055157402832987602912029656439166487156156752976622898952934004\
079950551053909892425734194380438460376897641633245828371518632601626010050252\
519977173186374977968033278811870750700292114870829854509021655600928184847936\
956603007886451534789520175178101047594765037355763785158240955731618776117416\
361072602586797645385807060145495225571341561980928489707206542236916667420273\
778991794810702663059553969123556600315352255489356524791810603114975269074886\
096880141763471674656289150513454934683579989363973470357478412759805253360603\
670190084567423612780410325910816039314792288439697880399769833269550600745168\
425705824280734355972109689339940639606322307129497747734729150988076010655779\
634842227690869903301974341893919564763141194726581331996374277533614825145189\
954602197288813278688410089569158815401493489648621299387503636059918030632988\
153872021435098484514714925697247257932001066294782023405589195115050659228876\
685868060633822558687338872616159487364137246063234328131917353778616899527976\
771981448651783881084868688932486625356019249693039348226564520691097238501753\
365662973633360631107213763076824249423244493744911671687113824368643097986206\
233659072123438531242345551397880286233155225177163758392272473158962037419937\
946349285087833260388107622922368186377128655296422372282395580587095088788770\
972575705390189763993252946084534050244867299021613582753275217874396760556250\
395482261908991763006944474691226059045512183227507272172471945689164531524635\
817500288597953868484620905598246029583034939605404721126277608034967888616167\
985499162274690394530618670572206016301256268893941619641259960103124613001185\
807290337789948853159261046298043488620457527171436195843026318361208202572435\
927432277649438280887083890379215680450494963647750759667666487726456201709410\
349025569005686624386383995844023216764601619951702801108755035963088390159637\
764721271801521189886565083358146012156281761797451412771306580724161231829519\
462144037289904475380730571548149414357075888377337716143960782306089561921447\
555365449211365361079912866280159179062688786151662220389674797266173497715270\
048189873877279553921030017749288860772599412842614865588650620074256753720597\
367216379443962351769381270251811847614546848211537289892807132899147500154886\
896253989204819134908728457840793100919211738588450326535622744671540333934054\
091193863592328884775339373640168298937665598145563602280811864875467776718149\
060681860967317088889286313654045411448711055130053289881682005125656323226826\
115097873076683585328014014460192147983063910256244853810817163290710277396863\
568466286983077729131190583696605288820526283360440286801014278947970841914390\
946113503246086619188386810559719693691329124649795929494703205379960021104460\
592893665115036303876631476911653953290164841780140682003278138498893290998320\
866600328747170733559885401491051439904085740434592230147071315666004176826896\
860686667963841970098935149715922760923389506402297997583010025586336188859158\
003697332822685559435998064777773826735242050001461317979705678710352794589027\
383578231989697932419096243416559959269549207087306100003217626749455350184331\
748151766629478080740691747339548716586978061169602259606857615127323719575426\
585796662095330410024513495044378068487618838297170756023955796452964376414047\
065535436833064249075200826943112929223293317555832948018113754542814571043875\
480879081195882549619584811795141554136767703017489057238153174733883212047125\
962098086353506906277689647335977163977004812585240043678769503308004339232562\
531421483300657768630899786815614871885314226551478825364120518677291417590697\
965314532643535940927472368609428782290941142622489219224159097330246458403461\
837583612231322098917215609267016458432937779979466513944252012597279542024118\
148739261293670361539300397340232940581172751670661460128294768745844399901227\
185206999888518288716134952599335457917898998165539664133680562497876532586133\
089494670275654787627730984349667488822097167051971151262078834729968283234981\
669756672732204954697326365978155137855258690302273762139348576103388111646339\
201086763047113182156063569287770991289980304455883631849795268345898080229287\
177327838501688325093195158712877052465844986467497191170199117297214892071796\
378742328968183330253974408425261187781532746653700618869988705426643373940773\
164881218624431174088624868790845771052183459281621194868742779446864404122518\
544199983719592608690311100995359025860026709025737693590847214431838667327868\
378011696750105298600501615470987555662895737516950841816862630308702867853025\
476155102953755534281543490381561554557012290333743719127634772170729533062514\
839600318023012785638584021300166026784416009592157465982269872287205805587423\
507784411317155283016993544712366894742351284549483722501495988443633264240060\
655713380872072901448197635077721137187887384917275443286983443635508620825983\
998709263136992796730912996911326213422208471434950034015150428895211568937669\
220566855395579537169525911295690643291366027166873348764996610100719953803085\
221224573519991927935354938238463404366071976279033367063841400770950262724326\
374215298205514674531589388790086845296530030716375998737898310947339737760701\
566594300586570361623660291322810457331115240706589791067920240131072134740017\
551100853021802657173412188944835670450486242505469388992976484539265158996021\
332744959320830153710886826871345185824330865325169537937792203463769884030977\
720801952029527355451241049648674749792544944786680666590384125046936611861037\
259793470379074909313893276646829560669336256308268100641562990940901666029375\
777474439960136735305008843678386412107262109097338161412560835641578869246821\
556703678428276565412363467215178239336493894059453330127347194089881524027724\
513846405950699794391276227801835314678445305868505182736734145004792237949597\
274657215087533395141850972123766667943425806829637637140875880176730884905038\
046201733339112078514167365684090135367010798504590182189463571664651272020914\
913145996049596101992065899041739342506928907753224764820080431945074185076493\
807833783558770457911284271524633095298698702222866409410905702178437139508737\
456340556518556487905845606044003037586715038059750787537100214966604084070169\
340575849129626231382547381998730262719308694124961977130046406802433431376053\
319410524774204321260102803079206143185391903307352498293576082729842773441584\
020208986707801404887795177912807065224015325783105651527145027747026593254829\
214867835502571859734834226221689739607289939016016514995174571252488768103481\
494757564563415014182220118792103667969882786954611603805357243834255502456526\
701088379459833067171141261304004523446352346907553337471617035642713177278802\
914991605789442659083154378497936839366501435392738645007013518613074094293209\
259128186624892024277159677719553975065248254957624880452217301002813915461176\
990706878904411484136046838144406662164945124273146803936608162215612917569358\
379324759666298382010331415404147092887856157848996612301499075269149046829726\
530645665478513630481145497101789319063056428223157210347128757103803872660257\
023306162440318854053827576545377591520893560269934830508993795581998815136260\
975623621317173430381661401994488170720108756334949507620985110066437359035115\
721765742082027683613292542664841723235654212073894587821471940086973337322950\
461882837985564037821636213415936954710179324934807487607610381138750066714373\
977335990905092935460000958115676045436836060545224781856683591046415937264551\
273356112038422925277543328726163547249197538314763639341175083181740839312471\
314826029101037993578652559456587890962468440776179646879593410503908304453753\
923427127723961712709534934479743089440864235269931578345270258353382690448858\
798684812812065807412462157992252998562232130229548791006286898700416498487670\
952872906628627981767850808774008636814899381168873506768234674818722416862885\
314220017307307480516078681647910058194254005772539281772367180733719077273308\
514462421359826241642810924523166088595860614221561682833960553826581643951316\
184706546941759841712585385204872526009553695241907608675485493063767204677117\
500521902246518766545982789857586263639714206460055448170763917831741405765741\
652536600432254889471372287206258953530670245495286217184477894060842087058278\
123003774981661101527883198293319605616466996584549306953972271269902299481066\
349866667711541441417642110056742259055973859489399956416877027403686844843878\
331160475603586333044810395367908436009255398182405958893732955789850646085796\
615356602079265088799225882476951161563328151312060155958757652236229610314043\
737655039032110056785575521022544264384326095780364164951236042764806188236160\
890825160752083949890179981889996999361787560495806984007920321165173700520872\
711392252986057538244781550431892600179113661700756891386662229086716434365066\
138685539141848869670045603649745465121573191228685559238395660555034647129502\
272973429272324828820561843249322610566452155667380755254012807217144473403239\
753675637808509678312610307280681270600126456421425495339867496544294992573736\
675057720340242200111889969391862722662472985723811522508076083907468859247062\
618438713051979278966220573619236235884414040374903378967419651424850609019736\
593447674433408886157827291196637314387602556825872640040360108127626486554739\
771754647752945923251286783755693999281277093797872143256722393098775753320877\
814706366224167994532459489604439278547717546494740527401757690307523818712770\
802401258016213611190693700924477698311982720672040301495635719361673563646044\
470733725465954798413877688251653402283558231113076048674143215504485248425995\
733923936500852772757675171790641672968398130365942376812678819585258771388709\
006706147148564361883053396196148931037899224824413660079163884204492064977616\
153309853138057636688074273427947239602728505304485873507046172491376072401615\
512298236587407537029361423362135584469525508098506414998243676892703264122397\
777780797364982762651764442756998664191149250033467033383902975022281574290289\
996084610599820200461855658250325572322081492640624150420681556810385606292974\
667612314900454434631163816019911788555033327887961966956313765326499460741004\
515599393220921877619685374338982579392523232381906272644415698794056346700197\
147309006066975747110891841370040772065018838648648952378725516827825097137202\
843454635845720745288715893500586521416064657271802755829475994377284413622402\
278255823297224719731201808049285217820696007950178566097497563938879900233798\
539886083265103979019521224174857355499840211941288220268393130665866693078492\
677834837518281655693589893157735607017101765694142118973139921424274158208798\
586671013991982210373016321195660611248325745529668638603284667257122544340115\
662044484068544925938732184958317660309552318948496447745205582316975956975021\
084605232853767422808843629081395938137059908999602252711688580520508066861061\
705767663061772892595512331877182166187437579907803609662912477756180722701905\
756176572618023780854102874362909856233915153585852097624343007128852963818965\
639827836888066119086253556646502579672717215977941584606920731328957697707517\
150163970841340277646051273597061385137570395371793307148031721327772102281559\
903489984161157363603608374555932386954895383975547376650885566839720304336244\
609887286598535584273929754184935820519527090894046593942228790679612068765922\
330799831962032094315941357692606711929439001783931100270270040077330829912450\
149098133056561047052644633702930631690915333074299528167295774991185823533685\
797720343876437258084093109871827866756787472166312874765106236107153501937161\
223524771553785523699634331829372557363105922751187700298422502563559713764608\
962368662989976500574163947235212213619381032014021364586718914467252805879704\
389668431341470687622389235831340353998407125405337062901538833352952961187255\
133383966558189121269744800025614585642290512408114242447549724010284903791383\
287173419488968857624795285310528359740109136972237837086854188083909494835049\
343247719269777456765460563302257136585360189963431084375152136644883522440941\
913582693028799161254835482880497180830265294265218900239368047506777804131994\
427952941995122088725010286291022239620975719721701584143907796959140640799272\
677407486878660868363449787190268979288132017387699034115237019907961958602867\
866030983990878036359281774981771468774072554554927946481536187496960682284631\
667799505988206594382818002763337692890214619867056077899763352757223250078047\
394056487785142212550555102922708554728193106518346083720800086440306467280071\
988722019758812309893005257262526100643404715078540248054867352879278107374139\
571292337388081356532684426670940374303254020368346100539388439291132712921246\
285952836081954846833872547593672643648959789430255618287447631617015938420825\
888425260167619480962362451664308307106951912234095018190194807832165714345627\
767096966738229179225407304485223507286134287617999320103157373249657078787521\
866369988475926237688107460983583010027850265885808496784986481497065172670580\
496038018704178331641984765891849002221682912181051305060893117308628480614348\
387448377488887732092249498341763685982037160495321612056275448592711603500740\
976434934697772603881583376336765862230762931090764097477551192765270733578957\
366996596027476805757936363756568548300592337612216027700270903690596541187040\
690153166527707965265052526876565064016647141539746331770128633793945421043370\
822664735242277637590926206610050403013365492337424312386707973326871234702808\
539151223240378478398145963811020307018633948587087464110609810102749002466579\
286329392296944839387897206780219619416052134334996581911389372601922278885758\
225391301722492000485630125353047171193121744779961767064526686182156494316979\
159948053531104152742911366603204636671438152014696982124048373373258291184676\
466798304251190763631178531780947110292141667021524088644942237960736223109753\
718485928903490494928675011080063817726842004226552069312083354005699157227632\
492939402019303535176958406688605738253359345207092516471214487660584108929495\
752093179284962805858168576730229088043689728246504825367268139944333587439763\
647453269976239001063588317251695246739434851079770312911372105124334460161865\
671721422719088978864749087543640532416789825830009882824466336085546004188664\
081531166590198165524257784158354416961724169323664187103581709338971187084336\
498393851210325134707383098204662847156754590985028679575643674721017851679824\
306643591575174059898229276931753354559748984737339398139925897306696098597489\
488853665144385963858318651751306920315502773145088537869292050735387178635980\
868057113022181254772500866252368770780470111248556594478494781258909231661490\
340371790726990266933337788812783504899792389506416656164054879440245333651154\
411004937485882892377934527485680722646601033483055241017915975717332852481902\
596595794645346596144257977875555919404280576800707656538817206374218569319802\
503561806524483484388077133512848655204874193274729654526341426102540899427315\
951170841839803922955031713875852194800929825276388573332382856257019934171367\
455780664108310682825265794242866887803364029343291171640921404985319131182896\
322780843604345327288968658408272005842242493738668276713091655377494074592377\
511234217839194915013715354021270067728077808132373908548094211373925003634094\
232724604024661426699978270951097552299293902958253322606390335401933365900400\
069980698143278579222376125522507787102074011220174831684385210288496303902766\
048022869258935287149331123758696249481636925307663497372321992847203892030977\
632623867942410982150858414833914107028226990487545340632276073712784489734056\
401157397385727863271314368895125021272890178073152521785340683030147611784092\
379488117406246186344148397899253299510955660167236949482375094876933217204858\
969701485145262209059419631450027103437543780503073245185585067387879110954266\
099790423151130593091871850824723107082053166873157084146082023585150018636203\
291422188329458432252744665396269022540833394200920731821222492678009107654832\
853729859534495923237423861940193815231087244207297410782075799185362864902584\
222061770734528805317366417607738165624797803771826896213450459165100825614202\
658664882676169316045362426945142242426608676140691948373858196522616393067930\
452195019024013122301456249141305342170482836276927496492904128598393898746110\
099258105154808013910784925257991806968752921437468460186933360643453706204260\
728292752203903945727121117556575030583937117420572986471255809314325093313251\
124361262716519112738748531665612683606819709481916999729327846331643285042672\
160901062338642820193828205647384097609179282828633497587010684920143528889180\
478946542182968327369312503526226516055027865494849703600578989357217398176999\
252590966171596099346227920654599341629817468007945936043517969522340559728594\
442335197190512426616471527478077799603976186078742589189350829898034841251987\
632995113379968466276941270811283240312633526925461853858939771931788982418195\
413176177792933012073049015667497313361908091299114099755324387040950908355728\
005735613591267363565713986494810889028275278433450379416576809951238584991253\
613869502338102881617031947662179405074394938352962834912957612198871104855521\
931662738172599632946782538175341987884277788742020817600896531417845274848261\
449239222942794975690387187554449354118409454112203588207558547741732689694164\
911056500919821801338908064989748689850968592659634667383445072402451527153784\
317608201541098423019998163832236390429497130534103636530157887279096519038686\
614748425097319503687932472726337566766838507615867828931030058899422788065029\
691310353593494174840007831623320830654786675079987704153875982756361002060933\
425008168693493709118994534434927209897964144784926476996976250332462057211231\
137708422282809498632812832763797686575831341615137109913751757530596429826754\
439547599593930139614912763824555058880880401658107577487181182699040485171933\
814153148518796096700558396924129788611789623797755633851130580333893612643251\
948245838647125874345174939949138915492599421609693023201644524372425531146013\
842366497486305490535582879015977945519534975511256742393531943969245712956423\
629881614980177019648519025497050178654825452523024781082435606436245264917943\
683262828403828969544751991107154531188460305583397508506266100579784434646882\
542242946295507167480132963261228301053325540905093081966740417921503184007730\
303909033395544096091770891194623754314583006934990192087763744222377346800736\
787923855884589873456661703378565822479434249399426148701651033717779301868460\
174891761036264989694426361458050991276515100251071263439524153698324823461072\
830969480586905108801261200137863434917999995455754800087171285354498754623447\
331600158028899317763581967969975192694631295191107127862038091854380328445529\
394811666908137245135134857497713300547446308013630115563124953930044260525943\
830246121103022453600801018148969630461285366370969146452907295745691771172299\
610150250616592306229785803361251766878999103397571662413099449845469455890072\
765611183296981613845571574066165776674401832713275682173464218222500394042435\
390646566877602739303815584856755124431327821743341103236266664826216700768898\
106248850571656248007415189137930735159250946305487552639752101133850810312274\
421142439537119204793496236392549727840919408023171947009340694123388848703800\
584426408018294375789667123481442638968320388148046385997260838557861278040352\
579608736480668324049872823288207755568406313377942161922224473251523398910684\
895847541456007414417507254164734584168150219696628169584695090833914558106338\
237272978126031462299515741791562319718338256224681087604277270136841734428877\
409353987125178792347626024635420721272852848721089678477522433480937846746289\
641264462047035915790598887342852092112643197788349087648692082270039202515655\
995562624160387659950832094566243229512224574888616241963564117019692173576953\
123178814433856669339046803511261567063860629887221400983947025623897617649821\
476488277216818358496832026974968607337586845398327188716335485054870088623011\
730595264582506256775830321981359573036917109489408358819763480081020501292029\
725999686965561043540464232338353434354128363183642900973263308740249909159801\
400727429346522899127789648310148225640311569914914831913948808841539470891516\
384191917864286752752244082836325943554416190807788147784146599876249263327735\
530648114563769293788171655928382242900518742316816512218831609519100407639418\
347929841056562803119363713678702312798320345171265016655456896459142992498956\
288442423268857788721904665021456859250813004141051104055592647127940661545256\
623209237368962032643552276445563312485807181630540079716226042056261110762862\
382999873131796697085431536981437448401580872355642683026531168260590897620512\
237207104385888448258985422648879810038646791401875663940545410835678235568620\
443606049983689249386363499931960780519899209576038644937404603331438978531564\
868250927635178277010584498929460011627871258374795788213397323444505027105884\
126176935345179216219071745608529228919708734541088088303438769579771360358762\
261483176096758782874642607332200695942683039888200950193963319332818309142943\
551771677538113655018681111812933245426930220906480770493858731455726956083133\
408210088752513094919960597089015948077056509216328200140959982891872515339667\
054920344461919596649573012100529183181986181882633349094032696589444355772837\
770753498378264313550806407988113173032255737361788823595045187084478936033443\
983092184264708461644473320390881555244820260203169542631820728575989022715017\
104109248036356445163527076332319732998863749546726653599543651223316434679172\
469185504284716454578096976442871803842635467416509052685014707898053222251386\
637007524388065657147031724529194484308750861856642941970824264428107011049075\
609790949969688394070571586695852583342574573831676473055283614624447930445670\
293742279982328514339347782022783592690785964617490638095604534823639261052301\
148627210184586155729260303440009382646374066966545454364220573170636317848405\
108257674044074656169650823952691125627096001310043996886958513899309189116641\
829317121107386040655271035337399767342811405524432484973683168588640318918047\
315182213172337736351566583159918548897597987834437197033000673966961450805213\
482334231380470027375626634637172120920273213553404443303064844079431917003383\
066163595938111717589475868959950924619248721065118306264056734172041922770253\
530939865541434556748988572063218405582293376135050013581516690958160722641837\
095534192726150506930903709410818318140331738104279966724428844118899546499816\
517675816636812840293951743404510986838662585110677492992678190502223297744305\
328153601651681691424290414735029413450959117152089767683575904972243139493787\
504018429900146764464708641077834770880503071579276171118181876608942818409077\
177804873047238611775214960626270909733023743924180447156737217573827059959875\
646155086161799132421864870985075842198576294864405779474749596410770498230479\
870172972406592548435146800381271812406429361908086399633044665311081374803742\
377536989086807086856794774429516214079523947778891101395206347811033037237295\
815481223002155802813716432026877710700630435057437108787108708958666818757072\
704803637498142343227146108988140675022624076470245223335126191333253810114907\
386015741542012965245374983584001826222353658787777301003139119018559043180251\
336281798752388971348758102553773830185693283402895389753820906256699498925568\
964849482685721388134388305479367385195636378566271199584147152442869528576431\
899515774649954099508969269942106313631972698967875656514172097563051975667102\
184166367297560663162158821865029172797920118347519774567561638492888027900464\
128171902850094207806607663380648795514924012805840090484231526819950029071452\
667762953098382840202091931407587195716846208000069503494849849435363014569786\
753261372145135553503472187458112720404525174554574302184662724348518720567608\
805093779817404920255386167854016846492437048497252481438060875114528249114278\
511093617485373584947592375592728680373830853916819483875776458717421457768250\
389226619820444326857679360168014776597210863813073963339826275665031033591583\
108373580651183623384526852663240224702623892107263110225797562446750888601825\
883747420766809148458348183214036481161988928837343429496873831842567359839201\
648142452728880559226400720871820531426214458955072646505325046112257588160088\
739778891490204990287495503965500006199985601837720407688563914322313781285956\
076599989228783603874100634732959977629068472333446391015822041291008875796006\
336696157039301206789338556707121979739850542647972272936250278043042694753839\
206989389901875722987220036138173487064424454095980245571856695270712533991626\
504152974556374659170070626786934108064091637472263695643395023670831727054436\
023417082580952667620152184228574533797850083969729901385876647420076279832699\
021584780546635771427690080752275272881403017898646903099728583788619803612091\
358438236075147450674893751552461594760415772361772496427395652007799900610470\
145767989923188826056157425438934184193047205131318168890384481796044816426949\
166428578719531427894705924363291094746926066449169593656161311633189808095816\
021001800290385737192530783788415589048013465696558966031653776684366607629379\
149974438214733838136200373417772400800360805417699363245960275513602530408176\
419289147430119265718951572902425108980092136445245545287177296676671046717056\
843728144974955701739151524635597937806950353011674114321870248478143556111403\
696160001860873270311136849061520707212385415421059189620705401362695626840575\
739623589801337114070123081833123676293050711248537068137857028480761201317626\
039014259962874850996250782404644436247416789704040851551785298749760193930634\
406251809479340414159554661784794457936248762183184310471713290806741617845823\
459522911016459394576095871403906889825369950401910656364253357100362332624294\
868206169255974069359070371065175385161397052795961740468610492029502860944844\
887303602275834842092257064870824156783102754088632213506480101703457597539843\
492947159562294598218298498592840803913273228948392359655445540283597884642387\
588879256323409934722244374009992765407088044912843124189481839492254265937434\
578934371678612996355094042249599217172293825157408593079616177382292030001160\
102772727933109612078093134951593365190150621495508747238611437804251345699610\
624537751644913633206880632499759259474500377987792994895680854402270515394428\
396295003919570950645400998325186214653043601183540257415397100766270659331283\
142257265076499149356026544508406858209633366088416404363807094038550802054488\
963337780674155477562167954130314570630757899848101166306408073395056091456481\
424877413917750260843749511691185002218387540548618685039604703654643552504131\
923778424701325804583558041662878809939113578112677578918745042050163052413201\
695321125135210642467415560083550296847898564478673903624024360913369312882255\
426792205110708359552389800486115227547727623044999121288858023225311688629054\
792061260733996528557883453885527259071533693458454957722324224845568528119905\
853756200920301648672833836241434989386985860594891795451118196084617891634037\
452886443232650628325800334011049881864999691366015789490107490572033766013789\
433077220804390460581351653245326687461228964372738333982924515798008463365720\
011812469633140655573748004879371240075407625204947549534891144566886888687788\
897485976500251469784785422078481025507532161327118725256213783795534745421592\
929422071097920961148766462785086427691771270227682798469614109581981882515733\
163020021187193547449105652654855475232151125651014507536211743982992309698759\
368021855135489916418333311660198775054896453582063290311045334170591490037797\
669127797404338675710063657648665995684343012892751483323252999396847498592128\
429125010483724455075456589811007005847447723104464782704581430568770568043835\
410631076420629942677730878962342607457151405979462562117779383941065714825867\
460866467602540593201704915240778078730820597429468633595110277421836890324440\
520453473621744945654259467111623583147759121807815591293912114036176213885975\
334932185629039944333870747142001743188630700595331783836365873104453389531460\
682646380706202847473161685868296697447231157873637863284020393858998074918652\
423691941850878903036933945782475549523753793855548095574662322992751463747350\
461462937891961570645239939548756569157949341768951239425622285137846928266438\
953118761464014566655251183587608387465645499700048279875906777098865110313125\
148512278688389704317388315686241141777305321340955173091909447691841903155048\
858049491851453654289481480078151004648149656797019783219529907510762102384319\
765509456482619316733640891752172104493290350860305997796865649151108411864991\
574689509099398082629163283660413592136287852725662390610266565821218803202637\
742575844504170656506752618066367276135801140426940280478377142661518947355591\
646874581204513053111346356673593126601700311913469762690473430738856771232943\
254167891457204108781448999323344905520383358425101494599402974374452685348187\
706079521182145346702311072998215298515318999400815459300389408544728151472150\
013256219948866619360790973901261378989817203273306074150840801360648518856106\
333336988805198919361602035995535664332754084151185319321304722131380275011318\
578636710703223387144759453896541947243246474021481371918668179296584993828261\
616550843817769923072119978177711751607044672890642401406948010260888967377973\
559065951631269946746537329884941897529436904234013789530118532907157575211520\
445337878470097193374120056311376980536099525959836309244253689844026605047100\
531274371876611430363248209108684197028289057211156953649741296426917774881744\
725277306630009361039166766882482532559002556285643596997692966872778296737856\
995614177990526681177006167696741301131744737766951163929740008289362192911693\
788808743381815734138604133050689285668650884668919385615532565399217267727803\
761489955149003353638763632354656171798915263379131494847728423716850093130606\
638229390178785747808253855065553401739335020991012220343829628128063357323003\
311907408638774306774323544382347817723127845882485920094604805680082448050865\
122157164878259292860143310547624047852395722934869542475254281970777491089738\
993191776307399285847867175219944092764258493974066240031427884404744862596060\
626649812607881253755584624360941476526199776995177483692745048734417031887059\
584258904672812574805794907170943827607592380156953057762363073379635839283018\
091796270094471981271387264720039480766733844113971622799873917948936891093458\
585515928047141213541403812680787370103546237131682297305058230100352248982888\
617469948810175231735722548008485291257163922471930727194272891262424107367101\
914687398162063368194241475240376287102945866387569682265610316427589843965096\
968184593407573706859221860046780204582355326674408829670327128596971814981402\
710337255747130024923527721695813685515928187919357123607717737875816574468984\
420317455078026069152803201010286508187565934513737508021444975539325118222268\
238685577644612820552541069114967246048981797006378267236272197774989808523313\
311482241466641568242480971832027371598107692559550944715600035661751420153388\
416706385687058094682709479705714273341992405871314069733293052021866254695612\
966415714452906638789356907092651846210297343495250819542899261934353203402254\
462157175383757860984654323423110179349172936836719916399163249018455796305778\
191146014140911208200241358557208508723726658026184454239132611273577314313666\
625466827419156224097176206254862575699431699612989648791788323858532846852957\
057655939312255443939257520378280788791230381172750024391988717665793411430690\
003853232177593073872553297758906497551068452026130769469860861120542752242357\
843299192405821724119114002471221594478751483806910645599217657664459071089069\
710959148740193487917534144124839394224056810137788450116705533241482106926858\
289131960794967457777098904550460447633247906310478767337487042664208188092439\
653838378389312471859845938601925740065529306880162983603306698658079130759991\
244103358337839962354691937265480625859711308081768593505595317751618708267140\
604204099648505884691298414984482089115488597792896821401945372279070124241328\
954654210754475377871936267317945584417865312027482400664726322198392314351909\
266304097502941201384885936867665743679298485286340807177591451384022998041505\
379582428743631097938102457780732789374665619374113346761524829583016417941003\
051456493386902017037712189816928821592190826974013146271372602019838932779406\
161784030585320835588337119770445639336430028270364869288079598978815642969926\
976943281961351716835271442200744587914862164125339033316656299936539295301524\
722519895646727260112608302761569479840474923754768405192624842108952559935070\
290639597202309500222666777135060816192574499595859463233920353786798558777338\
612557433819821789480443585324500425564670680456355609434697753908447272547335\
166785281497858671715379127127882491311161056380161137131712376320176626345929\
808129551052300134874257268292814439865570658614591333300531082264573764975779\
935664394074283112375096433089535696032716167393689390160947309812166173951072\
966740468360334585417714625967350098719006500432534191791200311563501703493052\
246195276794951306981931675318100571709446166477570678596023596974122031834194\
085044029582543259375221953046369612892946231644909439602478670911107622377411\
456692527920548887473088923060724411702642965361401493252394034327245406618233\
826221620812088238466622347892778633061320033958813489383173439569772392380264\
299352011040534949227354548284947800335532236919300013894176342457757045061544\
997087529052942828938914277052526492086581944227912879749976178163077033423042\
048993467324512994597588462398815898842046229296497776011381028578692748696045\
370010777196956417763390857531429277005104633777087404720706017042102557613410\
987232092382443294687007393355606579381889484999468296150163911122564104992676\
842921393392502322489449814663219568068362331730850973432027898496293153891616\
144556131558941761983200660140144740094585178861004147405214349237659207199779\
217952624895279751929662295373050040362532376329396585695724087537279100310267\
334735350257704765681124551125760117658302551638510879426496637529084630797935\
998670532380831706478014080784095107058095616020555549659187637267411454690441\
427676947547026364491844226944971432198232681335125705176643353256852335602491\
038423807235766415568136599770921318221869168394311148199212450631238257893825\
594144897153288637450277318939651479717815582204897622049232912243284797211411\
816005593848443646040382578746584497737104761586917869217672860092523380622861\
039045379844821283197808813482081992302394800347444469781395400730525251266017\
614764481436916153441347214350082184799411466997571272880307846814286059609698\
137747702714324850502458114575891154935146323960791330634868206270346644349875\
900998793163675667959682736375027539567710888702874447082217918227166269660434\
936538250753010191742148578431700488607228646999938864246237985750752543689229\
176313354973236076694247265818417772008268347449256037299535504354870218922571\
267262665663458265520311685513614192703432124929773611458545599283289234042159\
502942628194563005171188091587715683744463765723567281925585308318406249754882\
647611427720231906118334132583404471419858844939249290392641889162922699492440\
422957007152841121816426442564489777692238801248043321129662775439600661319187\
566348076805541940005088973423003826029883745540574366427011706558608348872923\
612347349439715758878180024536872765789599064693722771377440937842632988529362\
468615545440309249547581126837886710150179572422147022495662077273534196399122\
078584328240879842045517108322018477233687511147092770178050799038755056641862\
824434138385289456348746432863638873912295369106935112949512918147968201063306\
840794715363508713242063248387621887877879802978207900066048952695305209884117\
978639920354080535318772332264504082060722792979763578450255817317456232719059\
291539161135138054673869780516406795613592533994268553766581844965386513173627\
057171412085435016593942653439538209367678881655736933246181138105190019380870\
671273542592659731167583144663173935540585491941026053993636218868710794803000\
952672503423020053630035177545198037047584587301126382491452703229592566442707\
035314606380042668359106621634244404673104444297881113397365538214239308101294\
425319163296094152600691257710121002374958477210033917401851248337876083078618\
796236641389661885814227921191934251224147638929120642565004116187930278188067\
886343689449195941707388545972905653480988977766692323495403301867711803964507\
012845168452506070171911553598443933233217435584679379383490711793994503551815\
912862792687173162401574061848096926634532531729275055410802972017346186724116\
320075192473875129820660206907107596815696433074377377678016874959102390657986\
469348652581657984286908215646949628409197774580940569703258298888595790450402\
323424005798228333822814171667958164073098780438792260602580568607857024380963\
217133517693721107808216505839044015282050906072009564215600435317331314426655\
879135696941449596201378306714629085859667004265233015260624893892632976262721\
923433119720320151274945235367007471883559142402932743471786843400907359297060\
729725577094726796337375310045160146655916794885505071283307934740939303254050\
224256560122590501267923031888535479660156608393429130227565954947332850881620\
210899286913668935605873458954116639925311363934115765172479569041167187750855\
647446628605733360108168492220207814650767083810076300483370269125791128352056\
634512556212994191071165163358193598601008679460262725355004213180772648488453\
632712772524688924610050424616190580464021579801345310367328193348554865153562\
520485133435235325197591019241067440199511946434537187487876723870113574080942\
828780638083612536596171540442195775377362015798974081482744844706472682694982\
344111785005137173193950516014460630746767091698594744541172333931701704979074\
953239474175288994734574540460262420898782171204321670062692622162374385419567\
374060568694539806088280259617212268651759024618235634052833184906827921057354\
658286643752159178048663442578537651709598585893504753302327196743251170087440\
530161638228936265046618593362099703103090579965962913590868101019938075278965\
933744215369853504332324322234473106362955066239453912261084023660808074972121\
184173122170888342280900009464072648254312801960211403646662756327539169659213\
958361529413765253206593110113436473867765627146964886705789246087146733724569\
184247059396111092735205471478146882988881414240219571479830354195813555543385\
721122845954926152456957960705640363711802154579069558578514479694374441770465\
085216001711387148834850179762659859711487916961099780132258835073369767433587\
772458162541880927954670719248799746633172128290982714555245885242504110450703\
971444526171525642852049332260844175972622304896136709267903003957927220207567\
514033206462440390544629775935857770291766089105886330947286654508969500830501\
574144070076208701689164461559479475431405086164492587340442733812488663422668\
748954730702915752553733044902302412801406517308882033874257934560167764023141\
901120260179887563468506189353663232875480509137128206656609919504100280550132\
922107959398388809273293321391232423633901698943712388801229648791072441004175\
711122284935039663727763840957564819188875770901749697889875301669163173544279\
930004155398102270226412950411675555962839334001354588538421942099283783228755\
266960193681896830820968938549414041104980098174635445432652855680636226301747\
203609252840417437799930698306341880991794590439956546580613466806507026332909\
954150923981887129522045202687275633131456088897379260081085365797243384378324\
734972622311781948114279341251160968829265100388720980091003981327695456071162\
929077183305053923059967039251750613476245771198011082375554184807528837652454\
441784074333242104600684506310952946770077054021679062196846916813161173604759\
620812059475541932814327377377133963517831717259869259111893297530967307933285\
896279656511478460507176718497698181328647145247905084163025030441994893538139\
619654964002318633869118814156266704266903090998230041165683996954053649734582\
939951778483368122188875689251309466571117562727798391574862400662440893471836\
738449060777655542433025888455604764503542260013531507119333492295036136996097\
283199125517694072228201116059807253290890770142859781721393651461344596099717\
070063451438458333376066346994003768223596361569171041831638735972876894759664\
124627441037126054859831427287907206750285831739984965337760290205379559067070\
881822286887663700143055673756678451952514058749743774666142127518770036943102\
357309714847251396983029880084147653955501378042995097425390564956088621699658\
233163856637329381099987118072774644192540501095242886606524955881665477842461\
372936059481543358741414742093422444213730514357094397700411854331196512747910\
182275745642444685141730394767409440911231752179175967322370437233285159296829\
883483497756854981795828611865465790244574468072421938670287440554863105834813\
382902745382350670920015583766545762235111774240646582228676531229801351482781\
612369508887011069945012795793133834446126037276119679063920971366713274682665\
895926032190201537650471824154010174428052993699578840073862884706195862991510\
541795107516291133091394590629526874026104818968481174814423584029144270991772\
876540954048267951787110091622076241638900651734741687952219646610502758103915\
136530048555089218040019883174093286022503299009597828213008031930550990322597\
317332002194980505323615439012097314579864518744138286913631050875159920553233\
361458488848770260331864838282703267112303089724719916200376829520579963829037\
262970539150837405787291896598158246545293192257703268366051026279495624428774\
563009459533710586685447630790885741882737878077170541098264798989644443720427\
965180570883863204507529595912391361890106857453302836519790969382122278556429\
987216008435574433183287241361725039156052354869510867273505711628981864103252\
115950074731017683958960045954366521957376635757082259182528392393314101522406\
744371737434515844762291443649599142973029565022267601931702674448871840744676\
671690154725983453606275354363769901585990916939372837116190468608849173008278\
897479311646914163771804306045021985978599305508261256210225876236663609571404\
319807540731270597421621829659440208904345226681969520444843677692624910071528\
444955205890140007070106500193842725833542908836083954577910231918216465443420\
300662503005429014544848138846364358304137354120216630671535672890831520655444\
901935419034699239556353430139879807108327956056429039006055546840811411723793\
510774848393108559233849260579490335261073540367877752791618642706694502138689\
817722755473838734458746331042788229231159967350119331457128434101172937584553\
811837181526991863761310191948205850802078503375447422377938507019979618313028\
438007186569495134090819382909333594127041707368559785587655597240603063447240\
486032214420880470503087848424808009045632477579849216636932881869250718308970\
819792311687886519702545021256089980876730469083045086494557098085194319887235\
075046322149602876465253491523519790017946992467497453668392846098246883262669\
373661208063216011257764828140422646717138750545404089875558899215736627243319\
900367414716406444243335657435766463580498798083510347518086886966278872746052\
906451347796089385304404590945179303974867141375409850926041967457563900634467\
911611917339925070821668008837052970376194763725594033040252477740822320773935\
357700237315938025945913006895809706565777839931041661634651568299314749372382\
773756576647145794909859102623557613930187840598785453951635966150528066634717\
741766458320754788730809202996573315632376635777257763177722890930012183071978\
429874246333161597403137692845839107051186601717463648569005524516517741652079\
213216357069684099493601019197242168768176051675591961153212732472278423884138\
114864778741672707245258832720212204036121131119968934419253186251694686375093\
842538619487903261766986270143486336758184190457553220178209728179481602261347\
438099722825438060183060988708347556794511940929401804984830508605011525207837\
236369533362767710159772269395336942112073999776184300271690570895103400190595\
880847165540419753839411033829988582279923344587796243387730170613766698455189\
067902317136327719231170575824642440854228903438975873831618723642321259190015\
007068849367753710901910781910224067969582361962507616436149808581048384669692\
418445388579092417005530281967138429446845670597814603482566193440154441299048\
889465726198472149912725809051085404212124273616507539324738271412010006132100\
054856664762233490606176944680545951655128740373639440314259208034967178197775\
104251506586294972724119240341979294088625790058386355313253846133387034639530\
541463746932751678863722659305233292207350982946200325312386224083352646001771\
862857829187388141014779721794748838547464209295293426474603906973113273690931\
416618154629329402045070873647982627294367718502057116225437225973380974606137\
294992590135108262071721533843213697403067385932417337439228762076404184147203\
236404382189136159443718973627669883163243128582893525272314497251018057222714\
573260033939089604830123612828271399430947140386560367598837878071913039751751\
503519711125701879667015442794063328107414329498071059241099027408016427701338\
893300581951190548036657326654164534754576619935288060479247531300078912793956\
113769143695896883168925340138829490440078357557034932898496200460682855613609\
430341590307598952528432361072718305574041750825608122828786880942079259548464\
626176303120604917632159916261994819131272119024263767992495713364383652498147\
496679333522762903964073288502616989476897981818942845614680339411726777785336\
598357515774055544581928368458325395401755540038439934269053303867228517087547\
147087826785556244974307229119210095099142471261132728673057521688950418097374\
914684082102103072271465341070588792399465104198007393764020378741317217819778\
879867678007194227980676575438299384386999829618929349940317150421386788723242\
187258273591605953447973533039272839076621165927380852396398249320355353797533\
479325917540599393252564606010452622146511525842661081265017699022905153720635\
004176923699051359744057004534834051627836175555370131073756085997770392343830\
352730903040253302050162659598119808429180731596844956284707706989153378415008\
476511427332522651996117662323680720655363469143146578846237938481881354219711\
569819912985747853793534897915585446933762204309239085531735086230592539628622\
006857489936728474342982821190401366123970100436396908714052484541428942948958\
174794012427598435317251569705875628749323915970439103448038815882792301529032\
733504880396801628896296537534687636750251540320082248464712958254511496198273\
103083845210414662627010062174371886799052103740883880245201902342865158656403\
027184709011954782597537584305452594353039974332925590855019416521620755305038\
039976837605817533585360157954089130074389102332860667421698056898792762473102\
621062676417154031183587084130148263546922429845019957857280222643575750272227\
163675666480485484117234719789901597763978371793368697948765670825482916650270\
529195671762311259512792385569945214950761509918756249558614888687502821457590\
245555925872903089531193198321607280604973446810954985779303569323366926443070\
151909320634281187325032723111115225703748304467773094713915918621669307844999\
394155940780278112539818751973199130301463340698870517168611337133851960456967\
495528747386635509184674660689348882980956570078370892086965913873086786582435\
580711079588834264189763795017230617548518511749478625488672801012333810947358\
061411370666702791318584959580507316092579859337925660867057602897671810528263\
591511019194533034813271089397874432946728128501534039181740838338064729721943\
131849036310247589249158474403432262044391672206316999688970473398379959507624\
777615241783934752673908032577765148101308913121299657223315315630148926494289\
530995040976035138764525074244876241791807158104423766828526364596404090588861\
708818351246899823235445004297306921702050347321994887331983208483601425552455\
846100654529418868924425932984969332934545852424112703287386133170694081424284\
209092137945681190134910602631447615449541033212742653083324735622111509659800\
514813605314694500887544437872593856925242343041123406094288795620099629780301\
032780970628631138259782302829711501904645132814079922486295316505253330579982\
477761826984243149875129371965297924730788081361274873952357111934312298494209\
567335604199510279606277379449506002763894293060934412452942902254778315077552\
942793719225953443364969532068981341455329389893235031791536104726953174331089\
460802869179106298924786792847627568820443119012221234766735866110986835277809\
779733464837434750380889820177491178486343967186443909838825765252352450093498\
539415344803875432797226079364805105879711710819790124675245848639494939625871\
100203566845791206830337657105386745594989028011618030953088723057282714710597\
195925195521719977823469947282939662529711004538870199059515050463238145058521\
974332298759493770611432670756645699133864674149825932690800788373912605728413\
638289124058038187958423567945027013980464229176947303945806180400120932975509\
958842033873527132204494987240518933678840826471296960780530391150305454119305\
703971219569632849887500704684845834641948413460050481052962424767037236794626\
635415067250578676655891825961352246507664140797912935514643636369253331068863\
115397312836733709260852016969757682483160006178683727752257537774358262527369\
657542165484305418556784259233783819359591575222732641647257840166503284054007\
557630461651887727987476125617452258399058665941627505453179723517227533136944\
948569392954304584203139817345661328163256443102357449539262768397334297997181\
072699313836839397843123715108856579735754765721736044864147595187368256367211\
885602738308946324233297011353567172495519575246964296536214164238720220815773\
159737216533198270454984616102625334647729837691570581126684911638109756296850\
318032640621162623902600560108479515830687994527220225638248555997748190979113\
235225717904243148068495410000226120463371850697496135718318211833961062243392\
124369265572668797182319837868517982470837437393155261249956761136296435109977\
314700443816443485837299876766060506699226697548699714330827744977894547052026\
822124657728979894115093000475290586042238918346502743891495142422347539039391\
135411605511308115989023145930313386082209498679483029605810463091529192354430\
260744004997516494694064456121277275586154301144530781558065638464214629112252\
076126027806933769575332426984755679711681453913180237458373771707122286416686\
239518410914348779814525309152013713771009664583108871646967792081259905542552\
074035038020509886101332922992927017440440889537964876431876467712353231773883\
195777847637409153123909036334437912684383544307000273751382039648722495814486\
078681051249990721042513423677243950808385275821245744512634030987229635667843\
929224685358812038533780382735201379337849692440239204904284545471693090783547\
546124427143593817603659107386979207901272010540190010117624864024702722341845\
388476348248400840680892839625024192767676021770879626079698134194212963730883\
131599176404082773122362005125861127462207573496816789010595481601801040610842\
690339489484983317889937129200871734714747951993843738474565751631405894354854\
612469920832423625583331749309302303191677352794172980329830406828049647364369\
901691487683085500666173493065943990260995557030730835847085156708579526635126\
852188157945330673066592515292727748088130084125330066927703603871329371435847\
317975736570226079544050026001685670036834314628724502400290456002868948926374\
170157372403646319432892274969969549688773556083866306924465028031855380301395\
884305091097143500202336721925146007862596771765914098203695095460438900390641\
517655256641285432456855305526805729655010396677628570779949417999007618880339\
358400810922991979605148167582995791713158158935525273856147491242729510854367\
774203159807237398134733235990924304929294688500441036985790354359820224606396\
094331153610866310789194749183535211551801888217573016431899774262858789390665\
687254139929026263982871870865828878436281470723754744503628292115955429640958\
641599668080696084810110350156245329085023597590785921101440415372485907481569\
571524452914335050067219373758681808127276216276154740937120883592409052494674\
787345417166424814023939561942307519653483088453112077440750329308505817295988\
858014412809617555581413124620991429380766870347813408586571298861554200228321\
231477600492385705244489704538901049948166466869189938846360331059525064921813\
902835683021374540973463094434009807917675503150935359901849362564321642090860\
370760492577344675953414417137022657276040461520300378494569962039194428735140\
824354081681251222996417016273291637353934985464471799166574691583952615997462\
250371345350140264824770008144805130914324053554863549285561124403385322529179\
264683170048659163462690020792755894446705352935704714100355692934071944925485\
630145359898316083278165799288903321549011621353904409336024609704486518257245\
820897481307109046600535226599868050759204292613083694565668256960140486066753\
437251962498837318036862876711002039674587146744468536201344779457841481228368\
106590810651319395975115010657502040538435896638486062001097525593588974203961\
009112246493911734834256437051857095705074705078488773997069178682294886478443\
184698598811874874728937564949389167045110147579373204017146929617189978360010\
510215481186976746887409222152648959786740464280902843372542942963817516624872\
426728857400699905939532647967582663614642975306935195743628040902485001136494\
777567406714039942860412491003692954076712733702586391445704339800432348130402\
502201596833427192513863281218328469706104265983561467710592171395137459086851\
332956414336767815599685090405138688288751184411164695344662254160870367682971\
134647742779100372771919176887035148306555635827193292621725986258852520646426\
094280857189760578912702093100243109029828466319041167555357784728638519266141\
382694889169605909313455889424521960546746097382538448155295157119940172850444\
616677566987677970487081989612504947478602260337112261426378983979277712459570\
032784556346414601514876862283165368614993797690590059910444511989121750086670\
647265020535943008181724714680647313572080000182621013569463105327763964884886\
119165662422653888634119157454858658450184077543398757066767204698746087436042\
215531803410416391156298272846587386588156190317828249303625545510476591494747\
799764034744800923749448334365688044092998593969665463146608331829075804755437\
232766119323265899021327821920010945761404308135170249732934783645405295563756\
094490061803073917088905199806221271117508446136326181023940892091101782377329\
466787064124299231604958118354330998705067118958922351996786180024819438903961\
609655463885818996449166271326281613131810775918858981431039576898064868539191\
617124214886275640797816768656635241926404348603510634725621231202497556427637\
226106806105673375138965069380853181486894192018293746692609936911431082279703\
563748896096299968728207063119241972752304706429242191166862908768221345113951\
966397522078036734450581291870642537161145509612470456912337066406272991199782\
033645246688280065877647469662578889774846922240667216666410750160435587258836\
846231619636757569892716530195012504659798779559784337499335359913552637941981\
383651217104925887177384298643725882873797916927141618182505686063688819190490\
512075982987117856466328415934537951787505747009571721694461458071344381258495\
152339603179374180287395576333100943300750198413271060291044362018662518000796\
236507849758386517297174166876535747608678620807558315778194830448572517940271\
225536918653949545425216738464055930931956032181517420620886356727335566304504\
597858420534940865259922778944257578063760683653415680653946668682079072470247\
223503789905084183630154347740377243345419499888748671759946390721266555621641\
591641633614450378313432696356895418497411455588509225225046196956989837109493\
309117071390225979090236777057983594796402621238064126945211737206754091621467\
806142735156752207513219865627899870868957608802920110572458330112959241477463\
414054343674580700872804228334508825356609389349481846026312881862780778607580\
760466203563555380315634481065928996891765640669539580574388895316937732257148\
700524803843097250226106614754987514729018722425811083234013416033867425907548\
416984764555051843469049649880230579319985646189144115699625667075363706083928\
919745652896673192918286909303931143627382747692825869868557109070549789549552\
507049327629037222224906665774153111010246152191663807492734189760930704683048\
944448126269806164075158999889617416163640162378412679799106521363869058001991\
351805746807439316648412039850299695215965813792256970029809544575562407662070\
842201004513638916878175300302954497806150246858727505628428886979669666773790\
617708859159572501971354455631933213735516070631699930365489209640770470878175\
605556887118872145122665273501252421729107298348285583169681481947028359214816\
570603841735569915958387847811915188272995711047200664714599195373384370524383\
275431965067831235345979895217113994167887166191508625163063987938239805433727\
409141797934095490841038639988110445104632913807271579760018785175240526960765\
954592863932290336140202051909998126441494198462250099014586589048336565699514\
390793281094334320697251629590890738443733540124560412361809274470516386092445\
798514210109293763134940231491165816491383923342316268822353623163962501946056\
391194468519472259596580646936820110424811120715529263801414308095742699228947\
709758715171778321038684155098733595625616945803784890045678111513712730020863\
331812416227101261224813507450732684266419336974254871003252934655328508297012\
100234337621036027861309284818847938864778317645720449688095924302254449344225\
700551140972930165164539290687062874526552730025383122231441333513429156261557\
613440856777582121485226805844910452690314247997259418108808956363080713094628\
171762169402597447958647960310257263242853720896987067641287529640631309871352\
808081257291148260868864820562485622026340210889721878063629524116708405513614\
892678131362583459656619043298273261626563656837349545064420698761638599646816\
696810595406476640290920387457366525261845795646169973986725869214936882785097\
728710538868087990735403356301658350557597561259648775493354011105406395782932\
767568891205136537081978985214714349262948129388609046235623201099732355979676\
326587113513400762212110614020616095793263296529933703656887528947877832034725\
199525627354376405049395114314892055176281052216846336103217681653746622218998\
337637473691824783803764643603419861639438324450283411061590989560624024819242\
348225989317099005711516442443772678108472206944307374859385644042715266448835\
181857110971376372417666028588185416447795647629655000677771484569383247527725\
283686893257855845480547470772435148681932974797351222589772928295687507384158\
061875476695495329890590896443373018248336260096838711736747407653601671463989\
780784369698640932951847562933135125703906077584266896922749507255549208195663\
415765560978078068269802099753390753513763566875320612439092983350674427872859\
241911468994818743598410168263207613494152098757275973384109886920306265649429\
690409573356434558843191253411754579157190711141415393225106082511433666098885\
715720407127963009237228727457177679995928181595138994584665916947606467331601\
026216455580950389877349771289100566481401481274395265750458668251110780870154\
942125689779006670263743433272969698533416741246796854511452577856351318077096\
436885819106430448962637023294352864053869742770314516400660108531023958587819\
700775433793516418170939820353332148907505371658368147748072314097752719689333\
455409532916274768429419431055489748620933895928198107860171263879371506104462\
091597131157232798686511741618669742345460452046319758670124207951773830306801\
204759895184095468023120123600444789359946509432219984156188314726442720652274\
548922648627564284324849240564537007041270377737992443607622180315915200122874\
009612023435182217921482679626514048578811994915902260895222997062531648194865\
302762320418753179952925419045189131503878400644869800586603115086716193429770\
582405125816601906101611367491151756939871802521491332351740470162186438375676\
068452379630085632942410647770895747981345873664090923051157058043674699555657\
725179514090341017439051448525127575489352929165252343601222274547194787589837\
495546331698371440746450763850031977450204933666590320191331128188232069271299\
491143598460587493907294533319411171335149046627770568215132372986376639994252\
485709404095408796105598311016281518625184875670262465164042947142125950458302\
949417368063029283212921759578195593897908302160594875907182540863177440475927\
590302518939196095001445123212487756510243767889397193535971390703829290240471\
480528093763761655809173914866194758919876067517184522628198484355737104106467\
710646792231573281893649827403252306352116629278833649772785482034433068380171\
045445186347014569752164816256369976774898110961200817106603126902037437565481\
924481825156478514537344655613541541607727679611038037934684461326430483856285\
269911515011301673357578173805160874040338383701557114658729234387246163507123\
640328316683035219041889873428226614718166920077989177303582717459014907036280\
091378808300923470086934149698468893660795132126212173475366330547186721765508\
903633112717942028760460137422975160706406547265653975414388222907010015862828\
385318368274171929003123087176921062644998761016525384864287157558400575764533\
247638254556043119320054333520286262813353485442625543703071242701822421444100\
204395475434706995240316665427678690894633225898162822946105402609265516485728\
538477302436799189910811797278017229198752428880443789019317127765421466112293\
554213880845535256479372225520287606449886272895287065344792579224826517806828\
054728727998649615691511393654406801451898560990294777311559263956470616676633\
683985332122276929636340713484087669995531861998870998510438602593888444997929\
536207644602174856524125479560916645403455759581054784597765686609794142312002\
437909126925034945965098770474216809188944324944760531623895135215295253268993\
232352247720584897303867447013046871504888077498875200026904238107494230414435\
247549661297046774561971081459270443932965714953472699632622920151400517771440\
828429733803395067109120168837314200415020464499696211732212174591936554069108\
117044294599828857283413814138346489696590710101221819340621298016470208121034\
473919600840843254812834487715793200351642443287468354856440302229935689973558\
745297122751174425600843736233159582540695452121622408315473632422858879979366\
225310168106082196363317886333910968154801536086783131408872974840846725889717\
075424152017898924868579212343071478320223215870207236929162226759646503082463\
601277547361282576959582645220767021852097859362860259112843940141818955888316\
546383826578894509287248780062471959389157671577737612566322203940020942753984\
779699271725398699135445247682583662320196236543555624807199768462180666587690\
853605219311038814591851953629305069912844235355793449288351280324469867271933\
145921589388275636487901737156512335065644961514681139079222693489532278518048\
186817131902299546124768407425781493021372635624011760575650313998901535152030\
042153165004305269609772934597350069394402679574721723256163643608922441556653\
587396392250075842866676277718769979446477818094988851274576592912350518130172\
029638551375190254044358725667313564939504039542864412882474436439777644954843\
575257112151794140344002722046141811836768642072031579297742917086900019365930\
242169310473602271912449715638514176649350801019527548938821071715046272628128\
850701729564196045308591491167250104636407886737343987052397775290091921886796\
256565693698166584351920979861215410509142079337406812624458155011495993366461\
724956046342308171107626886003533015884070428796455599622537102651009893838567\
986157287234325698683488612571113688585780472226484998251613947051979677175699\
508945184362668740141656554363677204623661858104542455194946940835414553754703\
542607907542466055173207346667117958389578811763638922897882597722280067337999\
805970504972916220130723583070308468935342052056007914534784591519759823716243\
332506145805058949392968288500348988658543977171672296108455489314903857914293\
509444378114715863900492544421456413999164150308379085126672646199192401413919\
609843198813053457995700344046016496151271277269692207552177621980221493455188\
351676208875082352203136024255393300592878460602862155223839754300924482330428\
495449525032327899765499573444668133900795984514265351691198617560492302808844\
639606405765529171111233913979523783993181090171900972145920529035002383512062\
748241967616227714189889045844537714911837337704697528038414861042636940580572\
284807387173455725174630273725584400584265016712674261253578166508986700218361\
939225717065836316372294972306231073677628433797268657030958528281396560908995\
007324764710290166777565948181936498512140610235403168308454953017787187138690\
547591479404348209102895321816106613950754378601438881165608665649823257351010\
610983240281222097571630880634053526779967670603683259636680677648880284204151\
576453554125783192205671735875286646161180164269297546860694258583152463665301\
482028094800141967679112655819184468215833393675172203818372766722159193525356\
511205513931384115086135197173747803533446171255286715280434523459660009354051\
525753999333059880039042968460235678061924075646603053450450671079304043694878\
227005897282883655988785945932153929715901336388843424878910633630472663375086\
780942824769621602924534754362982626266924388368760015839456532221005555853934\
622157992617059476166668956021891697439766343590327893311022411948825628858132\
304006373039182263777616636020415021789403034904318810028195065742772081323440\
344159319679508429414229323163959676345490391224916767561676070822151973336054\
682535463510082983965816833842069405350493435912568074792411430131751628295989\
231805681796308160495454588968076459382785885163151164508597684271842285377096\
183414630409003914663652935771267480567003575252053819596424754647424475515295\
446672523036580111343330397630139946287737666706389631236676813640747510779908\
017608458998273634111080329573180865279841911771391068281002050915607339768922\
494171238291560465254573790032711520572684495038480089129928576857475333386718\
912336363666055156039965756516746851806378940665346884846503064204600104396698\
828620186502930933390196716524005082377511980667611467017973494970348723786536\
855974924003784040239903624346923988175907934975007835894767747811765238979759\
795350266536503331839354353189708724544534350948380975847644527554737845972978\
048206312716720306453356440765835988970960759100153629383940643558991129799536\
269934657437264198810485897406809888832700936947523821092024171190246441837409\
550744139500244590987538870288993463793392539577398966378314277165071534302267\
077514924540906137447501272543592377949745950896065175666613475105090090987590\
084157885151116424110376357386350757926116241394715438361911366663180829945309\
303278721276627441499069593075237340744425528262769453805758694730110750998229\
829056952985752758595744294198840496269382382075085425361818300964614892086288\
596547967423776440657813803635427806629438664111505021033166796402609429662318\
021963729115101784816110111594667918268789013009188240160383244597069844139182\
882372224176953063238710158940279601575151491892799608481252184739612542509141\
658061155086306646578833121839016624090157198681908572187695152175983023673063\
488730716951412600059079177713715903945905985847665647603733239253289126705187\
939795464063472403873952091372409747960346601692942074696744018051265096920635\
320584538967732679421178237799529668753520175701888753072772930065918647634461\
348880251105264202818646846073336160125493497790808553272289426440823142391191\
124886949527817631371347181319314144568113220745810719107968486437772098094754\
828124989793135816205446098689706396902670709122342098292390398075600133337774\
890247866686027229081989990015248654824274661403343703544599447809887986442627\
293734929103323530969890793597494594548615079093012614030855500158126361818214\
544653978495909415961704013554581001307264823577491277085942719036243281072797\
225284985679816198775284920017479424522450879966697412434340506111485314077042\
329776938149128443420190334140897306085149142146962502640779986874929453870310\
202599630425332794938675406631587986888378689160499422783870321751167928046469\
772724920193063106257591089666666804095190039426402713784666903065745766657026\
553510660922891222516974551934908514681770389365547049039082136500854906162416\
952094057023148208281988717486727602914387585126321445529083476804445042471710\
890607606240857517935441345485062878855097038105811051033585143384548252097720\
118800265783553519815076428460170332701966468031547251467606381322140974511977\
416018504745488235814551510449647646553569861330789168219255797564971383164003\
552536004058363613105835227276020115348381677888575420434341262687740860980494\
991042845362386641265683800967957151391156380407434620209542597048870214623350\
870599993328822201810367431998037688904692297009509974773392612722117765134266\
909430621117819802865455108592107756254181055038177601389851658596131591214808\
882591858270401640478958566915010932869356894135029051855682826045544039295042\
523809936937165171643397251601400681195342644424494653268541923405312518784416\
364166484195221723612628122646230263987603934606146075093012380201982138175574\
872939665752626112817434265911746501447013207048311659074803495073357579996999\
144997783598205515804368945358330325011997156120077583002492409784953551449458\
628211080655273002024652857007411358497071909759985627615120634213134058968341\
531824563352088434964714753676523855274149950755767507933848142607266010806288\
929357916770842810544771117922783635619192779978744225584328332391109134541370\
042661444372765323972949257670127467049493413002554072869997228934326468816608\
249209977696549125949243303208629596623162335165195538438335428705919407609785\
807699093367869115908418522819207097672431629425909702653441028187598425712582\
575926013181389521989690072934996447951861862595876666888500059583908178148801\
286985196273284997439138682722124070954749420454893349797982863212182238467066\
618632017357999711238917985678975141165820328550400743238987149388899583702270\
947844828849026979612370223042441093199864192060827684916734516365774265248182\
887960367381182481736797565879558407032250179062246838276092119949647908911367\
485220753105858284836611927637065676755221418509354845316919245724750285892041\
835422920721717857272275132962654636401113661725873401744687451435472165912300\
141176890423318685800202546469298524483553831217211285082437461369989536551464\
464355581926213560183619046534237415528244743905071247744520297114379127501657\
776168074629935222737631107596699840495238463673199460930351563218687236868049\
690833039866419348575526941022028269773430929952757708814820487249084783659949\
140311864242706946705596041910335188551375458354614724625274437003592950092997\
359533205245735937834131326972519826321025938440561296908035557278670601388905\
452026583113226366724005350514811916685110024075424057283498205540654259586633\
618187062101782891197705034118341196313789742026116185858499689553704123506840\
525633815465915418850854216217384650109922915304832489249880221182918213653595\
796354422004202994563775295907202711573182796751918291365783516275395354916209\
381691653665885165262317777125882220709110914114844784448404146617612146397961\
616295358887444016367776414720574438409932733345818776931837195484222367325152\
049239966732369156812366087201319567095138850350704407102658468270714017109002\
578440015120369270615776414295306318799857505940361108363000251084858079023538\
471587634185984928772499070139244168583440287448244764070426512085038396587236\
913538249973700041709016295523762970638135188167854614844594242718893020495395\
593632427009561493701900048064546043904290234664912754582305875618412189524241\
065690577385156539202561534723043765180624102908904323442602266621005141397025\
235418428609714525890958950062074698295653610150571125257193054509324249202390\
386607518534980001655477398451484276217135533233054407188631946395482308732225\
918544224484957040419585820989286761667207056765235180235607491503647783500788\
166627197462749384406267566205238263422472494936616456664119603099385036739564\
797774883080634661225317301106196828208945799475646988923722222463961923314568\
868493454849688986587783925679948817264915158145848684190924786061056348544685\
743001959531603756182805430919897001198917075622486090027779282898975695342543\
596500114862703876489670445974116668717211804594806575049522228110110630766237\
945182143192925695311465535007940562317379781569528372261210002785808730215433\
917474499797107870960043656696125902736710998913772590622040354144453400096788\
659491717719355635521344987372085490333033918669352947039478481347026237842378\
727009799276815626716362407463060930451976383909502631066787300710718034916827\
247351308494236713251585393485070729414149623135343560153966876300546250439144\
497732381301858709067427229591769766952234159581488644040380424228323596499719\
855559486420032808826764413887031048398909095483580580389113409574535462015578\
656424803735283806984427279399745320694482065449015683737090550659176485960265\
205858906954768673098365802026899869272522176979214667404895130403026872571262\
523973133185157677742342581026972914215198437747038640130451663897447436566139\
105228765334529179157551475978427658912788282388409566596481402747870001569977\
748028688339879792840996497627235308542566732117506451849815671759154438317949\
382050951943705870746618552760163348501733392498171352609818836934972400692661\
030129404432484708830003470812808286717218797571504296304933231045903471168322\
057580213964643679684358349931503714337439328768706525937501953244208371985225\
447483826104490461705094326703092336682105647094167321003314603562676968559849\
829179634921767961031566125124936766231676852579472279398102438719704629192930\
434883751251043834072881644050600421453004219502303780394070858504998619792322\
291808322173813721154461516361185051695495435258644051762149403614149366243035\
909785654394705712148071122159954130521105463087976569257866153545597128491742\
617789696294102903857523611936169743965960614322569793017247070647378912093088\
906683940100886556235202160240673558927325116253608057485802087779514776643649\
559156135937736602474501126418800487858079655544704739743774351819487537185170\
866234583242088413150434898547115396207702747147470252437635954530361201289055\
282317905243458633083320530016426987740330410992002998426547918802019607867447\
030425067025886899172176420479620858700190185908899074509064141644630725550714\
980167737148550340168558572529581590111391542331914932824295015928739155534769\
279212097541685460845447162911684488378218665190332663278561884741693978974465\
046670248208473067819853537865103611395034519120137098466179135685489693205613\
778223263209561513920659262328722360015870615974545677092264196512491856032280\
111294554737070458212695577292287976773929698312485953519095900488001277569612\
721050072178242780924216800855322453664962136548359305476619677823255593805185\
234708685528065814979095634062744436311313063802500956174760480339895339208178\
060123589621615072110162245353027675379148714035753369374352996078851234015710\
456566718451520661948915885550763375488911634253292817457989910708189213118993\
328071563501015882527429275251237364831337090556186241223044187236862117088847\
274624504017501091574242922601827846977556305987389661799620343801776423283500\
828117095660237447528504594055588572096123849510405775361566459349136014315019\
004759361808708602892840831664167910896969623089546232501666622632613232793281\
433325708486870086371721848552736831456538249295915393038013584958239367336227\
870517710434955076541987610911613581854868863859240652759195323540782506189354\
658434017761408791827079497295810055848426254922933468811499548340671950751258\
397116613462752545975277870388985556692550593187672253683818411174699842352877\
576572925702574138830977385292421065675649531824320772932667322358185152988376\
260081856108000022304549209171313170755986631243216869937450119693593466483365\
753431044826201483120026780050971330302738123331914994215779012294848757515567\
076058384988807467456245707816277337353265534284628416673039988857466189839334\
256772779428687538824761349531154787814642485772790225943060684207620250772465\
200306858104760872866659135095407328152941461811675021106276700338214803313557\
608115937264982187144366190874668532700229289147318998661462240198276103521128\
379371934060081534192483252424822907599348477730896796463946119011478697265118\
459419078287232734792573760395614478777611268621453263432004461695035352949238\
925621399959376811748105977349720372343614906834979332685043019488721218305210\
847224949499503716745636065381296487201216518412088898078932847562728260594076\
151718989571031885550380820869043225165578857808158236876461484803493916383963\
480637375620841558508932162938155555557255134530894034969913577112176982828450\
230843040315080915086569886902532815590605108286050114474964106999931589066874\
744931708154296394348708255501059275874047606501950170159653513168297522900419\
938999677726819954591476746224340285120465403655420239744230800279312089430409\
958006735792232843585934768565579113509266356073739530770139259611568155788526\
235123116178749137165334913126318916537084626131134484978174103415123721140300\
784097007763881476178074940328114973548851611721399330314344953427337310659008\
376330232360017091908745148651022009095766978901682846403929664855509012692951\
817882829295452063535119378121227723934574560543742058251650232648647926096344\
854192487805533409252270239064092175530226655358517613044948189337459212697874\
604460705648100543776505710714070413724137725059937763498918598386166229276876\
093134768027065661242820842240036132825945271873788791585852423330839457394426\
775582252986757612566049738642634060053453818303643381696374710133351392598308\
373089127400047659052692169871068224891422637071276700181316901146487105855019\
258630640098097148491846285747551883938063585309838822476137008051740747320614\
006236580809331978783604195267297866898932580026148215512053325588941963552450\
633582998680701535678565464272788154703019680655093487485149840113237455092210\
568862737981129165143050543643138890977111568328732797426275812883260100255306\
184979259157900688081758852402734700141523151769012569048118674738074874371641\
617783018631797314809422342776659891960380037880353805230628907841714131577084\
716319760167198376391618585697122378485053625609374009431091175333858431602801\
837306346481027346112701031282639676371229788148917412231155194146605825241081\
296548804234343728681435651084923252912692014079464086101887621069931558425045\
070053366231663835961375002664570498414467720174506913544307274207502679257035\
173510192217799492195305964459379461474645986263580444833083066524373823629806\
645232371461674853214247267927710129037761296862050077690854696798138273367620\
928903434995554623077821570713848103279976719690019198185343130694515287712603\
129231002652018912618012055740489893395122920040480975604892643673910660420892\
706776691321854573666907278368675770932970299691056732308353035201951208992357\
419639465087982643500620108125379660299406690992266576373907504945095494048153\
206722562544890310230801380756371498862017143972819044889920455849666145606320\
612622936407395385510011313429863180620546269119997314687184057435599891261238\
611029783044543822872817599984535942162722834068985994315657531519581991051373\
942529622739084439897552710500857465283423649086249110396495092120859846839000\
214701590327974880749470510155190267203546120866485388833116102108647343544589\
356545030421936676814035882976208723450864820819882910201002185602046545106976\
512825982432366503411091808952080812214266373188745901973443366319292909034398\
248270562834394767283324387359940140145228307261635151332678926709287048281287\
820297473670535634016923500027933344852711942756627173761416969753649127301789\
974939259883412234163692464406151741365615920151309947933024070918327510885004\
885365410540543502036054040442361013384897730907694893567443441220770262828470\
523977369336739958733114220773398248420036906752859596144988866099205905349096\
493416091065277446224736318308749888218619956187498702091943795564096393360087\
254935440554150121020962470972378312393327934624440734659075809707962497545532\
896129497400575776617593507981982389938650392100292277876913746475058590321410\
679733945149914035789006642249343966367434796142731238028506405128859639325613\
161937488427358243040085678468644547050893120477605655737760354425421878204427\
705116803644162819710035934791795756198947143986307717771659314854851165909867\
196431995447482119607589512496496038267580278442719483138918571217893533634973\
696736036867532806686952573561030443583159035625300377683166032130144478428293\
549790417936558352233037178968808674699209125440189042531727616820340770291347\
814002762794638075985396981201646834610454613948312398073024467805999290612170\
026405417862688424350233839988956957962710964584475271449908827676784929191898\
388128429918033391606772163844494091752332666554169260010286689741972282882010\
011770763922811881279570299171471041287363451210730611111907074646995482444101\
751354216471696558290373530165245985963191181145187865230562296135945725771264\
088065618785990495110906906600080196225662753069388441409008681413937734054062\
908460768714391550500042457105724410820359900902306867996930771678331282866352\
595409529407968132909073769254660513379007221135396031219597803000624165119272\
635044747130759805977722985381688770363416563015170736221168142695616149886248\
820235287647377735065469827900259885421384008365416224084329075685975704155667\
419412485406717844648721957233981591038605821049489635519702978139382254591486\
382352161534258847670449524663287624399971692592119428100894474569536931821124\
536667395897756436981719381386293657976255194039694306026188593319218002484665\
104529982059265575082241145706890620056688190991950194524866735469665783356770\
226397657859130217787134344912545862838611103319565684589752382064995715400613\
549059500761687909910190915316620776250354365823519828860809648894242322982204\
229191189725010102886506452279243931794130531887147271421519451278154424048762\
119676659272743222254256335660290972983431631185558840829898476814166019180298\
648979289079477355785902293594568100414801389901703245630928809424367602720544\
968010130156544811556497691973581523050967040551525520519934952328115051934901\
821314501254298346787994284186300868727343840811511508351166634457008610601612\
738434456809994592335142492472012487302344972694841231868329328834415321919084\
925931306740994197949551323944437335344264581625328483747214987639962184942653\
868521209637084950300366269331683092901038103604728700867237405464632068351236\
508373150500336333133042906026480400066472409296952539114803245678734535171199\
057284321041891605520271182032876270519592793901452334411410347494789194883350\
662289015409590298870436449150306292138866433117753350009814056438585643759239\
525248698629233071131067033012433245326265772942452694849340540760908971101758\
147778025973979032697344687202060191877354897951871545668031948817917815077765\
939099217741288594874874887296863666662525234507694940097041672561301217607593\
499343209370903284505413823273467070738682253055688036782851006871899022484175\
318123134577469467945380085636381149100717098689004961026923529076836758252763\
802509784033414736961730753982472645828965092706131932878409093162399041712208\
217116262116428729853018134069724346878465356203246196487686740366120010974442\
529055835105642979339476942707960197263451984586381583490779085448248461885832\
538533263427847441654545555725114937353968781592877301397383290072777331567710\
017127492117044044053022741372473417279882483134865556520579032397140982226067\
279690226032799547116381322641537280997643590844975527864295604940171259360879\
107158036593672368955963555487100349252872065383333544603207064339474443390968\
993292947412321057153184601807821844778520353755667468139490034726872783908472\
294530914044251029553070615248242037255882698647710407497889267176345655727922\
264285880106021579639101645872844725336957305863247412694236108997903636646570\
606677918883214600819620636466236452103652315281020835168023268747878660698901\
710357666217602334842456142754837399017471417859875285730486893264732006230664\
293645941718410096695616732458709112285982249058443790170048660279374926281764\
079690679381708057794776366901503232413402424969372936319528316556614065437554\
880243108205991493971477855580218034627650579154489391678408771707797155312181\
481795346424670067865940671090013668636203998162303183762125626061430057056430\
001884446344264484725983971551166045280684806846125239234093729571351155582165\
677906647072841322915215304603370917465577767640087841589391131798813684647575\
641668751841222619295438165488799901924625443242086610448911995514994329017988\
322149781350001389740825988926006148841279843772783203517861827574501806733742\
477011448585405293192553829132879904570634804501714211490463966465262883168048\
212684358687654396422211763467696421254909727751438948602913831235790504789597\
020115377282502475934882017623824672725507217723891224561724103723872611892577\
243944595832380981258203015314025019257860977512696986085002543947917552343981\
294727230773344420070915708707404937157316248203989818449106285590414787724770\
073645716589827851922007746051266714970668274067141091018131518091460872338823\
038456685856572141160894226943055524118484811073488277584842488015683808810161\
183885700561888847890161694819800920374220120547642897583757285927221568609752\
489820858835906563731800953377236129077597140994929489643035493023404887098845\
325226417079751503515358548879298388141176632345219729425890866285879731384839\
993468542546618850083198372387658901997113804331243158229835820687831100426405\
041548014722627554957429947413337181936390083271615638368815355158530082027603\
271012813250813904539706155671314216173821744259437875747919533915345531338310\
622619894281793060450604530207005159463722956225664871074131941770750779306682\
165848556858842816474089844394784619407833871020633845515252532244787437143399\
501710173954868784721283636215118083673031321255735897560674195988614887154525\
801055617593383633243707774354363730449933862459037777689815930812236760159175\
915532171208634783080214004914807910924212190359451444271275794965163460558655\
445041049776231333077142851927881607517364455224630943748041681151530867615895\
875304580730470265505095360824721696079069295131387055240599096335254363162044\
883713938981112964637640835852957183605645094611871718514697273109892721787257\
040764925438475490196330876885301796581971758364777319763026136932772729167532\
969736407938541242484659388525177123002848132270179480170912979074077169017976\
588221843332499868157741947539077777511860561558453943875497460160387682089217\
490695943741062387168366959463670390935290812552413831168268098934671979761307\
998854675312879821326755005401953676181683395115116277705336586300593560328114\
128291542994427317443857261230418746021094554273656725667548762580351885767615\
664302858229198589677614120913908418161597477038663358242611054200844577513085\
164039489255573853469926269245625317876680655808144026754977816337034345957741\
177070923203207693880230451121285111111726083723672901926321528875287544230596\
202290595617684783008358723822109598194617586227025427806377552406734505603119\
748383097964479199838550672525371054697451439126892042768285453450158281386117\
579714366011251127910655217903031319636338426273780088039385973919158927224959\
874479174759476313287083435180311436867311965804961313536566861632737296571193\
928500616596503057818796483621902371605131682632359905495751187245813239615917\
631773525075832811260992479056537574895898968670001506687960233041791077963448\
004569096799524287192514895438873889786864128942422765213900842662467436442551\
791112338895428359835071480163658748892532374161785111336944653863614871470175\
003165367159330144925865954474214714729023080276891052934103126804539047053656\
682894676674059199169399774872731535364106838966352768944407353806478974704209\
286880636721888867109175807281488566015290013929112225573018606479922811640476\
976301951171204872858703432454070844481008905360035520966929065025590616974452\
621182356353104745103968482733207032920351598216826613541098045233076942362333\
480704073060939854196369878230753694620033432184856127765791620520780617580563\
423587864862583544380917691664639079879056090563484863964136465304018036942623\
492181025229177651407778862184189892073354948524380545874747316374532854484419\
542295889814408684298745406268064009702974982063855879752026415659427947269738\
430080333864534425640466469372941914366478277620337116660037781604358528986502\
055588338880513983745737795021931458512476412901192583796852547902920963630238\
320930081646958398284718371006961586441976976071737270124935702784873367711548\
393625072815175567303194569127663803032482984193866920423222886289323327819032\
077916553839019025517175771512322869970674231250771131383816249186361371039488\
331020671137882439827242351440278191696511557705427560338922705349675338209889\
707927149829112802425715519798870534194092275197657703284281779440301068253249\
361552323370526501756282776869168568287018584641054801208075547947539993445887\
652262068349034533482169838945701256424566245918849647284272073516523675598520\
029211386324071028374173601390970124428425642111386098691302579078112403445431\
017662115343639082744731205666528983763723863493632995364274968995862729984987\
086114261222798403068765809122079241076980948201356045246422630724132091509048\
578558360411891871641345417631931509281024198614807156800922818720063942813984\
547575311252827365906268559457205750472627885240761559113858385405260385577813\
206675072329335611696648466440799885326786316156201457000528551498079527991742\
752159816031810595062162252552868661750616412494017054998572182812906476370419\
040729407937729218538534124489353417764720009228227918919343043454099502386127\
033269753305388656658885143065641829957827907297999858843445332874019941078112\
146870925045583036474539890400434599839224697074891208756085072346020177075973\
521808144091853687749613130396877478388848637909588091656949196053157653348013\
132143409350660146806767182855136383507273747554457154642698334701203829575149\
877539221201557644469436534493193303149694299780901214623413997693024281039232\
863609463633551886680420149994078972247270943147629811297749465236741700372878\
532471140936845998194014991454653998958172116842030117912502798256306866580543\
706717685727914681766225802171087459760527916721008858062469961216683628856011\
000999723399597735328651520223705624046979892499253928039277592439219423984333\
984382196807402064649233988247895204784780156126489910658852127602935845786270\
258935750767330151249268611815417226226624180530572269958278533841364423826406\
243666379715230492305455158125325048810057131440154332448480519364252524518742\
154411140790921828088525924283573386207428898409613171261958626951228593850339\
942188543369594079888723502097792328323555463043352650133437436529092730574571\
133216156083447487630688524566911735887839118247559869723949413865082227653545\
240592233398595556947039496694474517529820060745033661773193269799862405296279\
273076933807165832755496066532815894001774955647755960054726692978710431320753\
274009652679625074784879464157008462613281279901655830772241725890714187931500\
854165877138145991042484029682904576597870800817374178153910133583842227723227\
911293650303769779604089350875909151303540791548505693212234974719125150327373\
048026527283296322131821721793961860488077858357906699558638289626482548772670\
873347314292636455524872486108268339414118839878850123228640195175641951285629\
625516433969618434752441878212194579008500520604638148782652271616844085579251\
475314809531370251645325588421640421652006105670491585782383677441804135948965\
221652900986119296824588346386314845327094421304189140538656869132133062589680\
938719276711418626181559122564518302631861700336319226555460345646878539384751\
364945708620188457988047345839876677482146289623278031859522251446920933327607\
773880402979704733204676931479159208496610380246754349326879975131292366429435\
531786637404553211906639916003436580854720247192355526337094645553654380880306\
777430334803045269920016430933331414933149002622099912683795418267407321954916\
915017053356187951542997486973853636052123579412782193987390903083603924673030\
250276731508887735333863518544546390842663507180798718223681392252112890728837\
774172722408599720413479912094178939458368395081384953587579384193782475749003\
223118903147075150383430061139884352584373927456264088978711185138845227493453\
970277358756662525816197620864721163610645457826566315576959587179341701950584\
397768377331699399155964833356122581641749781658733599424729992679482824323391\
982643483136248696157767592390421068786998745286964038356038405611273224463531\
749904049110076650603942471726089703495160631253410738623335620008289067835847\
291554244774004242455471186661044813483028899967463403516094168915674505141577\
001040630689623315972260748089121801002921557684877559869799621595226508433683\
307943421213185004861687081817498846143079187554471619061348934177843648091708\
124236291220329063249305650073550401067164045605206796570891146440973059587256\
428300322297559140689867665655041542181072369661959818198684638418636777303722\
799720681971285589703342413491046067399486631321395513276622159198036163855613\
988811276085374109132989671524195818991823369591384400330592386896844522446097\
219486584893688476700611999545145071630293345504089096049478460070973576668157\
504960147093687511958671582035174854430384764961706658163488467201613311494046\
922639479508828713755865480458373098069952610216828903052027608141904775649959\
838531939178493630468288026821465753574338609852702877097084628965108690490500\
592280558107611745975365111443614955979149381719697659792224055339966061120375\
880724867476220933747330289355961987428121024195191708839726341398175382287971\
388643444979317331731880108811834459152446451793134757338751571384452066523660\
587759276406426682559807288393294519199568828414072928878125825581097232848758\
034843366253601226724553920195724896493561354566481734210894055359476778577793\
327551080824790483853238453831626025042542693426354136391687559085781260615625\
201543807035907162315715114231860005700894323912322570786726218137434939990139\
546967307149767049546288281257087527343260971988773934645214281170780203002158\
766474653687196603824673125553288524624030273176069078558925699797242805819587\
026404709918828467871137342953404297709887313933048326320592664537558623730356\
962557007198074059282528871694041772080681610086620234918755868109846392797673\
635623378483747038956677403020112083983132786227471991732474796652637315305384\
681931566581029592284555975625880762023099000666901053851313653414834051412524\
886207853548252471756832325494582326068421359453394031841606711696023085424661\
821266979305264448556511466716868336110140416059329644943114897957358134731407\
256494490541941681255446866010705995430975222127253931328573910303216652851192\
732858240254192314377537322146089961270743198572518322953988529119042341302544\
534518192767584279399169529967749839501323574336819315975771857097786188347723\
568261786664916747515835389881192628587624460873481666881400536531118229215181\
078480672558365667791398561520407342034884144338860361367407275320703482482498\
098113436019083696936308367389005664598865272138193870917543180053803452329244\
726362660915995097838204279782834683293342092855832809645352308634713129436743\
623975751073100537869883477782517260524275440020943985697046956099302716634626\
556711997171292995178704476310315986452496560737648955901915231052408420998943\
127191611222826325108253605435237041123571326930312454146122638085978424968704\
242239038249886151376224625096353336685209581426792221797270890949603232207537\
910179771697016019940346536881433796526296974798817393711616991217288558663415\
329646315741737242495102944846483250508026991412468043486152829335890065628254\
622042469655928061063921224565124323350186384480361415951823282366292879331249\
486148493418731640231583658694355126820983838490498797796460587295664425639150\
757413299358769696008063035464978711459702330916590677636258483690141706872305\
891190032369350969066232215295566636440692487303314440444032189680064397280369\
168985863145051576533285608939248610467961462952079656503956692228399384453180\
098112767593366741796211482727234585077863187643798339736458226646267655260440\
051339852906169395268666198889749469486207544440725960615455236926024624389263\
340857558085294915444598955753980578002021657015869899604670937233655975175837\
789971507769967813589033489745518586590880411691221776975656152291084896413920\
569815242470835814514608041793141579006397644940076254053184931021199717698032\
571685935572160423766712833170028613205586984113953170224426611246300978335435\
319928957702588929283153247991889816300232354701804963011060884428049719137258\
329966676724078276036201574830423465353487428213882513412758617326409095849704\
409147601831550903416965776170533275640171459958971876278258493681199896932265\
034556070193072861390566637735203731737819299758103229234295574264438623303390\
255961970220601103766200908796218824954326519961336532224589933376333518880381\
014086824234288120929071078132193031811976436268560596624195722637018508523853\
877268185179230301324224342260155906746788377440265308524984905933054812149255\
257466456829576555770531532878987455010444673238960496165608291030930197385176\
884738940350008177947931984097931608602148477193181942073586622382528535682300\
744502194445578410237273023128003977064959368617600374149960407675698132365334\
844670274355614684691616718848026315890772473186079911796926032849027854721708\
653914457963049384955736788804566490983851595709340612472170838272913848752118\
709945444646994682680452588612825662609354932703018597307657115221465472123187\
062338522393635777111768162579803903877732346852308931757552332445946052015423\
512028849314926667303260783033855804838469769397326632191447164445067622996939\
062689607703827976654393689985933221091359291325444641214507570128841991805803\
816204988765767899754063450369677973728522018159062922289292682052733491550056\
629714226249238474892577205081114333787278802645184031993315424266960869766014\
394808778462844463068620665498720061446526529821794631423249623304593035909707\
337662410311533603471595429450109940266144622172740402426624629673489526655373\
149666296958505416984114495702856796846245730588291558794901661883660182943603\
044513595525078858203498419148108863883712433730903854901579480780344734823705\
849931987500686710050100116589753944289821596812630741079872215241913913475896\
625992289643850416851866896430856516974820033867415909938756288495929606762036\
910617624795869805585596390408754004776083531620883640330176407488911681359870\
111549603022437993071786679695533039541719954949453548239639137882713832257702\
605739021097090026994302545579484532343851655117570484938153861290259824261898\
254026336035765897174698954680298470844653736378346633625380322851350752126267\
613432032170261062835498611852648212687847701815197813757394890008839259963512\
370815190430554363888162630229971524316655594743014172597155147983383744044722\
927236185642441750449605714376662243501239078653257965098946636281028311607717\
584620291721776373113885544751938456997116962813832336447314630428889316390376\
234041341471946489758978303063545846517776887152018067118292748830996192655551\
189772623370274955240142613117647364098724996744926711152418999493681464950698\
446420891586745470126456576159461901047582489710431227058503622981293791754215\
171164280734264824080298857830489246747240688360230200060633384539247492918190\
668807945337347854268382370337783372993856163848174951753918592413056829272975\
258394949747931580149202166078453100867769181004546852550021059313677967120111\
713797932683566230251492419466892613613699051136044238924643440324233811123588\
122016350321029160068704472377613651951468171093353889023724849901721339869422\
747570865460518491342686791435967239775759856119461456379415597834223156632379\
611189281733766913755860068592638591913591916796411776823271153412893079992184\
195695550867016212739230620424427925509461666446966089347200667002185533028856\
060404499681021700146434657953752669743985824356196510957374213733177497200869\
914236944468009237670764256330065083382729166252262460037513725008749866483542\
491278389586450200595394676269898711529681978554911772319652889161845928894037\
243846791928986556907440964506735965416066148669437951664967675815672473454982\
838890065220442101740741227568912617901681312871680955414234889858207584225430\
498660348063073978261121644404832845460264554487172368667329468648731106957702\
481267427353114987966073924364878445307821150499476280517772844486700216978730\
835407530487769399167569077975425798004551795867605174382821794233467652071701\
504579275128473480357902607039667807447201293273819583884833812365486529306885\
689733316776097024911040726330119997088512578532865555183279057194912690950871\
851449642024465308579327745034235914454077435727159088025121261218317270354821\
600353795998341814824268535114169414622115513700881750967974053755338085228379\
091206363506283723052224893602869258470626954258840663013600690032584801099445\
937009058520028952967785388253762948765185059733890326995295203115169986246149\
045538733710985988408785615956985725159496799138996959893009815755595323257131\
598988916829558127569321779828385573615691906048593713903591167863485847285888\
016175406391464165280113335380413415515032632524625165006419404671675514499229\
798056516603414986838252532324311751941408354482484568684686061609797292996338\
012596198419243347450924054480425157444120087848341762718757113325914144940529\
063512564528676286249683191762180454505708551376307342584303154509865116347955\
502665466886328518168329000816897166323846775559746345440596046596478865947174\
467449163657895354522068510297470694253726690887543932762197336422524296046708\
856749974978253351054836063056632015434833144952723881391114369991552270331635\
867536764996605424899517678336163366830027133804196363486992420579159307682158\
333467074581744191805664970470735516949212979977602393789072455555632910606472\
369474902033324573205766882001887266947899560032774125025150760135018925007844\
087919619564090974471163523825778573849349629481631047574974725883782787496642\
038455413815193399773893935929317269849233796819888242607897119983032398852682\
801622234084689564345519566752441015110570601985213446087456212621916050760010\
655242409747370374558254751315154003675164703315580641432749894463998691328092\
427363870464911439720233083681427812701190995629587086788514840022705102245072\
072217161502668951709569613686080316867817250052964322825458162978557589464289\
468321718170514541512610386830821511977324715311434924701214380980929744466392\
176379111836877298169950936983358914672513174282381705721461575166614935102052\
618873838545515140338900226169741876822151906082583609452769747565339745828967\
756002657676634231621154280302140908544137101133746013904831156618193107708496\
787643628758546802322885467506038896514276001416801037885908785278198716194919\
202688008426659015241571546312399161622160094584289752127239773214911741928633\
167966060997701630235262001834814199968510581170023981856299416163425607919701\
845595303909340173704841998515502527227618512124257535952232937307473897550682\
900793357788288388045818400274737715697733238706908568398801852497806798484871\
305034223498604137689700161720201897568278321008158096599205506605431300295800\
528656743337582017213014503002187088885725205092799391344477837382807229240376\
504118336491160111780326694224610668134603483529473032008713486546544086385219\
742076448190037356153542129692432747683709732211353210782942634080137232313248\
113940281291519090495765906052954788336064671339329076419126826726887910114902\
705880946486786498898422653443689636651150870479038942657776858914951622655762\
856005288244681067385826170581009971291559484191997919130464827213119861627316\
467660933672957575487323669964692830417192693849514573681236593152233862671368\
745045072689242582061491527779704225292102515993510677467759677586932152354821\
258344267255937793418671012383506732147048617777327538649844419252686178989932\
938637231608238064964670831343163621489118921560816980038297594362554340992384\
430475876200232917405683978358170932591515086111731990997340954945434729993395\
765468828884619595419787702104534113435631505062551167691100088264753854843136\
281942052855942720089086462315304239053677041452098967844241658782868056125310\
968822825059588802226879072269063587892928321488390918965447588870183862788214\
560837885091829414565719219081041641809999648125470287544021441194104181748957\
314708038734965077359528094732695641986805423204436421199221826735780745227549\
125774106543315338273000695614541143996486312931935379843445210038446977339736\
826733518899141806969660607706593641478452398433001834729666673085549258281933\
739126964827604050268287894792455860005584722500634047120352627465830792834009\
809602197517821111648431394246431794092496244980950858088592320121136868449434\
467170575709585597341187519935030234212980719975096426763869417563029302975220\
632607160424005978542598952697174526752955096434349371865787959142065496137243\
741308367020474881359246891608141062559517596801126076951324120095685095636871\
869376775548736522351510633359485151969782174088728348302261306649009753964368\
507490166001867355338419725406931173191072911815145842141854709200168818122920\
374493869999751741682079743113426862101198899465240597000077115719572112548824\
626773628024471487260515083302251932301835666684421082427737996110801817107808\
928618086744010073103475517848288372505837503798693602567577155149002382820535\
114505324129811882038503356621956551902248270323622204812945268725797041676191\
473869857274423684135596063317931240511358093985400505908429433089176695073168\
755936173794706877486860272755687704800123240263273892879118283928201791851897\
465724488273298612128962278307746071175668920455623279013212164637356799186571\
431948172813505916885418944432593478345854320194688639685773375825536402675518\
426547077218305020330421848764388987135023448993427835607016964970081684266695\
868232076623542945831268255216061804239899699780819437128853865830770789945863\
043603268035135490716621757113073906510854446092872994928750028574192363518137\
683626134354549851271842557983599095908888320226354665034490570839986012676930\
030891935685443938581598571440865495112798100688427738695593869010485901255275\
016926611260965258023278967425830305951230952518616743402376807266296097286932\
987748400051033152453693651265903772519843320318576154193982129870972905774839\
935124656864858850127671107779821460650844400215630680687875080385302860952955\
318393805393569593763325343216478596562298069792828401412913395029588384945087\
348234015823387058663993836124669416233502986721734357868786011122269117144859\
495503829472096572496134255674915611608866948225771888331952043520533938024351\
697642733213193884456915992187678813211549107786823480323451449503177125570169\
920930679274607068069170757432195882751335427952100858113473019812621005084818\
270693343289168206379138084205165544075712355670747415475051140696567643595439\
890655330793191119320149333515539541785418308129231046446632108507014492132952\
467684266362272369190820250551596291640732601718677223039533295668542907571325\
476320463948887540846552644345879545726531574252215766604915195465741126581892\
040143091820151529982492548168714058200075253984228055727270737973833747963274\
938860267671385613983158741955144784219795232805146995140897471532577581151224\
311608342644000493561945856863529629184925097308579139148360318324031248869798\
923569996812144668643610865147901744593931309818094977292371718539700043133278\
920016698564316911931664265302514964801201205412501551411641376527781896676206\
471482182006607215681675142747587478288478866387203727386841339677314562121986\
272509932223451050660763838599569289554832888799449265041024192649647827031078\
317550605568786306488557582149273631956865066076542613607805317325364121514244\
536168170480700889910742696669676461217274377055962187506297015788799325904457\
862432520815394592434993404409571914273497301829841242743451769117247553471062\
411409464185196720160877897055911912917083232380006863955842259695449263108833\
511549649629901920792081437376267835445330702950144614346067342080229590486752\
658648419162680932231727096559239344732380528046615314357716200390498124134680\
451902809869422202298927557868563034279148063467200610335803389984844214178758\
150890318358295175882975879119013788761741523615931212333567440612831752814419\
539618765119699230726113771136542097012075502956121946712335360233816927721278\
239418759688141361062020080600438217142984511119957134108436519430408897346698\
301560868942638342004881680606922208666600583116798171846847065276842694603499\
143989700848281756753916910348504114890969733050716463491817367427428003082913\
999566732806773959074099097810539842963397940660182647183138183362006310280004\
892023012297328281501487633116486635888486698346428090037789726036329498976495\
023441983014621481969396596679216953851625909244594996078993352695022166244032\
832884259867597137306457071474286457957699388221245761005367922070587167555121\
133848285081174344545461113990021444856683713348689106699035222316678859254286\
494052696399778778846895108732426128047286629599240609032208224148820366114186\
711539358710857150534378690653309566172934686417408473113689402451715206405655\
422481391397858305485922603269710751705535949565198897308399852742387005460859\
438293176316242682571639744163327707332532655287526229128796495981334855605197\
291832102915183849340538006237815061405312592997089624299539370572730920013605\
542199766416730639959272086742449410275468827354962661648316575367632912035208\
504397476523724522010647828866837902413157627116252545633061706727531404939243\
266784014863137143092814969647524652590615629941198725745956665467850363162188\
217837435821502395971864225767024461366816132901228452594059878054088780457808\
098863558087441357077683210262217634983069045731510315683459500584496391846597\
806247321192803339030578326910729387442940924214453743202324934692198966686065\
891375222123687071652941178706757407669340280418110214011588984288813542316747\
443889046598602869813047533324472738277637888415818829655961029660886831020485\
061509118295327648612978043324888573606904199863106875046708978865032140832911\
541986814095572347134551214729145706743665214687745271339220659041240066247419\
713013097498568962468514439675223035979463145241486097441202511196934431013906\
020185410451638602242021684990506696330871871635185672996422493704332780187705\
443502351959083106076647558118998403482825277970441169418690381317528979056540\
210378516532867187914306082883090023411816042852462609678965872916425039331573\
690222901276641383177900154207896167304024113985431697128228779301894615802739\
387073208837016141357793697804308729698993522709044576660333922423084158746778\
379757254385940390708997835431078148680340802831693319465775778374727302286921\
638037297116542309384531584030109368497033171830053041845904743702421544751133\
519068538335203198507040959065784727131864476087132011397708070476427857120084\
441365061759816446519053613351694188812205296553342862858029564557101759561798\
149451604739765007127636370876959650561333401844228422017159714695022926329381\
694415570363886419884914089608311836480142846287995213304588380432981313729984\
669570806778371638974545784697980192258886901961242507090103607150437098107799\
072199648526679501337940063860197574756272443879130377666828544491382194256904\
872723518509408059862551640017768305405389675596732532078568178068452275164090\
452631082336528190411465759141401995920218604028547842701823505680674852820777\
145811860864786245203566393360055452218887855557113959213761446520827646526791\
715761442119083035456650111221342859007617310744247462913224624002129761663010\
703548038996380570805179066933755701092077453482716487969590218711107105036203\
010548326722929671765895439802028251714527038525085642431870674019175683413748\
656266344558670942274366114116502381828584510488557103963043460956398206230657\
104604669926626178894659427916725585127059769761870105499567465153040881246458\
645087320452921061559647332604546476560146114262713887840999003379745436844594\
658481741544124793814928509427626020877981595287833918163710988030242319865456\
818738796122894931241278235175518457769143682875136372518879821674642500782008\
805642896378731096260804360274717543117968575078073987502578983655937716886069\
533382914039713869205212015578460104210782777492640674804877226399936900883399\
623037635714219716120306879111207910585033786539032586444913656313420545372584\
304919718077542787573973470466965732340433098748563864549208715987914659857746\
751476073127225763206991006428899075172894010185475067947668091643678520030597\
253472366918556510743577338308943619478230345632794388593903282781817463187184\
097148629966448820114934913621293441576925462371463872738849923284240888505192\
323190003722825107015967330494222854341380692151850173539585603849704920242488\
097193296484802372128788156748270976364539658886499226475269453988480127431154\
982347510452597900951261267893913980389597977982634524725747438242284328600045\
676470372802786284164440291776512056683395278691710755862409310117567202534751\
609365279663237722533733814969081799698802107561501869759830832342958998069780\
242695894858801338233347761752631746481101211798491929087944203905194255090001\
372960207894189044406059911445958736146963520549563901442660011875593626754765\
351839887194851393402360734542846768532485608155693870822184383539378170138074\
636601775099635096691207888527368370634032644462973517500669035020835675924128\
825308014112924981556875295577908955735105244210075920900894866396052138640708\
602458215977152243765589347463361820221459418814355000743508375124480394651131\
321389889273453481426282497037402320297243400551487641648484441305931348887996\
403358636368167378023906069711067359607970645932468073554262685265237167208718\
192975438960820855225787666992654285718221509669551149192727315214208507336895\
414227150888028924266178728256557626397405068507002989146130405142576693415959\
281845994666010909138648958477465573816635519316656277829731245102360011799157\
483508509996853523862159434986143621905691200626927383273673912560526822219858\
082836807749630473301301710754185218893809683241409232649332577660626667669971\
385291828245202842344478390091745714570539471825672259894143151635520922495025\
112753116870909941116717965891294532397662222496713490798300420571332577347187\
242994744385153296763223655324870378980294171971159997406582268875569807409262\
595173460420517981461850575212551437982477034849485161930088700539668534415753\
000549423901342632781589513958591102352947825097608346749938604626526223003340\
929650047026497335550766160462503556154926343769815355180708481216408128593982\
574545657044877445593370519387224719195044695156262368932570750277115679426870\
213095672031576928797561664243466757740149477577909135144062000721426835049776\
154071568323190945222310878941193095219952478966986683445854481991643134265610\
975474164888592522753685252529336044982019460753723262476394347757909183081007\
503929530496190462251013394941389524479697830314711039321907479149101824210989\
258524768920618700975709657927734024594779157029891083614603498757902719735394\
627243973807649974259510868906152125556387154618946756994610658672313344544775\
914193752210727252522979641982213512597293582663325521151933710113729607562104\
669229180492161352066074684517306797341076941567921118888056719837007902629676\
551189671080042750974836436976908877581181693943540584422863826729353483004047\
025423441816813177046883235440853390300745250149351424641377088512027733713511\
785230276031495575708980929784857207154239949732642865716908705586073891198899\
559015155300147211921382782936777070672740009027293522223076554383595507527031\
764428991692298681816682472270209631092348318314845193359238270623768842476571\
328595009833729330957525116551461104056484344328966961623402929520366718318690\
789263150218427782775500041166302880053628471997884693836334909788927037337823\
583072084777800837224760711854892117736618949359210050580382049872730342084118\
025346710022358815598349447579960768051421757952802300558241914627233424405392\
392332538092911114988471185966860801692746357143315831142023753701348561630396\
512738738015386426074694739830933665963387409981685463840827544156568890058890\
786269045989070853955012698288825690468320974461188639337389938794321417931396\
872088635106878356813265144988639708883777795430379424923186635805337318910794\
319303707390154430137094971478893529512672877561320059865139326138179157142268\
906694145810382969307516564257119409691130924668337211789738491778119434082694\
739702190112866259657400201305280425272700360449446723099581177018931966431476\
657387225284596765778047664583451089589191439097728790148935773312036341335444\
292211638397687716791789106661290536976471933734470349368873020306841988684416\
526291870556199026263408309276618413897703038060515876393476092202953211183318\
465620198941210186553465408204994293761698905770281567084151667313860240319489\
208313488947471662173134872935042916002284595013838528334064909635408196628490\
280839504688115199363572266415136355678170934824179067605281327204401726502915\
893578100375475631560317058309338973885009318181677662816655089536418538804716\
537396016554115983154605991304586422295156833037262919578622527721824471918721\
372353550474424227010097844738364287810860137953197125850555885450490012149784\
400547478447208667439170478728950143277134576831575834966582413859391720449758\
183674154869793739538891165851352980501069500786458041299867285634423130346522\
958206800468434491007219855580863739897782706421068677490935223313613525919582\
591600052765935596478392936426271726234369949947842254966664753223540752935732\
380530882413455560898976873751519122571626423840918590201835040560127065859867\
529316402600779578211400602368423994478123953711930362145526698713256198315301\
667092014285034574865988210040672116906817389588934885327045441362603247647379\
429774936646279022903821168153368651852091006625239067222153080374359270525061\
762620740410450151989793650804342365033143851851975098001525900227764241892225\
739452599838820722767046770863549766385334012598541861063625942854433947014212\
117538830283889040925465837590148467575494794685852378700054649976303873510573\
396656165884576264563874043982462937723648850903982244351702511504012761321828\
234924028844458904492181987836900547453171370526330930637609205517886679837399\
841223634384102787832345330933353967603279564050338154351211103356927723234911\
482261378456401151232610098401175588903607517612171419517373775177423766920404\
474506538710660885820669896207593927482903968008575078013735311918934721596145\
024206068212508374597545778003788060323546564676578495508635952671339634868891\
877045573357937920229956676885162809751481378878530055500654772766925938549405\
577598955577595462464889102553934162699346434151936557779673869730762980282720\
362740697202935277395092616302992536460935681698056465539038797746572953725420\
627101852474639390783203471321314944104290934109492448416239222978928286427808\
131138896623382268668738583580667993932250436169156722240861331417810600521066\
770145046942537290291935622859796124592258763066655889477892946192583759167518\
954135717159130842557965419170771660224588226223530907857248643489780357911447\
892229696575215556666861035276666408062161195001693038605026636325202742888596\
331738563514272711097159136400833455027623443893153200092495733410710063266247\
024507402674089608292456017042402351172841749243160888054791979852645093075449\
287146271028106820337683526824617913953187768502850269951366262775978126774572\
008155647132212833145687206363515430409671163950530833753719460523210486601910\
010759017222856170273835076890092382007521264146952256326756551120220975854696\
057810945662058629110694725369379065983427136451994579710074581366267893717301\
977357840543756850330198618939533692284325585276308072807997266633142471674150\
267426465600523018038398707840508589577674619685856161116093701786534667163042\
400089738749508526103719285247346111994728851997031671980047064979493548778081\
216237619609878422665319201188671060633190380221979999497406346549714461986444\
059251020173253443911758467244801387327795466796421110720753298654652072244989\
885146176838271407572847032534582527902588566507598558508867794545342567071505\
980849422576013524943546824476863060375801860262625739242784779098347551209538\
458797257862282158751285470787852926761506354703655906100716984015848297533066\
168679511604093853095571023075385316785366810299109259480364164081955766629334\
032944030288131097356364502115005533062806768372283391702081326269340581538096\
891959927631840657664330632059276686676060811963165395035095548837218162432332\
321372742445320983119798981065600903839337344794515228520966819283691238338663\
424656120659595460768147412927139858437569419724217729683490573966893854126660\
816977844243058681094014512228721553071309151619725714965565791158300943945212\
790950594314165049451161854796837490684222113165726845008359613931839229051226\
858372809184327324432985576808288595519710597166088039039079221095849036231300\
483818952874429449368127904339424217056079438679597726516102520937103200761569\
521745353347749186698402914535881929464969318566397210814133692907780697421029\
225047400120092937201225201137658013926779294858693698655967387449032789158806\
986244952521011439338230527605359315804000925288323918247694741370203804511548\
391035311683949308762596501837296956880043629843514741281002120628188047588064\
704154361545085545775215996046500878475966272607461381770281256749422367003585\
474979968615872715801322892047645375752315003802439587996100998954784216279809\
347258705386090006216026221588404933790139746768059129045540857258306575578932\
604477605885891146568243088923254177837819395857941544553907657522910163387519\
749654021251754101843217490639751154414693316164695029208234548177717456720699\
861442018229075829600977690829869215858296642553854552412326519785071377814026\
291524456665818520705280557289060236389139392947668047344464008415899525484711\
504744565598732698417792908630525740251169602983886450226169285175604975346873\
371175873778028150482804353003529604645135644085332297472900406876160098983892\
523721915573884283991972506810108198553003465628155277782725915766470297252510\
822412871297848528960694845488116833725597657360631749021115646854223735541271\
765461136716051537216892599530750539800230852755908953059986928171684093476893\
593052768137431373647355350913367650713792521967503872237807916616500462500081\
281200772056029526019183069422641468784301238796999088288127978870153638737546\
323572167046581550806516087309531821768005167906562213740783428463400665355720\
697943563192639952970889050304054966683904134426363058793439721767391890344124\
788173474859517525378529874392170300801227558537831975623793023026433582464417\
119277809915226342649895106254608368703541190555613594722127852177974306789895\
216438811744683326767600313293543365649718741033813159433748772445141784490138\
397228065886765033871048802984842179721404189132278833384606078614865178659441\
832573850747627401890518195931139637976523264394088190825697691299063051591057\
464618439935484133074262489849731526740198384974094110579957235961543182567496\
195533216717225297118485814864658969529149618504630548845006073377449516836771\
009678513607502783438237244493946008373082154626518255892027247670840644890345\
349677138009333903427874242734594312487740442306503284323895819719003312584291\
661229653092153148432948936033888678234221016630629640742653159344897765182529\
899211332296700570428436179725668023792975554185133177105126217754452592754732\
809604076431002126940228068841734124224130869630473860827845256179034182031819\
765646748806224748770328252286312484788355215081859485262592006758709426470188\
280363822546559730277798883453934367100317819777519316357294757196799038247755\
804204602971010842521922746937906136084710563725181485051744254079588082249301\
164430820334071711273462276454730728862143439291166643125988833603918741952996\
000031921585642703779597974116379879358116497700062572102563077780369129761887\
926959086497570772266485143692874667499466323698300480311549307283814363044070\
318732409038580163719027407924037645868754601655482677778562932679672404334869\
594590841715672477027222154639966692594553447300219355594621521667209499400642\
578689865512802823715895374342069853824106381458987022010962749023772861366061\
436348466085119063235004761205200554442792810886993945110154920782797728068835\
482667144423524489237993058260051973671019905885243689250823949534735870805245\
261110742688699298561934171346229224402655170118076983333915531718811335141050\
962315177511530386537063229138806174473425348848941077379337641756988377679465\
317159315798317780029966549343821287384586923493241317391890894159009011766177\
154391002173976343467340582199406220868159331107681265934506175760286666386283\
515393055786782003275958814744164340554755226069130446915092491188441141829044\
229297538706024618895782589380238022176805224460964052845084279708850473660249\
658657508650466097090834559395391046818493169774529087352345721087088157606961\
005923666856239642517988749327424447673967244539744948448902361530098849503689\
206773660570287788281952915848380654713488431761987461886561641041247660973148\
570109023385687852135886031024273174385597511738479436740129464291792611214338\
070428319430142394346727738339958154064629963925384221913367265513865059970000\
881399188226475526447627377366407363836738110952215520984149197345048960116263\
810014934254167313651396394099179328260267008203652668905476949413057235309221\
170548794106807448918468460312309418446634742106366827291053067639610668709210\
244168412860101095269616998886676579813114415261770432679159004733670083622059\
998874509751139575201607777537236507899963281151466913210306068886000973282867\
577292167130410524523593169739822711934377127602750840778586415074860456256001\
564654980638759905644993938492285616225843160696949414872066537761795126113320\
889801702140115364573258904268243197696035565251848545403050232724496097426071\
198596028432137466941951329696346828261907664132856665678071048013630195238824\
153947443741994595067122844861824420390038554716334499489208917810118496307140\
080294513495805887355634754998367366254593333163653618490867810577029998925865\
765822818101915873321692855790570691693912397120511338927698559593287666095851\
719048074395449119573664823421711807184920537640332783682958637963108251077426\
147861118254442317727545755076916718607266802305170942776973680532194169519655\
940857484749964584090272285965865865272718098102806875384358947741200340540632\
354374039815301175089444722056469468521647311000106439410897213794137940376742\
738611139223409011551399472496298353069890296881486558596153122334929381654010\
524659597984874594434641022149347594810828610135134229656503581752039085959386\
195701813034563746028848276371314829586342078792306629838652804017818836322163\
770445011438409161228137797329413055079895223353655334020134963965641784913166\
202801098395726196708988064826745731814312717874651208488190289976168857758076\
683628270301048236193564467138301483781525625152601786983008308747459817927779\
443248730339239429309272557833221527004429847961682975355956334683383379004677\
993332177785103733204620712003594053139160748683871929096345615959171852628558\
032148364091913593663751847662296574692002300513889132229941687884589308918667\
874252569611998132720492696303713260995242794980646112055373580884972775747336\
833594523823078050119204668299996187421586829396383324686687372829639645694717\
810654079446535368850597204908135170237398220227830495590481492435169145261136\
339247479736934200091579139342104931577447812164301243356498077923021112186036\
956730216282828179413072245957550733726465922863152193858804322608525569858272\
660881686475981043726976795833950790994759925755602690731424843751565070752072\
224978339082073829107537122518910532280411284961071235603268362822382515793250\
857668993321607511304887640523211062114134804207788974159837819608232646957553\
348460650889653234381196207755284717133507465977207919729433139204865019330455\
581630230489825008371143791890475700981874330747728194209985167894268268803493\
463518072374486712792808502471528273032411921238340212886815658428772708011531\
736914282533991655968890928346783882839756759049947586703881962017467637705891\
552886181223201547730821951558908809113447388100730487342580988488327583003458\
245934807748668902138258007444677628348206243220212193635054478445503652597379\
088485683311568024684654002600462586906775383819610091924310730760177017559911\
337758267386591186213454151548369441009131819730976427324753709515626793699109\
506675870273563862608432650626839094784319873739301058781766648160944612226282\
710376760315263328861732920857031990184333888857727821589738155081397543911039\
926248163299693707574206730081683747069271078866337481220409465264582087841053\
240170109545822412208984697788297876797543531363506055240712641295165626938272\
407049261321071091072428662467172760797441114956263269328811268293475653607448\
541318322512901301516578875148160282406860352179774868354198656034574253875438\
002443023512595059173378766530672423212235480390966688628286839769544672446552\
993675884590380712077477840195320277996786283614068098446317127209323697543847\
795663017050500469144360307833861847518504106395805458583555267146622400311314\
314763394668768915983139845849658064710365804161736188354348673434593098607526\
193909062839049201997869144078091436121158970140533127699887690318004746116476\
693212108598869409174252401414618383277499570073009176312908229589134135907905\
456843819296866901304726640015157654972935971087408195669852066351062047730145\
097142112495150711664064959582582982167902398535396197575879634854636729850920\
549290559168328295022897633692114999773298033532123583823534297409976893970752\
138688067250410974808741334162715324061695994032692043812716008858295855659901\
668041336049880633357737071715175847896635413146053985753528548122192319906827\
021102254272066239684266117190593607348799071603348627752661621818010540996581\
271202855467790437078384786025789047868243410548531745282668894858086192337189\
836926908123668205390087349307324953436499357446344949235682160733170961435671\
255015760386150140575010722549708939561552402163571826544233030486332600287968\
207318031036164699886346085838221530665432592110059323703020359034376805364928\
933724792912792392891154212193028411577389219933143875341947529000954075680796\
483794077095412050776405484245633852854381860770693008597546352103370034091160\
858887407540591780953278343102165834462407190693539836209598042696380966667373\
955047252516899350132984626207461208688506376003587818239139697340217062178908\
533944711823217522694248454329068152901280998530049889734070279760946443348182\
731793457497471865644343644247121434554750097979052257840880356213217448973498\
708834804044064360265573072499146014852447734351455694494577874635947811509937\
300306095555810140680094102976989108804297461684044873466366730474864368066635\
032199788581701688303380383885358888740462129754832435737518792372269130642845\
223339897517735942642822770835125186025118135131252397353599469974784473992734\
922510503187578192562109715169443452365391317613907796449487084867628545749800\
294685562770817716123702266822724682055059097169330431714138965309287254510381\
083142643703954478385459967349930353114062797829597741241959243655272884726967\
680385875405373727174145012482879209013638083093240617287999831197599022676363\
463752008390762932312815997916964685184763335187950054175929218412692034427554\
044076788438207779178867028955215439087767208090052280597424324628752295194027\
357262560865957857983292288490959626744540753110824429500163856611722897292631\
424295698186800620096502029297294165738980639338041530060440507236600329496135\
452823476034087773300222559730059777166189029023775229552645379914695495123423\
268146198625739337493502913383681682097755253259409934959151305645818125004325\
940634727266154227529082316435170332386751732365877777356705702832919825673120\
857696577500394637619005680337579088934849554387859895264316991637919549289754\
957179150825345149762719491691607186359475184679105207512637923522827546865711\
514732477613572433834131804368788551829011397032212965870109447768116598774975\
113751267961576432160169406668694884251269873773876118341659553075475511213798\
201530825168636966556369036944627315551070328260484177106947611637796612920130\
230297230002223778940249435197054785918932228542013235102441239639072678065008\
656687450093974705955485547239700701029846872364992733722820509219668630890100\
123513889597127579488327702236423483236859675190943032503177529737533721284031\
458613846225639360649445897617611238037621622789565331924817386952877871662378\
349477751388689177431341579119768970042363608009369560157560153264536196049879\
987133965843253008574975571176813421302319838016555118598919462716562535147125\
029856272473774474142987139818909924057490101482823715289599306104547307086395\
832069687481166997779049616189157966251480316266139932914336784035573959414396\
443682041128535996665671134352695641094636766372913550598572279944711647217185\
101520164077160665014519780958411977226502503710693657370783502643720638148063\
503489818024055460663294351768874278913572367912003071566575588707772029061348\
503798156215627033183508650107454433066634439653646872431265811352711106527296\
466914448210411050133572790202930445714571550859626767369972545082696113954178\
992617025026203683066521876791373847053049791624808857141139123868814581392191\
332529758504311718533466037990274042385858383564036852038093604744220518685438\
528892606936687757955167847175660019949362910549712785094200791148849143392855\
405279283840217075558681352288463891462845590985637404437917860212454619850044\
523800476841320207274505540712675969620276906042325842067964733514817652397457\
362092985066861362223004969940307709768907754291858442478901827373801890692634\
044623849474219556270995692980318112602099409479064942733161981373486717153513\
968595724477792481896758260961237946436160421239481500541831556056361251970764\
846127476972753713379234056483673894170701018080461723633095509013593764262410\
557252410067746888840702759488451464632014222000971955298059681787433106977127\
882654750306322271685834340666418242886656675158024263756267056148281026765378\
522800759667592104686656870183301285412624301856481835758605676446701962325134\
558686821874188242567564713625630551771357215995988259148738685728689431042820\
996350925732957035906125791268425985106685576288692851917407477781950773706301\
682617214410854411331470451201631318445050463114157635666171977283071320530585\
406638509317310633088731300545537305653232866918240755714912760490405705563892\
511085013447908514344513442734860519273324822581760835434101452531826898700960\
409136274558730382467827429682524302969630369808723146086889593148856322310308\
744295201503266203980004011007889258004700597931064581694580836655615186314983\
109901786818977488973175884175471053710997760164340029765617108893247111516591\
261479308332441641420767250767832168667175983530464584913391049280858320257931\
735959644537896447812669914368460674176636080089485419771920627305930732138502\
477162083550991448769278612737155561297855528180715125537205715674744979122154\
165278639204804928929102850161917785111358543593612215343726456954592500803797\
618344739227851795403935806433239081135267621973217547218569954225265985444791\
161734293689284618957065412048382664658865250334825492176028542286629727766625\
231045124932327872774422900220907267211357015463586665302207358967449391270251\
088892030108809652806906875600060681065709717152582713567349606496256741503267\
802212910577998327034101437474869676032203226461001582252571835509447049157224\
838423409408606094005860533442739744615225658493281936797552063853312622554082\
867187187368689698881437718404264954479920749787059078111011767450498161093152\
860115729635693440945807718000249385994724004232983092475368429011301242996847\
229661657322281613585857477496695616456978641526463220702436851819197346192869\
149278707273068849669294809274059131300685431975249357300476322773896069714773\
070067480653002576939670325733439440604514790695964358495118308605126403921100\
213505079408719176832309958801775983436770916235286405055991246804024312490807\
408508029763934207609104103762134728951495118188430537947545343603513846771644\
188369755207284997564466422030540940621561905255393364773133073942487454777143\
631939178310942571142468012096418722696079126369488807558422325584456760542053\
301380927483869555320671327922384158603156650960377264526803799440390376820274\
490860617648022808177921521890308478391517124320717895444613296525122299686685\
173903030207490555870639199900997672822901813437057821643035269840564981742200\
603932700466023604028594672304644752400725531810044266469576939316911174324152\
065401818903693564605984704164789538294430047287267961751213268342250983278772\
516301631725492126124790256604351566024014063990696663310344689991460167548026\
764213480128027893783039150573323912186043216171581459650055856144260609132442\
721680300044708833812442048616528740777231056281026515142720208121370613189618\
149641644394016954553021359066390316732971762872801857430102125727422539006066\
538412655562735422716898785908813604236599168346780131003485735414524298563274\
454505394830701865961894837702104670724053160491947105541313874213827355691115\
457949452696135070463727706248833890461240312663939060363605618966433356662972\
262717236937442994823402181085096322561590915928701508886415022503361843988163\
938480459642598266030119053921701483567193357324372392888710635563971361485371\
477973762877717342100667323668728095880704458863383267707940962328938499673078\
480590988518994926316598969618381304326044753047923156942796621736047420055926\
720327886366451157126213617331020432543757160313976134924070779943063142201900\
155183193796939070560465922223599450228955223184029929235817034486731869539371\
901987733598825520965394925434396633736940490939868251962253871487678401118133\
564300872040236245732389136117184043696758889022398029199069635638668666112793\
725872232198535041214870735150516915447111239489308839784721981567226516643833\
652841261142898566391596612862383927277989606574443293526556720426102380453424\
330481971325307142152909136487245773948242036420330611304123260515724162481762\
625688052263107656654408442349296672231685264093047288844516751832369945816915\
197690313016206564716456171125040635834966466294229367096726124869066058725306\
389152095730947018269298102356608086522327413284246808953084146897405989458294\
232797568268922421575098166826272143088712949602860303929835046982476080243297\
363600874922519644376137382687294885657806320783311651085554124853878882029004\
245143530127424884827016838818464877085190732299275715235664914512022148869235\
704587238724322926740327490092149599894395810590848046328244141882831049079833\
877640836566571608668044879137384271944007214853139108691649351223577941561237\
249046842034843964762701564302565463422755448019955075997207182814525166532056\
562000772100930410844278606417400091700273494248158661227924617496437315306827\
931294990974517800851202942867264904637108380911350835043318810278342268366095\
440246936404022945204453565719713674484477151347451916325583441017654519201330\
426914637369356709652464577305487301101835695505976917850340139637467311163974\
815834235330640204349504695927501800348626485437609739367262780926136309248661\
060182358770376933391975007846022141195367912048135873727896984559136240275936\
903336483905904959448738620956812130391124410904302256230035587264918131783186\
744676057168022575679519269587551425658135158775938383693063191564630496644632\
664817586294932611919367203260763721099985000621425849309969883370260783248301\
705496062856341743156365420458405271542046109628509501952607289663479658264455\
138710655938691059470807500496270771957633832171359311294214302206625654516071\
585547840420175089937669057704764422047096929015960858692665974940873668514143\
845151394141386205933821251521756060272971856216988347777177631798179550044099\
831313586693222587032638146606154334480569060043959646496475168795699870642237\
110638710205319929381521250702408969936524583029511805257406234042316988391045\
182176483096186528363810656597156356317458100261467216680793451791983919849294\
900926975942517056243971682928806651980466214241357070627584928612810785786049\
526299478377348647511660340915416831166577087447876178062074880082914117736402\
991035162239091744833107096126728644755176213714521348624686333077685818097778\
607401100130097437089191281505727327864317468398152713346034948590011087803425\
047063334482372613516959925557899466929272323237085910443043043579818850982056\
807550674844581021072092320068052250031892614054962655356084091548018266203151\
704883760165332126967457606261028767837191804999574092526065086099827358913134\
592590586682295742885628880015792172759982968899293335184314680907985388900770\
919873344791882958329982179102717045608561162384939355475839847932160391769711\
792130367292748187198857938725042222437238419032901575775991274593071349373233\
659367545339567752660098240996445100645035360858947017945964851735893224443460\
674900183719442870704619103345406750317835705772573085624195123245126963381497\
083159894781503300812881862410161875719462665992536141605966232878743262309241\
619433033606054340949345812412875463287625027344269223893847906872312923951128\
391442068460759785042477452411493801927432319799170565311002176233373333861424\
618619724181506302987973912219606133555219650281188881684055948289276997790965\
403444597240865421566733850444993477672861478332407967899176475421171184275411\
171537607882888286548269919901771303496501609153836525496471955584265820197033\
934675680485741887208118721981537334942945734569436994482437441909894512423535\
501055216933965594437667636298330054825236078009705851563333693738913269148349\
168101918120007049361544761244315277858474407892477543702575000914783365324758\
624635459998174950660576144346740116023655326860691376804583392406478770390303\
072306758512317765365093130426940198771783039107046734876224468924966558871610\
688846405582965828579465054487437169785057778651564604058819051637005910378479\
176750271436303938178406886969029254071307148533551112583061548108814206995685\
075462987569648375553992285401536772067077298948623873357047894729663822163976\
994205315421887959203758463715033716567525398985921904426394645421921866478453\
292259370760306446564229683484643879203491237814068684919026060530113245735721\
724774907523793719706472600664745948616811076717350133166424658825847821016237\
392992754180454257037249840546319074274864311250953591007106638098425608500761\
534107093656608685199304437430121593512745841112904459328736485395162924726958\
372770720843586189053631754553140016419822265316024960861274256879040275724719\
555536360085381127342270494534920316269174194284624577584501837732393598950198\
371445306818041511565565442694744755249464751363128367268063882629690064163276\
883736231342060233677872773901430470578882938843815376562322323911321240240777\
976181581451263155747063487847288783922605244873242590306343087549543802048067\
432625083816468847278237592745951454794475153829344800098387878716990029608262\
549034245874169192341232380433302293710258681200429112126524467099682580158026\
025532059106503903638326679599982793263639032113436834399908761894329396169819\
944754772601518320780690701160967893181164253186202154794388018207535582476576\
977245184274480011206110388397106785766193781937412802082578197617061804741193\
364672294188698643152449279239200355619184018485499734314685870970969097146046\
006862176332947345352500348559591254598728558093006805886323030530607894128714\
532435106542072050100431301308392496569222312252883779541496070283831681820452\
655724368574328679824482982559905324809298440745215982624458662057428443631262\
114448084018136310644133132758292901287155416644495817367158122912254702709909\
600940556680592885519672424081449708718643431278624263432308490931452395363658\
204448541043866836433320146112625330076183426683785445926021984452499178166312\
434206102498022236382483063747345482466441499700332777091035210043651298062209\
898145902384832104260422790516354636982645884392017423646193285941992447554695\
375402148972654687154065398377410258587365977751507587824521750060062205698495\
559113978635866281830195536771335931613197824416653395981738070077059456606113\
346325684937524107177518345579110979971616876462147704007180850097126701432063\
460576642351831828300707353895014835259630936936878657974048155019915691044092\
310774639137433261324969599112178185264138056238101086906544902744129596969201\
675006165697692126395949144229819366589548256997897742602986564121061990426594\
171497537642530789960061982468730047791640216745069218023757951305508665310188\
832941895347697522518864553862406137720777944064467011935570148777164539589118\
435151951657039926465201337850722990891123571978016840074322446866857096804996\
839161616843705813704523151709049621529519579040857517826232819103796764605849\
325873443228233510283072863110393946833961737991962302324642690693762211851471\
703266012886442860815237510124894151373588710654173090799302540108129138297683\
923557463400941058999857069346185894228809773138411111010657397082839994150285\
089915450568720700953998728604026060344168843733869903814132996080944534111613\
483065295550159063317809351862047050935238749308889650507770482179839587984693\
669738975127379260345983107861570368843640252205732454677876637761557701634783\
908126831074918049680060617600759340599715050999004320101234152504701416142031\
581491755568532959699769692317800105214256124206307240997673094691633965118903\
391897277700905062042695420111475462424973426452683901906460990641545694537066\
568230769282567356749860224334301291311927859891291031957512605295033695386117\
956156548103939114891347290122721087047352965425167744215842859993313486191456\
057787831521681683563105405416655043531209629093004271558730217132621148381574\
123089692057796823180559245104186739736993854453042827290968318620481740770577\
091669698509638091469698588997190366112136304118815166995644984898549669135757\
340931664696134781422306364885923656805261960303866963929904565741627245237327\
905787426041860796197179036635616197802252418762793340829691572944734172226102\
207623992517511861473923533988358415653002867161579531133707834052197869678488\
970953672678426197062702426186511472220919604791336327601406693549593550595245\
587442980338256348726811576515540387377656945334505589970397822261608998179469\
428066661115850362423428331726083656449636347714735573068104324935030316945014\
832922163636745155080606245284655839597761142094952005621896872776648029219106\
013384741030094217762780640558026238879490221769738553416725564528185617777459\
853302965049684638468126603901229031439860576031649641662846964486157829624981\
768825611036470754391677181452274510809214211644402615585225359646176914879315\
801679520172915379083925242146458143641629233277415289393239423774133685734281\
674604753539594782890618039694375123331572129119959773577295789496204667857335\
366471407935497691932297874896936856550313401349041494626448726746535593420535\
832839730762545525063111705360381110519347358693521061425296085989873606153626\
750785986697353133984298294098758783174720847014864445159382420194193351935604\
073441776186538898770114360505563006262578428803411456842217589536138067942701\
308326689042849404121978718022813091201629196342819950467819854151085034508183\
893870487248847613091290087699283282643592828512910920111272760812809854382078\
660958750467699333862438097213442101426523999151115304569978760554274547865999\
132167111860968268574646938768854994906886365574309069951283036069753034640847\
091338735417098726936698381245547973572892694854460505870006883995987655205872\
099265360745402098236198649262093886682442417657988868217236632064174944399954\
984435781516322970282324429783519008557142749783664871447374392611332117062656\
616420477510416095785534455056699973433612284589785059363611338625729996319008\
387012725302876527136908582105089853291375367618877019823626444901649163815637\
720961308356243827532490390132527502524918636625045798608249666690859270290834\
458178973543299690156806920071797378503541322220280647077439257222878287510928\
379047824261067817365832476964348419482405212177581589235865601003961977881414\
327935477511814141267787751094558083471156703030370714187013683060436403617754\
958794078147344367837496791136013533306074742166402004530465240331991302439658\
915728269302036196444789695122598022534966634558871271129356886783697255847633\
823611317375590912008888732612432036430497833689660391984518328790409770337317\
417728650997266445762882288800961232561712472536427700561483005794552069074092\
879993533974678562443182521377491051266527734877900851920367988265841215058267\
153770337977747684309921958298985742445008530546701842021534003864498187077810\
512412041774851953720718585043337836721690932980439997616829848857077380406211\
561810592139189066590596917626699118453739624353474455867813467874665042996918\
784027987626681352382770205794740472470928057707274289259269172001444346341774\
941375313337104467726217509623282985741318454039784684489381873356113005698676\
335156468819219002123348919505024177618431974708346454829585134704035850063316\
225992212889227051344133632983479037484997234832237453542273763591896887378784\
223563988630818946145838397023670223443870526751649003204109607458505690728458\
940656091439518941398932900595861682214831654676228571429761832634399372417821\
348767293664456124000229835982879510732711113570840290490589467345040699072153\
402359251314154372910532705563345314207213001350811979470076092953738746033932\
600697486406558373815216518105667625560501493012256699947499244499020242274776\
992062603021854406753394055268504684401056901374473815439172884357653339161782\
284488045019237313429056541252947073763858203789378856287708147921392741501722\
319628831840910176606152703952432638026270578010274202289108178798243892520293\
542247080943509989467343402632128794439486058444275101575158863085066369594896\
247809699050003729357062138628967145922166223352269220744319321463861269115613\
864722831668724207199413553258093932333123292195490453075875053272904525859147\
062083030993942779467251862025941707424284473991698494790340397066893081682069\
110638648584071633437232856649383092738559443494370253721467104564305282935402\
085753128049585547790840568620201016513542992466993554808305066939456918117323\
539971517945608583618707286806987914349133620108502190919273181939266244147441\
135900700658263031257122580394446616710621391037279926176685691309028644994964\
061061734315271759857361855005567308369177076092777506603117481942362296814843\
042216249152190125423063699523617381405728137829464906967255712843254991424482\
677857524624507484419944713435029860992064177983786084451001943018851319583260\
879428013552230184628611552245400052057503032786397835442917446574097008829437\
207356784061215606837447089424322394630868899991989479080323443025491433810013\
200019992846700989750715633219164069534444123332658819753714916869190436729735\
246309499268974456777088859963352655599705091544851091142512428712799910223695\
415028750132440577733916843491977725057367657634227297266176565255281450354262\
165170581921348696328441641405886776904121772990934382386906085204078805598582\
282822274729337495778667231268558867774507472839170176450933687015244406107090\
836295750220715435665726679045804371534435966137987345604664069559897388443578\
744644937624780629513356442494216655179099934248492941127999886428774241001200\
554772419373985418721383001825371588840211698153858324579256976921928342218973\
771399068305433108461649316108842483094500280977692903400212854182568082482828\
855619889675256741937497916288537651831827278976328512322282918906796130997290\
703223091184374791695939595372037778478505161413157319489938556054297217945834\
578482511544862706819722107232408073391025102307335632314908845497927763814226\
061794568630504119438455253043978343526032724893018656539585685689253052461279\
867150996663836153872870276661993931605330017107826625535622682169588955852530\
381533883168299196037151630804179979008372156764433344598381061988211602135192\
136427537194721503129573012093699638414727850196646216260939798116460955896772\
091470990499046240468823413238968102044291094667683864122823916710294811531557\
439976852534593778496947185236779289677142742737372370156575639465779914598837\
842402083351427560602472990372298853293495952552022656610667467179284928115691\
758205330657090381284948551999546938146091243806837627636179952206511342941357\
628574425455965271270969474857185024013386528929364128400647005570838057604721\
283838436442728879552402423350978459057584918473536395059619330763951202695715\
251514695219792912915741274292283454796768750581154031749065706451634076921426\
924268679150047909683649002709236180879747282296366512791199486886177502256547\
655019887620316864262741776414068348443568618506459217135156935589455385859737\
565394430921194781424771274840022314658602277383400756065951666102054351940749\
456374900140318148718414094971668519719999157342830958608611783122718258945136\
215221113819942951975143162027231332904189569909852160054940114477465780428202\
811960202509177382479551318595577469727173356936553416368731543378956252053900\
319350657877613158863057200512287726380173487037860295624596443138029224427990\
772454954533553777075996540795563696869631170367215578621488939492848120921888\
398552045513790813064346874549505209185424185951377148880618087425603717858300\
199409238260578756880293921137378885836137803119362083285558657497124754213588\
017820286678219037277387855500777162706351162171268399522953514663509706864075\
871561011388627614258912903383636405004318328637931368882206177675352103457769\
372255736465889863961493288792765281089251250485738454393848239572761560314253\
841369191878438632783049552701814101145552243591148914836511886191289395489527\
246321805441473969394038053830414961328089861906392290487835242184039705242959\
499636323296512229458910707883434175627243697313053496467857784142112544530394\
058626712049440077525913586747905985237948744174441128362332870550432040084459\
422028806753862977221372657512247854708310271795313067971532240419936663694348\
642833099529494944390397255396813902201107920293725947139814630704842723012348\
814804190126092231706726280512140543314549101534499881941706356743628827773295\
543055358224339844316858412281682729027699274642756380417341723670549049053404\
147290762768246118544181464869117547951452147990854366694015099877199158657915\
350425497444518186220363054484582542362727480720235806497284621437278976288360\
518662421910428718071356242826602097279670666007454920876962324109643736431420\
289392106108814914911493362100520408359192368281014898645284857669212503001804\
342803732024095184497987024133551520057796093101061496572923379011482296139625\
417369404355129646374137101527967712479711636465870521278808614895002181901383\
916578751868719235817682771271801560337823823520619847007792590568861560694569\
375967852329775162481230694002104226809119484478764698913901394921343172667054\
149829305973950285795724128163555388602884673354853244633710606912482774393474\
635324349634290937785005392984601756808678822446199792801838857016904987193453\
419254060575981149087663046844434872039736306244159577716845365364061520211299\
915834657256018837771650714528692357031197147377778220501716212519510460487648\
080332845993548381960624456621842555160464389412312550724082572345832553263442\
664162272554812929909214952451314259201481234396140370182649779241443527726615\
052166739897416384828134056607152375115200081334117747611267206167619588805970\
515337197550500487271153904308010350261388111535167446117422963565583376364321\
049907254880658258438924775870277529924621072599162973998350116715597401945933\
475504005037869835022149937231717444249401016788996940488440020808140772634258\
086575432118784526940215665124272885265975801856297293448372326296485899986165\
283718259386142911582861181005811501871576766886030787769869029383185540677325\
941308229299089284242469424771241089342258065734679321835734062249581318106627\
204706701394395623975178169680875817572245761479145607525020914996553934824881\
806362461491805907773570038065623113884359911085699986439678828711887705541507\
982885820281400160194401255253892570256334944148473185551813129217713120002604\
109144819376126753579022202173675728079905408502986173117554613891366788807054\
557172651040826975974064596109473234983332970759057823402556393471033881107016\
786782001769254394222230853693403583443749422965224178237653950023198770228363\
092403002141668031853376277431169831845668380887470789988419385242122152936033\
927393917774002249243501706378488232230276682310037289672061619064591465073504\
220277471310190628734489150381252396714002324593139164306226200689479345988491\
526322166880524510015521425823604989687217931221089733903326234134383253723946\
681709392164416211561945750657957687284487977879963060376464544167875265354972\
614958529104143375968483189865366438123154492753506951988368485686587314731759\
175197545642720592568325498663897991214944833770775770249498602644287708161194\
826322283919056576464914830249570283739539316293491515397822231985157153454865\
596451520752306437967470368782510774433285949144349829730704136609572179822761\
255517161850428666954727763176032572434750938020195220689362782098545282441769\
089173832775271194972926778692438538141430523407440504255633564032655434661834\
522626730154262376373711109243423655806488308308462346791342347941882145296859\
426037433997370813358888052894280252934575297837596241760841778114491498113896\
481542256514303228090564152343129509206888559025782020275895968882496327687712\
154525909617730670361208953894263097005400248275131060630393357813728469696647\
465522938544803538415525439159314780401155209630940954658612351127462025085212\
517833018228929666656002803772029195674175173644997453439424891945372464723614\
869666683110784193777027294605959152143095403444103307512638297967322293129917\
301791448239425341703671568163121616573584549022838356153297424592188770098668\
245027377539859548291438556071626028114267259599544456604548838931919673030717\
648628752960643707145013936716996997301095533809902176975773861570956681308537\
304493830377606042874293791084372877695991715572913141229783479479998242464473\
069459923032317010305045103727260812782289568512765070071484697061510178237396\
520443915372751763776978301084913567499550094809232298133678128359993071536941\
153365038319794307978966745204781816814034948563918091814695108828001243490123\
393506007052722326347557246728332869371566825081548055558132862890138643621535\
990388409025229482588016177695303490559657213593998892353312545750299733036575\
542981874309728658522311426829650414752037385930292841568998633102859051168773\
556594384573128089614716810434186473604665967023400470577323047968237262610651\
125484260786777760570501646633701041679196567804362105354959420623388767824993\
612303165655955866059538733918896356654438421219713996924250158586658385967656\
408465745448153886066791260980607149332647368393025006288268062363609740589997\
981472728208963107271927512594521315707173542664888863045644343941846377142870\
386959272399709517186606679258034987490664112389450920289169300551448023145715\
000605094618166342507979326782282163953396584359727902353753036225369109450886\
073361553697621462450143325803997071691937947199093586786533504341408949496586\
538382006811361768328826059406200027360490009001731257746107817854018097062030\
100326875306483781080258074941275791042948529025200030457725262211212438256983\
858055308799511219642380336427649468691553874389269196496592637078953327219000\
563561780980762912017933686402042960260928362412540513244624181490961866803455\
851747110223056550286348232295072627642887091059084053387907578557152171321616\
123200190482079028265141258576698629063693526243284558187392502789190905970742\
603659490736411528367902218707465492717899023236875005725617200858529616206302\
823621207645792112913983630425703992372766335248102245477749109323264398571399\
834529482255962043737856329582124971323767731786558760606807100161444796476178\
172439792634353534425556206095253839033494611960667320760680732813804883198108\
227652920697044000087365493108242728569231827717439702098831721440748418514623\
274611671436996314701708765443573338648829127913685289434966130816482642297540\
557967143773722210707788614586908532627804131268469116586403555595999176023771\
322205535514430158523557328346706426503776332759415452260760371439854888431515\
336621578278185091231311666906392357374455801688294015138843030320500389880081\
649025872537566694763724568286207856275942904842382839123988056291138900844248\
553371440453756615012208536920455728405193858430717660055573391467630087227566\
515641702343478913792014920461556741284927606194580135122846100028455564622161\
063211587040744341098120395426411919246142928180066385726708794645364432778339\
146348340112438358049615784395016755276187031930710905582134739752094679454224\
860348250681056720624903037166909512641960361098271226035922385168634973885705\
610356382512004200417467591634089684621431894370759450794295072285025823070483\
319028496795562888907869209518983189310885682281081910971632878149052191375137\
975811569432423312400493149138510940284842670706265058952703837259008116861613\
951049239212039262151304890145200476075596567609058747768289392446348535018988\
233510148917856186626591316802740051099892155158350368034443634515948409646918\
040928216144267901576237920385324505754770168476782985487067580247218127715174\
521840755361181487542074634405575181067928169846460844600479244896114036894407\
721166931066716075983540725965398991296719601549586334673276190368677136034284\
970035935836984042664416023115467218284476105491018866654123048876661931668442\
594350851562327800402842083778170624943148369466709924045797928776714720870459\
187167422839479109333953152293648774961470760197497533543024379891570744726254\
921027131181010022092281683707521517097563667206331476664389613445671363225453\
273668768228554126093801636101223361310437605776149313206202220746643308689102\
096106433525981984719831937276314267724732190932589680657242578303590505938500\
190164250106729341989382394093046176677138061626472326740481546525976148940165\
911489208165522982977720701327898693971944872420682227189637551712844911422335\
028362573134284187111748209927469752545867397219308674034888329507001482340835\
086594951196745942045747557642385225966254136891301873322130086119868452517289\
863729264974206899673176512493034907163959951079549215659508896945810752446582\
770960056601017511499528474626649238333133834620708582473428781360407639474401\
327688142542567677256113730568812682381972023515793009892931032934203228686067\
954932009902124304318699277740795297092323543683423967605173186702165169734452\
209439068959271963868798936588554091389325584352994743703180848242521810582621\
296163838982402970543938215237510484078242688483004539126808476878176406464318\
360075811856712154947792182437946298236450739102224347450944451961469705641129\
664403427680086957916372029611300384442817660710046784529743815068264946538078\
166792158958779394532435811111429597979401053608888893017676334692004961214827\
448632990479067689959588780638611633919174881960902310296217604239976868192213\
304450912556149977374063167954082425542713164386997526423521131024111267802023\
434438355508563485670080437193221258591363025498612342700181833380788022667824\
767501091102627397831999354870171491152017157654995069258788846370056288208694\
459090938484297684899664495556548258577636125534726219247136262164630844250887\
275478336777032876189013829443859045803216366014724557943362153906958759462426\
679231501254631462375846671447260578927175269123681246213521009622542105756323\
566868903400618051658620856562331915932944694151662777490306748306454226576801\
153880818338889486259321988218105946815283785949441769929899136204469156066881\
984828615273996913735134651089863061957388355263264046513134784756788852449529\
808764446117806159589215481834304953759522578129110176199759161573765390688574\
473001341615545119058051559902451560087940763311105451788283452308648296359806\
569412688191184495552640481844475279590888529717766934906460760116875178713448\
112609398492442489683586441611081105266413100459512511343945531374246311916655\
367860661601517726963206262180279415316027263311652450658624003091884934708971\
018121572528216568987794741859121834715548400058076548500271785621910829341523\
471223935073563768077344025521666357028507797470762741859952222026356648605832\
973286700503994728924723279542047638041002584041048239240416229953768066803436\
190951722277518028756730448273553126856593494234480399021958704463361611135722\
760279431496844843541447656576783894904930283087201048454581038667847063885815\
253906030637068386102798550263819528057412818863157715848080285851303207253209\
480894940125796532220066101539899014345593994194872442953710116447258576507203\
214673519469889678200327641529984487183065025729415727600791051248124244249424\
419588813762349612311750278429534613483707272902351282696181640658643699567533\
683558558282816065455965370975169972263235297030359132073041829033375319153408\
818222768440698536147997000681848627808402228915095092190528869315397363850325\
711638147949352565499552787125110377973801181779099927194434395049648741149230\
619662523144673375933254313666569872894194938489804295770779785858380632196911\
151067940194153548562874980043476579579130025572469942583544254656851020302980\
682068640304267409090082023097664120287044804634231783715506629483599823041143\
080921588925402533083522915310635967315277195782821886567956548506793286995260\
966959670441734133637665937765329960945653792853583645047154376793999555169596\
880753317059465933281809342457307480307172212020876856510314205424311523597927\
283992350204394232587506515402078166002900928475398492323574742726871024641073\
422885771201232919559685437961063778298179767491153669174920719284325615343879\
400516308775950518969740566767808807838871842744538418545786228417282300610736\
005483539383134681601555987531423745224704211758588891410371067916584773955372\
708935616882226712149874791300227531779653851213927952706997405340993145980737\
741081519810507828867643210004751444285907436090206919259952590013514439242965\
938119693596224835225242986159488057874860953964446064379037124699518143865754\
633918385089600962783642868071098447776426027537035870224555683720415471083083\
310203106479469005167099708050820199108702786848474304508449597527257472541188\
924019441406121475491150479211149989008545899514116912952561369903182557291406\
518608503053546934379426502952270111974707507437932990102828671970274530804659\
689546785595781196285297859428968346261406279172524206565575749037694803625717\
598255414323735097098578763719242558917466550892192235227168095640367036944715\
768710448931595353310014979029585682741224336980498693444206909995808494403078\
919001514485879984677667225073957439376202038559454801850409870979055428139946\
520162722170606457866671098558921844514362842191326961005401079299321793529130\
498075431412590988590980215972425761534533273979004526016580475829884560505460\
639859133054673451688723278286964042063348217497734675570939560329676231448194\
508395609787339059359392887566224589595947059453006718797977462180573857730532\
077915708570380030889875546682115249651900834216797283916511342375425209466769\
090668759261503385824531356385785550091566255788887631087971774209737293458689\
668970514581614262911890121857719940752693761685651811217113077436458066626842\
369668055563723221265644397414030062115815558483708381716135224732504107825444\
767767404231951680439422904364758861440920732812728183643129321155208098991208\
001123628767569075336676209128414706942895822173421595056582713205772887295530\
452325245141240439067720416904318346413202340900373834116665572963699931316662\
060229050982977411881126714991827409066793152305095963452573267622003361256674\
634870005408541604034374669892972516859650294325497727247063477947202115274814\
087408933693020270702701649968951534504500586997665298691863082056939807465263\
143860067532656818299073013065447467830687570826645695947249261116030228121375\
462730798517483564667916358787039409502652695964744367827420526860125861122402\
248891351708696205360468494068944499179759641304666761593281389102458497843521\
456895752464755309010962875753152117402608536820621746412300583863023564884135\
957848012822041099233859672894429712088967758793302288056958069796157901137220\
691165436053353555790561322855997626028897013900064898801543329955200364736275\
792147635408236950395297834404883324452463053822974422742933724166756136040535\
183701626318693999435615791819773848897438766411592468090133013899892854560724\
036464818411008999378046631846846567375542161210162815947672297740715906433289\
026035349030905587021866861891872928783758310213935560577321953913881029272261\
296511887585628446117096461281550803343552636460010406621600695413004828450552\
063307273992755950953576521022112963140303625189067733389292369153624146563408\
772841552211889223803844685107886094981803659055881222021186210954899034068852\
868475597178323067541601963636840454508018143740840391998675344139108918599545\
076877780477127841945842175656860272330032315797827247711744816663951980158571\
718188310907327938277240444254657835061637794525932299218828834729295119390041\
731953365786834029059748014996777938481657117108839204636779534186311908624795\
241564743081045750999935926658407468049514300193195435074881169197235060285239\
833864279664601972431248173169925612845320357674709533710016908854704120492341\
721261897455714843521542310551468111050901239639870886189761430803136617170240\
206510181272080183765140357015556690378784841628370017491705580754537984592535\
289874003298531546875742260054074691119360598973651094286297210745541062461806\
086491489001686883682005501990024304093648603385445124878370510438733570315272\
460509011928132986668898751194059103778772672388243750921629211218052242871598\
173345774405264492590325401452493773080573825594504925125760215983788840421690\
041958262392859097636557477150139304675980984490556799012722509708178922694693\
376860902482308812773384073743693782036312426810725999419678578971259804879627\
590946984626629779026139725091712247191533983944802214538736697812738761091275\
508813253797380400410979656363835635460407853012237467451559044944826862776622\
620633015941101346116485304277540799469651676117849395202056029154874823595463\
304381212637035104897938756736154375496153476332441474844243678054545204495176\
471244635382698728663576775675833212997959381281407238486755445597047948032780\
125485391248188362853348719312882356674913574571639892628211486832370649001686\
204337625917524125623463982079531601028266209855768716113970471503484952513185\
628835545263256929615608823965773022187997631143241258135433349268260017885193\
106553924309082643423262984038243556954765498835105804266729616107687754997436\
338184107392891587214683637708338925055254088495793256875248020250193535278423\
153906911963916137730076312033556839715470433246140975660101477326099050652909\
933342098940728207912269898031915460609874756582173448314521679657001168549746\
457353915565593680728812038664762915995413057524999177635622554005552002792902\
318858545048359620457769283771913890667818728940469355891661719841565649777350\
237140054478484849114804718033280657023638259934847222537759339176801344919397\
826578095301192427900538534863855987451277396473698586139019921833904953609333\
948973133801573885770261867524085864310843924660709464226949266643788830274408\
465333380068104693628814714953524215003567863674061539480167854789813287203623\
848558301267723814170118289904374172334088383310190460047825611702425829853353\
265612008694302303447380748132951237998513463760035032604136663218467472304886\
619168392252152215869300839331216919713871139530489888534215064528054472640817\
121696175793186613182237289437630654575706637373633783695680716563390463546821\
089897791884967376533752853877904339673456964826042418988551864015141583989620\
713556007247367066296769540136892690205134561486799630739219668616176533370935\
911255378806469149470123186082959362903659207998410962900859630127021087592708\
782969826434894664148130564401771041402051723709953084673023457849936539421272\
124531494807472023179987922259973004937630232199012041576762688644045432428676\
761292145873314547180077610115347001139806152780476258700087604985574343715163\
323208224082119557516593828789990526554810509800941007959729863909728926029534\
344944408069621810421066597590523418171459654826612304182728012275091428504895\
339857141056999679787763140852381540445348243855425222728302657484848672287775\
870108291567084112417295259051857579548369137772366215955298142312611528086654\
288472213946713702466161614188304951162932853576113289759044937139682740533673\
035708344173184213446930588392249548512294790069708488527376381187187483133511\
721496238669683983978688139219519783026222168086245798855182512682706689702520\
572493052775084321603813596065509552610869718291859570275355443709450920717346\
202969438337583890395037441991502116085491007016475237892624190172583659899471\
304156817230102736773286011167064127942726392007353785388264630202775848247216\
241775638616862767864014217081501159676989347636402736404372139399304914759425\
459076734690085926800501747950226119687893510915166131861648596995757966862416\
071965715386843345424732312429468104838106593900362861500720131141281243969464\
220912005307980166748830629062028250450507716330033116718343771128857488297742\
407708552954615644805121691935148500312901569907850336348601736924767348407983\
169295125874801561189788883688292814328984742238848592664090207388059919629857\
379500262748618097230894647911300810161064899873707408701858170820269020228130\
399567740058130126538939971643797136823819088846446132795068251866786854036869\
152697471010625020046422778534276665369894160429547384829220423672665400499184\
516681115228039176838742649648809588422210741859878335973664151304132044491465\
248297069649469735740890598324232055928806335932957903559760848248283382916985\
071477080887282067011597798582044284701619683855702479490140012590881932216289\
052970828682179737291411976135246129335442968865700832168726477195185614092971\
813439671573078899170924826338879480862627048345278043321933890794279568351804\
307539403862556087529331223720614140413600739513490305847792834559647225367603\
737880504591777470778330018854871745473000921483764673902970490247515069314962\
834420644993031073622429445414383949265530767386918984094384739297153436400514\
890952277801817028929660101093675718193271272930418524061826989948493605797531\
894318214335209496128453375940517325002397449592421547369545391848297362217738\
897236304991526518380018815664202080633352060575544814579949340705371469417991\
456478343166928699223283646713609523673114686523080034225637912278713449553380\
771479242503823191309620822673699805386822568622389016861990684012323425560722\
089949703257822520277837761602676547306682893110574146988747397116135029488824\
424427278112304228528135581793653474873063398865835335081274442780296865152784\
776396108399181018138482579124322888200986705796588103671503999855262536423567\
663139284175693543060498235142905822411490053962486341219200071087179683327439\
078484726464018137239742786700590610433582548358897040734862139706802362240478\
109581325211094704771835219052147388894110312787492937226833915179597934786239\
411860775718421679087273320702490842659452550708332835223662664297226381149355\
900625219520522423534429138418884391138357452117764722473693743223636540605153\
782251033812490770442823950915927216258130807805823225155084291539740520502562\
165585001228226645679943796267256769163239081492897185672343047855306929351168\
123833936646324878946336879339472477507730738598202935438645732554191604494129\
182567505995480354830725130808261238756565457676314553003473595818738428720233\
252802114808542437324524119395148003564282717423896646855565669468032166517707\
581624395432469898230855060380707254999513122064644931192948172950123555966277\
104614362199124858075625177059562226619044444429687417932334747797291983192541\
045831660715245706409994546419601873690658957358493700959888121328087507037500\
862965435793299927225580218807645894849208531016789604653335689078349612029026\
073011265144600519574442752551708265281734826255098784223882388638472196609414\
181351356235374360850727774383084603610409985634209999338946720770462339009782\
888387346761796352593200545278062470908275015205628950326193207976663181365230\
757469836474333456369697603997115767765062874858246592318874145032651608871832\
528625611035943907626206971838703498359921351357149457600002146002818505314377\
466948879675883221918296286553481466707765235099007072302575919091789851503648\
167470124795093411768132179425067907436354891084301679810843372817049822844036\
834911153626294869958321431382345526854550016970234613643094574978601098918233\
301317682688159011751853804534488228563026258401126157151220976180237298732321\
491873671302508221922844696610521778422219790242742301097290128375951954695444\
285296569242751531491577187514533349812142361613120770267908536409567133766380\
847816355297055838350845440209923950237559461927225268213099704989649571383113\
787597515405239013756305039284355423164752751641475514774040176934975084229294\
766405527483569973102617115667785545440402173690377509709741842355532443017467\
891126410454174973122243266771235586888885530774315182332578792099247787249936\
902557176916914946781444692270763115475504980922442318428043510134607475680973\
575064538196942524983177032109117237142410785389527337904677174602058954070913\
550369950887761035179012584970119489296333835444511859942107891038909797427948\
805694717226431673893726038393048049356596057390966304113792807082939642648532\
779123373376226075463245973789793382035619104764383204602475221040041678868389\
177580942145004303501541195376129797088556451596949876059316517226202947765353\
340384778533418304750307575730388862125505566808212946353115873812734743699716\
435959100751162561941962170145479298850394882895386878795367025674149008445136\
350063499850045761434022622991229684204232929356898457633939363615374528176510\
942861123726151325813675267488091015616047349522416702041575585834267160436272\
840782755843949688920778370511843420302676240628011949098389724184072632693379\
708812601135449175939532878787011750146197998946376537374649333600798673745216\
207131371849952990758595502934053279563692419016339094098768586531407500641872\
384645295108404136261305215688124046444915495648302887336566228775737059229734\
084923168599350109385756581409012809104741023257576398147373942916805055728396\
487521944244752257308846444044872515232523976258091344195897852112728497768525\
800604401935138344544977962741130492483644674800716272538299375688895003604239\
966303140179565733621722806388305520564236979882386485605094724886088801766760\
873957023363036071145011474077965385432528488122710891624791354319349060596894\
228402407769698538815467620523487601331183317025665127717352698276075343866139\
843638376331720832448340298748381697075103786904542003871105392324018291244706\
440805358249474638305409035153811480051001800005294075239791409430461388908598\
571133724392582785436103948441911763690258733868817814921952941036055409706827\
766293547097541209605508122814904366284375424109182592471784954382834047087767\
010599541168717653388256324229374281722454134147510586382064095367970196308816\
503160443584840999718209091650415162524450267042160624615614627511573267555824\
119635829000480913539078593501587012964429700105411079967890760819518871790396\
346839758342665218059866254573668134021960716159013284407747112522359491110573\
907126611399482982434650633330712142032042684644414181745421009634230424816939\
925204886862733328881453504813706285104271644743162001960278956297251634962156\
791935329524825751581035035055045821447369118082679743356596149124465389946824\
387222658063843004806945071635089113503898450778492976186919142289711170051978\
337491338802490899406804185202169513469274519935989253971408394837858314763259\
991597034225433176230716409095300704829813195566258343434123634974039026083332\
112105671587245952200092505196818897349515373886778209933932858920358018496297\
131527690852238103528459367434525818272448577493746906238673261349480622054395\
394136408418342309614371626751023486821766985312355720239911300247762347569851\
023433569986690857776159333067371693906517272981289685189219940046268287106544\
479940001426058120049900690606584714027576916120130035345937952395441034653879\
055183255795688815003304164477423285096920589272611493615402845163447282524857\
826644222504283460865158147343814274853499237526388842860346573026839182340438\
166947333499681166423514681655811865664924973523903736650380067669534824943838\
052835600567790862283154167514881260142861051113616158970410650281428350134430\
412287977230017724013587975976523372038553358721289724444207063812417343511812\
076216070930041462373553242200361406961497541231115499793696994197245012382978\
400482867731423242363065518223823494279052161123133047772331250259586414361127\
722417390061584382047165120696701151366161574778236312600653396243964216494849\
200618590832094933772580974406413569604766640026060395162511591802547665772237\
659405540279636098458072536021908192653085943698242282006495064267915159931328\
481628800272861707626315355944484813074702122079916741106804859579033440748896\
556590277883759623859578764401030955798766841951191738518971655041282559338414\
579904507446314250139077492665841717718907196628825688512722720875348048301272\
995934051827739891542610861213445633102068238225875307350559500485036075764780\
613016508461972907584593839869473703773629443779982638305652308265617722441248\
223874954718809278472792059842910184141630364344493442050684067569864613549061\
000491020535193319842025288161773067409436746449170001569598890525600074041096\
943143296352561082979718332048481162021353053070264357780351586722828493438805\
189425948405939423227506554586250843914682923483867943170867176797432827060746\
855977812474201582831032909861968675702363462375748170139186124381007074660637\
913338268430608817667533467530817015558650440644434273707010733375287845581226\
021766239705511630104695875518938284057015658387365818716597443284899839414141\
844215946848310047911474847290064906150994243357536386119298881064485535585941\
409459370416841916069384696551255770302522478354996755568979915741206000104593\
139652973663880608668011093368669865455861624013655785803130634130042065565486\
459754215669152078391977751730801810591151294806187345330672743636683347516924\
948933688575061318054086654332383795836406164740366530375267924833190886249662\
139136189237589214987185258712053469579155568476610413475235892856375745333240\
331345896104231612528293849343125287108258942569787176325294658400907014010098\
692647089551830735397925804043078594275273999260194005360730614477171300215719\
875340283344379148699332639427702938072384176801290255509386652965195288348302\
719656613316347029342469054802386840904555146864544353442969211002935469287335\
580594253162330504135345441243730679356290951594486527411441001762026150749539\
779523450850067140195326700687372683342304951807483713651358549671866675099013\
829351728309200638642485984342014228695482705430932134583565849346307176696114\
645527408685396309531779809839339467562597483727150015110318725104115044737409\
656404094693565178949164702736819227759379694799077728370813738643592423723643\
432568999414277671149482737656695972837510170120731021202853085289585580262839\
009038589909633411329463088278787461042577068922850898191537791785946970991510\
951691571196251071871059641004166660572567197085658059074859369510151513239134\
701046753988956130952781573873277268397439036130671226266274315817155149983369\
255232611835020702025334380328028447809317987826912290482102307728881699091027\
238217624823814141166942609035417856997584043316823744116630923803965016670561\
130179842030708619496906015870141452658258605005599198260333820012987567795243\
342828503367637476117089282925146217002589522976475380521897090467650689507620\
695820088595093300593859375374479484404213754079370261773108174876727269500397\
928746393198125515117993597153410913894869463262646070514247602563345238546690\
833707418800181540070278691758950760173555407244280572596793639517657437040926\
988717988779578975403273898415741397543763799884005688103295045022863249595202\
502457223348711389469879832560880260936945942930286191896419513441604685753805\
257055681135645972877409494200690611896462609392327499827144475114621037526687\
606220940585185976767299422297326847747839774000017732607660550276202185360306\
892174475173414068008532842641073816047434252096088893001174878620154884623698\
934422734527237373783446001426385264777769239458514663108548368835300117626991\
315821186712126091688924260794302712906836338570396725275628437214502966010745\
171890550976403017146107809692753399137175842495726101802457700028268770533497\
557259617913047080588695603197780542598015001296338954773085944897501282913485\
698644148477680400679429661963379459179867647609564845302280524121080969024349\
218614078166013160318406115883430800959391677035855098819090130804995160699207\
075262828957974353464877863432048446783325176284184950715464299975248932536434\
690499730223924994816591462470764357337715453809755669922571864113467002265206\
382822614122214366987123407064757471321921527218981958832167043274086557590897\
920536543617390241484111625473725833215336504963839941412042717470101959206797\
437081848320911534624378992800166846266420772994861450784273562421852655258236\
971143731055507929231615133256268240833149051795653926622247861530770870530094\
673087296977251273653829526370061110017879278862095456503188245204890916094378\
512096880284624631994336060685835308357858066447450822037349006082676927888137\
356551736348329211459530922450343287597879323097872943228016740700071163674672\
456626844792229622293950833699841513890063235402750363410132064432047614016749\
576029578117076143521263984224167565958549288121081111362387518637809398609089\
485940190352690549551397764307151510547814482197332191053162472081737753569574\
720702962199569804056367808753481411555403549700322831839679879519616896095963\
799144782200885156777900931575258709162526070317571932773037992897943158849436\
497444843580585196077945205898513675917129628593667462389525649360155307925589\
474318769573503435313455135729243225460171234359038134989175516330499320900735\
378212891063684387616633188002506405991320793994136745656636355254695576190283\
611109001358660000480254952562004188936410060480441612208853369768736687470409\
909589341784439280806123918815483361070357730859865255525801482117810251178364\
607505450156265849073338867977798781614111989783280776322952704129011978554500\
357837910047560244403362117548061661521414740024890563890877982385300749153850\
966996623819668134971499827551339084525513572332722203997935007199170619779962\
710807455510144304537505504029163543038782475624342033405947529118865625859394\
741899027073940461781312223414594791616950158587090917978525811599288624552955\
093329187286778886826205562602242019779954977603975491081364458784973730802286\
757681025352847813136811198842539619184047915236523422573545062565094573315360\
568474441528221584772145980684190539939621175956737376935616357822771282949920\
235763423783179664502708857502016870901643602768931066510249869500681253586170\
594761117916361739565768216224289861638392730282934076920670099650929342509735\
126923619971454725186977956178166593658970498836518525915975204511943020553019\
297417514259469469364616052399958218341975857342694686286541145320927120883419\
659439998049866149395995660937421091644244992780549012469763142114336703535333\
901768878490499171222159545810151491406322412681669219657526646780280197909870\
315942159612440795519792426282001140500916259490191269052875123034703887701655\
087158412618765108986495713038551013576311051838487157036078066430018194905443\
712721523751121845199807449395165414013408826201686531552443644907791777392089\
023442033506309917155375700265427291674981895463745662131523458583623117254364\
264874353522352720886822680558825128856700798545052669453762265986864230996578\
538623303690857377855159742191066106295316790504921749492073112328895413269683\
685194703930764114969207578362724538441277562917586955421148796837939514145154\
602059676597691818715114447097405484605763482945782480398039873742724398359678\
048584195442507204948245373899917801304101218941522137123520477069762418834226\
269503129492775821730529717145466763859453198840102135102799258045666178083476\
882470815214439456514004130354397101314597841841189024364524384788935676777252\
282868311841125518960988651233151840792389962413780841178557330809628741001669\
418385173035837482040509119122217929891131445133184795268486177007348895735998\
106833314305616352103493664285626911799995733064648663029102140639983444350874\
925959929281737721448802262182865935318628834519277165627693652335002879425103\
443012600027495165050651837105564583387105461682028199009776076862845270051192\
857333227296339125844020800973630719923223838168433378362569395129245328735460\
218524546212502254341894379771268168067750788079180993100812399176339278092915\
735438183227024323179918514417780269844031513439413440430289986200591995450720\
622850300327345857732451683053456070957771166342717410023432930091813721416714\
312319232881207827050953699133957550280983290414770773572932514706217795127168\
922011935613893859504695629781849277331839175879395056579964753160585662410204\
515572753255326228174777102775956316650296875432637222634522182761678118210675\
273149256035759158356524545664948652189585198010118811408799253033100959228945\
451466722407385147883764770256395855199211974005275413971378865358053055317719\
252595680412176144846001607413197322544079484081580905086639250905745297218144\
475611984825514167926005359116813376538505689046329722449724422059584166492414\
701863407077217162376606210600421701226763139298471910890775467536677126905288\
551716572127502203288652732350088829500641584403165814753518968800160563699231\
354606051662053869716030998570153588194629057610065969540573965868259750094867\
582866211440844861081921138265358555924050134146703847384124301894624700346622\
820063387349110804950180018902814084583491408259787796338783358671938611808744\
885739208372675009859539797252653149378516146373566067184826262444252689051099\
198868670332432315222544299173647606638369377590038987351291109662539723025818\
888815378254113580568979481089763200410734209966724506128070881740804001915922\
447836154836410284607973614922162739140634621441310863038573805701227227376628\
192372132180339068389972616949116352484483727855347489660657971071700538962578\
839272091649250201018631324938088390015070809753104077009484812847640174936878\
519710146575168898540909389473102828835471258820324127727750682536190432019724\
610806681382842820219252718977549009624502776076393025051259555656226598360439\
255647960532889693061259443601980607140426583538653834744198346986612016129121\
025658112462237893221292092375162340441014361150696057126671718249460257771896\
039370319615221838766977502626287723738782690856772671868772192543389368670587\
145850534172510405648659591553826742039208875974510969352589929038028649260495\
822453799061259744694516565316862628033078200480968385954310408158753887885550\
140823266865800209479939951049140623244689150811695673170386410275261680358789\
462152950380562000062592279921227652639197275572038195570101942974471155574336\
284962973408836005355320326584406353682398865222727517314171505134728785152165\
930696908225240807198626175050439497993105733308580311429884985445591406534449\
434782293530200720644483040139893698487555165222340390340349134231618380726445\
919451816478307724621134047847620234574514135683052956300181298550985681236944\
474843146735028416004534956194946791209123617576727998226801428621024318205739\
189696411050823640696448544985765038022632525598422559661473462560304159298344\
798164004127036120465540733597434165685532009367507550358317265574854415439447\
981570524839758218998502607509849513260421023738094558261001100028926092651479\
549225045646835015351521542652958994115770919585821319482701624166765169809737\
403164214091281943004258013748879507822320950062636393569316927898932067274472\
294677918669075819770337406866854723045585397271196724701255174272752766161462\
688898850190869849931762470326417350305511357830103720675276548746530150009019\
425619562547487409563402946247012175250844785884730074000431849390991471652138\
763940424261424048822930865994454603261249291540568897280928752817309184942483\
925828120789407354499259521998972467844644696406902000487926761156303328055859\
969301652495674027969884563743991635535636241059082323090470162723754973468509\
001657345690550402245120726849754167836394176078963177108536828488947872387130\
053559148706287956340120722253395486127436427330215851262954618066965162010910\
566041327251570652289173724522897254379665653921674181070352075934976510564953\
935705355577236445261913562129590642447897235202864190343939033040162973764757\
818263870640107865868445503679622610980767867602507216672745298595065805616106\
143471828882870188497396531533081686921125215217517219411739739975294080414861\
616399751205698652273054922367456870122888826975423157869629679132344452165766\
704889589144474288915777025490504323769336955382744771214616150211357104248208\
864404190430794947103062143612415789814805955076714490551794576031494496559293\
703052110721595226370679965513262601532705018765044822780394358026689937472344\
823533057797906864604604866451786496590021768552271514192353619228177970534609\
861490660181755615354742167168689179226726855558583031587713211209266265229887\
461676066729750879658883245135198838815585384969206187786890210450067071900651\
735544839462680791686549506599717982747306240181810698187322103472538161658421\
687622050284207469510754505097945016625795329793887674716359918951264567120640\
105436297535470821704832581161751737986322245792624801517389825740844608244327\
473875692691967158133459410497539203397742425030979134211421342737199459883012\
249142654961489172443810900326160726087648723382664057696667206643942082962667\
118053456271191274140972061434347490492494194582151048360840797233528616730780\
784196945618410439537036531155534969163224519879072724985048188431216697540484\
604650674297439615997701179741560066927461591842429939140523057887102492299283\
748625298261050451812188415119423702222793531252537015761723502175217509186902\
778918921251866883694208519255135426873766133198603041319087324668167971452651\
140140766044955641599341865366234044985520231498118731221557087337155673737889\
852032892106170355522171585054920869817354889495226065721815633310940398716922\
379071293598861387737185284406968881936643694714334603264784409887540899975714\
309908640768396282538996488195621481624166499675529389049468082522789495203247\
489894558925578253902515938719420994189350946464066245865449400786556030089994\
959960712373062167493042876888287465978782015843885910980089247244379723631116\
460272292792094559499504348944531146556712469551872419492471719306419566365120\
135061951374079821080673493487381452493471648170166987469929656747289235739467\
246897018851598456010817981426797201965999839448629809703132809137511473250808\
708127019836945973977902431814452922276421912218261120762567954191897880518627\
381645224428487643985565980184424880407126343803845624119179880450248867521473\
487113690525789541002485095252640929100296635179158039450074268946602715404212\
416650591788019167887917423787260151234502147450814482905385000710193113723566\
409606091976818002397097690696530420837766813393114848383161256647689969358084\
854383744318115389404506324541878805045954085211992213809245272073030393856530\
242339789212559585013845774283835505926294327925345698921534307850209621306805\
757815958456775688831647381100975199477913840537771738043769483307435523470748\
649542027516640283288200695412717806112946076533253823512800470288694841065153\
741755546257528118885890065172196334982106187725152697756980194690156421246737\
755143042522165691415801771578891689022561693943775873582214592016445774259314\
117865192783340779321531596821157241719823014290349173613917312187081569961815\
949086573051862430693991767589604677065091643617888989419330979204441541586756\
179137204660390879888850425273487916693343271105941794982250334459992550476175\
287064546639427439499189901650571754637134570934126657114165524152261835407710\
601145648869805209893425567608742685749670746951395919205823369564819961620900\
585555489434555795137525823683273221004997204209850938060229527926162422571424\
122184176353973406718700581480843093420347878798669610645928559017034382737105\
119603023848583101631407595125791354182190215076412556515592508531360357170217\
139122479728991952691338350109743135958434806165641466661530805174261426334350\
666995708448383303036480588482610656685006515736504472804366385571863777630479\
394005949604739197770126899265324416033272243275101036199746775093283653964976\
197676008613032350920427776879064449717227241601544614640663320371946120223566\
489852021938752728197968689317215473571418701861418739526272857003909192124951\
855210315885183572911539720148105700885722889586860330240100543899495431008262\
165592402383682367698240012513120330352187692979090462588325169125494943795712\
455394875352555925256179319916400901600730451175068866713309601187967621267360\
505518340341106168171920922515518589028703923310938651303505604470044002195667\
381264237617325807287385646688599192012123489390630272440787248954639623415822\
075955525689864342854519854127790745094102691215200767178415047786922308731249\
459307538261135927381388663437748625196513626889009168653443769747757812102484\
328276889221541829751922899104198611507524667999514216655005630209550881713213\
406373944531173493738770851326949913068101576840035461551927450781823450121657\
537913776915464469831672107190342342276320837045925786297685051361299840543227\
522706784718942695912268035672714888270697738027814100295660550806223950654966\
079702405556491006185379761234692989426570814202441914693746362693539295157683\
089113448701843628612840948898688051737220062618079995911384607833194576293179\
871033228889376648457325037663972811687353394013846849015067078348496421251402\
192399951420011140668610748777529635979916636025529466320137268345195220401102\
815423380738137507515180320211605672586017217289969073315264988016172499787670\
313582007330183825584141988915501843215473676907761261314735300694802359648223\
851782021147908165304070168382107554859191138402768642413846588174948745897062\
429817388823247158443224433386882496880563498765641997709616070479434304621724\
612634154906846604922994210495332989196135044212744541602120037834069981902417\
380874179328515901557184587528926356122514709785717512162586009510507334900307\
616594210892667814011435975128250156884006604998833200872134593775272230352733\
551445564446204960844298529718455588415237627222385655388129127918379194336494\
225946771323986005802288617145704559573768699696103821137069275297385775681689\
099879068845281137497582244845622533289234368765605488507333397192834059866990\
868519187510601124075914290910836230189970265421262494338767266061847890445825\
999094841185543060466403820196638927083731665650341771510080705103217142819280\
229671610214691389796261222253808737043510697571888093011945420033368399360089\
657023285702152550577575394539658114140381714787779015872377426720273073453320\
508582159354051246252419879182574469615678824004013499368948246446902303396506\
300938054085920558719594521285374864167844302419532763202056753166135645778944\
551877659169969134276690644915215323727668794469553900495999618135721301090304\
048623530715352213894622925585256172058104963664974098148666128418578701080374\
910911697880841397594470957833074341505073035676756436281527324865833088001128\
143021228313681776959697596649075462777088259132643458031352766703081080848448\
542018166717647903700999214317340464788939980728320977105189386844246040996968\
546974458893509510269770223294131925656101572779759501679540236184388735117713\
502798769515947651061466787616401412657460765209248299286062266311786780749101\
024548806100964983528278397736333563483441855676121646482540009884580329629421\
588729968657486502276159338647743661835220450298158992520756495793718874301942\
712871399254951333644859072246317302539931907514850505869338649758232444386499\
238488921256654932837198115421102246103082914403226249087637155024970216953992\
277742877078610947720838848947548248575084686349904536590035127121702774503165\
227810341938344182983635797888058440082688345899430052465092498443435928660988\
726816119699791938028559322099199324954852102771399426917076724733387140676697\
939245895550451973029510628403446812139026546988447995918434793422431190636041\
112944233757724195495180105507887911589800570686755804099569177771012628579253\
452303198692595204668897656036988274524092303994574877584261967687439102347202\
719094059304881071337144471553238946338204912931734305902392694761533094312704\
521146090487347115641169982187118561298717896782541051485822661526789135780588\
614408030378371530820961178099526931329633718848054488190894584983105313196596\
327574544240623426198977400820043309030921836584185964152880734535872554257623\
758425444171943778401955961348647874472508849119296352336685018505190119505068\
481153082420897179297741850105090498223897857374931542943555238504702067491121\
882362042194341900545289194693001350867629161360929105829729297016024579080986\
182130240572402267268736868852309871962020939811874940393062913745354207876875\
238244556625996601592296296372135687024420762716798979408078128231043969377714\
877393056509795113308879780541916474951173843656161925841623458135206051379351\
727974095582046672355768775755837840470508563899998856722510673595625538943596\
757859876098088243308507740369961084149193157670936780899838856083179893488179\
509075769186131136402684779994818251998575496754726594422376873904718738857545\
607136719806719184397957197343988705710151233214768118766302137944194705396670\
084595913284214968831131689203818535525776389934477583036941385932630153949191\
992363883384560441425313659823445679042980901074748691856525552314889558596459\
636019967424145727198759114873879603496573893994771371441613983445350388188316\
796602436293932525954421543809894478952217693083177910219964430906334129637807\
530102086642621182827324730892974466613752939451305117410509489076041338267940\
404931392650727837053132481507179733123110832534835363147721510533327273382379\
098945342263327294516852130670391229431663508662709892413148183316127868893956\
118006114947245671956322988095156849059704414888908823740922236676593387467858\
489971814777462637488321296724966167621210828819220173646077429961340550891684\
462206430508763176262237442722590268171134644094607651792029177959347732407120\
799910975624561312047205573920754837894102138159564220940177220608224811243438\
744321280309449008543458841249830715920754626018884921815026950431479533949506\
457525559054045745465151567601148241754670213163300491456131880661671528018582\
223665130578061956311698551870129530001345459798869048398187271178693888178418\
107162411539092948429523634220939376648260772270032119551991831404871166230634\
658478327180326076031528645361592530709184791500129452777663399865729062455287\
541233882542874545708900587660438635409388322635425302705423921579953429071524\
064060194381319931902219660738393332235813370928073014304380722635051816424911\
723486978739803527358808786900876814535750005667570269093055247772635545674797\
880176830296164706670546410059527545615292817957508976632532064681986908892446\
713123401328203030933453186546919863230509127920648395374907697844777588329099\
628629764120923762682326683867411604287291714473795655426134222562201498424610\
636948996141695914580520261476375540348821310068163098625144074141191814562249\
327804894562088602698375365511510526406060487443716335023250755161038724725943\
904509639048480152865459657183173455159461519057087675933403113148396443815074\
268500622229730596667917314818064206299896663313231997856291312739895423856029\
699415879583777294303743015074618924719350534613738062947573485945532394067378\
571850025059750708850643306250937872897011854175460245544288909620290394162940\
558742423271423053108335992302651249625811745751816016582759324982635860902838\
273528195923710679584030303587979218990988266953333568092915518325554526981922\
016008372025387461370558565074327441938546409912910938989160933374078572491288\
820804773973153080708697603377472206916603949681148214208888427086630987862564\
833495683806747987714496819631432668872868196792128246456559109334513710506666\
389024811276008046946543586993676584175940930635019849178415879311472897302271\
708254934848214349571270610012840163532928194383830730110110733981290157346394\
860544813783064202648541519769566489746302494624226012075248826758197522194399\
601397098308977091172893755133361300310946912231794386650616316119710432589834\
268465199472014856808494957130726900945613952184371297439382689230845066306403\
755989736818188925224572876542362666506125425149060338253351145078784373812064\
005045047853085767610621502965939519337758896971010716993329579344787779949585\
389212084992533410763300612581806784607086682887868808434250816498840222518234\
142014450881703206829293948336520008676423662883519840308747578629790202910067\
959293869617529605264465318143734577690757843809123326526527075248066066406594\
983141359041163129772247882890279810989493282200226147944063813752876153879960\
472518737591326726964491191487564575309032826874998982576224713979114759473637\
236708393585945711346594344866227402480901566985268355881127876701634766719603\
183390403176859817261312223125724903697807774902252010811967492611973879742546\
528472577620202567343788852897287933577204790329368041844793059392739746258045\
532712551375641902151886094907837811645052249655965816408420569752288767412989\
184899134865724140651018751516759867571618040095049501377908305404480283975209\
031113966828858747414454136482546174690670970283365401557821254800190203578479\
259523944797121882378285682971412135529485396030309148328820707448863767194006\
737648550515061856518565685975099632375569136085599119326348242586959381282199\
806149164144285292901434843407716301223383138632467869582887188491731426633976\
290564814919297763556338630409442341236468562003136156405705567947880625877446\
027234796288653834444034949433155708348784010151245500001941417387241229761023\
686600044502835404056085223931501110063769252840598868121557291093220026200494\
932696094487864174636080041300210646084294358805182460742287085822577933200703\
347125425965974490876080851787742779715046294167013405426217859779361260850498\
375931749020274920912882470921755039528818880376178971308478395960171855732407\
183758454081661305888993371922498777142365634682200610060477658171349504947540\
695838770906325374647904910199887676815592533115826757239526128859750245071453\
226133740947029278633075211316646156492888929898595329020699437476655153463444\
197570632301120994055158043029837020973826254506265311764137833605979404421833\
288848763733531809505199259151649912810400498706041827038524937957722498029925\
299037859088222588612560221108248013687599580565323315541707830340286946417276\
696298126163579509374570284608294076391263648070270337039746423119452166148522\
367484113630586945701754307951528301181239033386333801623247541657471146984353\
191687259706843089853280624177245076859590818715304149467972882296132534032873\
031778911336804032193392012425610093674777460561888696141101162941538302106771\
508514015671775971002752039531467778158395125350481233291570458426711142862153\
751709507975684933163380268267536666290830165163502437144691212863914264228343\
726425542514129315323647453277075493755795590792966455080580245820353314973790\
112177332754984271866640505225475167215871515219421988104605621572480630332699\
563114083939635464301911849506330714534119824876864257900847273175686122191532\
084852752424417422597031388015002536657646352413029743216970279472595693421381\
621748394768097156855485986007350132846912018584417875389367628537940101084848\
064950015129300454430527913061588482424491534451283783929139967689443986967993\
037064389251710746255670211149255106705090824577569328013044304033869193127453\
844285282881913611051199566722307877262289875049625413833907569682439034817292\
486384930775301514457919537187696625947985649560626757403274422847722285075073\
288602143911219929522247748264550150419572869390745471533789250317387716100297\
478032372843770266845981408938346465650308678920209383564996240752987102152363\
862854071571481386169016005368048646805134550566316022045395174755244770843268\
674572844961767530419963076337432144629207795380026628640433060592991677359107\
104829781484160109225177252873822180369252528544502022629778852643656275319660\
781308098770600242328660424899031224725933074541920957455797279497440136549115\
044927639417639454783040002079437092948286855082079138915458821454265038349522\
758365793817523706586869576892735748088566170664677934927884280755707243384156\
264714444741024503818457884581455860348616191688581556511512780451778858297069\
055096422387092660874738567777616753532488765130023064823510328385243248138939\
309560058263220549268604838765352202920278935853113331795095256333438682010574\
671582321374257860249486604901690910159042789721609695810886252981260254101908\
289526850228017022390177451414485727353879438308023848318309805704346029246790\
325757677638699950881093024464764806801407568902797112472362955725598469490891\
071384552604367127485143085483659988026109463069339073925705974120602816055122\
235060343209255466979946530960196500915347712017596188176399846060841288946935\
088085906890891454883566420203930525559259921980955549755777864420439491441340\
335102430790383072172590188693602805785504029661250126970997785444519122707568\
535789776719652523811321295238756034937976507676379167172204521240756876725018\
616671119632644741236149922002579140414994609964519077951983210275792009489930\
310626595593931997407729998085851356366109308358263578234398090642881598005796\
511248317596279555857253699347246617944164169843955240528327749310821551936571\
710046053456879054046748628869249108886012738279591745156716131810177716874874\
763436758706532607571803332456708262430672833380037782487676157358114758239460\
948851152308374022691862791823989071794543003333129064067841077413927435294177\
088920674488366099530956539582051386188796107234752435355306073918278617076232\
648657160564173179894963403279074205046244366865209951487603194589284647623661\
395684065638829478598891390340488375820818256971620548681598071398923913634143\
424431207512366781279278017100685696450716582402354653941841926485242347591992\
673398576443315316741469131829794866790933199386256402476957537977036441482262\
786539645288075980417281644347243980705049682840118162402491075867846061401495\
223697701948422415346406478938510315950395470528045862947991395429364793029267\
266833553269645574888831102638250864009373514041836506039332798700702617411941\
733885589440628565156077295519338898918360063274623175660172392386158710735510\
382220785445834684082320883260212013875731953288332346844108792910309166531180\
098444311878414738526808072558509573798278623668822627567445668777152415272189\
820339479291655503738121206531304233440297493534691409913749007043291177150446\
107274326982609837371481991978261384498178436192959077745033762214683912258174\
724032577697508444928602120911014428039308528136200288733990742795450668105258\
272467099015920197710658549673840362602370746517012014618246216000296802157888\
897789749611767188299118834928916340183476439046657021241037289067875962245681\
862543054232995610807856684810436970058506345397051572314304614825440284641279\
806125456636473831083258261762349599085962560268509374171460650718296801583109\
051083024087136819422551772839162122472583277546238743738372262799959976986147\
646369680295242167238054587344608650551194891530861187073766148642148238949896\
243298536946122847992969537092227725825072655394738078853832564118248484405705\
634845238951046574408257189274588159996262996833058002030197072700520202985505\
341159577930310445731501909639764152552297798468511141742236741858125273675480\
323749342512473166139632683836304278938869178984285940672594293679127053154673\
824466260367184345105762451427255970724717415200045431465137093415677948610743\
652561369264395919247672913612954422493257172271346141148633244848626880439687\
317465870387158950814084244448633450444826183229887055068916499338614904244802\
733052500542613843331499000695275637630039519029912949335695482791785225757653\
047077297543227528900768086931057705956453026727566341644593889916594054567810\
182634657669855709563488558834168162860636710075084060893765785493357127268585\
941583878504107965800254553571773172197254641403193469601330313540519376037610\
610187549157317633045012106993180216373547183013459439859412240139085562365737\
103276105866521874106836038115631397736539391843377605321600849097268522252870\
228369497400463993836935288514366024277076572675286913894681002303429567221827\
327262468061786757389333302410567046880062688164722648773426964115390725416639\
456795389113644776563784392707317047060983874939834459596166409650190713833031\
347198595164529387801512304370271151722127490045851217601261102158798293455764\
456564479796870943268803151338196981077240663715310670897744015810639935768694\
515191043581677744528514655873694658906701918522964559359160032311413424513122\
254073069346102267491689136660539880269325629172962629026740394445911194150996\
300693605784562519891265588563173467320370345746488846376080991022173333704450\
363843609205485904197670900818549729745556115263569668163960531831581240581679\
355431417269095689043784432014006986785618678789936999286764196417762168327184\
597963167718167839368182766705355361130488917393687595853385476903873258842994\
048660684156916788715231633519429466451021415942985767409072301960690623749452\
375355184674530528424074426977298338119825949740133523254251586078320320472665\
429450226879997239465934110938003456762303633361887420406459161318948443478824\
505618379811244876307756778611674064929278489240661753107893493622132262245863\
377121358407146467612497173551166462408222549113549720753516394894752147808297\
386990959965858123027798551174935558744720109439831390738535655488882499938612\
168703970594136706541452386287360488276984993446684269261023322040557212750200\
865975477683674452178966251243529707345336489896787683145219326468173654562703\
628624110915558072976941657516799977172880937002445646367186935674721356809039\
588029554084725370964056064133572093637162805918123980316575175364456115159877\
490888017345714873530798872931739064210414134584423144433471208442313669200210\
858240225386841865697521369401385764343386761997857796261090856051549376082069\
245739410679219455136339691537558578875794620832674823154585521338863764212774\
244155118473570373078463950518230350315020308608876562243711880461063902105764\
949516501017057421062932613741506120003480058326936081183646567868629326507558\
172584949440099984285606039346067743766978381561675077355705996869308241755571\
213742335492705480425567665551045774936200556291544353295313991394293199030853\
955576053662532882071357178466662243223426539431312149677958574790968720298026\
298262342444565304551846882227038192130043040095861045008575673246315520183952\
324163068581705991518890893883886047373341884428088499741430328476775524506184\
579105603301370284619757222464844936092337097207333179171428242229081804454072\
437676310944551962413020763388655206836570703803945879490427567888656560073466\
458153966199113321847059790742937509027535378453635198467792806656758699483399\
808348429347627173177127137066690295711921729576736396563884857550389151541501\
673615546488330738210430036051068041829107623207944359295832612165261182466822\
520973048450240508636969771759100007326336286885094260574650279696431752904285\
063708369137198261240531549122138001074516809178172477755762089781720967841471\
354378113337106061637992235262683296660245124532573917988020218745051371059264\
473859646905620889196601213615648859020454372557658755771831746882011290483669\
792468650446911940686229326523067741904832343409013776998183218262846696207151\
710168226188687475005809765017888759377808817296114100116743974027487280927854\
594764793549863190348760988991512669853356915153836384890513484791759621945313\
273901228807917659363293176083044724140390643666142722410334234746512406094471\
222151723428928832894481388688490188869945951398031597491183862452096362038626\
205130096206142826936415751471617454872750830998292046575221741108688035142629\
389681992823594116115873263231994027067932203157870694263163377986246761798293\
668620280422957708035849450864807785133591380252403793161745426068146802567036\
904440724241865576485324427327143139392856340332858646505590920498738830574029\
267225742076685931831133507013718168314120944236146614654614844959784731998678\
991162976006152903475358395479431665189476567617444034711008456330230990715006\
241699553077343987270024153323844693667391885196212363517409166156724046574322\
180092721127906920578919430788462433463107610325685008341128781626990229555933\
297152108502105603651953233087136770600607767856469490850624211020774768944977\
870495159724746376219982956224465537627951694285863991928382247596630911570012\
615203729293866044273191142573085297268037050221430272907544831704815549032050\
653151578128024281409298698397329440510208872382980439299434603017382985531974\
850340285495907123896748551141773808770799728499129036725885621340371132567998\
362559064130041257607211966258834355930519361999841136109042205294152497845475\
111481764816308342216179465465614113204455065739918934367075050256423458296421\
905497767251220902698836152400266816619772527083956194850630452069524695406559\
777623831398069823292418981872521191977762224916064915729867896105748004311498\
369136272132185880207978500123497306608461434057376558177430445769141428739017\
016399436501784383692283763030830249235206705728822460189544795767771759682912\
192020438473644169520074862652038282461580034372433134216689334175634720674824\
619351471783163358552414463102796052409844514055702952018796844976232306340999\
159375442532482310381953627393873419913379284875148947540672244924226831319913\
917257210318382307358711051830752734519509297840057630959936939039381214940325\
377608846337527161925622528813177145462412394359663712168890666226623342536603\
868091206119922631518230057381125644118607900225833597383566081372606873142309\
782307247148950586958129977538393245134041347274738734149104595559314426758701\
670027375580432299829403685435122381928273797158161428318331230247699044221104\
773869820734132491994036888916075822542403604837928421761846286335741995379981\
898028274301143037269215326346649180950148612995663298985178484555539271564451\
698077602282837498907766970133103779634257537294460665921579268394213605552054\
381946474403316243758852822470773268735462205602552727982282868756471681293274\
714499009579839669674997025464474701108496324112952014675959097018081555872842\
258786669049164669487000454658396163162447708555140481028491813317055293725361\
850413427693760033840351038091569195200107264731732252667390800701697976621469\
428731981394562470454696437983458753341693308738195337976470099286287522557469\
844595620774171148341347090449077264190992384424508393597042523706590700801635\
813487955446082146682451983811254519044108271078189510545919400783158605169027\
190291347559657722726230842880877949450221939515024156424099481906502724772939\
079868387774436499011687840417555788808911769573953775474851847064359778393496\
176346265186953256513391064920481914367877602953785885895494934437585778388711\
699055376403128154451786505521777753534579579971905835285009664488442141131828\
897167183772342486768335560090326086625429428951135494092361695064380583429413\
881709260790800454695407074876368382452442059809213280560405631029563142576909\
966792980281459788722562362484492136634510744774480205541087452121425563072546\
038562171796263145452642510049362720971954768120503703960284108882281563817144\
923349289090565689027064823917356863390091136549576480011976251066043693376799\
327234633577536841658097454368177941430278162630574383714189473087158776287452\
660097173722988303612831375390738649474781973821149517614863083420353028466760\
402805076523450660860539135625170251339000294752661059790210418358964519130049\
509051634909826382849539100648498358255108165509357682731218143093738482527201\
852867257638458999060592409599874106952181794176170751494504002835506879169736\
434926497905220857591713860077956801120114171383670741140087797991762401746352\
882610762119456459588067147429568606057495201733051887667689263379667768666641\
583978393333750030278856202297308569216784134080998139438969315133309525374648\
924499478988217615600236585134267854465123758164264913932670635156657603011904\
292866291862521405808028057254240565487436673086794659706693058656893436802116\
461329357757816392186792727766634330684887652112065520429301929439053614923065\
480820946333610561386920338639630117960609505254186628826973197503390961731055\
924959259418165236396453202522481124244496102294693265622399738881485268483688\
422158959819704333119311129242892194169035673343657160496695496411175748112822\
312043288726583566904299543622853846942782356941801507987309439077146249334318\
937672279191853141878653022316357252693488907547642380899998956397994633566141\
887844686612091911511147954443152316410152037237592447334655610251298878163059\
371086408193850119709970306589837448721250777679939458643892774172548836150789\
281202324338174007573760168931228585982382993824794241020189559491057222709026\
345790491414574783365124894216572577831361538413131770411456258217891728273956\
716136063306591219098961301042146506896221580311798370472777585617542087902902\
118346866541938848429857987463649441184705219379765840137333120532066175471183\
370214373310133972373852217564147272872926966562418730921096438899585300804060\
665018155383486636048025873763145786988247620862763299137978035064084339621331\
558262501956471327305535128640515539701403637990493495429119518934900301232707\
507805833378785210896252804971519200812502957968595356275090204162216199022159\
642435290848634468036616129673982103229775517073415860146025132379292190983733\
528624602703377134373680153151208936922721935225985009961659965900126236477650\
246564161548788360767500361660726865246534475256452208200662490915678939376603\
658165566476722083477544781584394563454293721725422174461489235494091864801729\
045858211879302558429446176339752166675680990910562282494066146808173243508568\
690603995253923980597719700377242962644563198357069543161162948830286690685290\
336889956102751787023317138619532375239993926789907240712759959992739884073805\
788709607021179214575415107223116093364198094710698049638381484448194526130013\
415100811232605462213316182444612037830729750664691540934521335904574876823291\
422356230273003146924278883567103490608192536011227334144975141402391821222171\
368817745621007447734600906730619570569108619635854688330050452642220360137453\
543988709243496487349791038438052129359065138140422765200864625308663507448064\
245188415542914926266835419249309614327305737703929436289090678108073736985996\
168949381062927713785224526353690840821678195238334288793376007395861076022735\
891900378714554866572830368905752692205330941182493238955781710907252639633638\
681425501560094978978058996248462380752681864916445891204595346530362120648997\
881454924429213442101859942942774213139733110541665620154481848086407028828446\
783377641273232542528774033240441063803604612102836387589546196062870593209777\
833193330543590619105093961982042566105388498961019454214479300272201206442718\
911849083027562048358907928299466695982477279416209336995825998635857472768788\
351444445752490745214110573213066772541046970770111653805544191796029852316937\
597373979569782713731502810120615859371707559042352397230869723729082655613659\
448236307552660756086957483799917177382055553720906625054318881955971256361434\
868674651956606121919352716853304362773689440526527046842882816515242227870725\
797985050286576363833090682339479537618411291823508376554185792614939445801550\
947846336373018431673408233906839451187184877350846860250576328342129327711779\
299571750913016354377981551916736134813876584969038184713707088062175408945991\
279284865051482567063270487255421093024123524889561763208826101414455318663516\
680303060327873696841224222895297403921002187813182973458988660540285234498076\
071062416159855545233751633508855957504367959392501418240544036955777118488888\
099183530703983092887326474442583754036890626860267131145973713404068082261533\
104728635658828660131023669636006853440545782902804928143668581181432426543783\
563988506176140746767090873932966939808081491210754631656667178457730019406441\
847344926079035803944172712884295706613371806014088483463396953109986064506074\
850009862324680902140863516076380167984806514993878138281978600212332377232646\
286825462625593221021011510003269099952525080278127096678516370655581029035648\
602416546901523996151552898510246826442664426072866791899207259779118653385019\
175190571364835314835111995450110404497678633818417893145276465383210277993221\
995464760928639326050783039942394782685074673476153107381398896383999514430453\
528613188687466685241296199148514226315339044351100735300367106992852395100386\
570179647482173667812096986964680356519291814338970142393689141471396791365765\
154973374866983655237778426206894788285258470089389913997610713224965680050895\
992856481752388797964662925115183579448624889444181669033604537152460445911713\
618428984606467810075337675977592607072615692338526579785547259299252894206058\
669519118713897407505143704006489983122149387482417840207328345565314087931250\
223623094733178552140653284523254242391083552739750645752316371584522280782051\
380265088688902118130376504243231958034978550251652959070079735526706852657354\
574210382765539028307535492887050631133833339911539043898655138433847980891663\
382000297266266066904692269630360869336127953667749652465644188040597019871365\
709842480272175892440495692276458681850704961249088680212740836482690572285910\
388708998699857016919275243638216128863664622255567581377416019051704983211967\
512956033103383670411728426933810635666413697582991229370291887928613617774703\
725005907352815240990103347709883526253307234167702582882356990313468891901976\
402937308903249777153114083740182367413517242607239829149858589184748914116575\
921071090677754695833268434177953268747406917390362488022227331871757631592000\
748829623987689565400171565381592630447907916636697936431717791387758468099994\
877487632255372985989538623826362086805864064281731332324087817764348113388756\
158259277004294415471819553239356889254562963987591490002179512902129325135966\
598948780554292707155272883265972078234400890425988267666661126161096692630455\
076207573776022107701003153760164838534802024977834886026877961788616822390818\
794560815538914269211968237742099572759073242367462796775841692259376897578318\
984655180891826986698372667201469864273390001700893301705534420473262230713763\
784187845903364197349612504322627413948483018473473090764791846875752006100698\
082929453353623360550644558001538471501457305453614070265252240134849357128440\
405797705021712276245385360239266152338224032236621068884800773857446136951900\
313057023960320697958678375299513746024538616868834358422125399411978015664769\
905083855084195843091574018780612341165851182080834625658500436290538415174910\
220789664311910690814616505320678560501608119630541218126933124647717890424012\
687491086212074453894586379389690911558029412743573403524515603974416498078001\
786447694852040763025231325972734818246897245684304289492024738292220397322322\
143370512429663876367543404829166415529572826062746844215863028720925133855351\
481453596478973020017114616530072198194769151128408307576682322087343825954491\
950137790977593817167100384951383313224541954631751425512969266211249647912758\
135213223079142048314669101337790819491203648192662347688542228775600814531678\
402608904117465288515855205594162379293216960765499219062638534759088166799874\
117912117838555918021256236137848411601931009674136978913587927976167694057138\
339433810439589917348099322366268014324219213924576443873956604653161443205315\
442558988527142428520359760091364634285991176197783587124030019599959159532594\
596691287630380881883814062185194098734116691976623246911192360092483754642309\
663433585218195202353031260471934511784998302344651515308141077700441218587641\
194619161470384070466553134590305527648988552286214846588061060019540234833633\
375748495244054061625262317549043244355918235816617809054877502113782015495638\
601183545416314206851944319173428922510405993818130563301245181292954128740094\
712334358267627986019501527145046323270379162403339735583166825774921694502906\
688285233932515143940724231501745162411402126491096718541228446868251185530938\
797573562179928502842607691664272198264538277169166985681028584294138305259515\
931515226810531300122212288502156120450120698487172720992150612694922796163598\
317474677059221159078798254614084398144209952533885569801584998321309237073420\
608892322600400425353552467645299779420442723543786438999738984229662610250431\
334088391773704610156555233419235424571511680205765881320111680322906889881771\
442038967550451821104630840722565099078170041234701564058201896876508621888043\
290626234741446046447850712147228798271847216938356955561736574568478475932343\
196534626394860103140383251726251478572957265392339876959500546775704067521299\
187133930784255453978802729213007235164151393712321105261439293630345532335954\
630848630690659201143432344753971172062052688688951292306514105420297370954825\
505975106000496322646248575678485095679248485323170424095507193550805991876341\
382947714702608993581720870677756532261649434683731104013433496071792478008046\
926101724699759126016023219039697226102728828703036488821741085635518407803511\
727089290121846906150919746596993068166137048127814882700691478048922232487618\
701469508904727350855636325306278538918916072903619074368120491059367275687843\
847073861421223046136195734439427752149454190511941481197667948818032680410331\
729331848823549690157079409325845846214153291574115283547092402060885278214252\
100990277517308133829133006684947694591955208191428323583708978741981236726952\
615146083763034298380512610910064301430128998295110710959912695426239559018613\
474260448951981097275231947399800536200878396853084140752122666542016910782161\
730653931904257579410948469827850339583801902520133197747248313310573585187379\
427225068485871236018721796586936168644956162571977200463486724641133997498535\
992394006398527713410415724223859667141554333452061846508782008382347586625665\
768492074318875384490457621778960269322088273133304245983127361789364294466287\
940915336647852900407184302839429387744772581041980314386173987636437763667238\
930417188562383071897244197891592829955587900246356982292068901628091483224688\
277732430409301398877051026000077752515692075455106061543771955284690998543730\
182891747729921517155295518885480695698018883995753343812648438192210909016074\
263733054889040090522839694133775259471610158393244271515549501063095402517699\
081756463594163288922087091292823546857184847787500769897244546436901373081045\
964500173987947670306241917925651552479972708516447837864866044370336596471609\
760180946488377501563646156554602044749311791669838310879771228918742304445540\
967905143350991112155653918315585272606853226774332242288598671843546189073606\
088331838350489315406926935490315063641331005529213081442607945645267896610891\
488357394139556199109611709226847020458651687712378718848283871100807646208796\
392490469214864977062620259860309523144021169206170812744697865110971297784255\
437476220264135210456033269898649592037231909305422495639384394100552438589509\
258854867803808491624655684279049322941313719043108149872372194917705385715438\
626324211165583664027661887998214020427725131850104006100168072387142988200715\
466842163443649828378920224622696575196020613788163420335029214707079339347112\
686281622957196118700819574773773810829371765310629153527827157525709011425394\
509487122271787687305695349110921308600581699940558389118880715777307890160889\
585430142349039213825614115999807055097530870678636385212013455628838422333339\
690166837708238805578349201088863664853800768296605484936949232794917597544802\
620706170093899087157020961114751402098399336619867938206656601834300507491962\
221124222497120082144440332258776602190995990698697070685318721025401530048156\
906402802214352132263659143634298300568164756853586923476328285157849903076037\
782705348728474801805962787288027634880403996982261652799298860515033574139448\
275158066919150628483860988666193936162448149290337438436184289108159539647650\
796449715581093040623452441116314814678629236570411639357686940168879878166423\
380639903294317793214678015238511375387786485128775410212440014299591128911113\
782275582457286839508151298552590617526540747722687281508978463879163428756958\
484981448382745224476351846447682784637204235865878512596920134716725479644509\
109175052952155012439781968767187964498889513774311482509081770164404893271335\
737688627907324557413643146542582937182151834902052876531896499484598561330931\
860534389184100701404593425383542519486820077821622605540158211896677010916201\
081695315850222674012324944215829241973616826125632315268251099549655476738457\
274150352444761732608276299561297224876598992918932333901800125262904307704406\
465257799764070178296805620808268918364995637199461223180884277310406204947504\
440001762873127876443418856673430012636209136110751763964379375426702879984516\
959981380658438812226387709109801508144739671217297990714340276913717707646613\
134500715795679808085908770853884220962029487863372617940948463602057685470188\
686502287752751910078424042326328193380077209136649564487289830503282439543238\
272402035377685634179398917584363037930976791263145889419372961692473789180405\
509402331865071277427916070826702384078713811567867513848381620189613692652675\
564050817500633621533233900593944858133804019195412671699796608862587476407663\
085501038103252282155840478992337204293497413048137335076649443669367533027587\
998820780424695210295474808348105291181618311841166585997069272263520601058555\
798775330438193559374721856320136337828645650846709512279893977346999287013034\
111966509867659543921849720184472272066634414656491327209799102039539032915339\
381462430021124081284668116389036080850241176126723858958780042309903381319734\
851778843702462848960273432478832698043500432875373692710019033810436090201288\
596592228847519837089050114053578841475240559105070569973655757379779269965303\
504930951911928742473239956536563102239891009977003397318521458259994325798085\
947316275405920945444256325447444399682593894406694031871439994730134469459624\
580021430139486123225651784534830432267636599477789228916434524767274059095885\
791175995864743141100506763663069692279014348922635409417733323105893407412761\
343669812355163510305367517020236494257162217556487929866830533863513403911852\
257045313982367195387334081888386118409971344565627486124407024545113407813889\
957514613205915469270407347457577705199446096396552849858317874870145781027864\
722961481952247314356302068595323564214014864039481301409596944986721322551487\
304173370719650459207171346094298725942873399331199330966560897786811759502509\
839693231203066994760974750345437919387979947861456214396898378657721040224882\
443927085290234262618405807837855948808814707070359234369189231486936161364582\
253870992233747399473055074014522177775762071084063386697101924128086963945608\
566643442409798609254446355125829284503781401036104210852577532414656610788906\
909811075977843786427847767965564256570078421927759882779312309559216184855114\
925983530658734803712399975219195340507657646199544201399101042687428162077390\
637522600413575491105396342287911080110356730373495962299911373037278972284284\
896393747561520432258764601401036792657419506294762651895853391727158694547214\
762279063103942038736143189305446466183511078587823389014774051072563800666288\
762235929533645307480751631423946183580831349290495972585160287962635387801964\
713251910947080943928057584003556300712591347653762647529606525928737040829669\
681847285858442365935129933315959136983881177787520985129561790275305832040503\
456779104671429663432406970978370340094162975752308750692858345825285417781401\
944080031418064760560299304790998836716006854660615944076946884421601114342400\
621071704427673134303783104068820012489058421446652593319075873918406573523639\
964872443800948978836976515077724953906848125849862890230863691377664573581700\
315002696873062021029776042852597005967359655053582144505812718865039609149358\
413465651791440431830357018338124239419301009406374320578007290425267650188890\
814854288270368674914789009684197472648264891379731718443333074738752286155499\
575423766223399242491693576617364017467647925766106064203824194289544457613078\
467375813621301219989200530523632299269519240300918264382618692042167741596979\
165869671748533083189097248231230724421341711940386734622649304898839945811152\
650090390396224467167500062988606804938133043485054393368641406655867113080156\
685681328646673536199634380719155758729269813528242052009855847178529475611255\
649177308829030410800391317621292761850523136725201296494667406415101877743415\
584662161343371376980845753368457944158895209047371214795951860669528405506724\
489262432312198542028742658751908005960987147756795557463823072594317814031813\
257145782405897061450397393098497883165375006548493651830441793340656980419289\
977698528413540270452893309810770998647725950860394566695256739295911252787039\
702118209710478465410872743920070815268946397853961182437747867025292418584479\
115254540150716746657364647686416550026568756947418399252330089543243753922191\
374289591445775147182115250719833788885821628580928369534685792592869874915935\
846417233984022969624125369599979677017133483359915639739849353621039899146555\
731372343046438477702189684381950334863054767592965201568800727384389728663328\
922541050449052197185146812092928084122533887214674114951323957711307615933244\
741725171725303711636971599567918024976129867711116660370157214862252386704615\
108072272005044690086990313246248927435378997352946373233507474890879685627585\
866473313216877358260739884202907946158137044571419881352620660640158390123023\
743705872196905815769907955549202938736889243654218374940398752812452751413550\
543156114453328823077335284848667144719377640356256319356573085438599763258273\
537811566451226334974635319623187347025770824945714643573268079811997404228561\
088923459064469071055886164864870903678038715870578974284874655007698452836247\
165338411004915060535170983874965180258669419856989471814727023913619551395551\
456055782265156938364094515958859533804892942235902976937191758362664735834058\
844416091019883874255103241299411488260376540169739998507303201438547353306310\
399228882909541836656314188304814057663880492340102222361788786336554381369636\
807402787010464357110315353384723667900534802415345227134454207387131225803359\
272738530994526828297806772868929610003663185211580664277865055763558855276037\
270126387781642104142247904537822219308983645874207641738457012502585827652914\
040437090926688471362016093032020375773843359308118446450519975576664963011781\
078897948648114091019742105835805296862519631917299852914154288435587677920334\
312928037375838017368071557213684309057156792225715463038856599051335263308672\
870672564381347879766735646209612746883771375191786251591979977579653048825203\
337627314478840777100014503885284287689428721869317952020532259693474127948996\
117220985545878695351365433221596942581371961485504291629893715938327856166840\
552706768493948392318674163416859127244535294426761674717707911688713534700378\
632070600912165103674863459816837834544751522553756950084934723411213279785876\
034794899012299088951671710224786075822803803998319101664066386107116737852898\
567732782930157632927754549821680729784275358871458388280050190402245289659460\
540940962523222457952464951658447682448194300362196636197962122399148106113582\
021591078075465633626235318508000821024202998370920078266312939894956118599890\
858958670860138451630076998405415802847782751469244845102738088497788716791558\
908891412122225825519909598109307236550891736113199934261812990333601012451384\
074193359643978166351227457704764193585332449476877699781723798376806443204692\
163451762563178874440531345941021759449140239130044008336166596981894253276649\
810136081566756480908420748998379466088825244621956353731197855275127500652301\
724732317386695625601050456263785999569832877116642955307016143811930905541816\
165407649249171404860621731688581030363569491733080785174865254882858187531960\
253255529831205248794364108515792026471251168393768617843848275799097933261498\
396987128533528389360393610118938322221675880074883310651434954614791270009955\
511060078418030688266312060429979797118018750898696307976387122191157962210963\
014317500794433763387925968472503941040319426223098257607972530443137305470788\
402631030126030213575268302338628965750675046341061138729276640800238069012802\
563897826918396364346871151335601366199365783650295350534840712252987265830478\
422359968466451210333381347377599979685175102336107705819303645336990878488852\
646635812190462253556795279173637548046074529398618299072489843916587922838813\
775651291641781512844079040169716896598489737554478705915952023119535206220391\
442321427392364274467170843452935444798293615175187797711070196550827438119109\
828600053098012300733843751652133590468683113273370001589211771407090562837002\
516739337092339421442827379400804648839083985215069136590064405779302727336094\
054034043736253914901041933390987085782963652986037646431809140217516607055306\
229314886640385452839019392355385324347008443167219374470199590904522661095016\
116936955776397178823160390429265669857638277962889625583905498899790144356505\
580580110020617452624078468090944121101203497637487115749679047502237531517390\
066325625455879217153724063771748452150949061703233812256099361969956305040960\
200074146849009301642070840681053781890794964196611467643828944754830763791083\
099051955901121275743944678500795714386145455824974825992206052056269887251869\
350610864316476086633128357160876921883232818430692199041047725088688393832920\
876192305696228166087110189671506598929134716736765461879257702572383453866859\
947583654583320776856332003078215961045690619855580742226006747687973293114448\
284718590691579898996701025933388686667142150189407254867455444331268505732785\
904566137816777225318351114259669409241420410207919397444147408756789422784992\
038584759059096395213739576319216669160564234913431084638676824534987356365883\
506560623661667820796531134852856516705409997555607650030468403188358623812760\
346128416291158741786663657859846959613352344519463983336055560676268797276627\
074648914583836886483110453541709660733823962361807477945918076729976985325368\
116923400018349083798218883323818167946271497105333983628316592976762822355341\
469142815599958447944497851592079656610267731701536590631678232226922499213384\
563488093822027401521951719356734874628173567504319773811102646309201378193953\
041832361560959512855934077132225683940589642014321615055166622904664277501158\
103575384159536908586330297331400329309939214737379115402849403864313529210107\
872464073534013098347658746500636410299792086116172479389789590822421614763916\
297271627797002504568441739276795006224685333026294253706268475158843425771963\
597414453416180590297577943216249599568961357360863123865679930895400454044106\
707604171775907086309546006971915576032261716654926927251624020733000770023208\
651619171543683844831650176886346912946129509137992502749061994567795045707787\
267908263405636729291637429716708322425046338673122265112329724275021040183749\
561776958791352658697963824820087410581531290336223095031262588409208558581184\
022840040789520430659893419662206772352213062551396050274248400725161027656576\
575103913846219845071756831269516707586503651122046725911896408090768927655093\
509729789309673383461989286971411249464409126566787153514015325372255215414308\
790950057455656112663544225290096913887039666823320856953128399989665735776465\
760128947447151910154025301868089119993292557793896173791798101371632566762459\
795697205563738084579290861937620641519096511014024004498096083741535453290245\
155578208531783307953289840051915690422180617903807419882227649033321449547207\
889839777705179833313507400093661265517590739817092267229212396682152577702401\
676928474050686524677758361858916733106765784590931933672930978364888240019725\
997165733633141102854488450322201739388757621091699729219749742970734079897110\
287006389954189888144652420408882825263360788710090457215241462271893017110027\
214036242463885069254745527962909446086107517264262144217665178500640903167093\
943695330536952582490906675544603849974822423848397358758284756984279089371802\
988849755755060444177727334277477490204940278399965009239072847833306982691423\
018580162630992307979313684763577683089732588632806234257404193750039124936542\
873321055893396691339477296521646497249748848979518836504209988454537264938078\
068059175438410738364821756695928283537351158420773589663486125003145212056272\
334697109177284728851396836715222527352573953196953663699596932126597018755344\
250666703382430991676618693423979754572796477746807293448476756360569122797359\
193610645271494326738942702902442554793118011707270098271771358439163775057161\
647689069117617934921418188461689322225140937374395977742952113988872218443755\
699812839224538821802110899852584895090752659252666893892184527327437739460232\
088381445673894300803590437333521656807592898280192293196988540547514447639102\
957916836940457725883410438526168793515053017215807439397511413642628629181134\
248395886823315202501601403297192493339011536215502351340056777491556375399517\
228956613663375845660820090120320577760007152090309035264060809353470090732063\
207057837586623009125037495150306388308166939757783797703895590342243076587368\
994468162255728919165453545566075185895169613310119681779403673013904290400619\
376167385031828076533854810709831269424989221794642810261141209613472974467041\
537184160753649265082055699202177319491455414473115353019301920235447732105157\
229427658210570940713881717407277732118187056733384249755369771639388946871811\
995086556473435493938424321543895377529643989873321183798646086347800896573682\
101044259349439575781580478835506335387945787632788323541115251604570090778762\
548520172074474040839524313978203866048301605941353970235991643794980813686808\
515871556563773004237468843997249288555470742529313478097362560626484822565932\
112502089393943938628604142078687881872633418233670966710556157367214415722378\
607535306633244174356123538649996111288925710145309093269743912938262987881663\
397134225219486707610898265106215878102193867475536160284396835961113428631729\
539515649073334962831420578071631603252972099858281462605347726279669069949535\
894107972675242792034586197598792009105399013597603179697301082909329472899705\
842652492336969552168574702291725378650616220276049924524688737589902498212592\
938091948944063409679176196276473929173596784984197545719567189174737260172985\
136626918369089485538643127544202693864928833539955748806881194777189583566031\
258640148729566233633811032643081756457060598300735452098387351773487613261622\
476369540607773156863799074935509371000819617907210143675714312026559584551913\
956189241723736499492896567650138230212976002735694541980793286912021737930934\
338915557237401998748041070496345040342278619234556212504229403717875298296880\
614655348443354220267137598387198242383551483333161212981686637439394641048948\
120080430083601406201845015311692608072010882800539183194055004624757654100332\
544042941710170858796952351676495012300634247765141567195982040448739661592383\
392027650886107780384073008542153384809456759217179140203593629244076903743532\
945776746187077765253314737694866972691140392377381599986986878570046303245629\
034373984829869028585436907835854523383040598054580014426990989350418990464774\
707452296861265561334510243174651445628484844032228991227822059408314151380183\
471495292571852423842398703593408659768272393271599679646600674076017046233849\
806660809067902938899270917352132286399946011739213781857437891053368440222744\
601285774671777167218099014713016843857121309701511212816749240377435109330750\
645268147285878778962633253041846132325845782707149747884264505505552342021303\
127914995526272170909499408605966168492187150382019109119193809858915293839475\
521331386443412227633854362758761977281136651707587585653255842783100121052773\
669806152086229253198649007446910757935348981871508112458862747828229058377057\
280822549015121439093054491643238154405533477101265788529274355154208138519418\
600042099622054574483198477654480177242324914711166838624128211289397303490765\
345565035187320719546845976489728645303732085246650934613817934189448907690251\
994851073767731813325633093245503868413282445254275493008604253269732445064782\
137142259657079190109036505994739734080547001126030419598277777269737268205074\
979308808916661328105651090646277463938583751412702849595252717806411874054442\
258846025870676316265350347489445339342232559350154444083008876149858403131312\
777970664909266215996806908134823773502837462741061598840163441897833258442436\
355910570491613953626290893697076693285041240982707424723539898924457343744630\
988496372992421977597938600173496792740085073653015785334956910941942027452634\
945391830879183224329350519840558748365602911924006953713644223062836393027885\
709204924476418085704918600665532435806223430733644504722885835071663629578068\
538100166073433210116767003759845627581475196019168170587173318306802466812418\
189559788373341151009072776060060054868379532504573585904514239780920114529855\
223521957830218322701307695942480160912425358050637140041960855276727884355156\
043352824929762638978802233787322888140760356669486162970544446866057402126414\
998750239306500844326776823321995820525515013152456031001841242795086273845044\
606009015771872316089401111039041215961124359367330050068618128616382382551068\
580468278141863035700296867808870262263171701606946099295360872764931451203797\
476816716914208718303725584563415897772229022638988380651346424946206955632233\
232956070764749557143614826849322975888938072233430796554492571335497855622151\
265416724585463206288729155083611050108216917107701594553490630126365144612215\
567580380395033923659257739128506303772244204588610070318755015383423279675334\
950802858274438146419437434353075743901623064255524796628604291789459081644504\
451386528331914437950708438421033561044948472562546761045749789983005201855201\
588232678665108822555679016003120746890821272081806621148485167331175755453837\
613248870281095861784448882788922496640437874298679151190336778316721896655099\
454314933131126200265933684297985262470328054373311955633968019109569148156440\
400489671868324901560705070534422777687135846918842316412798315830839244133379\
446702091168564157024087415868081483550931236480785489348034606122561163020421\
596645927549827978188846423569505396633500106244608947786772460229163274696265\
520686747113835008818123677481802549470154372434804868609785406263896701540684\
073600338590695752505091882430707722179660502210340177479057883316455527668373\
494238077419293432136142602139608097501297839068381303819761002496450351995221\
035785345311433806337404124469595731352170110393614888181398991983185118924049\
862546678800169321181492671535444365417422454738788575030995053703226904661996\
963604348445850235706386978518131052469379126433162318287350770136276334208141\
065739749823264203047663927016753019967663171556205822545236566480002329970755\
707218986740464654555886600807188381949219962991871924603248556102656274816042\
701491319354698181437973617982855659094015534868466793702219813449429272543918\
523541121401256046009414187475955193067163739001908447423531147038233257050865\
768718863944382258896409737891059460789624017353310552882487161809728257047483\
100512766133669826375320056441145110360612808167195982359254776198378326013932\
943150755804717061156301677910313849322456370467292075974996649229044955853292\
735272146212613538437351604283277583941830037064847843353171431084728285128625\
283035441769114281963833737379111196074163810217517703348633401826110125475172\
122944138547218652017521488030453708533675857795669144339332390080906272616860\
077048291878967334548742978746599622912860148515906253002610106519991988145076\
837682221175308476430873660262165514546193813354940328723522855426303924767923\
581901288390145770456185703333023381450653248986104186456618164852539581924539\
626269999309188352625254452755048717246159355009389521302626468690386344792826\
196493253587761800485932173181111440722385753570212973769776190067037249285877\
356404063803269496400681374898196283481347660969861685663706343695293352168263\
154707930371159008434559933908181083511021397683887476261901582790237282168922\
405406711545307553972421736423621757574996585992818435998491254321067109845251\
409540409686792316697744793970853053872073867366695959254627310059829501815520\
873045697750198374054644741348287162780951026388178139436449024926306803283926\
324910815316369136368200015974564095719504885882958599967427682994961063362452\
465866308047073211316514244435668501719441811969900307137402204663945242643675\
287260274370713031888777775889763364607651905251695280630030774772276531327443\
104570093550988938950184983507643442928406322807926446650275262478641890533748\
269726970599426340521293446666837203033508109776656916529605066764266831350549\
530380431019859228366224790339855103692183712314409129856348965287144330441305\
818563185788715523588986111969011304757728900298806493332675740391602229422461\
941829774055687773425160898424390027844838716363897186373751876317139928041410\
558634018258447886677342788586795889932531231549586917123512927963502661858013\
685236366683210466282626842355433277685848618058569416862674027708265718262676\
421672462361077515884166954341423062381084738692002539593682638991407756830308\
406511138848236378535921952016530773587119489501456592996120286682470949456487\
389950693245732778391127822906699277348119050038243211597372055126848525889127\
364004872416430915923771232545627795288285580719687085470410476430960187156847\
396323623978272304010171372707702337595283827001580655099805788970402389254648\
732251511753432781492048841277744111367335445042604241940149486700660172987580\
315861056767905876741289679749381365323872302387326940696931110646728894464141\
092012261182236299501687142055070740889394297391553292614536081620686575127794\
085236067120123984276498510437830242717202860653413558365458589393917514927973\
689034494049380463512200183589084225000525892650857968155458570283500283989889\
667707562818329560343754481094334756147354986556357843003895050598833514850668\
999409613089670559175660760929754259829120458405230608862857468602406508234688\
142540592834410057495818106719576740942322819262017293485422732077153864777916\
022956177824214014883463842266320759349151489584592612649223433693568828089619\
584524800122381166809673961058646098445741224010600810091673706607030568140681\
561325215878424297844515799717555564297186833365283487255373190678506733742958\
060171321231369496216769648642260786059876178100636603289583068049598921541549\
075152488769417214401991760685232130745693036358091794597640998958270892298957\
779054898349940576610613070248571219533316561066084093622224478918244941228387\
189045030687124109397828964705860723801418506557771649667002962102514457967933\
299393839493047935531342995487600016884841479713448056903129404762234882676861\
582317563849996734967015964363494601109261554041032572665172212728670902646657\
784383102340685018580482093400619735845802418482637075401925244917526585945307\
274684775815625243904691227248455684926386001192691986469489301044375728577179\
892389530483568597081084374539693328651298539614886487874712241166557839317793\
835671737269993804015718749813706328880222713032380648645057341993760922274461\
345816739207324032698546851153182676754593246693446835899344168201006252867403\
805012776803554620391729218814263689355838524650732870272564276345277091265847\
065383781269784737611631136168370660299475404301273249779046448867922920388093\
285729498522818632563759217139923428639884704746994841022378120091288913421058\
404948800281397922590616299227218427258847855647984811823237660238306559103387\
788112649962771937871523554434168790336134602235481829035911554892574320821947\
898837454870748594171139512017178721432710170908020300716135362653614236608880\
700211911556209227691345946853517442995670754997787959032308089595552845285898\
554502444760986530401919288037031219649920771862263923368963810696122801515362\
382898740932950486046774422221625904664626171811565866676770654070607213151126\
969353639855457048752943628525791072326536384682461415588360820835006107899880\
303564608482904851780491921237782992160262981917032594172364994496792301055387\
435508733322460542648212219605735554817267461669449548249544119944161291457141\
402465806169000199607469569703507565202783573933601979853387679165169237648859\
583538471681061550993852859211959228262462467364985095843627281016229100043109\
401957757562257601505229302490274374035976075490770237822777586750021798013844\
209980408603736626067158815917755403950926792503587371502347696519568977122076\
354486607320016456982597825454325852569497030909187628650690974693774125268568\
180021121437683187033072266508210430728190905125408784712882277024388057433587\
552870877946030174375770578735149079772559456395008729246102753443902090913292\
051478728011035253434353992186776205153407028532802881116913176035957233711438\
570070127876791053107620572755755722918007726843854263203541746387806649811175\
907250652460859728048150094880898652446627069091276037668134152424123675228668\
726129105545507272663866442410616205440483552764967039039911535258052351762699\
245733220957617597064327582291617818252746523545813122761393524062519105247565\
835030210979775352450155575509742936946040316152493327300509943470255508692516\
221250058902624980689296126355401242362047268200225344853357110890095447778556\
815270709096636264321914882724834226982747693163711228200571872343532559392110\
136629131703026824865810204831314429977388683303749830953637293546311977338321\
718637881121185226836564258310066594720136188468713348411696239410805187901564\
435533536579297182301051194396258610712286161303438801042599532115937071861993\
041020611114929996929757656280466564665508735902893330329607965022796699282588\
030879574360347327900479264433645053902204561795619595130947531098713799401689\
218741526978814734920531908869402631882293155250732061275670956964306047717670\
727893044791997469606156453855862838786127360844788001833148634264049725470457\
587694148563989268901050391047697237389252327726228971514685791689947071110723\
654710268263877052723820499610055627413800424354550736030850112140459816918638\
131850176704662630417593195102225994136517011373439674478075627839935013405272\
512271530540585577987202085835897046484483597907594880993279589164594390415609\
109563457628764587084878437765537927633334330912936386191694417156545598829645\
823793058339143682530907778219498276096467017266067295980727334719136749015117\
874356785284073430862317377608598722348371569839896798363650563196794202583133\
831743219937851032226396202796906259196324876605104587389930978037335124244460\
096134563548248296749824109726111368719458017298866153414022798801043176420665\
699070718574450126056280545245477717702251687780966541877505031529267815572392\
139068946130698419618394371792636381414699755431493833129533006090528023861608\
126205501815892799075613220255842113479809347494064998364513979000255290268789\
362415853590161813808438169856830457466519985475377909040337163504530776633513\
890827192780243743562744344811256208300972716160059247715111294257272633654240\
143493632078947774309530550668013784057934974401387804302278336317267356840465\
920401653655294414976960766168502910154031212188164819359635396979251352042942\
958289533637941730654051410274576184204316559580679740176964580849807191615221\
069814559817657592657964142651978361218998407664403487032565920836381006158930\
566038441168918251801004178111699887990938135724147440037809884304835584084105\
588875538005863319697380453015529536057324951821715372069318069222298057306918\
450254988432300101940283854625588846678469797924815917648577738641411063513929\
571465156956067750904942380172444108053621708656375123639429664823173153742937\
442574334872416661393291062396639332667430946445380515763786892016832975321533\
576577702744578994823364528441072575249058991150626883377942646051289941089124\
890071005113689160084986882193110957261948559703171157177967143271154942921210\
463647908269054065618174204370648824406471078290237481862015916491519666813648\
863210005719092489483685677022729475005799472433688820660404371055185462249003\
844197885691542607420270779905295628761577920472506541620251465427907774410707\
151289486370680784872353350515347480889470927256678535361754069636570282878232\
920267889696105921426779001358701634444748774176556447901780383677822298402426\
186189201195209432761687749412596699145713520230354629954993516589468574808400\
208330035403018860253392941382333163037192202182329508274150544590822646061489\
164931044444128644492169144875025115542979847820869017536781446407627631292443\
705245846423209069280037002632766197134355657932226422591551330325208888696384\
880206864142569897781218839461470976050643164549274076064760549629486325333677\
173352570966123434167540840667843657879192940321177420017023947560808361185623\
305835651361857934891627416291683981459387288248858492059605433586295470632845\
453222088603218789118860240333919868076965883321651994128090412551699598882601\
757373792045197296604351084591351633667360579597440151684804266316576299725196\
882089407301330349233226521253279652740610837546745774965797692489001302182875\
742788643662452053895690222090966972093562187206334295727847612299015803753705\
557636218676162947940211566170989565957194059417089196138124951415014298567072\
005367142757319548955578410963230157859316946369066301424168007902536411972725\
299336684303432697497757575033850729218894702238045391884525953958812996496066\
725570879030476003621061657963198972214864054627282616514734165069716339312686\
838742887427677054376259567395350851174906730340100020230411645219352804519096\
973856370229463848854837470900791744862231827551282329871232042843596920518906\
616630172984014606778460612579041208732256669396061479723537002173830888780240\
712995146683298869287617963657676120397241213145155860230615036306403628465232\
282645690078125159090850412186799538806812028203648837796283756426260389847456\
935347024252849780086658643114382723567170358089191857830836825611645752615713\
503901864190282311883420648627394235291155923612628372963110226501838709907524\
970836678639080710892829543732699552394093355130688878536185046260692743067356\
011315704506558213096006387998556083405251015357943408223667024310966768212353\
948700932676880075933645945373034210750272423436462076898539652368498956538471\
424682876064406786739466268845359815158031152706810264531619631122661397034009\
916940313521224667984068128150204826628163487576548693848487878695075204839353\
683257626344276855068771357680798244076115617752331996405892806725635166483123\
563222443189492338310679052345282285405772421914932711301575799282674037365633\
725898543039983421894038710026501406722275291628210083096609936052402210554071\
736484280347620460928930215233475904187843168873385512345170838513074240970200\
397202962872616619591516376326223623456745695545314594241485323018133298839959\
874161516546474507283379155194004973637816068861376058264272960018013539668477\
802653988157570099256725654091454039225178489392119716776807493859313045746643\
437916876540367292918170414854676759784960231531605118153469000441033398943109\
877064033707167581102482746533024458248372075830733665137971228412634075352933\
922566450939065790729014056221496137136843986576369109692893334957841557074773\
959387212044839046925050394537381342082232444754252923129049261159866053868495\
256640296358427002234363878759709694735748860055270394295023078461927390262755\
706879406050885255201832430542592797206526709134634454882799132533820961979530\
935732532953249443076668448336584129657345610219648050092611343073845752503158\
479430205583074835651462526089034711221414080945752952065053310619361522063060\
561483647276196996190943188769637851259954795716215332126176878209228708934397\
126990394659890956278630743581920198631726573690528003761696797624183773033201\
902449313109648128132803402511528379815852197356586702347994602159108348622210\
133811973906445881571099071825721369531479622022085703367082073636617837334868\
162687863291894092468413381069932882665809956528679246808224169906530192720665\
333977486583124018387179369331449756751503254485755542943504315698375891359293\
924560851743895604695700136729686084949756870489154885519737297983547294661939\
033750352305313310397993309511066125445722225260331355390609651758204049426178\
409767009724957201435402336027790767524546703705402970183501164777039129276866\
736233844375224716672642424455546641555533943425343996446377617678502832336114\
732224401316046903666198018956472889092699035501597934991917280908111892688583\
756100601578866338558787803280441057470304301495572013667571870177309420793016\
467983797816373826155933540846296340092661964029499741170420048312800426546431\
020546880693493169952468899847529872599289514529947477650465379972174625995471\
796546394813213395137271446802733721732814344090872029944551144849623226829227\
970605930407130536625990384343579091331308943994214271924290525957423379564450\
694269109927812745262191910078838434794316787614248258179921719786467573443155\
984402261301705696062670314607117377451502962612688645491100039051098938712734\
677232022891006906910778592876125158925529462482433149080790004252782206385171\
862181363520488176200447575951213950668015788108233582413540957559832280816338\
518937392950777619562842560926150565739571511822545100183051267077774920880813\
968147037554251313927467713039754503433081429441515950617679796548612010893321\
258903830416044265168577390703721387128358612952503049590251429327837788293609\
312994015632180296523175441854455405290079191082925158251201075626476711728781\
935092765641396412323924787024443470268182476806790164874323036622451294573319\
722040888350703814536528463553601239162893008440973079993729977706486020020100\
255629606092277297561447791334436584252625823120917822083908132092856291051542\
457435206405075697813075700594841081827897923386399943066365624899600556336419\
696662859146397960666482051112634459915653242025201329346470145187089232929117\
325404048355254689465015892609958937391115545841992889345564208008487325258590\
396381071275586388666846741590856921060637831858232898992039389574089421400051\
737046935507499295948337232428228830732338540835224649470451135577566278403956\
915331190001598908879337800702807673773182714013661954071036331813283659529389\
132992563104048115168592918211364008035513778062561584694559181364569981556196\
766832845674354933606200471288875812344517176730643637399137374543834485659990\
719658697201792551509872916040183136710598786957558699661772402075777768824424\
980157580056093292741779393055233131795220639884353306287859379418076392827586\
059857137455474105129598434357018912324752061929001316598911263683239211924349\
941502549130387928991564330993045218960323485952909932938862990513947195768878\
723075038988899722347344146929960727964964523576146186354329017176327548174065\
223038261739243201178896890378467593536346020466753833713075668615710829492038\
362803906325024099158534201284603331059307825541163458836608926865875582324104\
149543058118178809911731870865630681950711356293103730868831014747618976344862\
000744623655575550752539266715822601332401000231703318989539248828832844533406\
169156636416200120646141664808186770176251683738155753283592199381576375537632\
632201674509450032953349108909879391127872746387253214144980968275943643994938\
114923410543190036934228022284916360835743402711769372367038115400222737464016\
330034178783769685911500722261686367486789556693809881388547577101288330742444\
858748315436307482458057246419440797392645662052347104023111786430474252313671\
841203167098343418265754113881726689641749856421549719736626497517248670977735\
427868508836498076473941974172888794464642657363142677672608397249226865284709\
667841981462387390536123735472012595437239356804913798457353752144346178242133\
244097502682676950141255899663615276243439382556847814607932509167398356181500\
505225871283496514150314686581279911159178562065541133382943633637325507449957\
145888248402398300236365380164629979963141957091479932123670521586054702812236\
497121705691851246346126170371315915248758057133862330929249226753263877584514\
683918959527082028583949119743175790978080873533808198250505647196203181100380\
527453695431881741397428385944582136610710782284235980428969903231204145909075\
009010619603520088889919786986986369307960407163889553432355945927300614929911\
752873844592958484933683597234601847629365298849963241087508588221424399539429\
905572140370717707408114357441876660481514815110491285422862509736142227742257\
492168555075396365217752820660355274603566009994215476365923001523208881426082\
994353888703207996942572060985711047193128933528876658973542953216866254906524\
439201831477360162145336665110531982132692430392768176534424810413978722450157\
491716304677943601424762611023155458792118068723468795465283002351967743390837\
855894705474435687295285209894592685073091504719516275009915029931630037087250\
880611884208054075064490538439169099609234903453175329445342760591241644890229\
964385392609871558432348461147792888619507474065061370883715409921527789458097\
169895355219880538942083237219125378473531230227943633197792078565248454017621\
261447765077567764534794810129809066983174930144503698518233297024961409168490\
233013537952143621344809300181493249521196760148340735912056306052807001074314\
885539269787050416112595839590108132992695854961754352851980823802642086917403\
285773427073655750716386749561159277323152201491830895887934620602086268632775\
933655104577981160641116184003263250741204636429209680781857211443489556169489\
211049803325148250977165306601859892686842269990281317487148004135998144862225\
536280203471224301576494472269292815148520943021168780943709524030695251258568\
260154647840884295763087632370468344492099428420852041793208871875707983021972\
262959878184363761145616911087746225453885726106066482941515250127322241727658\
558782539768090315199362602363120276199401712064032976977346058460219271003117\
409475283092606493496020044294202486126268906908504088539313080997294534277469\
250539483548070057194260913972399601432793873569166156190017057309930397892886\
293822795756224667534289008084037429485949491848942236106305779050460016178790\
630532876512740786239292403516528341757817104424847128368234701180824662094688\
943314258557676242432515913807037430647807503633052414488382821340162648381353\
446155916470755714820600889386829407493493963872793531723883034846058348389255\
227259798416212618590764218581536510343633718832368497896893903490900616316589\
727389491526017136743339761916426146640455799397789164747360133332688960382515\
766129609906261623946631661217275685958427081675826307500993952263806168568740\
632186920940368674205225119861261998810335859678521955244278296444964477413622\
255032934683494215977911023201938004533532928358338542194004187174730674174935\
490154203379855283319135185531436943447186612730813379565985676428503562631198\
912341692202973723903435478354977066940617793313180332581754523344003128596010\
209233965198935156487744154349486479038076963155579851340091082439284211881373\
227411772334378616980052909911870595488350855671428108173828805720906790462478\
648470321718696385462042843515222579854119040867857972603798894867006177056845\
090645058961222104862828206639205388310513569080883899936808507989849053237366\
458567985040655829468169234027247955677329475743938598451998715341542868360990\
264413331230468892806928690502628696261575806605633479321760789763691197086990\
017348325869930686740518678258471201013875402955973794861975782359896367348932\
178398325969152128602204239802958911526386856135147464055575958077989394219016\
333164430379496211043261751885156205412453978660859225077474219093982839021151\
534435892069875017902362888601795227030022687843576106818241941802951385543586\
431452657266726491495613673112412515407095274471050232889515682294919771383822\
153009633691244314923535236887357818141474149421685291886057192139522455337945\
007854578802714037857110455831892283997287398127302556992901035936795647964663\
225224373200612696037330208672511586524594614741832723039500816321578506161861\
717242498086611083596798099904759469117091170521451983101042800351920090155384\
442075364779608906152730900933792085224295253404768376741975402039518553051545\
651798010241555870309322665585543928730624493742878731112815643771727471582737\
476831753323931079352375785947963140425090284529392218063761403968982057079289\
757365429794325066741512461953395682854276010128329249968562149461310196601553\
723631518050254123265245532383777718068765271371798631371878087445010553652578\
463750227566729094313745269551036683166017808471915461954113181442888741056112\
678637566314833732596545397068777483213864505004013776609800244053228653389084\
058293678696923080098902571023501602139344051983885667510068501068520358755146\
966825642658088629539879629718193719434002752810234782146090043534913093034427\
840887291899862397249435592002258454335223847643006155916349337758167116088806\
421775755763049366877911926335572246690434134940845064114203452062504085480262\
543826219200896229747069301875089223232784138468114564938142249108042443807278\
919162889769841943648175995009597166310382052166116601142003331104192264423775\
130657836118095901262901196563180084876292837226263380005758446542832368030086\
999919170343417100460721777066140317157838684624879016839146321970461506264443\
149776254199313418421218354516153114474270816939006124479325485385222392404397\
903486197370796508460076376037723779887673672531212735932716329326813958190594\
729101564524667580184155095962787815270109695434473763204833947601919182693911\
424113182320225434158060740438864170378706579521791157350212233226984089660920\
843488608209849553658791235296497901417676533675223508619367973141458625274226\
289366244501520986730929148809840377160166130857577570576801328611295654669758\
222868063756606465053198352884760467608757303167849725680339784406539626789403\
753797294055072907291581063118430007869408860174645138075719159329773692020340\
674209799860471278055918543329012944278584363082961761500672087635008283209173\
945754927578583879149640568374334354045231203020541243249852336639310697216451\
206586687007475094566429753259767209460798218679814541594311040152189694122770\
573154461515703802176838141248020672761548735477656254336151616470574970727721\
773079969136606875977883750194950331963183573635224359146562181605942295222304\
075528282555203906121695643398276814933902023088466662001485595179791501889624\
414830042880832846165355027314043235199170370099225325459603346632480248361643\
596286864351417840667545487366941354217077723219800434058923527824888897616726\
857834700580488412727911710659818903222325709332698581912914211893796353074095\
346638864494215401773529098037318897183031051363669949532445448525880743764032\
104092265992621295704175694235089762548195499471405404012253226422745435247489\
165539779480609164147129590863978383903416027517606362717034265528077072787305\
414123002532448053853242413271226231294289329640453908008120975295087091632414\
049984794180457236363286843155883960990167177686612253191003913351780253853204\
265568568012184923157537387244785906908955571077723215169926035381291521571976\
860337977135149996646448205895525742425986028601195560842196594283349560767183\
709091623614650466139357387252077924884126381626101392382381986355637606715463\
670329608143482360970912842501721414440281221269556501231100053844463544156267\
353590141484286271877182302668604265773727741911238008222643202351300813180223\
578751582796964406628140314335121070910676270912950981463059532127183637137023\
967639242865381390871117388856153619440870101364593638920712109986871442124013\
763674779010065845117399452218126966568484190543766356098507305863855350805957\
688530690026508129331882943856421099562008036984727362578592466100638637108884\
751866969526029527396031569889550931924056581314665500333122995826066514966488\
217417525300341346579339415876583086569003590199256350921655250695400963573675\
742890417444218427639748153882324049697343285873319527689890188617661068110396\
276743477151031291151700988800423317141623890199825185557784180055867354548088\
723845853671710117292142973092945337743044577595031554847296719878804363909706\
406137727943957545839945316992529563438203480577284902386213859788215770245265\
856431771697835510429099912850116021175875972584812085528742261928104594445556\
500622263256488577963253469835400066257520594833795070395462576297726335998015\
518675048837648820004774809184691602617000712353464220011712995896243291758618\
888593373440295042968155453264214375873191992852224737791820796095066959331499\
966571138216815746110524014734818249635393634524890136508268524604287432596991\
503611036070988468667507991158252524462898735746969157470584273649975950745443\
441515785836752566671530708303677184753563322812581386240393843646329107653092\
651565821796700640150794194773652830030043932007663178796152909605063439542225\
933368784179872118743755307960174461905112465829285786367250527105505086635935\
773461285074899505261408768805550401413827220783720603296279384996554138947736\
268368399578516422522008018571949392325433257017407117137937299386722939531896\
416493829391140023640379062736226253543480518665402944018298798485026115678366\
778491300233122148214270677840492766250806549813389692596846982531577438165991\
116684180375745847724688118007546472467192703695417421937784239484861718216712\
238297314235989403171102500274492291357875803465144246200590893095362118676948\
131642219883424429665067307626806289979031395559088585185527603352225524051343\
304808732885324528396632792867797421473990808255247526585531511521655841369769\
326360705352255028315803138267688897458041786209297764383930678747509826654515\
247501902469553555312132399474919511149510414983039750911705906809144864502969\
295215239600327897678953255958399765727859321168180654524033813685399044862591\
880246605157132888484833661420685661333615380867611391124721624584126860920498\
746159575762918461873031893766059547791316734905413828180748944372935536501333\
579124102434478249722770696616796425317014712938284108239345304434356211856224\
986659023996829819257241430879107810304480428509394942479870467900473953701486\
210518148669353964103522939236622457924954744467158123349217096214550560656217\
419317562038902731529179567306368799860387167539533300988079303922550259057813\
870139073982396672428219873674982763528924681406803381258274442673697666770803\
341939222808230053634060450698263018248033722280969404383628831152051715814299\
334749733526119862306716676525998701910866509238296328361695996991753513366299\
577446191094943713721493484883928783498164065499720734996539218754814260634221\
434628003609684964532263751769063275387983608243509164574336854063623616889031\
197912372583106026420899187864705975325352536555860661700570381377387346952841\
240794819550324882878567840231835366049434921422311102685966311782347818565360\
064677958952719834470700034976228754803919370690477386189846384896512374126646\
003516827365363160991492604460941570777695237345557873276569904681762109526654\
431317730583409016609185251805742998358776842953971340101036265712801032143391\
381804095291091127096554177169016376574709075820649441769282850787870630330268\
947341484512773411986475839919154829037494572707214318283261822833357801190251\
463931721317498279453151773541201998652215149421566457091397515080562873113223\
318314128284861482949639750232427174911150517133481422465452680020623936589184\
232790154110751601563551133043696162713629139128859623027565463583179896502299\
178928418957712118810186149441547025493248591189058776420964177315122871309812\
270840807130296405033436752553919493858558956227729137942152819969113886867576\
579752898482018183338217632332287604080212914040843324925635729297728427644783\
726806744753934849209788057129722198232184857372304190586313768462467042148362\
628641878924058680256140617203934476502698284339843836125868914546280576568609\
262904630323523321786129479019790935264372817417832591214231454022539934363526\
726828884285478589535523565234629990559930428417845967379897273387144067570540\
442113541939034435942594549260072642272343922688926925235825275664783539288472\
166143535484586317842135832796839204578433203585621822072587009200215457500236\
336305085742931715564183486638208514813631344693904104747125705207073202695376\
486540693396302163892626189373548833727623582405518537289906303182397566104090\
548270281581595695514056190716939130098780519603690199699615641508754296736715\
840130640061582388784593001891708175191656465722033652736690583818484790173265\
877351221046375834257480095212804025611533568664633362167576892027949623045805\
713495865176110960652381717799238901756199251914478354034760597767755316193562\
099166243050331429976467580795304258896029931476253588942971013460052674552413\
698257818393676769048606977059714054716353458077963593295210286292303949443594\
728547613479633397585693755562706017206299492382156850351581144411536042560440\
226518528552914227046791901554416483899054711788668117272511383076372279355662\
782189362744931763005116130233874015554137658048127490060140989417694113229483\
424502528281140572237197468531842122785933343165330687574319337713145570350523\
470544920923217842832455292014895317398459621750047150449952379701879280328097\
878488223370730935382399758152036528325867517191138109543984533958899087234023\
182092768697927864478623238468821389470367382849665761531760694824356794145496\
609325828841069699301785099636750721004005310997602366384134584967468824695616\
306201400844136462972181826293922107262860712252611805047129208675183228833870\
561387568715311004462761319831897056318542281979352826564273927873222758700877\
942744251198141183322030609455854797305874302225840935766368725242359023635953\
773589575183170022097857559420425586372626406881779788364160090014388864770943\
274975038259758714468932634156678519371725363876527396142264208827298896888249\
661016734501275665533700093057478825801416848992693199430253272894211205650870\
017377624924751129507530343110897952145235649392529403544829940563844201742324\
008230358053818281716590757649584491269680241770354130874719859851776447149584\
174872655789972230812258433669563423341682047867475453532342180154679682891181\
839122040979730317678742360867320414328415120388189446331386644820600609162103\
554774800693945914052679039543658236638702769506162535037843022646942809687522\
181676318211531016607612505628707090403300077991195140447133521482902321410749\
087922577958859716071965992567476425239714270034420713126259093169913491079847\
125021547686381524204729366422573858566005687153381149696664899882138590816400\
361132243787756133696270717641366842318953011113137677037308720531256336550343\
812047567282674880471859831579189561512715664475569797585665916707517689706105\
867466323881239697083680796802103919477292333411443693158720397937479377723374\
266460617710480582583645968802225097681073643892845860803801816754392987601325\
098149704539907953087729264039057227111238010121358964560205258964664817319125\
327629408403917240324978827615218944887227929601434851591448821092406439262230\
551195898258039626645497006289900248718953814830954880443350235259979651084597\
514497810791785496918682657694286671168806437636877971090714160483400921721252\
499289199604065148349106296466845771147362174485520078305301750648770631156212\
458924205732232757757873227763741343153899613573322015535203080091821836142095\
121480628448171687811322761459943676698968893444944325296169033684979593775559\
326903386651593093155076991427838800964361396819387488403598848827197114917072\
764716178064704561598139562670873316198069836056891629549090436089113290245974\
037995929978593115786403988999274577618743083428905974200424759911258297246803\
641071751595751657832137219427260725239219692288846002879137107014711199295152\
956851981122807884642406311588602781730736054856274660117562363146316662569573\
531494438522838325681861714461036575092722113228530888017277583841820758197157\
753278207655019325986974404827488231357346146170583703008876403885613566482204\
936564586909358034593302218041939557178660976222201117895780199301686621392970\
050495597323642284840686233072798363592438513506413476068483173110509639002530\
841444363605216365306562061095900873332433210146969940326842413428927029258886\
869308174556385726417363577691019848978812940347884751231190892930015516047981\
206286693394431072999795095963601139823475475301062139137083048840257235200272\
367869145732500171222286707475337255891253487275158342460008027559591947678511\
760805576866065959893798555119508988685667160374064554379429340501222081991224\
046855558009874626888196337178790514444772568930062312860950911922454864616825\
182722297432431459986135741926403474859227761398877309614972722279832710317579\
435974843931143213054880482129141555020651624288854270586932677913529859711271\
576856032484692501329966923858664220933669229816207789169822409658755897444450\
353239103188561146379861561711715372098315844971681941294182189157320675086631\
664380721277684643397259605375430114574877131770465444058575815576046289020411\
047463859671485438414527005316319786664743156329174358137334302843601949122082\
759891007158089752685599259512230330732514395078075371428935280043467976999336\
777952317460746038427772802431403195236013429594727338728949700092594524850337\
105499448347788529055740296751802391737268263518438385201584370452830000512587\
278434419709114037264041408923556361782904232993703815350602117194406820981892\
718833906078921407843862120950992687800264211210873756297662015386695319862323\
128167319485412958542678846036973452938484901582326025455922043355975650849992\
126103263797542743073202407367474587358033512400557282127083571116703370722093\
914696026530808435403950809322478918403773642321586561613622936756426604405087\
026373282699431230876124444579106922010307372792664451436604447737455483258766\
234405430454264236192339555865947547527504169164478493497612784419591947335816\
885371443206279469030422074866582952795999714396192749562988345792659676591332\
874083264472105844165507233871543943206677886130674128676140242017986795252254\
820098445789947640862246846783468951054178164752235198411770188490949769752411\
124133606979064753696914888712865207923160530744197588902929949820665757454099\
515294564038202224761597756887539150637950150821244441739338877797519526940797\
232631511437030915448725912981862407724714892072037906056569750746954795962957\
507732138668472696268734229462938772144844698959322560964403605933661091653455\
451882983736781467197762895888436017311129812119957817842291139523540027827583\
064205423808907003870196724141336609162366654989470750935323527993695143087651\
934553922548766529452820564877746216869800898118176510276895114588425435837795\
396588432735764233600875081381209795343482127076278877086318627856670927450238\
158876794960879816984976619219079506867584757184994767176665136857578614125957\
738403667480105174709018309845037304332223725652084829910103387137958488760943\
697120788475933751970900850291855349533992093954325275476103084844177951528415\
919427169425591132908462176465273385893924014599980336675028963208745486002823\
077217792072890489138634433427027316864044955315510628803761429068049372300538\
386999853952883827273240141298485382555646626558422900047783590574163296204255\
928351618231068312355226557262126778366846190448670790113966132431430063980881\
762064077964841719821157765734056949310750027918275432058111674960872901181445\
081770102986892230403951024893318886162780362950761088992965895358979909113778\
557844034463491794165996290255702290289169935606168536176876206839845699477047\
308153199019517344862241120718961353077221158792986833574429743426366233883758\
307775128579131077511101330369983827946322391115991500222426610340120274733545\
940718813255182503182274931992365623667373940870983980003762490711800761247569\
888549401993795689398885400864239216732115130324517987519129182726499533741581\
382047351631111886693125964013655509728400584468186069847012698245043566379749\
579248674514996867365411980837109588347144573702208857512083488250499842438473\
628025414297369917926182396580523752423827485118714222942013788226003323172229\
007646642576153375402568418671815126373083476105091670057166400632543446074971\
628485573372778920070421916394913518920807993926138356551251001883391845111352\
118911884912944043538093220624818332229318156284543707448173727004949385283392\
979425807805132903976710327084120793004113952999112118133289669488576206052985\
447902971114137390892249162718342560228517602311511891260863417290407888320024\
066736556522510435397617216033598382591762037135865281153542208784066973497119\
305611046825087121463201229284642030141529404484410194943269604426368037532539\
911669474958239220800872552115606549080524615347099557616403946775018154424612\
480307789946114276709335513565765930885984358962537252032448985221656755755984\
969366296753889012361018235853471777691706404159376201161246983489260710232836\
686889302996419871284710366515606491316638633198931108531134552984603347643155\
608887952227374503885611795260478823201820662924877536579353980689021932397429\
872761833247398412025204813790909340571743236110624818265419077591143350842988\
685819188344079074940308410661729992588999601218737686387313603994253546444376\
934821605355688441222046324982683118670015742747407091212808397705198840365156\
614446439276670513004761784168667431047707695375884137698282292218776470987642\
899605720906992424267043011396028728427344543461215776670419540718864782276235\
054688021197904513792562901537650112822964199345530850846495081195476831362623\
955559641230131054737466711527568664457455271798267927588774793172221736034129\
919744510952951787927300030734422018395625691672698414714518130097975057184677\
723450960914781832951059484799687441826963231559342579992871440294439538237588\
986572190071855611217412318485468915460011449001114655555777633334866676572946\
683162445173859872847604100773400658958494324892243335701054169883358174246865\
523169946452685860071170620244584558065732752759841118332319549463655727256326\
923273460522404077328873610807710347913053879721069570324702843303959404317215\
949430232205752702992245445334628428365418634085880715234265762802953110951949\
086224061913242462635286766571904597295053377336105542916509054789024023298743\
749248949339181987500001578727026912089928140820043540334567905292757463262172\
832113167421092663611584630796862795991206377751584570792009442419035580925580\
571199280043024704926939475539417284786480612034305011907076213766326063394270\
451688351502900085908283339663335491742647464328702600448227154770398254275677\
570263060320539798217619599564050328892852312656991697218460664304425956364441\
728807727813081709775812733525646336285640241139082386234212845802427806530431\
270193196103259722333568714727156090959296995286817524649666588799010103812416\
915947588555405021006810867924195873201716890078284294902162824950010258771164\
737736889260169368453743514119939195440700916635134308748218314721426170406919\
086032682641952650588685842021836629206367635815756334987300301060997778542015\
684226590158747086128138235305833767310461408157962960811634230975142692438658\
697250553467353044775038599006424608032039711084907261653668425183341839839219\
354555484614266289217971671700483839908480553817317813957073116979051163503722\
361963635060718282724807058863997945008216935958010227873112497712197890978071\
205320823848205233621349167248338396436426136721204452594270756322049416203035\
980797946486256707411113647939327696084732046423986887758742442091561641561824\
134602193007464249774374818139841355004591351578703336847908958657813627236356\
217245124889197538362168472944876687802563388778364472094673450582566732901236\
674722658989680056270767297620337979897591299462210379826002781719422730101807\
847137809372846467434442942756365451219483751426103901637167636275547762065557\
024242703829961168138835485540797850690771019571752434325292190970133699863527\
988016401324890804783937283720357974592482757608139601299525066511731519722999\
538512556015550060038639903780765684469313960400996203226608454266905283469374\
671999985227684572879157557163216935053342571692051032242686691992201242602893\
703229155409191249253093173532019455937850641632926567096578380349582646964269\
953089016477090853019662470204836127852870522680597179788755866410770811513945\
694468472105050864440765804290013266340658525858254530610131789008403926370391\
091772660081108367539590131475899792744015234486619344280029801503176168131393\
795812735287460904700301530929724097454932597767613301508547128596787654652268\
949715523941643788550848958503623880984042834956886433972030968139532960240295\
830308469068761198726523263800961797542677944695262596476406762161446502333608\
468974158189847821779111491992703395236542044642735483487572245436181490849578\
299730104587123923396059209289904704478016092066225220669479813064271122101556\
078597326581974970343971984312532670437640427967748438268671131275411132011097\
380799634928941855404817349554501596515861257050751775710930742022792372159167\
902040747685189721903577127286184110202523245238569069444457741859472178287511\
185306586695661696574366315866145116971526668847266872878613900391950897271080\
689262745015868463797740978097743651037660690750857725859341157350283344316406\
341620957157515660129540054490378330645822738946439030279774124511684848182289\
147913823625086135271106327080415609018058465911477412074056840127786580117147\
539069388075647748051897110480581779860949553820449239791939406210764748051481\
145333890341407642725476029933833196221099663514371027867278445803316729817050\
838526210645566981773447776436726988203029651215307477114567407425544094329149\
376355708825518535784032821116062425563017689403349737320018800963546733457093\
582863846426699270353393170925531607983792488428256539660155369576913886022203\
139814829443924419922520319448195426146909956376883519036901604965068704552269\
926441002986180682739088775393477992473112444473607071049787121139311491712931\
876440212182959299944792440921367252410870388249321810206643643519499064574544\
762065992317042770644122202295846429136347400603346425087827821718850619354841\
350843174387113115049690849585115121475186319271476724344853279826114697161690\
480875441636838122237027042750462183495842701446562355216294657430270901066236\
954345842392091034586491864505877426243509877373883667433786626624606890424917\
265261835943972321097304654392955931187855292524570607543373210354689276967971\
591068454451497943350000278989993549424761936446282040675064566930017446349493\
963467190100354057269313889125659890843512693976168134493556391485722034561725\
480782012014617463915562305149144278363210799716760337371135566435443139096488\
877852665436433994671187128481155705045009832480031920838607995981941203515814\
316731892108560476390632892516805625876596355720449657623681759144022049083291\
286355349316429906577229456736002686934538659561944591978966600508424878325329\
122612247472517374534137269686270835196723105707238864687327265612888767111062\
047770171681053448430953516129812123940464974665714540187322018383302419382706\
922014197556540972403976860865894310615831302581679375262047078716057565770262\
205126616938177167361562711210978438760053738799633252759384223478519063686841\
942341998368333433291841634537311545611548963877514371073005147697715144209157\
927136650256024690714281983258548486445621355873449460009010076805427415994807\
316148266311405813522628988889170947009893841279611537342746486605976994935873\
676640613792017183986663548492812681049412193300059502857936711411003207361690\
572088770984939002114073125094212576880305182923187572180308784175868481249852\
616544311217637313147045588266181083475647891213968153662935994066094574853544\
165230224586804547926677255765658561995698058099197349002063921473734944453513\
478217413290668519333822537895906474996936499029759047920457066581177180088798\
817489473608218729783564211182974693845642026242906205744762599902048071934490\
937287165105947617179255628770849205520575630284171669293526910915420600861502\
330258891359668584927563606505919039883361312254827592840550069458578634484289\
682014223536871382126253920478205968787686671551945318527163684630277887291116\
792110609557908679960757990526588400173486087376969994284902594732147215782076\
268102250085359324507123482723148404289891876752543367715136192160373098601317\
958976220423071866556960065208281868853297905647467559392906002349467193223877\
218149534375968440945710870230273875278279635586002551249760927232841093358088\
755794021368259835812122013678255555222880805919148644133742654143590351656781\
254178888908865867327332124288680675349560937691984376492934274435957485415060\
383689485438306502265121224698900528278950396463432160265341322166922233966358\
078015072860320263102598044137739999663486074725694717710989428971916628534375\
555073382575574262421643210762707379167509650169952165944726361181829913204635\
680957985453758005701946613742764441570306194442257559231371200551256127967072\
026124449448269494763340126816222419103942661758826632347132573667735995534665\
291678089925182188156737780710813976193344098901147035669655019363951995604364\
775106766279037071060018670783488271724935096127627928560040998197513991114320\
525170171014237422581421067400468933423301776928750231702719100560354536406943\
705846022829320628026228639685774121807455525130357886293935183892710874739652\
023312699512730252824965166013182552152824608339389794391376549268351630948263\
772576255108857692729986180363935988148767748445577847711869656656145048408701\
088296320143976762446719688339453034608938637992887925721189964129760038654062\
572190380073095013052049542074460914947627339129483350867617576976908780964765\
603658264975334502867002738992599861355638344651404581113166897370419787887622\
687860321381791326719912505876641296785710337553847640657040488804933443647122\
539767915799754294648773508328290598895889328086204785197886533533303527858161\
316317389503604558021552314149627729857335579256124502954388488213526983967717\
421150693840796212942119443121420860258914636034533362465117844300866327528487\
110214285073508720614367230908688536720502501592474088278697274780950522976104\
257069306985900564557086724835390776358595129657567349395713314193800571926178\
457066192767315596612679928003362465536552996160435263781726466896104980429870\
225757264363851887612003628857653267845357366635681410521712084065168888003970\
816608865702193411764333104693364020026499431268066752747945719421928941241524\
228073810385563706516004058169050564651213934289499061645541613260833089392129\
158383361525706371737404496422363183500799483104189168730603179902140960650874\
430481197526676437541889963613745031206985731185508856610509568922131287470886\
975908475211511692648525403603148478709835438643110528383604106662534707223071\
481238371319256091306517273814608500509593993458405449833260101160107037384691\
849543594490305844030430541453033412329529136628701285031166923674086904811768\
459875193909259309446655495249219761475711949701848068738972763893824869640752\
111122078703015432141869669451615608386674306257273726221887716936225318251143\
434109132816819974100031307272232395239680322812440046016290114243191029290812\
624572401824833852725368495137291308809762033272165405791951539078386290972017\
110916848631280892307995299009510491556008815245905587333395243508032447253879\
919721227536876759554592245335277326771106441758812590058409212384016417589631\
948399196658253292571949878090467245250021633300557830351939505461260824919914\
500063815368892912675851632594185092754856486775050315339269339887178551681054\
847137789209608604976162619184471178266381447542287072285122345571182358007621\
503902495997543498595785735366753109971326156062363738328680618818024877425940\
935064833110848743103490288156946910648489771409975876068644368871859165593034\
946881951994669194832920139372643438425361180367950030696438279680897290740286\
760722560609638754472655539413048554288324782088211730025410096477197721184328\
626610170887639732272125371707371377146582513998005216078684660479163573168599\
728589953456686160098105424685219096416364511865292816605083244176128059350229\
418528728767525109612861013097405782222588535639964255896978447704573867616680\
923490379938529659489871118850982901589993844381440934624892794840140535313164\
055209839654471245480713497144801196168929270050328096109151259444172957061646\
808803719483293351525458727567714016810710385221824881838642261051947515884102\
866938441288839335145481798905402968372172795062952665735023819138656329376163\
646025056500907022620389989121474230028327662670049779128610657694604513914905\
913353165829995543436808930664388208043326141589860569832419670107462239371527\
362904198786560813724074079787656772424726495931590142891178790393217069683359\
735431597204284324859689261595270891301540642668542750596416496046087464018592\
188827071088392403284525358619005577522715790034497630338238828125135455874686\
185721237814712774980047046024817895989219965734616469786687499130485331328596\
684333113893361662731003140961148893524906340457184894193696170182734831513619\
001297605359605035016512566897009373361565323743113364571457165142194716907258\
916454784622258744746903896173771506502878445578489474016009533384296470163952\
974404841544078027569119090402408036453309365766541483379668236111690680072922\
185265939185033916231068633765953827747863048009026773983079845247866704187816\
006194224360540080723608626890224929273673797595995272542781170701453204328031\
810319603876768892137785007863438805828574886836640323031737957207733088501829\
001573166076750128207899347171304952612371022968520606249811306864039983070790\
094273794694222682466575265498165599056418088041235264164301622314913828885234\
616724655694181198932638180168356488928461375849771299632625781246433609420117\
041754392951735980573772560839169459244503742997264347933374756478704427287320\
020645772975819172548982743527987974871320639246779476145198271628773229099841\
109574256729912927881868712635635016226019575498546694015266910058122331559757\
832241651950271877496450059209145671294828809555091622200816343637253881811415\
527451295048678880270769605861047210557887072683521057683035217930562128425515\
628559582609364676899946904597862111216487609579940841737625811887593974164106\
101558586754852217004965412112851924759373660171856448570053653178628986891417\
110545740795912241191607008630629905481333157625606736502229622955277874065273\
068351374182080021578274029686600541536613069916716649472496147610671170848125\
274177355463311508832201582214636380950600095517664961780812749816149665796446\
487469895542304302686142242524502376296412421870807510496415993218508134868572\
215095478469708837742328373531648662344649606534041236884757859211053000167587\
318889083917121883630151991034181893143179116836845805275766415478613374240533\
787420623455245470455807819045113332875513525732490796715849909335318533273097\
278306086733687227075888092405715421175642578825863359456894830001262254331547\
980760647754057596446441560369921497187246838128817581590165391881895470532357\
878105489382141373053974091501870674796978827553311539907740158380413156441599\
985963556025963599335290066181307588279410466270565240130753742583988855110863\
594522665373259309400972619751031412327846045483111008927414057223812076741864\
132956179404503260608949877097219596136422347541531601672611551988388525541306\
792054218912015337835947872661005006380888977260968463319723813110199049458409\
385490781464757920285267199478877040352797766350383833664336748839533506423940\
327501024770527755080131256094512770226641293073785871132499027466704602518508\
284815007731579152773963315265977247861195909680810614320215710112695345126562\
239918559602598525163436145047200699615137168233002043895631329734198420863295\
596494162764354856434328653091974869061059044967976039493670642661359169094634\
897087626693285663106133868509770855903713682645879224504298429606741139146859\
060666211154350522018525512795505529071537410471918919661423622175491209374464\
601435550483829941322243197926046223119748523561331326617178042582070870659230\
734086395046692834467659620432785952266573268247252939864999592854464573805904\
980717778078638796008531071016572756814073473182729546949819695391152971710317\
890081794267936669180910615536439207071487290088758192415122211427924169277011\
917991543106106218836121359706585402305809211152509406483437771361063052380652\
113373238050907964673008630017329563195401658240545115302571470919161247059440\
310468661529024320903772112983530404406348837776942337455269640861003673837729\
212141268834867485909347438495955122609572936061980193331624611825848235630675\
658859349765573234093383871709172011441700957331030823657641122039893537255048\
529064437567210912210135119669425757846951165909026484293457760514820058419550\
646603224540423074582799508659364236855525555701107655301314701362831207451156\
313264733066242545292396338457457115303059341909494378503707193206602023969329\
888700567250889358267853412240141964979487511195191114504974035200207577691383\
228740598137385405970606557955750871318270333780128869380845804063204172425129\
421479038117081507346475484279175135964591951708740461305402969227844944627219\
484920065113970482326154072053946169059615538345929425451240766492257334704774\
892828982770834284762034481985609814533491995692733293994109102726844134883592\
614216634819499641923699846201324157636217240182421920592032044959516927275301\
057757913121778382180278591169254000770407934217997807872687926622723742475705\
731255647288043428679030415270963411379033516428638540158410235302036842420102\
177752584864855345800268020842991385192888815014806125117307221482685806342332\
888014616730717742418270752160133387119989861874934695263576263866104168538480\
857325312409944158185493520083942049073136325166298255212885758844631935425935\
262046928994341306599103572588211235883482277377925789756856852069558222327457\
546058806138739190395919391576022825415981864225882451453070181028185046096395\
539499395757122535720443233586530068975933684455646284312025075832594329096031\
648305863836463177626314229134404255012343460303712499253583496971575785527110\
545915780649877166759533830733827537057897275966419307744470411713831860702871\
824927797037729803399677104564665779335564691264788674039608190101105775781041\
407887053303374406895147570003477329808724662650770973947098920131938486801873\
222382019846450895888873209760787551065880051604042899886242869437911213952260\
350520985279385101362200360878746275295595797466959595542430757138973565207253\
598069484922118432277053669197817845233147015844899276462723173658052988608392\
626837618350171074672923846025790611395939464860851930480006040843210056382298\
196214896954379285543351859568652269517830116416169924076625111914377753249816\
702716293835857096418944014356098091708773321103376028033526008914607908337776\
579480204044634421733563081589633898209979568550437611110796328931334893266618\
566796133275608888379619022225230391653502957883944977853731158388499822463345\
898188729477584347785067624736699488925755545133689033961174630113167347064142\
519967155152059437725710237498203025537262412781333470632952985353112361885646\
029570561835914294112260669143734315660479752210787605121100034372865237193998\
110447399440033042770975064168618342833860125182028604750465824024009153539382\
054706234712943295720568064003082120918682816393088191343039529554547210901556\
153548919500673064685119216446385456891962961258583356413468318542342328285800\
575185187789337858250001220916343187276508612706891632564338120949058162744063\
491438518182811114464409377859708387233150579522986866127743712810903717849114\
177728709509187610264677062976033365227926416166714094462727876358471634565019\
182417282512593641397798533576660433266948635190342801054429373013058030845157\
077927926738542146977236515079343285334259108856832239068263034345752629866740\
980344327438030520250034445795895823813033477596992939276238847891641228466752\
691629855658636784294711153231453587694909933828534263917167213274487804217709\
137537269372043744429113676560858621593787285561662312729367400281107867892758\
990908605298440604699442057884358123775004259141041529208915286561336973513085\
222838144613724682785064191664975955109353120568973351995549399445960980018225\
819665789128241600727946752109661522309523009786785921965376479044507987483491\
691454124975807046919635863156936658354523568772133806028805060612173301325587\
331783160254348783210522316093943595617494555184836716242918639824924758083206\
389321786716534820418700878653594910271079313498876290090942734189958116472239\
426463656190801459845048057810393894332092728663929940855250267007063825652028\
941255608290156300366093609222509263220255503501676863368581034188021552547838\
771116438435259942566501339365211648824371377868561041432151999626014125572518\
410445865463718182647190457171878080537846347635715985013927901560509893931729\
033730243522891172166946300396085627589561405562429013922429786286064962670970\
721396108737468447751402063314583205323513842345998233781957456037346661224564\
841094188321396051052280222168378002441285135111869273268618862391676111901894\
279258058513409341777926204794121335386870271364589380532086991637354787670581\
422148622875708417440322463403130962207395865750759198331846945350794695058134\
944204664123812699440426937881928254900335959530707765342857792723776358039830\
676817882067837471670258061491997443674276017805167938720976225516719818370786\
463213718451855852372402419987745558322648750704709580110943055857166818320524\
519564553002201021476783850211592746572296990846817132622624254851751197602419\
472914709650445514650463608443801700141555920380559007274815212278546057287517\
050743442139621465523050428022786767949316139492970793236474875603182683256969\
559722590675942444384269155653010029013296891853053534754797503534405669885222\
303413976386680312333902745805004962870207891398000975708337552291305410105078\
271348176098297449179099145587839711938023080212704027071979375549219072202770\
976837699821497110637377073834208376953617995107931473692748410831596591588271\
418055123171695006641939466359403241172078680815642988056364323771257038639890\
541870347197941844349031332229022997458808812912356908619751326226435050616751\
446573471061797485858400075448812938839649148527661587418188241519578440632706\
921562125005469066701402614511912442348742037380075065355625748155293401391324\
170288928982251576185833983243817397880217360415005447799611965424098013197600\
038336991376212164469900756064415708450004392107300171457754898825758119467241\
851258655092646514773962248904970820695208614270150140481547559355998250602395\
363254279008360080809614740923015954658656998267994136257982315481529185194823\
806494585048612439570890546702295169870358366718308623448187424372413855909384\
910846452815812723066030989876572460774711677233858145847525946895795331953189\
088919205602012041643042353408482345821731534823983481384729885509865553037544\
818487684433737749060100002814758723211205124934088177791040375864058934124765\
199162730042360198659889362647772778807640331182919210003988284679323452306611\
002579067082252585031029985254942473755962393111858830889524880761682554865405\
661698376844481212776423674171462298294580791064126853102057181973404555340253\
604301141487972471728083647731159766360737680865107225483984174744928446981949\
293793848227178582747350659453745909638880842494646944729212245489482831834688\
969381389332054281790099723403210517762707250917470955048189599050275116937055\
982698346095275614950113612078783426511450654646926046187241092985231354140457\
961226304095153788595294847872376528331853263325108247700973451218266645584998\
821670985061006356296693690807858035773480847867641410725432659483559990840108\
165280086457723179605036524106384882842803863176735569671298456037826772870092\
846789414099759507161229127843588876071764475274571235812122013967882404167926\
901769760846702762051220535959834642899644307988577347259628566047442639496754\
479730365864420118978346734904942919934280533764395416040745367259157662812487\
141780353511697893954721614630039244365665561837759448700100832934703718610871\
895698765625694378418005736627268032799547145893084928275118927329806290641653\
121816011063765592423480007900540256594618028842349443073395659451522788899781\
505422245150970300490115915756640745874738360040762730693495053250798488736873\
900407020252541103298914860158037245843935091837672821533624621170359866045290\
770833142933232683544224180947580253677621999134219698115799908845595399914075\
136272564335391694284471070520936808285760197239362073324820279056647087653443\
880909002829018215585347069766194801242360398883316520842801246557583110820272\
452095592124296144322996607073097683153195225726942958230493527093704906303964\
521544994061688120308639700886275793680604257936088480519103816967891051291807\
137508231805365374449369367756823197468019220219383338407401433079841057255783\
692143902540926927436277138725873109084488233534659699031397147883204304715001\
899657688662238033612829928805748920251279706873978404906899524864301888100763\
954005372926529232601024019853652914860018884860007007676575360942411530580351\
799848150585259945841660428800564364724212759600193854259059112156211450252011\
528553356981059483423867704230773594790341311507676514525061429469055689301014\
822963432161156354034826802865142826038657926750170368971829482912696404597758\
480418713570207584746931804181935390929296008381717603323514385846195610272159\
982257951270976049467612669483595406721263737923096415011797633778384919686040\
113825960245181497209830419902852886533471203718429061288347305774862309468480\
708223181677726975362836868939265639049463395130290928996315643043570562952447\
720188697817847353721648266300586616389051979980369499516190869433831386823374\
584378190193237863723446098154791358188122166895326277616065145785037468877633\
087824589198219566745888984235539838711463447965059881161520191432597515139598\
047424837214291283599043693392737831432275865399710118849279398634393948203507\
437209302704740411094317471018105131236220157943257204058797823121905639534016\
211939640557339539097398894103033992870942927748935371314792862564371520871029\
933267295395129624754839104112908228356555870918525200138939639321554991362533\
343201021467941685230610532736210343982634108458578501118079664999933818504095\
529120717788291745747792817455291742107723419333035574807612839809599458243969\
012010724263418704573320249279706176443421423643216667643693182736007977273700\
517077391552478821277555620801174429931081876335096130820639340718838606749451\
532578778554701476368865139403598226052440822124563082737574931742620177555325\
018657986150555130710274844225553566164381446368639347914240867257333175710308\
615685211084388652894317129382657812006132494790773004803566395770406494149348\
064835774983419869501964947793291672437552815477975898240017064407467443970801\
637080848485676628320558516435735276306249624692029489726391192881111990063082\
545368424379151787983270049171552173200059119611100776852174778922582721929937\
103834448929441038454897274489033464776099009171371759279953843569054235993743\
349236672003019350550977605912901662935801352178048580711141841852441861292324\
877155819344911804156927733775809824649017063351808153583319093441349071367221\
401855293977107358529405734164450773473983760560166186137919300280054071686918\
591607990986471414523649460371961274260152436041906678909929871733257226555780\
008397375701537053680921699063853379013124889144387970754995979189865795233848\
422863731988295129572109981416425589408547392675782008176095584416840947384857\
741437583742136709349198102976087592641726681726988229404856155595197963908267\
725426135879497874971979272792691014046726717714095746796454174636888481809683\
928643947094775568551506332573195669236753681260122584403689925258547257148447\
716723245088473678177270607875702105743314563291551806151721994330827847836567\
670677893131191809005494273499215728129569317121578658808546951416197961715675\
804160396864274598719445234153303667268303329535202032483505951134750729476157\
817898638698683206161944113937035487361824010109341428515607482682227570268452\
514521237187409096973376710512584384898210329844676992046801219705676246157194\
771392426620957313117839062514339061450889408628078397603777834296149425321373\
849828306290131980961205463875907765994417007348994905043544893754416553464607\
586700752102064026452329012221255375248527420609187821210053218409850305614273\
174998586856780249072700575416288243265147329620225911719013300708027386122114\
275220045856910614083138393863164588270120339066346670913903975655229056958181\
682497185782518407439067579751510076517215618679626576639343606076758000247822\
326990070635898004030957524169939023868421031688758155749603061799670737099307\
184744632288715799604019941807548609376463695319454196561173246991843755067786\
272492190348163132840120998490329688741006001089225630157655637464436346613866\
527197659433994551180969936062801850995174352270381009005696087765069120890400\
978739928501721205576971858887093439128119681311743803082224774807229731787144\
864981002074743031243834119042892597960041121529586989848510091180777025183169\
318404871786408235701830864927029971323175218230932505858844961127465969475625\
819419503552235666215921155308872551448375038784715501174508140278265959759501\
381739666768639137180488032221914665776521401827789457080189004737988737433435\
132357370618436308242477329351356261592766859814883759446532582454070632783557\
816521135784455155847053662648961528048511995835828903395045371394681716181454\
612283501235382598880161786178948742817131293654403790498719871427962435123872\
581912537270725279431467595711247648069909556399582662153691481983750001000785\
724749260163897505045716221019810896504337640242543971916286928092441952368425\
405771451818716285063211634534356487670545943378878561418344287875269334227537\
544432863948515046610865043843880638319441912575488170677344900089247870591864\
898306824891362291304210007733356204724324324983921273821313295715961011671300\
774754979215329677067936588105784857187205018902196203280817789015277724239647\
450462825815541508040271926246319840551360879122585455524221436919382050055734\
215070406553358666867943763028414666173691634185702077370209453811281291525688\
817177693058426758764164570316795624111002801918683614975352059271999330051358\
390177164475025678236883258141005140762459235376480764158089628033835268349619\
107342891822419758673826836587495631361984711979395427864222886314784344540211\
010825320578429256409234016605090751570294496877269225922016974779024688306935\
977357446869115507841843184329374368797505162188432918687138974262624090114611\
513460892262881157356843182139547955634771116041174284482690266384571885314572\
283908963309126941573190381252345373847068464932105085571277672451787377670729\
932055930359509317020682617732875911230463083903240508841614185769500854016379\
722788403551643605999317814635977397451692242946448418308056945209886515771605\
644128994699932708288264515293728659619177510370672573706587221618222134525294\
349663691533204442026609303862915733594840279458538590510022092613681738784304\
528057709779495438410856848845615883038223622430824874873291841410142435293621\
977111208041451090761224186090951359119844115963414390039655022548236343791251\
261771570855211278758403591562827234554592818036252227400602482031828437159641\
411114390092186148363386747420382796245126225900299533266360709767341843636840\
212029730124807890276353681808444171301543555291382225281700323968378133168003\
797067737050736523063329104588850323314326331627965604941541521570740596252440\
685425810310324828253765014590283463520276017771329483917832583207797186701265\
923439765754874592432596758925674159449935416506282065961246252022300148139224\
562053379154106186897370958156031296769981100490681098793923646514685442921875\
108301944292274284089190283067515338345937082089391976983510798007434373219795\
360832658297546141860250103294943528544819699903323973540075862439779946120816\
009889326239162930271190822840603025542638008558081603438771369261444782064660\
367697436601104763908340802091267664130095384658064140532175434692379054356066\
831444797931089105294358799594540954185664000349944505146564689728835286155202\
711079208567885004445880682875512372981106967557425304356206835678755902928538\
959277535343110727754376042741285099378052908610462542203138247189100293094938\
940732865234293312988976205004048855593812694680380720844895671829157287498640\
255161562080813854694795377902170319694815921962610835200536186986748098372933\
874760634086867918338993269021224746066011486912921384116642431776002349056024\
926921919901485301648295660613726185217397895150474485503680319838128135291156\
821646185949650464396697020986075943851177334244471605185670056254882364931267\
949617353954878017942938472759630824599314243561015993522317110839549988113906\
197780839892271160508008361891916841971254313026058895819733043526542085450990\
313876060617466356584273723886463649469388074860727699578173112816653281953980\
551712558663615147607125462612143424148065156751856165585456380888998009963251\
691140359077812045536255135296214511603535395813518678277027972043706798104186\
876086744155559386248727783087905874185863971198977127309112737349339646643515\
592010915727929487419633301530092794573614516094659548195549709860580797514996\
280807886523838324910100247452724686963289816524420790892109701001692083971926\
949811516601757277095718749827657923367257587180424097075840039048558324909896\
501000926638582076310224662338968312058376859647206323869717673224704598324648\
497822159469128525027340315594975727055318554950845675522675638913519813620143\
100266482046295731293777467100192077155350841261841292005585850069556344772649\
389237451756328991859471575021313416983256578767319608290447783612131093801573\
610819633839368468586628482652594994185104822928495415494016874835335371709152\
829409500529530049971741399144425691023769661379087695212160304567684558491110\
839949696781783250981792160284663231952772236058493806237876178678444247275401\
652726997050326519681433400269385843930132991459986255483828063834295123449586\
477023535238100699286687255721591978666333081317086186902626431154398040948279\
436262853844019823816269853764751283357864074776221301913616400598291943491287\
355891977504316355894908425035488973551945987327656543318482667911030464698881\
922206143700216938737550604451583388407158646393905517939284387005345329408222\
025391394593861857913135564089417725925520988457419330459666753560300886219657\
261314824698547397647919471723615615455761688250100591272263681685567377912703\
740448557358298216290092622027796455051890171336906224785691257275574714702184\
922403807288010900998577496742785696240376515676218436077282905858960788309370\
165925596955948529390486965214697738067784009265196606043128160685753004541731\
184947328532698873370621922169741962421947570995155967711728705524559763723207\
564264860755965485874008188907025825182635711660083377927013658309187260680692\
185802400354650752991387584672067000545776973554032485168819825366434185084131\
053728963270480656728831371825580869758770672420361350527931745026900577222539\
800478527847364202007834388833759864638397607780644685408203128751889286857997\
608532099957344874738189927584933690168434195486263707688854775505009771628624\
399424762399393473125044285682260140054362814383148718311986202831068136639436\
177002405770363714559470779552149881599247274970012060862870919984487361318890\
657486801667280180332387865627297214494689283756157623075357643413321302576611\
976594925218127538653604160373589133441916554949456993630827056613518930262306\
020749372034963226912316839598551031621498703054243549880262141208096178658926\
664469193134918296660398964798634909210783395059454278862026864728407566663566\
496723364524098340006804582022936656666717053919759494128899445802397127913136\
581175149459972350844848101140650971595878297877019135763997776837390869430298\
503612378081347258523537699217030052361012133268775190459183934048998602335065\
940156209773590657211167580135009060494337716810120701271246574269399648748507\
775275853546849973775620815232380407128175963633699762138572199429262714341429\
458356683440446891538483645062071975001884689178229554607433730753110451204626\
477642741228242979183657599503421267483096317321851417591760280535068709218276\
251018756864488999537219030943354181794140525298124005229465368847642994394409\
726960986211758903073442451755508589479218024476959958874420110043392697966575\
598419546155481577380797637792244435389620249173768709135185133610724692621112\
008977531032469832629227723585377636084138673295883741572112075874786121004063\
540022997963440527917119381395668396651521660479864912884660928492683656708353\
208073529701417882897313398532643481412436768444828933752104774298121777638711\
631492034933767504407231650754620261738628311085999309667175446538050451195689\
347274413604542495846874927850092139177377145480067431170110909854746679631500\
206269112082968868137107434457300187889810245067298709678844344791213326160215\
573477990167625536568346850608600004927149948045044933460187438486298229805121\
815069703607979182331706960768778313688819706829306954790037268477339958184707\
028593212532771678836017747053111861443799813576143593110541215686494621586003\
603352992744606357436018404854217643932587030151011243035496879486685262814701\
573820290121100995290952582009109479047018337578675515912739560291255506957292\
096561397106635824982903359470917258566694770357828975033077105317896423963997\
600320126302538874951165690148225330191967879838638701353751916204918098773356\
484121549549838513962201713507334747414372047567081876034071793892175790003023\
838752731358814042600147494171305349027850100610362008886543298307952481303877\
006145225990945609532910306823937190489074425281757127236759989746147222048914\
383332925726619347261469133501586352317471692231843862200469594870351977524199\
611700817147278696059053075758762186221875777085942569317075571639601174605173\
193409132112490954513621704932220790052682524186527639935516018495086429829856\
031782292910842399792338343081491636975362094657581617683621316180422187518972\
339494845431042709025019487080881441500162176675938409871710521261283213223076\
547156990674088849443265379646495605610098455465613906836440027048300227280022\
073175534757308710752602246364903495302331133705362671003645577443838611682412\
237757080540052542536873097969466668375208391425209832549055861316789328357086\
326502110390993783865196554470839919715071935717135214524837579671212875705357\
608994807529077015604063903763182087567727887932154587125537623073549550096885\
696376976915161459629513138174540319194796508600497350104329427356665051817684\
422542870111540586035381070217089445216728208835476434882008258930230340047589\
994736978625730829325318589318181324241232204432975590187114965136428436177583\
569515702464629994113050265563261506229600895641625042017988787993999163291903\
797722906292425184981921995391208980632444340589559493467169351939117751934614\
715782739789642679324946223445589617856318249171363444037737390422704670598155\
332115330240186075543286609484103306562383985030690822429859581478848060540533\
308268370232634484197606131067963951955379052021385602756930405654978049472910\
174983886961535446347490276208466316610597894496275859236640066903566888175136\
038606719542441086856226299190329606143945970982750540056346223020296284848905\
105319310186922017697700119068759323537133058924174753345370031941990349556380\
377042830813643662134051062872113211488230362870186694298259986828297418737473\
702095692712627075791466319159229502100973577515771796813862174340827917977346\
270619608524705785425993183674169933267217161453949512941871507007200411664388\
177984281095619746004991754024217592222605985069595881710202893477115616159461\
510628785606855578145998402543640356906014842194797661115389434712419721322645\
124791868638543893776355183751325330321461065243518091755084100331972055662827\
151329804835391734143261536766208251648747015186645262077802118258432359412092\
034490896722967580256213650839942646739806595894082298811237077182400682450838\
256637911023427528960468359781597557220678821861596135351655934575738537596050\
923850534670340682090138151615842359794301903098575532946627172278683251730080\
999614788050224259937139490968110114354508900235476005905585586745993522397562\
925295720963445691826292764541474394872381336175557058950844880321728079800425\
046535805538909398418147460110427562703137179254288338959746283678254177646201\
591830686789346560620207393627121633578038946778518171359812895232330689246662\
630406401277951610277957143299560453785562310158193049147836409797290381843536\
275647027509292265969309206794948487911211490400218841193870645967721793668761\
608589239729359257034814396270403252631768888376942302039862304864350545473918\
832465902536476777944015960511319185142252204614776518242160626768693238155602\
211580985978113578631676261732718501188038723185434798663575860454457722336541\
962579583662453137089765571548671419842174625103688121337766992013769509241079\
373959005070264584697651979356387040223456908847329129530402865986746801150568\
211902069538967451811426399178241237127574088447217910466446651016262235620106\
276188106515957973680537506794544568778118078411525406940043931956868236992531\
559745220188571250090869746719476223397693488381782283557531809233819161807906\
592357731618257193838019510093891743117221894485257043301551757208304578002282\
255743161307832066864999330960877338574056747625396718097091791154167501683862\
767675583952897377559496194279592221911292317012096058883689241917033514368219\
843628899588819520677929223471134615430245501907388702334203323287231257796567\
568511453313422966795721243469464018650086302976021494554462786097547004622328\
886341760048765494941378750078901895668506844318494567357225154065576382901490\
669526926872127361182611686748095149783657467153233579650003774851996370887847\
510364719890702083135806702963071468437487929997461123303769717751792344581419\
373237304395043235680954291142317170788920134403552266932443670640082250033963\
655234145681742986369828881281907495164969916352694654701653575867684993372125\
025871161216775760794234873105496213997408834145733891025625515880290366230276\
433467227810470819575719892593549555561916173968917107225016162012027425634245\
284071418540989751062175103465065333576253838951952653425532417865039241041148\
307956886552731929141057020987456195100611598626532863852739437270905818686497\
438677602627457903240130279423720082152337175354918692329346962624774996346214\
516538458897877467716039403870264155504880828418588584955281289050296856120439\
828745517250692356084935149188212559020757992775114910368517979337858171020635\
650866347327155277261330363350767834711441449341400412751780795047401031378678\
372493273982395381013090031268513111935983823360369070515892667986061484394909\
936236049510009413837989399006073357939231636120696588141609160553447591595381\
193265157941032714340289139233349045687806402501376411796862795916641609106593\
903803828001549261842195580587758666960952398401107069656156396141582632892056\
173289355026114116906002630386563142530544485143575876231817910343798319060703\
926945819202420536412591247797088473195328902068039392279831882387406691587096\
616409350744007363998337682309653753993788220386979550575899540173030324032077\
819590393942747695981491609373623523091342056936097207982872978059974174525186\
140949781395149859354906672993716893592000744937131873796837752654530876439401\
697357127490412285296208190131012083515631913541550472241136775712729104909565\
455636806708575428123019429300596424036599099690163089183549626727646945287343\
133617812351480182443742726001388494047506339546345107314146850290559303681345\
821384415029918864381877403055314796932932599677218423383740965735571939373970\
017394221158096556592300051390353293447883228704848904040993108369652723358164\
814999657488132958871514682113384127359424087601609219125230769252176988030865\
652983719102753465531074819881071691581328482021549691133424904137639792698415\
297640825532437624838822071150395614870192670811909486611019938688186892533086\
816728198649068074429728059349521886303979628907494160352137492582033547179862\
777672162645435709855447362940347989735293768867061505812855932893957440414070\
252702530382494038367698518164861159400468396891222338716394524245731726690666\
012532709738881525340811622274306089469552920190390361082265837691437543469282\
660629216936634431812285457578046906240207633699823828663686639619159103898219\
823102997398282798538230835578403129023176420603844073977937175841687720983180\
847432627103027831626033871061179506908849038179666239854132962698510526089386\
988512573378996230869951632046657899304451729671207036296446620523362691535930\
598644964173889269164497021129335875973986127643935103415710378128175878813495\
665144359703344160534978835577443786111243009977582759121460921669437444601437\
762767079989871165373088543991766803177325657399818147102808739730416579231529\
702749586879575146219157404882905909937599458018974170484025253853767965757655\
375474432788412028242412143854822303311770194971974253481407045586307382257509\
321696721492737268171835043924756444797772929252675716087970901818412828549134\
075576616514597595353458777155431111159804345099122674933573155542228812762648\
812042321355440382239767181830097628755721849615568891168032037778887961388447\
732526159565507486517318477050659651771912428585728573856687624035014804753718\
012461288604747714094976908638734630084161988005764914586146438459470427390546\
260270312263393461516145616612467175649078699353787536806585443808929749312650\
911811039953203313698987761450982997523057563339956848459702048669763839536813\
901022295456892280315073255540993169494747878497574019697567001796430819982586\
931590827643090371304428730117645673373443428992074234259139632267979321034044\
958823643313107153031116345633680199469968366493499129666982598801293157904822\
315322513185833814006393717195728258918343990782957806220528410140151498381134\
310192651489336534372216594129131126854801702620274613752368035049932252992874\
299516741770118010084061034138269602645093287791773814081198363130236448362409\
406178609399846254446143329979113702254359573794428262770697200233470130371033\
781814823078618321615091775686208452612005338014752826773857564212012148725456\
611091063340550586393422484910743887292159059579665975373453634704551499718508\
387232916797775939339325791324926023125821582673111140460498172201065088142891\
512659725931806301473926140940816276693470752442158034516813367588753604132045\
808401293100623472300088184633155730761014046890904614294084732063920675495605\
029218277246033994072437988474169953426915605501231472746152900398455452424447\
061344345155310627563303233678822328446307776938527623044998243330808106748019\
538190990655471228888972400767069808079778009037311337811499268910575626818739\
571195865171981032829362441932214170300004963459265728126062277190241236470573\
240888405136693268719883043106846423591664141448000923372650432998321321078872\
707977579565973831197569822521647801379698783645443229299190082748069157113367\
404317009029551689267731970004362040620486707650680004087600735053814479080038\
052091093717476815492108324750296065003195961600861420316951266276284346865373\
144881278752948052327534821508667824533045997596005013109636878809747334737707\
408106246945308740039640336548148209752063347415004292929809114251194842432549\
659724938586744723151619144977118046916011612491520354096156876104827343023566\
471702482248147453631077008226041337024876027119446883965542988616554471304305\
542952304229509805161335597488601054933511582140772013838966911154360254004654\
327294054782159085450551286647549157608074832564119496871059550836256874608357\
406977512554209656342640486230279067609549338442859689488464921233079871938254\
679150860431175837059202808104527996349155847394657804632474227207538962815070\
749856928340525509102359791937964739087855766532392574204130501780084962885487\
764420538649496667608869786230562359602610654691834155157612789340213382092675\
770890846087877682574225981589837797065315394148501117632221330859667320396312\
671455700747312415289047423453968727790773981218016800186325177076374543004847\
630954632615626511180749917477898008708514218873610123867136055764975727714361\
350277350701736112809440186532303291575873735614205715211926111558022007321920\
983854756575006379177411557861741694383530434443170503817251006759110987657194\
561754348083154875698722976241361292365640709438819525855294278929615505373017\
091650955329693422614600119444279191589447936734107583273782815124691379060849\
816450571372987478184056190195914865036232474356729543603756861627868912648081\
637373655953791443322620328827971811236182446673227435943544638136330804696880\
571548394980496640793300731639300072554901745169668402515679432016446065338332\
060283546413190292634247204029691478529170112902418412540136495978596153268718\
544700400647637596727155079935462171921158845937495223968149574316262433505033\
464669482808255762948134155682437428818155221601262494577117014103224884746749\
929358964975642688909534432510695066308815315224760006125644022991447856048063\
966767324649962356742700137075725373846716618063608280149384133267322459967125\
065490820197379635103665520481754745226522588173354313908114202114021349865692\
440214278448105580440075332086911184139812533731750337583416552403160606231811\
633196699278538969146388011330584288678686084225397661713001440913683032690848\
916071063047759530188039643435074216846241579936549353492116974460822923565596\
350171391158886722264920636533668953089400340965115279040847374223333044699065\
034979001372652290326179489008603910166862346948344270671134336163416037728711\
995914490623388272990013512749247247855615084314916345541617364039326801847029\
885212898260680402913165577944235407172197514956996862379333180875975647207612\
277299086126327052045959980427343166915946990807791513905584628325144010501237\
126486772889508864346314542939836435912084007460090708745772578499288976502956\
470875091515039626976771715286148654009810944768485140258588068611138370883736\
643369429449192186433537277135803456454377178233728084349698767069955265977407\
400807007139895415267668151010943998994341468254390645269942615977552333007249\
287397305438255159319931213802421898887518808312130418100308416395229133833954\
606207289045025402201988599089947186577401379572956536946271248229815070221351\
887746450196634517743116811023220622280047801805251739142653386717716235336499\
448885472597881807629625264504831639414503461518282527605277002262558147049982\
985371220413596833325655293215046115498907389743653038365956856022599224169725\
622128577374088102051928930545530936614926760078510780769564443376897464854190\
952654739113344547487265926137471294500138566807673993170299811221816323764227\
120313673897698693582298958798859088816698329920174102499958386313329789486644\
819690610542880775535488718492622542488815286873039469785454106245443880066529\
385057516067088576857884733210171589924210622519484890499266431773662117866611\
308160957395195797052234215818104517746053373814977878352134684770715631593827\
806578310232987099662991590463799700266910505528857643972992001307702092353839\
145691332204731578779406827203045827675245510775039054634372282662811166169047\
934722992893802060146960607170197079132637905156681075721811688520111927276493\
428566251888609743591368383346477908756632664407577792793969306368470295964057\
877300261635305324956153689433089160611154407732233262693536428456319551595728\
948912747426117563917355299244909591377719808317157921178292289902998523520336\
918797471502074091262349576154821021154634160490434141324253677877530004625067\
305377306560428657126738324290997494279312431201730085114829735294954274580269\
942928108925324850313890093724056992825473895022940265435858014874799020706093\
131035054849370388928372322441186222270196897391351459623518657214345891441703\
679003847891118984757469150458328037271790320946119347872830961466555616564601\
016437870415802048163511148942174649398691998762997689695529413872196144377670\
563230123760913283805726332464479632000827119787361687088006216780250015677974\
666405435016181041004138184231256955929597223857253212048317090885817924598449\
699793862008374110038663251142871189120864360238891888508846252701019784476870\
128314409713037254644941353113511033074376542124090949632565321156602555781598\
586208713885278086193069862267789830452509000678675370340147528841523848561772\
881738914399407292365460170807482397132709872494959760044729622617997027203536\
409092262463080915618091319482710549830018868949458584383007215970782943235690\
661698864162607154514625688764133160303599261996103409825711535238922243342771\
237966441940576956111875141629578972756024461004191501415567279858457911164176\
768833351547436341330147542309273928756669995579534318315477033110407879252831\
421389479797539596995052962336176240224838135783040767406012731526325832108858\
918164515614229651609589226036548400396545600893326748380882173554493563131061\
658604782153759331166171737076535223112276460092512760138900587886476871787428\
418113221800115904582554584029671306195632890240295290605561846546914558309945\
809016961401306046108031458636955255765547681757798221165293882599225553870991\
897449641223875239948552183075509935300403358385452773824562413441284886708040\
024350420065609670674370732412878046875457600142690641712311612644204599500585\
782637877562521527755673570558800036918826441027226793685697976036272988877409\
757138900445747663958674290343688747722473057666887860549249803820579740905373\
404950909872920552524471405300249403483738175085580659178353268450992008882475\
282329119466266429608574247084015614656148834640523228278623661082135958590252\
584924468323909672647319227405153651986692171296718349882399833230503081120870\
934682021878649357647460015681522706954862403133406364450212561254422965335215\
922782015694681543144704465451363104333921583960782558850154589635536950299549\
620491377659529752812555977537097465076935032511915347586334421903931585528063\
223293757051540709290566688127572604777419261987627203158955899072660691463921\
202237633095148291507606503191632630235001371425347155444355075338007459391403\
617397230386817138428049159230797575939983825667105095004905935271146929702604\
356899968456115841374407701782776586129188324311086936931330599417867287940150\
838908720755517983213740496790649382541146599471414875989919201212540839941751\
202939476765658152308143555256992952852600752086204847689796761732952485073224\
553518721951151098225051824175538089836131489211564398785271966586515946549968\
379557564752908083398992743973418398618747929656736438299715373145954026965588\
271698871085694625404026975835926085436131822726782913895114005495090333482216\
882701860531684212996532393546338289059503961856772255073774612102320100033121\
778287817362215380634868561159123024966964810915110083048458053501147833550468\
907468581605202789174849845338198549291349361312057540917405140246869604472093\
318179811428581185571604978501359732226700099779603050945506797551161593222232\
617983332886471832664013002533207029983102634569302757979768550725082447423364\
744782264738530245496900178762650647910405406916293474519504886957815314916725\
597680311118129900476703127914645338866031557832843604433792716198597757374321\
382184645667014257438002222374443042650031512049271839599643663097113643785674\
614488344654281097556558286685295714023538639041518607968072174251373110326483\
111773762140593120334854719846657471228278334355776948922708986598155611389765\
074470374665054173618398106246260094385443362236115625031605887573176779708708\
646178025493649080398451228571706406315954492694757961274308808610760052752679\
222237961827885521871871627056247364450567103758777322556732713809194967960766\
439324935076987740856909982904242882287376494537390243315681268917240035981680\
881818280820994171356869013192417571785535522557487175347393360092971405383544\
437860134243563484576288351059824737806396107010802902758428564443305559181645\
265945292291993976595297719877254148255055023973117525878479864242895740651366\
439082742219726943595141900861793554021169914330516487807902304937173406313193\
446411730886266895952224155878433020691795276773706700341226278978900982127326\
392150787856182616402970248794774261392695603678906266810033666920066832071960\
404036141266149246589416608274184015755324259217826152267942194931054855779445\
941304227314360517351557413483947696403785509181602794503607893541781668100808\
649990669625461985629539090827636126809211975282441303420196535296994867934118\
385164451000458658776827598078838701242175399144618991998070335061215810537512\
002443709235313969153009447820158829306947635282822450025633551115442937904149\
003603301158079502861389892036368527111719031568194528368389864906434457358506\
170792239466832925860388475112489179645850225280875817563502975684967020761983\
311237721008901233612312491752867368916058135382572610150477136475892081564444\
742222408929788572836055497563047715928639977934248739111254556250665800436802\
410603144657830803554434269663286820128486186357308046122270569186361410517339\
062812280772411812026252597556722670923496639516769940538077722953578723864738\
970847054291030810398306440226460673820019785476545923553976180626927534994910\
165678162786314573021727451171246704516486952104379531345348115502832617610448\
862545899333458694259386118278601188758351037078814810753115148588525689884025\
733768764902318567819679780358914413160591905808709918867860340680380666140086\
665876426649753936303533956591916064895716781836602208825831940558648856677819\
905219247282571165786123209835030618212881152453739518921046860046231625781274\
220785163979545482581540182135536797327773393065410924613859831034610326418281\
518217138591469620976179795989009143625787700112227880206568768501691446060959\
040037582216694557226777142825870379649984161575454552205903207946030922420234\
803929452336769440946223121362546809976918355139249544246971005471851564186437\
140223072489017797637481857064717026377384828160168029559260774938931227278872\
765705326201793005558165139282362181559107873030525180992759231095112962795709\
206606982181122745708239055263698798690529187596478044781670071940129820820864\
389600621243943425473660278596658839361626483509580360455034244229861705143800\
190974044493660035473696005039404567941484442252910552109564374207687342310872\
370021166349590788674507607933997271362063321949402018593197853495014934378411\
879947683145754567473424051584514651558575947797643478072957509568071336177449\
763680827746230386475640173393181218759073935288413858178393358887105470443460\
557178167754371558343330781174849045859105710677993533946342050226881911063079\
115243277089879395260182261386518961817646579588274657687669668935691054433944\
984687736039474241320931700541184061371998214613855546976440290893499176914485\
400859463727574591205756920894993419084811983901034090125691468191871416804429\
685254892706515410759647680418046631659839905079535218108354991759829802721596\
224815629305609072490378154781128246592698817564505080145005468126643862447970\
435189759347067810012885146446649246790829021510930073663313606511725267408139\
365638684035799957479103771376589460772075132110264426443264781738433384131059\
824132103795493507013993280917705573764582580409780589093362553207869872867053\
662430602082369905522970782823246493519265279894368428265307978237068076585319\
133213306738264956175477785858173725342279012500394415050916842215404500775850\
178797604355471234430069199868544485867228782547167718649412232211979465180093\
548129181229773879407478365777425299343026747712147048357505880735366658364888\
225666260310424609741663640078605824098824713160216942880824312775682759855460\
359542483909113093910895868868817430252047558558041664525056565896715570625605\
814256664412256103493522564787630664144872201587229811169916286311196232751281\
532846624210801593760240088671513626426262244409409262995278658794457447814117\
508275726047999579168552859491809251115217949933719253530785578521004293408226\
413698643595047495072911865620197836457660459235768617249112091847850599227396\
316517918050016082570778792268494610431920942188463361773684925998721061265187\
076229255099184216613412235499808852574005191771046356263745531227691769458481\
078168095312181454135713932228846809420763073746254373811679722139371164185010\
825465696648022445785990076767688201440799503339183298353671034675437812158688\
834001845977458089114669806039032267425200878985871502639426774788686407102042\
004914870171993528247998785706279442052025390779931966442729698424529114314977\
859062863568468472042776745934429522933669050861119962681708251808950588309592\
000943725185536368437960359259131528044722069588409864814057986567058968183485\
550169842211697364798116915542950098996621151345893441359467214276662448634485\
294404532921435849080792654597176918750309322713089575849573293080102427535617\
724376921963439313377285114456916869843228245036546952360667369868444728330745\
450313222505368310911845907309009116460732075471520961957439093255047274931638\
511639590655149658408798686901775525684264273793562381644162528382020658590222\
147785472146060049543813985089654349480102995437062468676551121766225720996605\
222017883045291971073205239840789383093656117698823132312082087550577661831018\
159564270944334978586196214003643237429527667064401636690725915963092892218114\
287652267587990827586438918596733210002587915397668866532619794809353662267438\
313759728627479169789195937089271200089483117858756533208724793622755311947786\
829861589907674948480006713586393759444462279166471821917235572822464620958477\
135467962480929835844853665123828380405550122117777594998930514378552588232287\
288167946096594479614540733703832786368344662190783133096648985290995972216237\
904717582372963810858921874864692569713919842245533307648805836365618083068148\
403879852758664485620167662283315357585671810096767932842606648648425446077872\
092911024624985711186027560392616355691714393806610114695118498874007121212691\
174361782119444960381249273711736374305825203783509316247688610540988524258541\
361963531429234166254919635724477640336843753620111772852675316578120069950121\
073763432475724394121194542222462048078873800859616891835847406842858731523188\
037814805077154160677183251402461381390197617763082335619527591520780182922759\
677759422537595149741203855785731461024794517619506978468479621590328855609629\
783770022294331585987620483654020978374582803338098901206175959748448056817957\
901534815987872109732799581628408178730152618529632809659826568044315715878577\
031087706046959568525714464192634541564973639933805693315013609540330051951821\
973812219348972678547750612506808930596498469841979968346684023067663158164990\
160314691349780396043233716905075592190959157443025010717730888086075583192841\
043439198920336357310981531691639843228330817672824289883746168726218390166902\
372487398887982237995146168555875588676301345794420385669982216146671658950304\
284330342668872575074581967653898700457595089048164382793888236623461556585811\
731087060836619122289864757732857798740374450224461088069821003523490713826104\
227680866133403197807553729056323152290270422017677493228335303515954500067640\
217573957836622797348598152148445079886820762425425935644633292395643509426987\
106267424700492767106199589431806222790814160672115042441428038164238426841239\
313087440717678923382621200270339205842685222579089842288470803421622839510925\
856940590650159348387369469183595131320415880534964389735466548911893616747200\
148855390350834860487995774650374424814754649291449133673772468700198843525841\
071380519531697516575834316828714829708426265026624303515607781591129994200262\
353092868222427033400706355320855335667333533911852254964407429778744398983330\
093306303244294717349795175155171073505759407068117402251456576767246332866345\
757276583245115349994015550739925745887391117598827181270907960277290423811353\
945974602332346558359312103157118955259629403654304903381633051633573163125004\
773135118176543321265370895109344449643990957862115535647253031990584734194127\
723997771325779627710586679599994968539568954218254815455097388401664355951372\
512763311289731461143719207923288656087905222384666309342891542905809859449482\
030623355204653993849250552291725371903953241999434710895488986935403179103669\
993486221390963459166501438247193440552174979661631223689750311048297741980817\
922385301795764740981494621156959414756608339050476896394721506596531664178563\
850074105251802826554308387038842166573359189750323882466567462397287610012007\
765554441486959136729875984604262276837732035626763582474566962109340441883727\
356485554340787193934523836956699625948146169755242947433069301681153069946005\
599002892838555655174525849102617998751447160262905709547274969847291224385685\
815145665345865172536824979250144686385850228487883724884026532201940606781733\
534872781543303040465736158697154310978350686741530882511547960869772247014215\
990130283560812574865728225639333811630933717161280899224492403732550010175613\
465336544319023570344255398912835533051845989778239967525313532858196600446095\
820895396427270277172427325685242057714508780978709927461486581916238884287520\
958589254338398185759299716968891547153541135572208345320829579751522951869904\
015069969890498132580694839511340047030910559375665672119943458874682042759021\
711961497620168341711274552669858122301169485337725958178442581918002557323730\
550532463560619086080601912392924465147985255493496126057440919781336410814603\
641285668809595995721709720826567965431142417824571427067953045675363854068095\
937574515771913206429932838324901956985313467227449961197566859344766309327885\
487239481907321436182236449619166024290339517113416626678793737768247826021897\
932312556078356333704621334987249219558355150914272764730883975389060315189490\
763157222260954026684020234589521946867205363104707254789612603099662660360362\
195342004418153976845180495658989956023745758116901935532880573225991660045879\
159379697646271469950081990864277864824964034695833886929830149444062196429815\
682403203005908958637635716689954126047902716009218526483645552526632203525881\
868114769417708113891872889271603889821138683000717123137941481624886982043435\
066878833596086692041245119485751732891575928720925252222323316568024378093331\
622363519682206629592549203611237590490790530809463029508910349804278543764053\
283426114692099044336993573472751438208664582057728961063476731732716534210289\
889769592037277060766814967606178968842578399152191996387999632633107073592284\
486190563696329566457387815307095536000443602302046946818961231916631696568017\
498311610981158441900162778273902635130083659912679394799001777739123930107366\
128287276874481797996091988626777453568874859262677817759663550469777654883592\
490795251551380545223278150982420399065670367809265343127145676704458295702448\
483894594092273074580434158634758291053754391655439978980759622292994386764344\
295490348318646722132512616188407798160169128217911373808010911778028297206496\
955238589294174019438980227130796059094822650384615905379207684824183356371767\
216618703991796408107555670903087986799896344415387564655872951108801573244044\
655172232617503051142233382827571695116919503404257344998388157563526595785267\
518974869343336473585382638960122231752762774142114129481423630253635743768694\
600650272427011546518873139380343075529675607470402054675546844788030002946075\
255030733441649203427474560231736597316972780636616734195449076566368228208789\
032756813333789971651142574478566607023440389938708098034008083153396430828723\
938231533356918784845242225845502670977989186831133307739017198070819258199147\
999171603264333394939404111400635495373251261245061001084510888337461770883300\
093071480373186150464737703554376182972237710087151600648191927564267241180685\
844807622951795749423877037874821738836382465140523767248205420251588249082962\
002497996513402589224803975993516338664313182892132955440609133497712382705481\
031095117676695912579682077498706828871276332911761045036199485226197627764726\
849998510380768286485899641117468366388038656450779884557308746572036012931340\
348536048293608597044598516896554576786785138590475134735072399988523846587592\
947623720475660015051988256159916734505860725019461462571052733498976098176479\
788717428422135781589597036242704255302414634296036727685965262713679272839250\
794955452025671182172857161356664950032024622943992929120804594928949475641372\
268773836975333529861013908397231387294862674516043265972461428837289205708220\
924245929143635776874440910544283846246474108118768170896724852890806992510609\
445393764119151565548720150668072014217978530164672431076076661225586343096429\
454481835849609342820719120657940518303320023428135256302924467571633133533825\
897263254147392427374512529480117556752531066670520718874623822736506599205393\
467850129197422275710868488948386683755234367344438276382635339605187913983726\
919931780104728499733379975056905060435847172507347640611707365254482751288731\
651352828421146565995390416567909042126997934738825750682736563244749943772351\
045027150896667137628241321841996960328403108726867991582156909340729883940369\
552237798713657009652323966511112322680241736652988365811293886129721219876377\
365858603014465727554951539298602326717643017051900699764856790307173677695773\
510323367643969105838925238544300724840997812730186100445075488482967884876627\
029213958598227599684816576919126078035194594236391121947121899993178318801880\
440195802056138111419818629051320083018280508128322154697347843469359651332686\
054216464788315501431869779246596695144877949010734642887656927435880063886856\
958559328853967377546911845071803646821416799829569920358366348140478035661742\
690504477786955416423425221585480787028175328713508074428141275545919400688299\
539729867371707952170200508741159170858334829551524411884799553577354572107329\
856047833799606627446049230258291682302170345833814399382070288095674834335677\
603960937724322812708756459015182315767505448197037349750150766148306528281814\
032616940023298974658961099362155086044115922159460769192069333092650596545469\
853692628940740492850581046979736831151172326118338457663704652101082089069730\
161732979273231577679636535816353344371274205538664921494483469216075738244151\
695424592840932929669312499205600945838540941228271803875737325711902091233720\
727745210973321598753933472723896805232817685650445280130608273702411488997161\
521159855680895559744664344834612972851678237838434102684596170610660652466579\
225946212183003007133103621883050924437915857309373289019132401883380135264509\
585689259440071248324402022939885980152394393116304530176447403396745576907161\
750750165548153205450755423996460407056712751741776344404797052192133815119027\
703713873501072643418296099903824693004223063599789277143021369312264603084487\
921748463246218611605942308746949716427106151307037086901738296361520846805068\
589819262466208884893592945428378058903638907216412615607300966676567178592778\
044346044207253337252583015282382972784748080900263698845364331987475114788315\
385002803163782762243162253002043215882272792074893812195905302319150518145005\
205958058535649443490400694429526042041910662926609529747909700220175211787922\
243319543557262460077338738013892653072497760904773610267203945600670227132333\
585864307362759985011750825014903396759559035237585533384216239172790149282715\
284208275004937548002763110433088480137583501110417403683486415510258648402771\
013054198464448788163738883714541249305320236143242551021254904761760731278151\
224274793563688763468357964625540188102160904250646110267645839180121465907347\
262525764433038469055449498805973102607586295836366576682358765667278419710818\
042934844121992288571299832902742054750069255054580134764286735170659964775562\
084064991833950414450573867645318191725268508102657144557384464868646615645645\
644723220649021674972078674786414633234007449536961548286073510124680208527002\
795427438194776756928236400686261789383027378234052762728985492375313667854950\
666789815620199809773389646562014851870058902040560936033653635555828412028087\
698304518274639289283520169087622244955033503624512053799310008013792221785461\
795542874930074473391183935203147901657981497268717002192933367900100666358345\
626470976782392678324768504372110014731018058033150807904384693062393227728601\
452846815915797241718184013940205292114591344222707619473021882578296510133558\
735793862189816959436676214115790374537643020219735404979788875451218663366598\
257618542917966743868394071017170332401349375402388179941334533121988133797028\
589851806877063771288015011074493905914326435663671587481695632523910822068956\
273418354424528472653037138436606593203733287193720038591032391906858731642176\
994603257219172014562248005547935678225917392521130561088701828291109121707596\
091654800461799073794460748980605320586485878258265942696384484380459778062541\
890510429990750316151389545171575318353395418859125660251241661243385671092885\
189142973348597670800710920712964829210672451693510198569081318443864261508120\
121802546208727894636432959582883428071660138939705457474303649445262949466902\
253219342705373764412877256982132415524703881699644919576537712905960648170386\
730071186213922911550806564690441827894022576123192593180498967892973298497244\
222875473008207824462340355094794737365583663358974432781498012020740421921926\
377878619073854139561027106602577864395825907495805190697204226074521999813968\
668635784825257564082038976229785589019632339288094603443016888755609926478715\
328625402190163779312642751956771826668036317478763080333058540146941366898217\
561268104033217318486558275643148871209522336716317992065885382882239124621644\
563883569265425769763266579749059002082518866664182030461754145200865831233578\
706332041692215615607055445506359454642411873487979605454058583144101030570522\
637942524926973907537352630211375756607425019446163277161311553628315163608413\
889642772506553797332526328038492682550514935433934244179154247616797593036826\
097518676889572513866340667733416887283309774373766402108188573479425657008391\
928231190601361405000209261266569574950120170121456587159522932953933055250522\
954044498021026187446659562835240016968161161619032080486828420549674213512884\
156345121892424100771986374209248819095352708371083535832878225745823052749229\
435511470661773549089450830546075529123155902553486054228640481555367505742462\
317562055132348880830157613142870606470410978664791372856577960158836038046027\
843876675082658347149399108332361590626477589719603293998401557796642767207924\
742955180659560740880094674731687029569627796716199966701731917746221558712417\
185354404031400868412137610635898805750419127744327132430639872489106476021199\
527529904592586839503701145319620988211504667235461346103415166404868074809903\
478867245911995244449849999858105517477851502235697124635007471809655213033430\
223411374659404939594457384464070976029114786419209422127858373872184186145030\
201489655544597203368922614256712072985604825656643969709669684830082162296689\
356405586902736620594744346255993366200053517917099159080154192968686809731347\
967693206758375769516653779672025231878422270634711882500482743849835642259812\
766366043291540609566568347276859326500577123828868127859696414381365501345100\
479532025668565324312163853479532071133781194586125206479725960293999145528481\
567705732652711128482818409874506699102741420199773539887466902886608279991304\
529485575053735944703997531448491856103393025066527675367708209512363179046903\
300286578690455693140673490895272191328181006774965840940746348868215438254544\
610193632275900248422005167815788891278578916674744108468844184280832069560421\
500138656684979475230849840236443832250789418315956656397643214222335559346974\
577991952796886518410161547712226373103349014983741224371755724186980490494093\
777137150457619772203290124754028127452974224919752643535733997223292187081884\
414862760133924996500635329084910252955804337753904691042766211580453465408109\
540315026563278113468575538416950583336214519655623487083699214102350131148488\
464392619283196429687742234947760610471441883378104533854305674830781100037753\
498593154226510826191314891000519419325899515034667376069334637362553166323318\
420198612377011535883978664215540764842038874315555557020717964437544839330970\
602415622274562926397952544558675987598562275825535016004136778467179977571179\
142962284581255735508825301469484758133093895791674382430276582041410721434986\
690963119182336613455287323501307379439873701321477465876568592741340152600756\
656091196650281207338256173020670224507872712013221554620471391675291643994584\
524663411230278578506347971956284688180756883260139078670536048677759994233101\
099341196012192953015542332572073302676340301357418119933141953835627365984146\
037071598728840824849289246960056098587817181291890479085397205673546062504452\
614391029568168260766288209508728074701099061711061150940889186056628695839571\
678077253095292803547269756327965755770963022474319761850900278015414140221999\
305759571140238017802724954302814735091532789683380615579289192397309161868679\
280847974049176175156309790987614238139107170100187390009840745496330525865176\
889905539259152726149909837035979259804345185836954663706081846225409514771846\
076248997122748654167251757940090937020988546472367788572535970275761483626312\
720741851927514680338730775145055938153755738134480219249953438928946447443977\
252684754601729610903837838128417187610409200494143242606406984023323023051581\
482235484967356146977600549592224164884443894748159920034060239841955157865151\
530619313489209745252009368282257143530082205006145883918635056079258080471179\
366938786243857380890925376151670618437133370781150891291044336508396068927787\
538076632461320322259353636913282665152745256598516884176696628441884619443849\
073581005098264089145351142117404083774878924295707527622639949914072490605579\
479874424537146703243076295167520733388218626947942006639356792049470466659266\
276500468249884643654847630556700007818311182511649248722687447379279210735447\
198624182073753989748558238417097581534194617728683102436898450225081229741785\
421514409616379729068283048449365202165061702594189208948917173935913990525843\
100655901716626000038546182357880554034295156979611094929401920671320855095084\
977550994228811114983320713372767994867769595281672820069844098292879365675952\
247507118573558834374876907991737709434321709587506324684911430826864494496918\
272610395043728363127343789621734677250804906152195637497819455478867193098843\
796799567775349736183785675201904395140481723686190949603344704930290287402187\
486701048320747676213687497989394700453861009752335686376221294052461308784477\
364663273484013762679517104746146246977361925614718106407135743534354368507578\
536559294349011491500510252537784126022690668189688247837681262823352760768391\
277648991372493700975099014710405229408983422801143714710572485692606922470953\
947971187379472240557148220676978374272615816679107976254524456343344874263643\
180814754703681654688841662747724710608427349987254753239870407379902579442888\
941675322107027924551202117837076329449700949653277502629302838428710843995005\
384416257897996645729357959518559623126413027765541447434148482788175430934597\
281366881610127322715931777486541883304022281207223833911781378499018895219717\
235534073882315526761032521138860342397972793774545289569718651983198259936619\
523411139733896569545748015345693870356327196808668189946551677465448424107908\
927462904903937843773408230438811013018632336571661558912471025832717211575373\
094194556334293128916267018748896267045761112896566354322937993845303559674748\
988832746596349967792437771402399006991422832941234247283581833780116568455702\
575892434036142756940302549068195048878183035295665973561190458452741972239933\
839545849487916077652800225566808972235574722573764254191454710780259143520463\
551253790102131868233172477479100884173279766467645067823324726315407160552832\
485358397117720874317553815900649056083813976876879349479313269662767213652024\
345355325719961045462024937517693466460517299466596348827849821458950771402527\
640445813132927436305350228832884387342358743306655196945992557595805994604721\
570486947545425562585201530673454406447091261768067117112514558063343656027709\
421813169219037893578781624547098255094668330924830784211380633041931014914837\
592392991910651432514704701512295997379369664136549440081273254123852023100660\
922943766015293541670221401474691226280913145524265254433118954859531212546033\
583748818959188035731956914315487826203439183272850964326556553070980610530449\
397361419194231433269548258351716561481469359796623231649936972824627830235255\
215122890035908644240963780340495139905695055359372743918604781377105531565805\
565406131619759531658041009494960560962893939512744440241203890608489335931639\
949172667560113157139991560862868973155167280417995620566422142365053009262779\
748246845409168643401714261775521158980686342281354828153434084068923076678180\
758867541482674031957622708737083594627671362603101815316748033152888356801481\
106754977835417979701986149153600497178393304358225417490585873503033206908770\
274505962886946063187181141286016367838318864669814987597178920420105269750735\
345400905236584314390522046304006967001635204389634885762653237066443737151373\
735461180755140304984867979155039801952885671597224835258178326012993420744055\
653747732914944180634337143667806359498286782740110657989168276987748664808876\
550736469440981794701658221842759066130498622190439742020385425588855982636411\
240923074788015808597344525589273409170144930281580353167310512871625283349026\
684699823625750018141956221700461543342659506325267412714977557208307201098695\
455836720690234891656693152162709537798571250187885397283748568112899292295493\
994804618514660331287876024520853424805569477758358794725863636481424330672282\
019343277229832781814205203755346578145692996704061187456794862478995871490566\
014557811769119377997376178449037030393165780939588919608368647504554019773039\
018979581815219761808198503711571932809950996462672428100347961703964689949764\
327671301639179841304213143812438704548257453491010248649457312749366086466252\
840341061761271755671430150519964710838767026173471724502004416415362193270447\
007590770476131366743456337256933843250553942418955142612582510050994456734115\
367863559058584170426614238710912567647315474993124505098130618153980127293383\
672686611100822168719107725581951524351028843834862945553685534101607395200550\
567986128927784440046857808765997862839563671242635231246272420803733386412705\
954863208788882951811184580068190988591148606294461963456814289291347285092229\
320082671092673849667423163551461277444145035369050235281612230482828763685736\
745424564846163922196270060340049126125772467721212276940551809592840787523795\
266748208985781133468455948650995681904405458389421104827739936112690288615903\
312059076561208308543299552058158762639091530480947020612523564431917842628117\
822052111137165168718860536359601333690085635170350181327692884417023126774915\
613023428949294868093572656030231670271176956994905178106970752233675274382188\
662980972476102339512667790540896263770852987281025972103969153679476817789285\
546346555612625248644470740606526309979132205988283579645622532440924692052202\
964485357959296544414445491865329641070255682972956297972820885691020644065185\
747128900681990810623868391903298019199211597992992708188379934037495416665870\
161676215410315557682471327465552843566871354553162088620704442430203576749904\
905620392668086617767581747149071276393844112011104780118356460372665218498286\
894130584455811016102543320448485607780364358705820698249830608300944470370720\
625253196543229756680635971712819166526104444834538594077898186542609002674659\
088551594462237814240155420046398518103008215258276937873493003763387124013496\
273013228853830900904414225076419585749246144558158570821366731904441821916794\
316954474730003746248848868771741919791005960054524686365729876469070857359476\
093596265611967167290220283958676801703890002483683229005641963426121340997601\
075273756491934649610053493850167241217090798210125838245239261895366389637420\
444917831582287298872488619470349021830279674402830708100106919373011289111731\
611792652124147540438371934883962241308625784362334461327817939795598354364601\
850353649253459204889292160490541941146180121862810225631032083516206980571496\
869708655531195346474978915888868892064904587370098674881142558683617404118926\
125900039874032548780033676768609882417007325255119813012983113028381265799857\
805181811858573379588491163948708004543025547565956028107586553726966027251412\
174410595505317251037024697442603207634463863127369305009663754652343916099960\
879324088994104227438348646109524492331129364455484069107294158333728516985858\
114092195127918164114624043825991978263006680017024573641921526950573646190645\
413813704922175136976127279660532452110617182271102360388815062805704979796967\
814615619326674057843953316704542119999243061464642534479160236591518702815265\
566277598121884877198316399436555850865454046133681771095666914988551338413003\
828795678591306457953983067987663208978617978640619159907721178397178792009313\
158201757490707420015198835449308217504138766076381545651788891087660508797049\
475407075556008061598440479217684209955711212394218023321002562594107378281423\
926969619007379077579225436079902073151291240129549400864125637283495817110646\
769186853014076933225837771488034303891473756869508569122964584936852583785840\
104959626367392497065849215773071054094159094882954549708486303888848154938811\
699376667396847673284845648196085332167501012790681767514868432632096014480086\
340072278121211735717739314457718903791115867220627706721477352156334919954914\
226368605867172980722248811954296380755803319531097623980378846635463348204304\
405471603788553795099839710235418036845201665788853347911471389457059700013224\
134926142898691555558015423498799559874387349415199005490653297723916914119024\
160853062152403878817419312400405750783522355908531675100580834014619127093931\
028930724754115949420082652591995094803241760007305294352834942135574721010195\
160669243625171645232691915863839083333989974410665791660980132672136466109132\
038309609562171148300246717640442801969544649655953324790351633667848628174574\
513143230311103094642589138608338585485612122933048325997109307171514995358419\
335238490315604857941374433199606587227496189377890102483102087803707232938415\
326458857035494707188833285712442753083957307143730548191175486372029508312405\
201432412202720764127811218594300036580768871954159197498960062762440869042284\
079832882643238712529978134273323672910704512965646752479578517550353888684361\
605260410054873826303432937868823355379191823592582827262570694344654035275100\
349463213948617665021332387054719187539865704817023364283988509566639379967778\
792638358198338517733461832172195570804946523934648482529392892482291145070166\
560045655228370067766890112020647341605045046924039942743707908240704846798279\
537303304651816600663360660289183437306504452794932087246018591459025942159621\
229284699593911546974306019529714117242162229758890911552841319438817298748027\
169583332256148437496934865329550946665623425191427402553123821373849415724018\
968039675724855791349905308967519970930036246619675189468669884468866106627677\
422973455949218086835323766507652308760219016182308988752715796066868661721536\
758926169073021151951055529948491035671002564783617531418595383538988212736231\
442520439459264581892782264357874510661231867243665108206776872986451551793221\
132747010100038279242339326433581483662265069721589100151676982702664097944122\
791770039993247940558549691142344497745430070347708745132434542998235684073466\
392372904483861270479411975603057613720245395691021095592139525720784176645364\
060771294141949016317961242971807047819345554418277963185508652471272193756527\
099200382472063119212459256856470326298270582780840615107543641930027226789716\
981852699479510538051515373889237376768879627819369789173481093657067276301959\
706240499098788755705016460553733551867698501356693369950680862220303969397977\
360107062012126488929033493211584702058405144148194501737695703298322433925953\
457564639759953758096308284162668183591951591969723817600278749463147160448193\
907875083305273917216052651425724887140271625108530640262073891313273842894220\
866051859878878582345207920699851651970407633810934961422478856439509375036243\
937089335455768357627815752409099488431546945040728924707216695016822324035572\
604839287381855711024325285239671717015136742515094892362164882551701254991788\
322112668518735801078499290480596738013803123320830446602540337031829817798795\
867966840328213485047314172308930689597738245125608676500982414764848854183324\
471589412761998027649953372705813851169183285646041774614508293352988133933885\
365269215665465947986721148702276629769624239794114512960434327585324994468995\
591904991123973048723060189651070858333450628303303841722587403852182322763368\
937036067085597832145424005227641533549989893330963069028377866209805401006566\
926078734765866302071347515514067071028053364164314346093795798691307808379790\
690782392959494335058437060405494243673041159952496787367764352313542957771935\
218872618036627232907494675274081231457900516966782183606983555397260960417989\
238801387969010091539682946748111819176133661695499517955536000301047273044758\
056397593617047315117826968523710715380283363838075487673682036150994796034389\
904002636264212658007921733107261961920287173356644985469023934736857876277400\
606781976558086606669286759922511358672324351325110819078127706825513143098827\
884494711746474889780664900374604925454603207052311677596662758464970812188588\
038137901596509169196540290046784146486424191310275277695768370441369709848458\
039047156460974488193533179803787072979612826340630514618997807369178993235495\
163640539316960180953781534545488947183407921132349566752496114345266725726817\
002900137471875283844400245707312722572892607992096711074041239305844986446215\
679201651243205743505044820852660713710034504976992089719218744470136644495864\
523546119865720341186074647088482671528793250283079616902591813086892816231561\
352447632912541692166384756083960803667381543459389252349620456015952732661866\
137556846441221712784237288128621276707911812138335053134552062125680403058633\
756261231976665382174896204967100965231332834916171170662607148832524050840520\
152749441850610617334862661732792337294851564216872551317124446182185288153075\
430372642741071761236483689117180730045581995320154422989454629605357300978866\
408554003691645541265366346801462851560176279690595928279929618071252860137118\
478500119770183987223173471647793205515225305874670757164603460663291328215535\
636193751964202887960674181859238548922001385197545116692636100596603838617706\
196014758174388126235996811905641603069715016476377009496181200760933767400553\
333224938561507299577720350479296126204539722129361797312850775778285547128641\
426776854788174177457280375330925640283182902560371933330604435776786806683621\
465630611587172616366506617623064102283490715790409017909936387127805370869972\
170912802026114807057944807964610023249363910451068732417215118128171896739827\
845694987847159751090994976725558740545740841911126421077975551318471386284361\
327702295171571352725921836785812827470127599357974480144055432257479171335141\
255877530538114681513605957775075572700310566611653046759617614080793400586760\
418670310320652522819004099277975674029194269710348806673712292681844953810761\
469921631768990156366361700844420949690395240835646559790364252014689814216862\
725249626454116821428285730305459118851837039261920563640020748640805992205592\
398933807485032909949926504318154157066108562283965016906012938565920091402233\
274744027095656600139434923795545951830614002743630688668603178394616339250113\
330320002899542213534026232860348938048944725581984644219989321586342785201494\
133332044558155129369916912322576073951849820764319560187750439416533949652655\
765094694452225084066618288975463775033857650416426954099131998344998631127955\
158286285304818878222800536727829870980217962037905263958342331259679331071969\
486933084274592793385668101383653816543440833668747688636421692302593708682738\
746240438066215896031404783665517384398198770363290865649336140588720373083651\
521245216021136836597664255624534615984190231356164297710506560226554619885105\
006611651045456498583988701570745136218530887971361259908988658261844959882212\
110893940684353750503299942608933717135339056706860728654340794550720918362750\
272495830042378170894313806909337546570317779341596296642944831060052105224842\
964995129595342740528074773385430253386346110194940206998587258911240767613235\
884796320085744002428752662001724981416762136229240364505916981153776963255315\
112921385871046970329080634625801840787571656792610412708157284254324076091257\
728958502595409442269587915095764594580475173149425143519151533462434709269498\
287939881147166006333094618764161173997717822373758258100028240301124979651519\
887676757000578482911865818108588177704722545204272010225493959542261535252061\
965446273073564414616936973764053011256828069793647174994849587484415669292566\
314576032593269671459852537487014418999085433733303504348210287801312151106293\
739230123868238298507476382675856818582484069682740702348570386929597026748677\
351346264711350127256498122881773807452850886721964661701886834393649817857315\
891620383896673207523322316852132949607162682592715966614339886528337114163280\
693320097436987243519915600220133699439720511861270415985352478261761319563913\
583661053915889437778108321908995122089136420568380746110458403637648912839860\
295319757342153632152608483146885041316804826538313374251041482938329519252723\
107907376480427707270447710834499784049473775086818947229623824403453694999711\
568200827164060947009916544418075936517787347684298141455536069655872161664762\
600720888349289685038840026019001328081483682893354986877083134424286991376342\
897978296402396382920980533835363348409469559636706516555530194133409386362234\
261474276916164894258791792336569720508873710003516789168075316077030984661018\
417855961234574847784960071491179681705181234751145233389941554967635518517766\
585807515813113147035580973666515356781138541237697345023777815766019711455226\
204442165573432168308832794295639316710194785313408866499188707933770998735667\
120895034605983425835875131630158527409508384667320086183708275444109032698833\
971430134643662012619344352401875924080372750584725281877033105511039263118257\
508819064774553760145576329063743514819715923346873091743093647771226174733877\
469317780702533466741824542225896210077903193757383128418432705593473229646044\
720502656007355034332411973068072339466026572509922331129647446292866719598935\
082347165864002839299751019924557457690302895315840498020065468904977836808769\
334811876926246795866978941369602284608519837200371092132019844284742249063150\
956000173955701656894837655212959406712461153297337193310081859814232625871220\
243258180986927170918472911667853184805183830185542097066512485236847726107056\
140474188019332664955529540543780033210691696752166378396167696194551173169233\
658130344693641593738492859946008918040324597277523708417506341892252342732010\
716762165638163624703549906212895571532781054401232086315382560875904538586820\
486006024268949913604925390389886562957842704185285403511063091859526499889902\
141692972597306520324988108967825585324577923381033255791610943996118075306056\
288239092345461462266371645444828085136088887448212467046940408943506261540353\
864068149764453082901860279434950516872051068972745386667611701666356069317909\
093553574113104410473736772365811032026037770486946049955122717900076810515053\
253623522880221835722869665684809167473720859507054557106254960175426275773044\
110493831850932295583467370610697747010301749409922058474686978122119731343180\
974769736795332091138406853321787273631276303615661346085947581748838091321142\
337993835848285299670953066847670441750091839640105058651061125852052057281835\
185287368082393407405885017239265690129068737898838043980126032387056760782479\
069698397329087571783301778737844267446910196442487334983181891458265993168834\
497427961754305710343936615035232265997609232178109582900499545054756294035791\
877823735342768703135268249986854116292162750304562862120428371282296154185961\
617835294233347494740289438097360145724189750035507177035692894663278467014712\
326571036519685953711140659967304485486064668638558120195213407989506978428668\
553350551949326483966364261981560647348783289789778349791778039065607312841851\
385152353169430801215010362152729837545485376896484575133958863101266735747616\
995544710624334934441865396744017301609898783471567006838927007954883367032220\
736498680119097949988909949758788122958183127331905534380841684062812160766922\
262629902505170963515330493449212696682229598459152946862953438862550578089609\
867574420433248722928482085836810628885460900066108122278182359306663178680779\
504127745371380610155078495120712643067044844103057050663718385724211769288546\
123311792049657280436401318760460680660386038508784378793794968384249942510736\
397935608170845927202658449905523835716419054109858061370991467399718482641522\
518899719394197929065538980104658773239798207565858692724785333219776789821542\
938697733774794012883871700179372174935178962112798002381036575701885499560367\
729763857051256289448208082880245061054027504653687461148578614679912572134914\
424929546110895440972437213222143878388807161460602804293827373157004031677944\
069636472035334256624910621348101488711921932873316038247927512139508742365806\
969377304791576247587656853228120076473200683093353059061786150540447241260113\
354836314107724116114929166771900512267120232949689346854384921596876391962644\
964323057185703758924027741328546820850391544894431183667672811143889454564876\
080000674426855799431246516714499530212855662680042021085107055408161765437310\
578186577038984743695154980060960200452146020219363522373322542204531919169248\
604274206290165542538786790958027559805109919709282940113804722170060502324095\
981913067961050201554659916942767921096910238430042109902393474826648697461388\
420358864840028396448926992957661063038840146352515332801885329151999184445243\
261633307504689107611449017323126401792777863498451076619542804138545356056683\
984720552991229609183101839574661849702665853058361669613856120222353827248859\
766705353477377191475408453098160655737781347016578026989013048804416069270374\
461351007982965902856621492568854204575180250394648864821945987023671404331796\
202543795234228209227445643679931216244465104508031170095628410166698907309478\
115428243177228733066193357582029805491089961164098404198758465637909300081542\
391762677854361874966051861502064915105456330130793306830706192502507165911868\
895321934699504230553398544857483929977408047281763894568719295078227842990978\
115277601132340366609562974530764459560891729115989940460776911912698638656061\
840225847648548106136888367070855983430833915545045076677903732774271048905039\
270282392817926201958689718944400970474511586490458224472100473131870273941524\
783834048452395279171324201071120105066701980304332878102314888025379274881176\
711984166082704735460166575932341308787023904249044043618700748837904207258904\
226598610229399522407975154459741817184675334133968968988475827034995663490601\
426288094621557109082379183193238903376065769846338263220085307809508680895832\
299140859000592589745124913493051269845312816371465518678150468716518532171633\
845081712461557039760114279296712015437337525778381081991096687506474533446677\
247293696166490185540344877592489959699563741047921189294500823093135362867786\
839487031944258664937081775593649792773197731249259388079161910062060793406827\
412371441879909929690607746613715039409547324251401303015511313070357559415177\
892255267568625457443067389650205008094886671124456522472105191844780654419250\
654904839196972096257443149720975153105391106733774640020796944440486935771230\
616681456900040154762181218097813488789413678089718299525294275691226319063716\
192488048565788393968856210775698886439976108680426123096536370553717627798106\
511607338236496071016840071807084189676051103573192532779436405478882948669909\
478218258065142319228589887010514623215217267345803994910569180570976931730252\
822267395789386878700681388556471776484156242766727809496151901850605604545037\
404383173239699401815492981380518773396395659024483128502497167872184859610549\
131898306302865137888084021739514994875701106840665575491967513841321561870401\
153720283723294996642458716376519746268975423762768561409257056410755479425179\
745704609414255131145441448927009357112261363244021423057883272683361157414549\
705395991595847552116449819422377635003874815563371975413067708686076423833673\
580410767867892703742660762236868199023237861829597264422887314661013128149172\
932656618790803744312270387214738849825092191217970132624681342905129627615707\
756121993453096981716259026536611379108212500686599530841844256058547571522494\
340663271282979841387998225781028027908303967205262376391809269476283413976848\
648201548011771325517561176936479082778823059157657172423940628828323124147519\
083209890011523806711229906843428877324078641808480094014466920069028965684885\
504882227059561520641165107592326653440663273963325277202926579448767485845821\
160650177442727074879879848901465841585660904187455999075394065057392035049981\
787401963366832639245105260928044610949499751735314731087653418839421400315074\
412582825293714298697136275023056651154677307309647819284747974562309427084897\
715036701207070859768817807019166566634206572322977790872747707044554388546201\
980397400695062234861887465760098593317348842378261425110051694691220863416464\
724230139374208712184457242675192758285635288129380599219713409373021925482715\
943267470227872460465648583428010828901879344791648037112452356737688125727637\
106564279473065698703940403606521880659117894014471789470363765245457338472712\
179262010675591930714372787427155037216677170672086450934467508768812910424730\
998940826336885379099411051980876669764213754040041917659213835628859586757762\
109202744232576752562332236354177150391421166338606494373430594503817468394679\
464703772165639041430010681857532086536553663725858211975481269763659247657899\
894296923603717541282301256480871022086131982959995408004342476837895679049594\
669581482115753096690239602582877948728799830909187020365530021136139918176032\
956270498285943122212810752881632782465617403356054798179591664386888806652889\
669967995710720505228521624435095502268276463057721613261181883298477656227576\
814247400509332325899524109163574342336914170031770164907617426143435076132281\
489150756320642248363735772227905416288115398076386580385701510484534990615199\
157713937881983153337278242644276265384555457541457253499315112569264567627219\
458971681411548598445958827440154946045244809136831479255469344105642724437192\
549112910382605908531953802925395475323836083382545477816729803655616636556482\
172691791577343599499193326198026023593858679566394689291215137599600092330472\
543829158657897313978295038600089004668554227412235474457981628210848268176212\
093084396704543850194038753399587119637039709754014895589392419129283158398346\
294305038278020524461737384324950452050699527904742175828732279367185821472862\
073997047603608947712876532035103858525155060073685922302187833407263930900421\
489034785939409507412551114079742549222187461634237944876566688928591323596287\
259769914209426285304283142867780747512817989650965238932550750912218188820440\
081869398555507441077954010341938358235713138472107849924346892119016384402917\
631627166485451817381582598559816213692366983424928026258788929221188903508317\
169582811583891607187134862028585282648989755423893725041977670786964076391949\
461534758280618337982689093820534619521523648033274573985410422714009979353724\
157901791405884869192398740068533687851859359132751337249074078715034565457400\
455752393465990911364915796095999488925884774353620689864901508170407119215660\
993324165600643015165080097418574930394820446681671755736655611469733494816222\
348235758634691960957851404998600608766865072024474005704845625046190927778315\
154954161556083630420692051514424767692657733825420743381063345378166902629013\
259771109775234759479922433949293853235161264858685954191105098457682438396194\
732304594618305395364228601397744426859579208055835985508309570271512478328825\
768331777551101620849563740272075715179673381460559086733971107722285329194158\
825693915930696378040243283220387422600638964044950233163687514986896320991608\
646712097350113350874085115222008630907391940234609765336575232030844021982107\
013721834738161903709885368047957372836511063640803585554720287234004658020548\
394758986165122259553193559797747654921181774514079597402971321811284937751933\
768676969836507479119572116290680456086416090729883590829431404970002404842218\
884111800865204729012146253835351215946045974088271552013960695571554126180346\
650366097559871737100062089189631697574597971139082267510098985795266785371229\
000597276326822259850965857181719305800941497675729656325517877893740561512220\
478600620808239134009077985131406436692462982613709675795186561681079304436216\
146746597436845455226186657947584934139141418694273579079992806413698295179675\
806891878252272998448479152173208429389810475762339919247785616563635210974901\
806649610210465807362163967678781818695669263145339332254282841097242822600665\
706855392968182163104122923971537718044114197322591064630133137470072950214521\
835967420056917883966603822214320371369780292426884755074912951302347916193047\
727299934123445786511132535138782864786321106945731284344060621410175920344024\
066199052530775814992673742231064329827598055965603406497099744985566689221373\
321472111240563003209992356596261168666317259316391295222553936085387047014085\
529770438412472000164865834359469750758054647265053010692854956713293081636298\
261691080161437842490085373118441118374553092609235285186638903001168922054687\
705214949902270128414084227140572139370406206746564385760984219507586836842063\
024011952763868528892301227213781676022487557983590203658768707361261205551912\
653027540130634068659409520435160675780128620843971831482675876651196167018952\
945595662185503560889313821238513507503907502399613251389137218566482281556764\
028877402791640654438768034462629526298126358805176649799948487707305141663733\
412545763415506602634885666257378963028470344924013084573263865908369575520162\
696777112949911367662892828256040133738774362722758227278725006407233435542823\
453091173611378306062296278479580916108519445417832414302823390505503303230065\
876192890009477024033333329051177406070947284312803603425849663598891882655598\
970580164761483180789487437809674243049396442125387304751566666157960563359881\
505011101707920553354532509227911152017632989994634980590058115473965587715157\
456552237610456331744357033740923788032334209279934464192359086787297199091349\
518763204108752056302590685142509906539863394162024017214127458016847587055410\
722702549668723518223366855558756289880299490669029938735593943986294494806793\
172818980796634489334860437557935474992616779607825025414108889542194190175296\
523372161407054632361368137573679006163836200998118913476312459747686239210286\
763353892596463366274235454073983606608813409944270052890749058983177386513413\
940327057150561338042416098391021997799998199329551408550047574968525052400833\
448856166629096517377363538944607162683281678695284508142613005539810045905784\
207298597637139942580158281675385592504802701987374690163935586684597739580781\
671116334806271165022447788182774328926626560497282460789124558789136231491073\
071773400853713058437560168518562469569199770365766382461407494702790312032962\
321965189496379395345794121167871721451540686891341989733105434963297577899240\
797197352251145404083367215682833347600439749572069977930943648230097019889646\
927498006348963629930672324592013205960115518492607708901604587422173610583801\
770153327029586674192497905086676610134795396272895334449382137573674355583738\
121903047160864369089162561428097437333329632841791903439009125581645037351388\
616948619196168147111738037694173157833306545691233906011835606090558880442387\
844707196422182505211053582457512932116564377494673761632830158319581097700781\
343589675758518141719579682147276327407629539535193755268691203487502628188477\
873086466569490303031381115821949410709022503864109662269677624309042648276129\
231818866347491722613035002874661587506677768831728114821147152496301777432216\
321214349819437545665731616661965050553227037068478471802056331397549075723143\
136895979244137741640568733078390770836498809076492676773779427063825966608807\
339318612924527900007821127413543322442549956450547675458393618074454286848711\
328364917442966515995477201212383539660273540051827506013048234625504537106772\
037894064445670452145399638974652238782984844363550228578081140250198841648757\
790823689063007961278369949727170820184651823138245254554065060189601162333051\
065704707134290684920444036932464238261108743972985150362535396638042239935649\
107639083900047295280250263418266555309720837640445392973692513806964460113262\
592153727924165661790158648383248955009442924715708465347907008627028076521231\
803449707899212658900249819634066116920440649242373536600760535638237411463633\
775306547009776959507734827150481433777761762745771527948298940433367438650619\
752296660324735999975190083907020517640078691123527121332236899271628762737369\
075416311962939931426507392244963346221568955843456613107262037188747907894041\
650304957178516870505815648260746146827079926310689583143812100003217276182123\
764946330374091293053412474248959348635233260741731179844548849860174186162222\
603653871255332518857236563645658502070685697625816054671222568253563937486359\
878365440920591431836673674754857121092554124903448528420541722196456192469948\
129796021931940568455990036371137197498581429209555156085862260599103168542407\
167378819118548109749925720611632347263404774989159627430964446270819869882200\
264582163126920371822443355239955313487374780490646290242247402759783396165911\
205124133298593393856188620880970086271636242143032170409434607957387729716866\
772439620115333558508593870399191372749744458991729667343835147755462111600927\
247278481907973695229893432455744587857718673801020818924008907164831904439020\
517244312930875306213847986884916350913519300903087566166487915821181081743998\
013853558088906084616080768316153043567147862327054284955876748249076381509492\
867761570083023221351518628541174611820082199694238867111895998604821774086814\
410776965288261306948577454608062258125633246810949043322074466755603952394636\
960640396646406561219110752159726907222370171015005400962497880511495286600726\
344359003840193225826787485856107190456951065503942131273950070510182711279595\
147605887270508176617765080143753350330835565881357554823690797974572484880336\
300777388022616521259328897328641443381829579558860466238518450109249462391553\
700227267056785103973295209043157314150063849608752205694924690367393847036670\
404864668744737493884544970933261403276653208905709679102627487718093645213027\
793970100493832326428856894133531180715213770354475381996079883828924928728321\
501616966446086896876559883564301026399694987982083389703937054158194587212316\
940289174368645749554237786134113352530791302509661192103551459234793854483771\
437999530377704365312043357269687718538286390992582294578117730757146707641740\
307894510947239793921036267773733122238747331160035959896828244412016902752507\
554587803598402137177230463269174621957488322385575928423627114981611542031215\
927423177527758765253289423821017066745319474635863447657042619872599487525123\
935215914711147117686085895876852574275825957537754139940363964362738878053086\
440888522798158284736835335662359183337996581775281029554007721828600995081211\
601893356215315513483522061669216817163672860193941559578609146658475549735207\
866837792871015239023855294935854008086440340053624122148269858975980395458166\
047820566212337659567202098368801866641760577634459638402898948887859314606961\
382596970039860562574245768459379217688026187988981235358984789069259080595899\
224218885044598311965039078569517187010376209939521560852381070733316945187835\
257575247705025018682720301818825074396379479320311117226591241313086660010362\
384169229970873495952706394778135657154849106752521031682871394423409581974422\
739652736675431191498378727089149317012674245388512124136975815969971443791407\
466331564755903585132685102625375608382342803264618510473413786832967267213450\
861268781516237161363460258302809154059254114355571442614452577002517762175687\
691393604925641934086098474754298279794275561672280637445159322567204554332848\
116660695980071499600956268830190417511976139858287288773752623608807286632514\
511012214969343836172938187020945734094658837686324611947218778730929322951630\
369894283687301903678260234342938689213705492898853481426941411644140979214236\
898882031044206051508366267792885847558942291222036292523243749318132539477484\
454466026793044821119105769081216603663315118185102978860923337655198169988549\
465810644274286786449917630472017852807992046745010876366403407357952229441318\
703576928643670644195457290864502611542871197751808130905910952395574384566754\
318421989037294101249307883258542777256320193870381712419603794163886714684544\
386796509419373876722425358421941836883259323992914544280361885204188197365149\
948616160883113903081103031563846090842587152996729189447518912867055337200734\
159790093860368802201397872587602734105918500237850050890236741532126254011419\
811972543136787377974014923189484441558984749807460148946806960891863092596343\
361498724953205126124325625561526304057066841238874886926676363459377636778502\
969343970300766147699528780466068267639044682149605819163081764871121110031015\
867796616877314641731576236015402451402774773235983040041363383638033037228225\
217534520963149346677971013112007031696441558586032830401143226935409226720882\
260320465803983973389336886495916676658017945535303557305673815057290841300727\
536895009233881848556306209990985605518598127827413685569016842730464406379004\
397903330060940917454589495551608380616434839528395885863975925748112791676828\
784594733343140105897384556956709566845456407984424844441240507159879011070680\
833841981415393280928685725155049017748986809570963388667822439672983902991983\
011979352608432202441350941154795292202986953000998560217574885815267823410296\
675975041239119919845506934003139396863658898585477188643799955628204307866466\
690517292901681269659035279658574542510998170934405150597971148979574036009972\
010444176452934168567323469061755596659331277954822146024210988534367481993509\
968250290181055927257890192708367049160597734352351614649847605228774927182764\
405019476849896849900322306298612526276549552791921989163484981907332188648268\
510566268383100931479986612602331380627600382198967741459374721596854527703267\
743358159516628131412983865313427669338958945400937204994113757918410316508001\
230061521122220897917322240711422641947827167641042424984469099759977631045093\
907209381943139457394325503999662626040488286810225314541195873296508550389587\
425196239904854273948845601119642185630596888116414232776656958337183738622874\
197332673497875222243518811913327129879080668771610852843678012745477354858226\
085872156427626602861427190286691579475400763062513555837108709305153792600866\
831082370761492896782832108672709292571436909508810181242615255755565114065773\
566191486938488875713475314278930601057156391089707446753013091391325155020458\
200458202721727531218000054936386390439122696703932253540940202451296638700300\
345362538784769993245398559333946994509557885578549917293721676805050740042484\
396108419828064764723774868621621812011078297143052940818120603115560928651208\
158390040169828730586487385210900744629130668943048172225660926890120670722355\
805711597770463912066852207301566531054470089784818351973260876807960506423744\
559580989047596521886430229612729038768768603843527009211913035834705037565470\
889973754394943856570871794853248620853619210520430358600663378519716467145319\
455621666860344848940043547806278786654970041489792718753985263434136004467217\
218990307478660035072284448826782271344594730614520319274332260013109492218460\
759273935743332975800918918248468337959559136180984133891113447657746882172895\
781341118015403265041340471346299464883043896554370966109942796050451540544581\
281121979443118988250667442593052728721448337588998356974315497038153047679623\
630106626935716269277062201763528989458896610713951175513981536359702106152726\
856470192137724210982071386234174836221805937882171843501583072028879143508270\
147427146631748130417964349183325634320357047477365430584768478121777287868680\
751037298103915804774749183231079148216199534473162164607405218498066192441166\
887551969896121973648564156373098942601029553670053825671368300828553233672724\
515651352584427992748197222168413365178205753042652358350087861560184565702356\
032744886963797183041641150221330403384582593240773707448990729165704046917196\
540257696463943118414223874132450456220858366775099077821990581660919075990947\
353515433460359754866586794480801137593292884076780463071897240804195833859055\
016628636786448990745255134358328227994563216282951774559300327011257795508880\
194739479949327532233650008495713231236565450173266465880124986915213671864809\
730687631111040705144974776807721711924360842275712348067335993311055878297250\
553064549990399781012163148986905875881904178016905371775653208992395234257822\
194367866896042132631749178928934925598708112033217428282242130095390247293522\
270684738845631106873732870817865154290762328437246336711582999013221735004108\
123371250358734473531762475020610677635379755954489924336047666149008403110780\
638819790519674891140352606233586001272883310227048789820865471698898952935857\
986711177630549648947295287956570705065913541029486871941918895608565716486259\
316677807749159721560584696423806130782257802560950458803694955178513870348437\
117085920899104677270190058838794065114063591897808858002846323179593379587945\
914012868072193519460231218603963574963511995241017414918031620212789988071957\
535495661096972620763038649188288288136277969230091295928845781773148722430558\
796602582809876343631423988711636437548149813205864131694165281787223526924363\
365963736365329707843843010942980494301859794994710945691729631606697984102210\
989177143505246912502622867094686672791476150488225375084428522119814058550278\
352764231295394036556970901120485400046720152117150138893677824754160846278165\
847944239361380967168135327326935201069493321817940931586386316810930866699375\
540361761781157260582064336009598446074825264907458103773514706186469653563235\
462301635084665778955645031662255432843609852996737974258392052563102204488645\
074630817497760470115500988089041074892251148682484528100184821653094201819497\
988124272392085920704777746200441787868795902592219304262100650134554971610299\
825852216347226745044130986280201010374955519603828230399659855543108722239444\
614728419016402102677053355975134517040358575550487062537480577707986806288989\
900107239897711056918811242837349775556875635328214224247325872305269359979622\
596035115283945552889931109790027754422486600313336060476708733718397491521443\
879371746373629448061510694650282271788057457557015301472582697047936204559828\
531861066076573804802124631588633780611204974604776406925829371123506220921147\
890498929138716060089079948048623798254393696569132781953404771203457736780769\
646058082892702114999214915703417491588665323032091260656221758235086830628189\
049938018215796370075403244373357189224528956798452396164103844138587017709180\
729498648289522983810288119900701207212592429924075719674441158161771806017471\
091907432807227471096606919724462563647198567560579898923755974332781235501977\
935546333086837768063429582873876248536828927569277036060513475230949136770943\
080571460798447355419793487937063861384377931204832786877509488670654849052199\
131177894529651152199872578691737436412313399058566178607966029794829436165926\
450414772588972438265129944116662504186199670048622370190974481312089351209680\
270233154453312413143379647315516863545538596398552407212498991173348473213692\
805066462129290064613889284691737894696235008004415137207811908158122434209747\
447380023125010341013034938439891136944814053527753579707251616391199118626010\
359217286898899406960240623376542736826430208094089828840923248199372992820065\
618885408641662790671116942455556473914098468898718305168360763211336810678787\
476386271664959832953196317755934731949421318914284817564557233378392734069324\
686007432167020757029973916968706511975268644041985988686685188864712164539512\
179610452666571843262707732768899708032507336818960656927499076505267325019938\
346974566668279322303916068468002884379151343863867239418387201547576873279425\
219390658596716778116994008590233375994836744571775708459666288603917490418647\
587242359052540095430644584786069841897391311336340573934915446717344641465316\
936289190767369128119781164546546267342849090530900039907556647266183274966715\
036299791960826042508199824995487708625859044230734888889126636809869480746980\
455837049000216413029221987404078471764694229248276371127683616480966086117015\
758865339724688733073599404462807893926533840817974104638075504599812524828411\
000150874696752178870305976207376843956615947880083200658846872192065858072853\
741156197271958585062818815912761228741312539866236131590957581709241196110617\
679432103796764629461473159877323405512489291280416060612850583515622167614028\
418045875584768044825256346529445944253184118672484671439759544006375090061131\
262437392326670874304340066852856973703935695700036229544054516371059067366652\
880015120133546172867512356826694100412100408874459338097940791695141495546796\
983575330202779566197878069136114981622158944779516117402366168441838716768957\
353527986635251324736710879589832398967656802613541295060348175887209854543291\
280458064539246066779043623045889725060240218634093428776838440894349900464025\
033611270849683547940240645865802158189098776203106134197329062133721589160249\
856268327336596477996910578281341735650741210709515441392955944018711677129339\
339120301281268661566651596006770709188183436568564567421693362894944541205047\
845092106632720317020946023228630196176780218824436578408616068713662902976697\
681398167820526160284464448226106825190875000235344700707562544022968033455767\
146554373674330577454541894193101554149974154957019586645696658466882367798139\
557551449268293183545994759402041628337384183594489957565710312647557414893408\
406342450176313813408230290818915113419555370333216682850849372707112845605662\
175470900763138478471006951821547407592892052982894762086795572962230589388160\
849887460372018573299294615210446540831117481457964098601335683260204482086855\
342842033543056029174134735292268553788126090444879851625539543801038212987235\
273545015159919147177649787781650606240737823041185886903564504612617716252400\
557133592518568476370668039931252127040421561484470454026599866177821379789671\
215388102522484248642297523106002427098623990942791507436564867657589441465850\
695184109025752634850607289608594432660689685300169177543593754795053887310935\
339060240839114805055791481058504426973700407747863821551072769489852589630780\
542374694289711842887048997894960971217238587409406100781534325546610571144720\
069425046388198495747599626997585753878033015177428667865724564780842305887900\
510035139957332949026493524768771353382297478145588808131198285449011887524837\
284734985675987144922197117784205914934882097193952924165793775336325661297947\
247360681715810146242414721834676672806151835539125145064084964113099082215326\
876130925557477084510024987865565133917855928004175689624797512337677799307272\
051051646836253550742185510221753406306275669988711348574402792445317858540332\
118537394593329488340546792340747569935019234085108514023922987729153965606022\
839909817279365020257908615353833941893221218700971173139162022632051644978572\
207262688643028839489060783613088638925526623032008192997336051648131248010641\
103105606054703279526265326708142650138876202827874705978266320860542771211102\
337213445429782286119490960766743967699326906231873745360780619545983094078276\
766526623999869711909046670200614980131905129162258409644488505149309371216907\
287496142775129121328622658860129688876262830951297031761001280418698571090946\
892781632034732788648403378037948299850458378260608675193340248560736224935630\
909927809863564239957054168486189323947121985388629072030512197859840164014757\
016565016038191795461238059756897941352485417186070524270215770376862677408445\
185715556815535691277540840345006569786799875306746547124923249875647481588555\
969490586916584486570342680115693522535524669813944655175507587593505938173787\
661367855305708838321062195331840502969054092087904390536783564947315158044800\
217797228800442860852371286802308134313895479112040435063192631300163261642304\
503524812986542232679997154359067238876045611877914751086448621384671880494386\
027745248240849122579869162622390032103397093577995161474902619472294535033626\
097295151117992202075166365389619938045050635356041630363651729773583235645003\
507991107553368396553386597790571434888444860625886610546419578210213281021793\
573260338535806275408778923582861246377862922001051427964265689861299013955597\
799485344043624535176700187757700515543625289583742746505793828809263109313527\
150994374112471745907487071152335360432816290576124093037260648370563206867692\
670851958541471243386674900636429281603556322190406212978265549328031441515651\
805022302861475707791629233866950186072685892721695142253452938941637250160736\
098134230759991947688185211086293138737206284176012190439515496626638026643746\
439605853989444612269803769258267942270928994776898818919968856280513015649077\
433499782441465809507416514150579937358762734098318273287188091763957463019308\
663647577769662249749844754712285472434665913750688558542212903061555510637173\
943948435951926303507361663924135908022800661050458806528985849382502571363164\
144940352770010212215198954493237589649351992986610072772304835458091110494665\
280349259441192588386343879101809376727932305483742301363224730769126545877628\
493961343063934364295894211731962284074213056031719213949939561179155823301707\
185172454120092856424495498411988004008458212716210996544519873131518813893511\
973460911284628328834505752245513921792224984972779835488270481245880019187378\
440954619521124071758959309650099930378653436115036031992051622582330675385035\
929071651829389683849348173487263049531039128850984566259960675940377995360035\
058779185190569442577815636027641098608060097252056902194577159005334462591570\
225113851122081743638392523912721841739028652045226411308483685802816406859780\
941947791402800654029859160241592071498804531120996837019052137195864538050715\
775343509406545288179247817119122033057955180894868771259375529510960646800616\
743886264641680025776563228128605781503433496351434593781747486930450762290270\
322456923248366616532100156781416777811211686929791267802084517564124806028332\
973588399102767511438693772814101855262426980208076550695231879464193556553810\
881664221039421638716615026142424293482552021316028552851089909317288775621155\
084749352052439502973807010251429113997362063861198648156079092383655837801658\
600600293555768370005272878468181772905424589184662621953594297717395114180178\
671340993325471831612209187093923214375349447662420759612868778893354010302028\
748581357845668780083893410905032512003562966041501356265217848983591484675462\
849870052713097194434637666753415205359131041222515064893693833112871837770578\
344822975700974269320600489668244300802676390912824113006267084184651202339446\
485644124492433948980002881678608499729421261197940094965313297464789682773459\
866473529221022290978630342752241397504421637846940661747524611962998457755590\
292199199656538256731252390724376312803155817365720487115192814226186745412969\
548431244212164099034150196648516560179231165641475886615917153993551128168836\
104117012695854478036478550865428183852511924677677860435375806173310667209426\
732748968892301629226727400217069551282225545319793919412226924623476336148726\
892504680688946963647262646124222167171485588375733157368025952202531667476307\
162849990080184737260134614217907596947562366865784684917399483268636488372660\
982115645935773803758106485473006737393540502330464245846539701515845720522704\
236926894162447344323227948893822421813068883165450093068391326956243985611667\
621804933410821790044344527635449418769941494326023164619403677358210454248299\
240351603577777623967171465372286875534915653572650748199966810005390332040708\
693185467603161284038704031800631465323761378021321512320612400863036141243137\
251266349899206268860522182841857131215417094909404170265236688484975601422044\
839742443275799314399680542246993446448144880355024978890069684968292293593526\
174524234832430351780554147420851761199634749295809235690644250922572081095213\
240099802957457889522083124905065299342454128816929598066826494750943902872868\
878265249030187262805427430707249499530017436273067689408639393423234006817986\
979366827048319462882048607365174121699642796486863633202982892857119095703215\
945621452908642690176264852313982170436339619831632154559980491254945600288064\
805876294791070581466728582160218012688763945309555583119748075094510388421604\
574292936363858203477458922157406589751855105975518402644013515852187294457378\
054318882760291026184243139434644270422301087808392678523323217515810297352304\
478726686337488950459405598293822043926955152120284546887317917211167661608954\
962903841751786176136668844176048488349695283257106230216508406915819178093735\
680776509013975637255591590799326515367896112411199841319376148940460811667057\
057734646382014847873050910832216597078673397354039453905896497452036086184644\
292501912969923848364810538787382596135022836996735019123729350688857193439079\
777388773081072800940810518554929154856317359219427426199887675128495980037195\
517508850136701837444190219083524346011371333049754022333835749494876826935438\
480685538904622292898776008161670979735940962981571112461762750808715415498809\
358159242552589263451917573282018987324520011716313597009895237316103470295683\
596633056099602359962600438645412780542710639785884134881632134523213278071322\
673723200620905350054226643323375477699267717016009705651394388016892162237123\
899085464203684790503674193948260302451638332755499753761145264998689584275234\
047344976182714729025362453379400661850676695582227148220635566225343782484374\
748327675184110711522337519019743691650337413647194833519044728746999543635650\
271511901266638815761191104904894494410683459066230922428984974152401585632047\
682720481666500282197405795487802089884833325691088693519236592020069591469917\
949785110740849597161375594332605358792368258425235135122447373432668555485832\
909793501161051302729953844517624315563405644487711797211821535039435852418207\
067983554352884695425855181167470696403676119276873799239566273933283805451215\
144704355719741394978916781792038811005242040743503391809851129971550725802755\
535827568551095307288984559087740387727065275196511961703365615193492769747441\
508911044926332000542195819418456218531296415467750780314393123182892062768704\
017777768457425655529155162286768358474161730337670731318107334410372983894205\
952099608497215883213744639532011222043251091029490386258231284706050342051452\
978626056894637364465851584931015750336712598894498796604830638971720070956339\
531236047920533570635080994828916136406814994850396921162816455789237387974052\
313808358730531388480357203291659977676994218679445597360559696446046488026869\
375009450730932936219696232395964577466020188112264138640352404134906182098769\
068487818614411833564566154479098361275835478403869180769517123057342417638179\
096257560977960579949270542583084049013760754957517892688990220279714961191919\
150188522735915502067900890752894131990613261883948894894508631947565367966699\
661467062370365043563309566306966663684627349097347681653156196025000496135210\
497490387569773243398916754348230656911007661930268154563529669652130447340352\
969418052166387999285468656341424837111172459659962582873390684133631449464317\
009855787529097553072958704539177659480168779541116160384191962977835155843556\
914185601705034426519617052741946662283269991057849731468261849499793679714551\
378343740426995654151064088501279796929457158114762585458288111427448845532860\
916147435697038523519291020524196839265266681799413445596475898812208005931186\
102190776578976586354283492741405700302707899989663359471191013641429988412963\
673595819053615761066605609175759374552331431656190647978307298847469440797241\
224069338158888746943185239723647775197302313377674589811617978582559437034150\
400350013903985685470917598257581775394185293713268125979974621014173451180078\
746692518953527443950080799715653532583163799769105849255540549765829554718174\
187411275757708333389595448545163183912471769464466578424390914283840756581230\
232391565662852464359523629037697750393899619181642458326458164796932154497471\
665584822844291207177357540589172422878696558500707524707254450972516554593438\
743624108236251752500864756575241902125307718979888725779525282460095658576438\
143907116123865939681996641888319784060675740472248058218357092877520658016021\
948383542167444660549835729245272681837227268452547638619366560279230890725508\
409507974872148857251574512649808998588570957186820029021336920145141575805909\
777950528849076179509080248623093207571988521819101252156698541446729028466252\
677902004122312035968102842443884827006034291463545519301168142272593378523555\
870987484343856399485270014554982159522126263412102297862725773211452658193827\
114208574295570082780780321755999976840425632542330320640726013127895023187345\
534407100212973115321166329090427767507892119037429880593249400974697493852343\
019208055134327331159018033091014990510008018484893640481942476589886562307824\
847260518858081939339974158272465462852273515021015333471102423999205828216491\
623450369652493188837716882316242065441570194702184648843869228095216009203223\
542566706955971540488038824921564993165857978338556414046357919436004065821413\
623467106008497263040312744725291717656253966763706345905204781684780695709102\
109697831766408757455047725039169084887581019930181169096502515936383005411255\
584486832777496128480076261810198379318355504659089075999071246327675103696813\
821308993617742774389138509487445397685715095110544115094049226299189517702883\
916808634649661354342419653957504042256853011405852965481192524635881377201056\
311216035685486027363442167557856355978243837133481809160052607945971749342441\
037151225993247178208511879519565849864740345633797576971700090239703330412947\
055548584194651092258473080878329951610380424520818687518497377269155270168897\
622463424176705351280335728884541737729494981520463511083974029244561750802987\
365365714356494089988078829014373342255375459599224856539666280483917328315603\
189726350785335670093188673184454223134626401609495642218742293319056700377731\
223693555384124954751798227342221943188663080561472392107603597284824026410335\
049360248146157849062922212481100671292040228021123578091282963166992540579025\
877880910148321648870052680032579986454962918233060222446173895551439395779440\
919160766549235819067101181635638826927508227247443342545443961433329145967646\
517229186632612505628980192194218920438334275201919159982677963128288926366232\
695637191194690635717567824038299928509326869948173204495809297127863165044159\
901827167447677654971414212509301333611262501163175923217278433674661940093789\
732868733891375668381965545513805314645029804010187985564574457525029446226494\
128615226189159262052077368273076388141121891818382322692411507577952224984339\
840617603534461637788662904171299546994100214170393106042795182542230718399150\
658448292384192299847813562502635963035638925188649071659623673077048079892316\
433942551769509394818465658792540501936256139987097689524326271406714460932239\
788897857949584427317810223183463250465662620384726877632001724800816494971051\
068069514528934532590218766777468486770241772757590247816518297131988120921211\
200924167931291943166826529979011502498269391403578280172186461255448105313667\
494828246735399646754982227116636908432041622528279041947773328399595480558687\
423008454888160548625453983679861316683531072376865469027567168386451025104996\
959469203216884967769566056757708581207952976765348777469872477689746541475788\
405310726435586484501607103708502741096211922135119496934692944292181866701727\
104550791562412443965590087423831472675064572592022731457423150878535885968807\
742322572831873852323395557082551559551101723069137895410031199121364415361995\
862383013185439662664346346396537795335569909067981938501142515021928822055766\
384833655674714610296206087240580689296792651941225382501008153462809910760971\
833701897001807193276794989760446293395000263651218600298698837737991590189988\
540253261842671634274614566431384770420640619470103298104178178712579047492837\
754387111995678598145832169668874762174771060560441446908022649711735738456261\
294678709705674044293483146393440920458713696925296852189819429259248525616413\
236977336441916626218612795156971805902221593629075874229828289082215088371562\
675886019426568709548152816055307499963509148459905442701328909433259710178042\
933902159515854606677394167227643532530689006217655686165211442342421123344640\
697415539318814018484457183182513414431706006937798754837269346934791093456340\
603066185830409440467499272476613181635414669708464136603151226261468238839028\
291067222342951431390247911872943703200824950486264382859225932535279041023942\
120709066703465696196765102158668621761381075364406558510244215079913194038751\
812457702196100905595989735357823528391577258421031665431614885588782905897104\
999967221002629388744827414219647414737792498186801117803116777584339037602743\
777120727633371059427646529094704327497070814147824102558335632488603692876919\
426154647300824732964031823209385928065107394601820324109641854024576748286668\
827604343731682828715673969978127320217694992270795308292384875438123621973319\
523896023374353043301947318526310521767871272540190641731613412822226130578662\
187573063390618977411529035057908716987354629349659615159354432095732641029758\
910062104990174913977655212853853880335301191793910373923375661251185458396147\
050585146127371712893697823237685709421140807026862355815050083960185509373706\
975438811637919822039104262491357275626249916588708427019880379238788797877575\
437412067336102725604363594329434419107775367229629595220168014910027219564740\
690788234081748661161177316626089045464635540112565870344518738941873572934216\
280212088736715697967664430785639821242154656090173078617916146199326910024197\
534635119754259507537205721489501492709842440699595978476015800762065087227312\
063378413127017264907908229786126935939593287607576619550134467824171155604744\
449235322258541743273340307301417299355487172293977673187200433062146860634155\
057526039806622556162647638460017240414529061637082426235075986965680951539269\
786639945244157848995744378292059092646226150269138169594074415576041318914997\
064037478382078334426738249618676838456063700793147391148978603815669478995858\
015156215074581527206566048716483547470399092726579477013061635442607363113730\
622869615201461674055666427871808273063031852671436101265400244365964910720012\
837717188411564050845451841986946991265842843549773217308532784088950562447769\
196415994759334139473031083077560454453835568245687896795705012778946919299674\
386641344269785236629263825848986691320794039430365818932667373184693344261051\
934456531425156264765567027075207562553188109626075851551589137262302261214974\
235750310270888313177695676162070691887813907952123916688508329236402097258999\
408982623205066338808433244401565911699295987918788233596898987754505527566788\
488745376722083731420852015664964203188330316389943840603336897446228030861692\
249329888113685516644132499825968020850127935779299751647995097995089745108640\
601748901507742222644916797201831951950402812425919338783917104261109836655129\
377024729097874880183785503170139841011406166619045396496800132562247867744516\
723743367171040254304049178886432650274698110937116051772482276331379678647678\
712213657787327774451079844458770295251795694118681969101518540509164700975965\
293909181151001195147316381653431874234774564417552497600043831473635830019595\
868932222818978794340064176011606522970571951457401745776938475350757616625639\
912562275252891288351054125322688853159422268530016006065012710358155161828996\
847437598412002983322697770084095262853916892306958252791593509379016515731177\
754423085322469833723096869449545960995735798504966396869637215767458519719088\
319654364838424005687266101524432909737330128925713278652749438140048107300566\
103380528339559179955878875871407204889662792970787292172726099052432691381122\
709675762214998151904752911801089321870459098990153380044077690761385559482210\
634467719474995842551825304583527014386908448951687428422811949192311835011671\
049184714918718992915735471850034091567541384764016732275781664830710520253049\
029181818409649369888808147190742522319256356775736856084405377579783575797467\
210984708053598513055599841574475863699847138617252451998712551844922063788307\
629437127527408101340921901267224121847107509272491177953172253558356535900163\
624720606373512689342351650431612141432443648342933024999878196931509043322982\
248981333882498838034753095097325185678457198717409813311148819436884076832918\
850356348018330702648525865429665684484703376135847174585275256841065001906056\
959359008272061228929083076596655707335011646927533396095480371478390152125797\
938839962814750586865122755345428472394012823482246977962992469902217534156365\
096121103767572828755882779790665153097380700838154385225583972831576471266314\
025465246079454081379449690171384735405390595886087241132359640950283830746270\
491377626576435141062986781933640510951117183504521673256070992993989767273814\
908315667435004711847732653658271742759628094012634381909400388211333320640265\
930623462596778989235472063171662561530880083281187983593589055580201753628847\
811360632717507527106912446357507916393975456896766950368558410250182614842808\
403073197069813146663792376603649755487644071177758474793197321583659901101102\
090994883012985899152321376127946465482774939086074640328171955111425422121610\
096939428629966678324786878377631187869895390723990046143725273469252938250172\
011307882519567743681912777738228264799377289972690425482718006371074559895589\
460664116493000736687625824180059992679617602340636587198735221440228688647152\
537319212948466245570216844157375627085433628585164688563484953726415238700346\
901462718950616511861124529821181491193935850574133586237338203893102320252938\
669437645691582564499765727885359936172849408479733890583977166822643235579268\
728307561296124359803709793620796064658107687909491003488129009283953703010285\
416244079819287347869407174868019654994667006423360346025911375014845400556915\
926441895803728012950689141848531656813748568758954108569463009740759568383983\
788535464901361122195529658694086583928305570325837604936212293410638100162630\
595871381285037635341751530643823462010258095600977976918458648332967543046397\
964582854339307596945266229439946668257851540139473117410922150603768771361614\
463992800612216773912847894291564118102829830219772446261130861738409189686375\
758662592563752036687723646314462388911412843042296717152645324190881561435709\
796105890056219100750666360863703362748416592487251776574332031044035513971538\
299778509717312963360118014077135206151585170764170514721118416599761678454575\
805270511268089480711124378718842858457977414117603725813469537890806488822240\
317234111957528451974554710215333367568179953610605075420408181225940357963170\
502154619277111180977402147786177806928133495094758507571594567021756301352908\
606777752059494437932132262685244688765467564186429974127399789664633072437377\
223170599683153992336917650753411069140657315682962081431718036845779972802384\
805178435498009356302830051772704774815417246432063001509060558343772233281860\
679266658956674691100464182021757685211903416394645731078788467566599997374458\
562579075153911282344746400565031262517429898315191594136546664446840575407581\
970033876736184946876883925952524230609383091182237233264146359999450115983430\
958796810125837177431588423453320865530198547671392450699568258063519436144242\
673969292086661994269131315956126661905903860443919476384579779445603050020526\
851404467643939361151841046277266751560178101007998443370376785975423238787691\
525951426526185765647683918143831559506880307393409566114059958012213365388038\
781789490513402977515809093390395716072507830248183273468293113718977628295659\
385703356758736160957705961774906307077000548112567590393130154338706849508518\
601463118728849448860873543866661901845521272367947827323268799862794060051003\
275089757932481516921872852882676325866966747628577494221856205747300757241765\
486468900752813265923373171342361775628415953167706441164066758902136889653626\
938435543267336679841923411878074211506566559687055385378822429099550140250942\
666279632003936009827421610149210598952470624923677719901960158107739855330381\
885121359612867741981349662742402241785930743939050040975518322850709722015009\
837599564271021677580530520695618827178156589605276847082506568197821002001338\
307875427540145471908763207398343568396152273365098990193850488815302481985886\
389497169977543487773993480495128606821360466648786310989194255057225995741902\
018650946583316121869343112892275246107214252499976238987721185097021477943816\
812446862919812582373387687063186077605709475279024932389131458029591659276748\
066554390541063906924139391333606923538957178179711648161125465606494064621263\
215668739023209134771842447246048317103557316825490708390057333113350911491861\
907966447423556747744566009130388790173439887729050376539086400606999285401452\
747397622466713908949930647706013334052084109313936522200923856377962825796399\
318337262847832153042556779118311019907615632813101527492353659914959321342667\
376215142376294704772822514893187028894326027194566822517529841178375493424764\
287687197426546996566299050770232238118406412190157408662497903737269874131441\
305709112953890105048491146293119418957265823178028605059233466835462448822514\
758378803568554870312046699039912125399648744513568421501416083319882236320101\
358918354925005691048999597571144556477491946404190485652654969610828983084712\
263263792727368979837084160470521134371470613595468647132150649147496708297127\
262236385678478471381323546788390907860206220222208586667750114912008095855684\
757840180580450432414644229920755620501972948866830443654683697284790013696417\
250992082851039594192180924972212157738258016396485185762853206461028605785698\
825970872790358245774389150658866104806340722712495987946528385502198738034430\
100518289613000552006540737912097890826278096156541327538272229604286472114778\
451435857507557036974939512190852874298441357778536788432191371676905603346194\
367539150476294016631442326528438962781045208040733343917241921564265715882634\
792691492791056951663329147613265074179172308659546502925706345579590870991713\
512096121246350828936038119215085979419081922439841887993429442434021881944287\
783161087617404543497145706959002989123943069702582251970110162869762055734952\
848563814795605424013472909393060903137263185881276498720760974053663934010478\
913835022069165304650303559224781450362991321493848807890716435279337781424909\
022960685440465797077673521043370979587122241580213044640157246037594430501919\
222380750806437881026626847044617021364543911192969313843215305448219125615872\
596809053737536196545227518744259523630651611740478785696454655164311438839387\
035596356276084119747785920363136210633012467182469141053060704870090778862837\
919236406886212666172008843859457272790535205675924816774957042597297904574089\
428914380653177078456910187943661342611595932702424482586910668040468240915469\
530153466055139289279247007259914897882300314740916253700305971715430079187093\
154777464522829439110152919040926278957626265913846052197543965262114789465891\
891806600701578236661566203818222808297472911228725682149449432563014326319135\
306513151897323751883571203460042337485685274874252877789824849458042528128161\
881073566484983520866823162129324547107018775558063626961260177301907226114190\
423061653651186817934647244011280963195884344010272832458013717870664437756370\
852694793500496142099850057397135874731397915854885890714986098060636985158646\
005081240725670967855492530565480784457758489173086270617905218635399303802839\
850958573697469293118548193641600151227898744979648020660679073618081550562046\
190933891419688164794834809388258101440405836829656768136344133609865753441876\
403919706503888035692473973778727673873155419651512833393474988648703174717643\
291624022285790103090859212055739821837463489876109025815223816782127095705705\
434327339710252825873426605143823397639785668431341768075299969518979905090187\
896389432877059626507407837358865467307151962801508577205305000119910417548620\
631464478985631951354910359738090214620142410492777516951724143107987528805780\
794496740939057269968782398724341441031765653441067537849604244723341279824328\
906474591093647708309388832059137147929630135119284126784462924393084322833524\
912345999368828374194269405174546348396511946794059203372191705450677004262114\
276606889069893717719523391424176251553477902105144047059882307255652312120222\
511531298251682079321866360650694339138806005675735926981887673557914778701876\
870226359190984196961339632920544235748590623688884756405836339154819557529637\
866662084426321702827902184643335518489151217337239665531060064329785635370020\
412747116622104670951200250395709479003218899176346313667720578047749669535323\
092715762084306287557544749630795689849728471705562113461642437346040792214662\
762192881183596121756489938018162598128870901171252381483407068360326957605567\
378931577242145444067037297894840136528737550723034876068615841828272956769903\
065882426009634121427467188376535491971875142024089161505378048507731452904685\
359881028971016111151430441868604768897299200456156240813584766912451369931800\
581890072430094143057680330123715386974505606186286445178795061719699479849123\
727511829796158627863636697284865492126103660423833066651099065958125007247834\
158630866309855816845931294677613350183172100564128439276325032508003933965020\
320833406631188327443532538862188957839086168811927039553669701403453397027355\
097449031709191232880817357182896872327518988214458498529312549832150688842091\
376084732207533204101343848278222675526286920369409982544692426920222753705432\
263542760884508244053049728271599928241523728464118811243232960163313245433535\
348475511026198808966225814199817102950306676561453942326661023749033296114778\
359072508966763178904664284668756306058443056163847733302399830902308323184753\
567857045894724024579160053552835729725823430169159826829001281626041601162282\
448967344831584430258593880572857094910809430065055848346346574552423564709828\
346248748857984187065558414753899451974092747935285707838258273505067422090454\
666521066561079028101628928103681623772253894150105834788766632943295530404839\
585436826909199352379126608522594776430200715350049709006264085095079354919630\
277112982846891236735146988619775022957560141872052292702839762286003612225858\
537750353285202961880051950793285034296979404156724376566648226158083044317045\
721892502631513843464817592286107155712408089457394907504484708164161653589314\
444419617579736988570681526613457034247474994078162302754513340571576463905447\
121990014455793201385798902511124782516283314446665826502756190584892588793205\
307248168225780206817348306869287429573756143249497940548462397083259879525022\
878556551418900585786675413440037330907308606711147963883985249613870419239593\
274065654750369294972160353431776273339167101811431584015264534761091246952838\
296431398255979552845052106201379584613832492332405575822976355022863700172658\
828052296269025888686617159137308464740739885955810898775487772514617029907983\
612007048683753226278499394581969482485030313050746687871406424337935754979808\
610626295500866364085621018300047719442945149325309673287427947945720221920062\
941971659823114232219464809974903456989129490477493422795436423402631134055543\
195359167879654884802469725221947177472152850394483043352457016251761809366044\
139964171755718735728213057480865338710278225963381632347096594047146000401023\
431716164759585521806856575153378042798630640674331032113386018051755129165403\
562841577858674400864464978598196836217722177177394163701287774966952902575006\
337191348493850210498284564326204919342025693420554437506110966231390032496755\
205798228254220022517295544914377852429012800805829251791706003292565853885495\
968637551842142640519341855511108931556680261372280915839484876900907542205061\
429665413857775580373666871535181467725813305671077656731174759209090953967324\
597035993785667351772760770904735260734792403818171509130855770865230750453630\
529249831462294917660618822964426788090926229401100274781848596534192522135581\
400954312985719484612079896764218517419320359821550831815268029553627516408936\
702300683427603104802638222424097788878172922152741629629939079894230811096106\
254121082014604047003959833245277453201795971769423274903913367580501603405295\
304880838238218135871240384440816510571902256168717244094616589249473541051579\
374578422317071032819236402234212058737762399919180950071946345729732527085119\
391734515100576114528209295857298320684550638741281306926344942236279744530219\
908494880643196866342919572520879053047436771909766451193477506172606151603228\
387130544748047924312564380149324177063198804586024204854683167997882556742838\
708954907903543126535282255159106512304269453564306431026789109589180980100338\
377336229474591081432925334783521417618104476557286728981608967372664970668268\
621966794220714586609405081620989123470846643987418475337431000115647204114459\
476296417296955224655726342208044095422733747258313233347736549197217487600188\
406712528538106855294018103883601048380889220365605818396824399098946967927420\
702398281893966103350280269693904207906362458607671549026353446177120885253664\
800054853104862296882575320510832158990898538914717312532359889699116550147598\
519410718954502891670396414788020576163446882185631789072478740526066137208423\
540431761584446663334375652193649894657377690308308554635539252538582164450132\
504148725828099789734429081161603754622650606834342759217439769703659299292815\
211758980503218744589777194114916859650835454342549343547245199536507138820079\
816334351966256744428574409632264827086363139359619986776806940311170569237482\
364646691950222105963034677657883209232558013777309119840221950049458255318182\
183617101495203975593228360264541730621441465455032286700453065278299027445610\
248048714844937263228087598995820758296420729069248129775454298144821374036342\
151092456929017297797022364688903624089805944554078538619954741841744689265338\
921797891171284901400214874779030498473113811834313708950606415096097476348421\
187909927107664518498867700405376048733369249861695361769028833019496536915779\
570968700102770995904829495912071479977454170475190894038348518804773877790253\
165123218393947141061129212994520340624432891662712650740312622476199425745154\
067532100999649019338491836346745027354988973698842258186302076097492627448478\
395254923450604798993692317508214018394034306231283130258295211442242988495265\
713557005121533973306112656082316256362825832064886262986142626550116513622866\
703008234243185151734578058920313792317920460703081764840576344034949096757943\
152835058464343700061518210430336555442967499839287014795673881810884989079020\
922989438261023660903374637703039005874667428666283440065618462526174575211260\
587796701425848725502523425952326687690299944289682467351891312523257133334776\
092172316333895368019436755020453668552295044289920172426906924127587245350973\
118034437622848488327831663421753694956437352086037551945689108055813234541655\
936422528934686794187251434052389064231113884790773299275581723813684268999032\
617251688731797310925368710768316536099675731142025715325647346249144928121116\
862045421076621805020185629785227253563301375605803239395809850507227901204731\
585495689474458173385110665297103784327859598276747193833057276843668522191864\
530727470755043812486202436834540628650128109418434380412278507800512714483166\
124133246013829529613834791441711966993284903597109987310908119194906969717610\
622907044540440235249923245935939377650152860214317616339084342036799327976060\
151439928062597723611912159038505414395145311241283693632017156367683141915993\
548054075539185215234703148571357027583681421706719625169371417457158841086928\
287585763215721638795172215596092502878327420636126652197846013377242963361784\
285005164384333553078495460557773328961694129675890047616265221977189003269210\
179316545561045776132130059711858114802345575209738107086114991717217911856131\
448408082416675865790316128547838104444859603704108434545537298216999614745718\
062476563819291132128613395888081222884237746739639323773785609927222599255908\
576142575916474949932698529982725875649316830410893976700306015227210730281747\
511870630877743903626337442739648795771350962038271547838207571167271327242597\
498620851025989210126879765504828349832653857369051662586003215869315558944119\
902160303893730508848608418110172967606181651809599107583202163376411942999352\
836397567821354794980469332903806678098489143310690439725425861381125081493141\
642751741714239505838520257128164187286858044061563218140483854865673453386312\
543871167195875276146516623665396152540921983479164149245913727337481261541241\
376570463212081139160466869098632930065114664754662216543977757096999551933437\
969026808117021157877427664060945291372859456465842412939823626250355432428665\
517525132179780262749145884591951233616846841776569434874725828968447625916733\
799751976447613545313227151708921853192112082867923306133552757741633117050352\
106143026567292629095414085842462305486795151331341980020019799304771484209535\
604697223322473491088062356385744834215818156023877496618372779639058029265801\
137476069892645762567574391617712092221368716826909235811750166272776736232193\
358660751924226359028160394319488239926751090732085644063613509617367573457389\
144610605692774717943156572174869910185994528797930763109086639904027476670257\
223678254120200394546534746675089310178936687639261335870871257550394716550769\
238791176963307116968543790792490915912483641601203734230941428760213553385903\
523640841766468246579852736727832706962857833338466855767077118498831127448022\
666467703550835546682609691695025781074881134543716802909066778716931674297609\
117041487692631576184156721307485676786090564710129182889115192577289775079278\
975702381198272167148607571450894206284189821520640894068926970283300899597897\
112048262612399707767662577983500705436257677889211088635230892038420890900703\
622329990640432325143171297103075653800445673382556173306740881486864787767533\
562370951603438962135334426244262009959866372033685803443308225513698569899840\
079336783685785379716967689734589340154360273160128925862778471297493205814431\
436121178214735731205115171838780850547834828635542648933470483186069361515276\
448138776308594255826230311767128959730297701961351204274356042135144910260340\
775797464859179412429239213384142721264204546846205616687797141175580167758621\
308011342738615107498147896057469391743237452921267246842544439827064535019892\
072050837923686200414858314876791308119688441096976760963785391160682264935778\
348739577086795448236628021878054484528030386306651087106614329414120328293236\
051882216742141340374959321321100514813456682057331852080335597706762755305826\
154469810694629302893574616450763191431684119048072999565913756341795560792648\
342831812511179044579227848371630083922402551322068387680669614080396618527730\
547914188203959248851205583323479981045328756985177083809292046878803619048763\
881729543901333850697294305117518134022380179967938823052308158228567471558701\
720096659194352226333233520520808150392199503389380468408488306471086417674799\
636825755192911639840687047831159794389959859935978765813816958001225479417225\
659116536787876914097576432578541305834805535332533193330065559259649040917632\
600098138842023543070243991843141785307974758119628986453618053379798242368260\
556992503411054109769979191643802589311418696060367928681510313044398419814674\
982279663158476822621768637596907923187094947131465618183528590258294607577102\
066820309315846385666417409097973591722241947884158119465142417741907069175293\
005123460548396868877178905144907746368879185986842347858426214726798241165426\
083053969955249383032177259366836113681645520681239041272353507313859853474717\
775903622091731514760322402067265543798174693603801135649593564766143056590094\
117437129114063343563007370319515185947847531717624801462983571563653807711727\
657329227924120007169474251793909555509896015656553402788576867851852676399885\
297965169682919596480140352328478347290763887167615159113276060353131568605557\
063813811890572761276978279540358182767695682074747932527475102038912585354712\
903572528549511224156904083940964746333473547613631505290283639517865176414325\
147126092738429319257000411424428007448880779341107766291316306613602539531865\
946567174245999296134368054573463486778779829463826025933617500284046049939059\
228957383183063740103664188039731762951794766124125490147415503586575315747161\
532193503261756024999105086060833460768250265911898115173110635551420117465161\
488925815825652441146924221095414613665847428642186443527699182540848965038340\
964603323299553413252861027868165146508767528855322654981585080099398304108613\
572710273186974592095377174489165662019952701206998334148376617362743704768719\
715845482769376664707067320902816158865040512914402091686627351356686324464044\
441278561810020846063125536553105031750239353527674917786981529784599337293943\
941454215462477165429006685549756584449172746792502759440206729556347133277334\
210146669878774037671221873007139177882934235253447592905325070391938170873404\
335622822672107173298059881895533888592038503444210877441934148028044317450605\
912820079317143582048457300975860204859111917784503669979448583437165010980900\
167689612923000582812964915191227745465548790361671455949196417975929860879149\
104484369332917607573405465397579364531321941309414524767983405123542934348994\
874626688182803131685490532126078228609381450793298636829555110613251276359050\
164942099344529799423468748175245300266552349306893033755302679495908919114771\
398771014118619895720786002295295076299496377037059623927571853508958729400613\
842883042669749692083008807924098692065357635663501736126901190730019471632579\
151127863243497295034429543228022219128241658240812038823370118896583435736243\
682610725933369309886732883032508654765016097231382912050514295662859054098881\
607335536619488067038642534900356323813138835965577965303968407699171675455372\
574447507285862879516676521861282896914314264547855183123089401505268295829583\
951741892511800761047063794220289570942384251430827678461932332476666610027709\
021649653370587349816993375801520420196542245263274720694809181588580075695830\
251557139594982889806395734016651943164447358870442831760270404725322205495456\
990436898630069791994553677543039770991671426076016321731386736455329300651251\
840059238544668218491723630506612633033937259481935634464120855306392141859287\
465743914899043257096914791603392277784462985340417924643894987606194999164651\
859797786745875774206963859859437379240675896891069331658776781561273896479592\
836780291509625539703157536846179689570645110020259036551209402665572892247771\
898983071301687845057390771659017040759094252116702741648902226160089696666582\
376399773007860523641637881999112558031022793120608311740234827786838181021181\
240245274198279579802111552743366807009739060033689913422395930870992044740166\
220517306612797078898913048498429785525163763787442960630090862028445184317498\
370647173173114030411013838197902790163007989805091518943270639082061311697059\
648213369992965041893038970095601576097744540975461917368674266797217285147830\
543539261789865290278137563926396349408512089999711076206026110447294560708248\
095546646341275877090891066975147251702819870910544957412753217305973730794479\
678910417862439128757234676829398457601428260780727553848787467489384479182236\
923797093065971252120878003145665557282679346231743207650104992588441979927199\
735771609223106545380776359416842338703911216714325369681046288312860890813320\
106180283149217534818648355798766073215584868701032640271379078075409884070737\
766208295709907211974001712063634025914251742474826767856901755503899796282299\
190080795072796936634662677564324848313973079538942139161713970205153498300227\
034666051233055940722173327068122589757986714074530506856015826631886374686222\
444521746415660681122669718041478303560875169950259099192894194765459443145432\
748793007143941045832559714855986594977015636594975497327226029483116382882391\
599531106083553983028235885159877654928055465260903846665618213891720027084101\
629845765215754597718110893742408673679700268054675459881837911025766085431049\
478185215657126542079463203402392961626850114028566117780797954126673890523668\
794088624793350984062095087981804408078234490193515317880467984784986327591370\
125660229417656416235763414191305655445664932144087497937994867373417204908663\
192310647560798893694677693357995072684208409922222088641156981563021809737662\
732894839004415420445235234871289481539019164694351013016660789731042417015812\
439619218512576833178423651958382672482042462946102498093480514000759053884455\
449665741385525161288337427231478581570239451014456543672642304357014555422909\
609239572078977794984222672742743872138455845701374447125350582217980480106639\
419552432257095543939205546973580022290282950484400608222108282689341104799491\
875128552551944865901872508715871410271867443603067448910672089667654007680408\
985825286879737253107849005013519040736366150143646617570497731228048129159057\
816578721736189527805297890215746731946644297122209552647332693762519806045727\
754504910820803371274190644736530065364367117512718126366055560825145973268156\
408463061582593071509089347831455163365243688632380300785951397188603002213483\
409696265818672894685824531621526933372848921998557662128874989152358409225033\
821127960128950676613053026946381614935046289340743882741443135268482147881345\
398014347730635684329133671795338942130732784943786309574179812163107496160466\
985176512184647599870572547323953001077185298923453808175558671585816641389794\
611210246095324275731312529663310915041169559855379223098926687260300232137361\
097021981374447442409984626651127952037084312745632132421392316764174051575266\
053539151828247876178253684526374300887731187989013116203584124442386016027201\
056704932871798276566659558226445780781350564994184354262076826360615589090976\
849918194206528569449367394026616620824660908890959600475854083532285573704591\
690150861740833290056204908030580509314096945686108956457200125193029292161480\
342045406965157307165414639116804440137186118437472353613350154370591065106010\
076786649345982524519706111194540659094169208686837434918913299784085863361456\
342741285841291958932639922909638456542555673877663276279309486187600710620894\
046236706248545318261995218979926173764670877412509281400275802809292046326358\
618560107962964349057636060358595279533705030263508943866490520040439084332371\
585620867260668678726278604902848484036287301124439482015029824574716874624557\
484976888676178372605970583127178338056778367753350492718693861404648643392609\
328841216866380436448530298817990797741939195821418513360320501540995140666772\
017499336866416171089440753755943110044026950084187621005153405602179604972562\
276895246882857851042931810372768042847633642719286253858494180632788204342914\
305838570403751448841648097908774526447182666617576897349371202851038349624773\
222132645885977313607509837938718866124348255444516330444026999974840108221333\
142013876853588187257603556608612687761489906308831881475926260174290593305889\
603084356201261413794507595511465472676661700388606038094828231103742072486708\
358011528204050430512134495083859583634990853990234226415282091300555853807714\
627338912862834437566177402274604588099180285249518292961307378681350277706879\
400096983964624949841964947197246173806962092255027401091631390566865323845330\
774110746049856727543009130325091378491340659348061652914606852282169750894299\
169596848130914472346818630728181341832932968042768458211478457010443364170565\
338115234319591039281309491075784531684648673567035082505162311425129455804845\
478759133748334357606182422170745908211829648741171843796230283777716190945131\
062872578274102758745803920584226581013386215965932161323547499861744619649876\
647792792017783624211372841350072931644673975413608498317113962922663040746844\
830296410963346043299996078382773607721033682471144510385435655510511787238759\
217816453563620743471648191290158588377986292647055895830678166547409664601716\
870258212195237911294059490840665744752189638442307667646661029369614401639137\
091025897285796230318617278633250564879554788821455458797325899155626728526657\
592836578146872857618344803472240219196807192583933454383859735071425167983503\
263864699349429356583820558114003258155647852429365933201595905401827798395269\
681095327788168695159795745742419245996087156127476571367938653588817075320846\
730925350712120105351293929499992116380498318153138398822579278388744412815620\
595138565573729921380378960610261849544040026142740967140661964022183985559880\
842382979170718482219239812636722540890370022650672062689514236579503824751434\
921681053719564828208764123456849447456497163398582910761603730671309202843589\
521735355653296361068929384154981368371044363628491629336589893905041177869186\
605738218239691715708457786401679284044126192338865209793469506241646485107460\
311331362282709096494747268388944197539101070989446557445937274616000323417233\
178259211538835306269077861664717197637772057042900436077468384807615694592703\
935580178728139677318970421540399710377268638359040656949819606572758044332945\
358491937010355719881886846999359878301098849886643037545254967699393929212330\
029564847458879890966864602263278126799924153461603218711546463125307992366281\
085695749408797412628535486035772834502176892152502377242292133995892801282014\
938945812423283387448611630634171058408567101726858303848323619284716282261700\
011885912226168853749121783852511260506992731480036037211318055705984068593109\
364407114606120506573894156880610058020990541271062565188550944076917416928935\
603796350341073153548572021714724831762482497917316738506921814650638885032031\
820681765469308350566872864245099926167455147052007181026692331519920038124468\
814371995427902936753094247135554648073350725755869179305824106635798265120980\
622862739593882248948305207319451734068019616627188742430860145212175731155813\
608763439332343460498426572079431174557940316035449936840214858368015604348191\
375294746343369434034517908495487321029926822915201000514576384972121301243821\
983907832945715115598523460300034975461963577355923079291235908105445118136965\
250444385145360942318061805510184202004243758132502849206459108622438714222967\
897816392625310817381417247869929567710453780019823718896385904496330005839143\
830233549287985917061605469659588598890799915168292146016821678117395904215637\
927723526198163695867572991717903751321796094433366524288429981502120607754998\
584880041768782789849384329515540968286758905083600109475161791370763941881129\
199500355553443583803455806141457992906975405397036916152791041742812908895101\
361763911986460302855688265557820481114152454073196322440235928760348659791969\
536050424946853491548219434201592394023284612911483729382521461347858708665503\
683010368719510107410932768693160941030838119963470987679271129895989772183187\
975563831415183603321027741864522263392271644572144910920218964250605798079825\
155399066547670058613762788091658060993887277841439173739027025974917863304255\
810568116218949923112322165840853890699484367943962344803735611133227479326214\
509507290576032873868707899127949604159021775227713419453535494855760857398094\
138890090151334323962747679508716603063623642490295903045833560763344030400397\
732736772130238703327143088157061355533059910668795055163419462680213846746154\
984826824600235127280795684628178989030843292774840677303089890129680936590100\
658774850818792031882955991409553270528282749744834264678439712582539430415956\
442574655979672584317919097030641361323339292866575291812206888172057449594271\
062117680076045500782290883037319477480028157004348616823906792408368612773765\
708021011704015162106516349889947500884274321165396631719683720397416397426933\
739275901866233970838894655008073165365416742680589116551533594683087419691347\
267149630487563760623373796370184194349270090445107854904208672704260697615311\
662528581075388846508628029608450995061928939913572970562406167670937275211299\
937804832367022248940873027663146330862186322362947859176750146961961180387064\
750050044108999160362816397013110524912739060539507310671153007101365961340485\
626396487968498094414419865242042336697906789012711845976649498439321795382329\
295077496133062187743901339720899331317660545445865873145540420983176142250865\
832691712872071214535489674933563843633651629633907972593828939173713492106682\
895249026005765182170585046452080612823326977063763201939122659653675629186181\
811586160753216589291483095546010591391397913140279195996312040465306706718183\
266268688834010182866927832470461394201649387509685527376447049516058242347326\
839184485087109366582716691020626620419206051439367299890615058047796398049565\
909122119792279455601562661007073384526103987511340806784774024476397987545709\
642255349383664412437767053571587750832745763196716712182278043820291315644439\
199580431480422690607487726360670385306957808559710208371927231888695274493999\
372426423564755337219328687027599706935195492724552291782639722702774633171289\
953376441924934421284769795054806841411613476524460801901713971032559683733543\
836992636371358605586911607413773675179856589333700507760120738182231178808719\
340776844504586581548378728880272284917113044501667488756600399925397908388050\
986223471488473762097192073568672808699633363009097293241829661980338834748469\
291394028795312418460539765414295572613380461613487806459227530462487781362249\
207000480697580824707304681761236256560886996408864025637747275374167329264725\
749564026870417501041603773081079501053593527297896735118770418189179650399811\
464047764537512948442425002150132400316108383242113368556157754240729443371616\
479506918097806619797028331842408844530682206205150626506114256471845794846662\
817037459223384253618674815149653447946315390148364755164136212733418302601612\
781910285703180981003662660680776729281247009245066422445701518500073219699698\
168353502568313334386529966110372461876724179274764774123340557505695814732529\
396566851118899598936396142682451601473986664975676383574184954457361344792287\
675801955107063890532000858983409374459073360716294843846658863978782357387036\
923498152639056005693713114953118870188505323351617284956746551097510315224808\
200255738844284377414376482760542681326669248187742759843776736166469022101741\
539349618588673370932227070133692349018928428045193646703407214555385741700175\
633554658074465549882715643009921729910511093431265187701773581714564650358827\
477405336696908572236221135241858536728402854393432265489700353970026872833864\
850935945300918456620962353549691007378859767371291419394136867102334727706166\
989795530039601891752117550743224528741920875299263443594027188486433483133142\
461503523326056182971035658871368643117334280105904133544934082705947297882584\
673079227795188126209079662380127596580373125111310167574183748681038768218419\
349949884005261025532257767533100662673560074152327909353556739248672757539369\
202947240087227319908827388614664635275185899034725075588759182306677048392679\
790246501785126791698705888088894903619150792134076030125773926466736207220874\
123175603290880693968049144307502370549550092597030431083388188330522040559126\
014474523573188893687822222454881333663280291656877223707712999540783736364705\
892509905946981199086052191964015515842855870674051124946030835312424974197773\
873948576291113453414873912284243547565566550663593849295371357489763317745970\
862370868334773013463747961822853131662438801323910209799106871672804224791530\
227428097889882273113598979470413283782793712951509005661174107778121468544618\
002873484822123784918544125087732465899956507947985133602696037645037591795264\
920427489263877428854010229803342700885324425342811446401368807484233041509797\
408117000700699261666888051603095974037526279163928862377380648872648984806470\
958899254471783624485149975829434834958837246348314556428544227762491294193518\
818918715293263482339881795130440512432372792147510384835054705230538329914036\
472345234449995416884445994756702394846485053762198882905328989699986839453431\
579111553550523650055225457675064783863664497866811597782224891524116231372310\
970072906745529182912076471926372609202163178547279573353703312781527587616383\
981013274236214428253581882400473179100010994822865883031390890007509697273662\
828178976206764465225099205184343521402172959432138551001715503577159160906140\
119634171869216908329608134244470111569367961692925300938734331429472946902321\
896412401837213473343473312337188867976874930973890169340356583017543019240988\
594138152761923080950471593451901067239870701338109880037396165837852867047447\
282013252768996349560990651027671953576125344424496053979450867239438029213319\
264629466433720005383743510070134730500474286883216460545125978510717171111716\
050366343674830173947755791645734302406466292168915536953192900898048518082751\
578224227767066546093296154852790094537448932013884880760631415905143511472847\
708728495346761273368018812020407652954127632583432294971404644573793954153241\
630046483933359854059070695820720389917559738398722150679687560519362041020081\
974757072205647642820939277169458165276458307891034552551357747368792500107305\
961379299972983667188933417529938762636131035963398513037282511575086099950338\
209599607129568108270609263037843161806618923187878399928358803370162952398374\
802573970398493965304952861482695094648738358981387699737392843108200262424695\
782144450704127386292886854048739903245944798431096351392990311217134984721566\
422426856371544308415027072033501133643087321166579821360058891377241571451851\
518482955055845446640801349790043134948808657096604365394007810293883567078631\
306198252943901754943414670916945010683272328120227537680716240209341231837702\
419521896343904965488300976043373037383930332915185431604393647372036268105454\
368274701597438371908652667741146177807770478735022150813887866917638496187673\
216598155333392059443183574994089670254569707474562500341064996846489047413143\
799026124994769858652443185975496247024538828254935762104470735591380216106075\
755046661676516582048936417401106732788133581461560319706367737294152307392299\
434713654984325045120910741075851164511711502473834146411339101312941775808082\
070626207633011835368938944363874322452702445356293575967942033145896228995373\
451455101963210380110910557467534724752455324250046541106603520818920117780525\
795860472910670626774086504297187564941705251320728312456730865489738536154889\
548041012889845024033643963533276125982270169833433819379971187861295743151646\
691557892454513772284662468155403218900934408386671564884670033447679601391336\
640786443985161581984580908718506135964100661597766687942426311406192763428995\
573366274041065703558275404235012383465663589234323561008273404439417042053771\
460305804181661974995505040213702714152248552147792737814906261372574549779421\
929399298681718486737454246867962313071719514946433330467076028729933791721003\
727482569122007160709004425486661724887773959633359657674230350811350287342542\
805092605699687399651843332348719901470741345885673380038092656948067354503594\
461246054094522033922358051168356022661157063042392155258107772182971492471276\
472794330118249655764485230565470849211045015996318484246677837853877796815615\
903935701846156386403843406463506614221888003278962758495569381684297069673107\
014870107593930990614247780315752995899899102634630262123310133618774384736029\
152411493139776423904193684757796696424942787496854443846938595308103815858477\
649305273605051021533859642236727735186586277156407670980831623856037204825458\
553674902306258986115991172038783419689254555282007055372283885681701038082279\
430245941221224043669944516714124162789845523880457125539044015391893810778758\
960097862665867302911876650896061293626175888685052575591468144917845479248581\
176724829766343447445551072416747265266068088749455960584660064194414068640493\
641896866030074484048026792981902385581256340722343316004488306777414973881334\
983743479319669769621091297661920426509617667842329123120574552538749890825836\
477295742847743137471808833692987869587959530164258456549760560457708752304535\
387202178486863505223507318262197840673704308061060902176875153654246314977020\
314477006513633648325062290446573318046753272318938312153648573502329738513535\
265248010181910446218850654065733500786358538016680787526758146653762986393029\
335662944943223535461118486342885405641596359826615733912338691307177337839646\
554596188451938094777917627299610715127631924994987909199540249945163792024615\
896113492821250581986162543948585804206825494729076271158044531029408609748664\
537182332097658726407624904374974140174530203699728026360315835761747000323224\
728149002442531763536212722154454461809307994963049469758762252168676031210478\
452801322143650296545801860338338693962933507467135421915138083489068197276072\
616568287493459240617443562511335075370023426169424234315998834356624005819693\
467174448964551162139868159979866033391828097493192321573393298562525184455314\
026910794594178491069479991909209729444329903113418965847823412121086742844225\
947335342682825266685437805486607118269657357155754960506531924962066924506182\
031739982947746023320582354865630668851675362720172686736342403060724839474536\
676554994408537909648039365387422520403056621445771594553613672088841592471170\
374383886183963655815390025476100568590893541194487288485696343781564307938554\
997960341185525463907885664906725511842013087421412480072204006495154396338824\
337243504316565759586272923189892067390650503614716198093493519291606408262367\
625122379259954994516471439355492259361742151424472287817127862348699001250036\
075239806809306607968293318827456475034764648378091769123505542309676651233918\
854376323732798752286538084244356884921431258843752450316309047426631710129211\
401859354187080304405790967565115852330585447822790821223357100192830334927836\
716209859896016682317035905953595165697452048683024311549543757992421812733597\
005496708167494598975001870512940971174426019431388352458098764604229137576703\
344297999806603591035070881098651026127638997194031346650244730093050112147491\
595213000137431560063825501486418855417974790066562806655611543129156825966067\
293254202871861960424015318207570937676003541911756856755530517372916868376389\
765347614459768563727947035393517718510225000269474321915206542117100820806722\
961545093346918655684498397714568729686041676969720749100318587404449188336156\
086822344317277058014293481541236990394337414794448851402238222170026876292322\
747528530663307265241421028067051062820116712448391212836710981571461511946413\
333803104782398650274191020122734956619958573442474141827002967121269243995512\
102972974468761495679897559094601403955687496292389165498397337392375837977250\
676435365791917595783048967739190028830081580975826394411475820955862175446844\
767525150037561327568354750353875685503572924834127723310311629271839149439504\
702309427735909362001717019898060738139637726974234161839085672284570662320431\
589939629836886603861508706227650631581263126842080451260762444437841079417117\
161267933636492977495503080309268879512115315675919082736884527916403126249469\
318520778149732286366084715445480746761045184648895836396997979354942515774944\
386516885268772816863491709607131536213971235745517631172513133384362746122806\
753003239369892717164971822931394006177592153991202304494717944123628505037362\
058920717588463102024383201732478048346800720762241479600516639364583035088973\
969585937054387977261936862991732350793057612282711298761431330475386240231719\
107934339969148398854386265509740663728744312740356917874076327113044986775677\
400232929385531401197821757247165485424309236980355864414473068564039551015901\
869062508175629649401356979809787292023275377739916315032160268415484535909298\
198866829989378079788556276079475179811814219005415926548573628987160199445183\
701804587172099420462967420402699439864792535779636563248669216784948131358943\
473336883175835325320547008768006972293950442129205862132075764218640637298268\
230767803624496341668702774681956769776451886602838999376516966061554455579291\
474456676665485588338225912335106380187828926580237477474035323185541433462789\
831170353479761302004711560937187665351300716941935538810427548389815499569698\
695806170739932275083180892276960057104568180229333180807766240042984840192133\
424780129418413728329001157164855983071239487629730647056108691022788049516956\
242674477111943009424723997912176544706760363902151412779732557963417308544572\
550338309126594156023558484802281258913513233907998742364788362160337284318234\
872861895611967621915879577917680828501980189981318388927845298333658309965554\
051573394900291315109176055463659527739618419677157613153180912319269509418742\
255942585323973965301722693348372027616255633191275560983101293301634444595464\
261960175355826768808184739972777809887607617163601539435909773468940128442593\
987853061137677311847044740653766852465434326865660635121739407078307384840844\
833955312772412538405540379917530932411174668853734937535378133865042035044437\
622975819851489903645863260732827391128618368295110580186406078803284646232258\
111611947195439691817301471059939438601061928413934820626331023570313576831090\
366105371785739891268015610118581281193512785343085860038120085630589257519653\
846310804241295943690262822273779091960700189688467022986396438587944727972900\
763501525600994126764227842337886408454254479514153579822028302780235418322750\
378981639144520225876488596247447544803221339913427508922413805522083911920613\
474671893765504506723536985231797145937733137404765904853973438766417329791829\
287980498666802714366694955751977386311792554127947764478533431542073318701896\
381013364309074169240323043026269415886804414986736122116445847383962719747614\
411425840007672911876622011190598380897649623056816536348764331969122951387508\
448579545375632431653064325693133761232941306368184388218478586562007906763574\
710202040467032841865129314006200438066443979182959442523720847127925988189067\
523954647158649346085237866862987729402751249055021892619376197133862294533646\
868312810588819536190016724609589437038557834068678014819103568098744970618892\
076748202264625458509170589254910209230006920078264693708351069941681361443098\
290706172694914152850805270163678811632812455445398663743776037349814314408050\
399448588975752687266564502983519600643080856300093114969829919609089822947079\
612058015900342378491691556079185294939070324475151060453919373098517530394173\
028191547802360630410611271350997472651441027584818528451773716845749816938135\
140555745125811576772698561998487810716316546058770175850348721770309265122336\
908298691262461000995155571548069788450872768920097934534553710439160625648380\
794390358375427695037055714971414154080610361054171469253065963932124179643195\
146259186458532764752489148574485543971777130532440117594412532251124044153163\
043982667421538017963198414985768209969322314424383334648526841152228676605772\
381658967691363356872200632614295297584660761912341428873069999486335910940859\
577679055279947989824664171529822512529805749683922821779612946976861231457776\
622743979668042639881436846518867935111543142773275779904774449793995460638954\
177326004489841367152960302724075281680796225926989768732184155134257829377700\
647860312233926814290103066378035218232497451288758662597851824251592281283249\
584395966496454212433674695288118910982354051948701874290202420920760357477258\
268111465052419111823261467063304664028585142569412921737170869447363118786447\
241307537140057469687163707811684602995596556919395719837233341567693979743962\
910104472156933399246498900492956158867875073812956640724880720549350311905761\
060548561179311947450414877763656060152364625011352776521047888671529265552998\
325871597027201411841398584224131090674580836124822675124192062551012154034467\
020939564555666789597880690950748600128091010850646129665103673319933586674503\
900986511290504548997155269124856205182067359229898656511585892249734626862464\
562203377678311074047571350643003442581309976804202793132077856448224195675066\
355089699698617046494786560105778737895102715739166986654848013446704399816742\
759763376770808149531802907259344954201354931451989566590428176327780458222604\
572560064523812726633564114061140397412298059051473590131760867986447071163324\
887093604140393718290186988171975592543193236716452412364104298826188027588963\
624340069641503749863723462346912458240804882238791350859746011543658156514965\
932857304997948659601719732859002376583358757814912340713952785615243580184833\
582066035123386987299203933697527499796416043220887345001894634471157979663928\
987918203582030018198989545294391608904918434289018061814235101765921718129262\
781830309351877049548171976573638011488228252486036532780507674008187043011210\
691218515237038685205627451636770720959853376994594210165372137152052218946110\
811285820561337842383243831198178344833970176907773096823729772384457724075493\
858765952738151168865685945535082846947087446538941791533489250948445870129718\
773805159047596039823679897716989117386694111166916901400105889473128649261339\
521314437410659414176113176814922395249478388565349940247299116965786236604628\
213916657714070755099858781996280433449306936101279220941383679482772357517609\
249289146356567861745027679711974771560599727098011356805570285878923488648152\
549988511410728865744153442074317778878873787064032832608177396182325181758132\
142321480441040476858684307298862082418026921921524890263289052282361798736354\
721847388861762478636046311153059185650086916433098927925684569532503245113611\
318318655541999988639226962571207176748852037328745508655931793644058479623658\
313029885765937972879351387576209273012097385053399358252615831918883587968137\
089449074064242980494118741130977862288910210020898369233015857380230852884808\
172767379003963322918315204630600222974684498496246845110502474976922219695144\
617161715408745001705717023733979433161995483184119218561056978371574678773470\
288993530512929814233087845318520717244632172712968068968641189006667072095558\
473128784573835269385708314161816310645385236315380852119360839489233198791202\
767215808209481564574935452784358344521947403989203199420088026318204037159262\
573067619219231437364004627548316758362977643141437580693935860086659294832539\
570292420141130526387011576290955226739524826975842768074564927609090305837799\
366753297801937345123644969615542451161811363784336563104752441860091093026388\
210396619018215336978002088301329665928383093032230513358725656909659248258270\
830478169060285726428870826253339041802545091569540544112301373592157303305777\
568132387692669854825836387193907357882892053603665872143976094313349094559741\
519311099863986584893444673960284266847289046842967974849289127341036111163989\
508569232947007980933095585874723379768709431423791074618782709001839205351431\
649898619596193877978028190005584405063678730194382733430732750283369370731082\
038488752574452220633136583299028718768319674364540011605903552030966546914237\
610024721065953996427797668546237010382223525700798993543823130304278847569698\
801671770588184496581885593991307899214395698910451412516047403789854253982060\
065248196907498547946319750179355043906360287008575724102234612263101708530136\
979780068449907117454946308761889556821925225099846700178806842168908123624600\
222077775047459712017126293067167816680710549778351919199165532825948777937625\
115891689811469633277252040287141006405871853445985777479536780343070904098610\
007340546616743984224101606269389047697920987910862423579498742484839859242390\
196614623673495954837734199467182700522547984062750203224415152134852670460478\
420525287020643116613765893418356273342994175310159812579935966571396372496918\
272762470522707947728729666483126221868117072905851625981873881656839622188078\
751174897304486960037756905731409015184378509549466840963416985515987186024212\
150379078355663888049403476405169113128405595741228774265572474241326086213420\
728086302750002700450100823111690324500707926162833107567462458063353007848437\
915497019106791925700067993781792399544454170300382142257660623226675670325837\
672967582088847017625344673917244906758984694731903722159724315501146291330555\
614001105372743768151383786825940835029185932684075810613429030887874623253207\
669655005967828651393810144140432070438629972482397772525624283082668915734052\
158982677903513557448138483721765649540898175431678708238444611975784429681178\
526799036473453480130507062475909857986929955866496347966744730666710091665764\
122580337052360251273480034397025930134904355226874717337079274123021307226504\
045351154803066774717196522963204527891055934939054301295263040089167801550678\
262749580204697818864326384826343981067023965073750787101717786820975782498546\
886359766457424835559293941331944100252408761624909282731036899529677716230188\
798761530278848047554934562599010462593005514759695036400462948770626259311436\
483412897167584834862017739681744212164051204255776637684618726487367209852266\
076087904349672265404240110679430035659545984813639227786156837453465720613513\
628182056625030335902493244916456058823818620730303904948368868944659955722315\
543512917423463235372436364582557852328718123625177303034377932977813226939691\
527898848267258776919528828372663070212015063046463171776884937096155779310247\
447871016183684056242872210729430259341215719094035797622275018494103493262476\
373901257234819036324761022191267433845374677534468035811062446491908661130680\
541987670301261295646223205418058010040726291011437413869911844955339597049908\
831827728017421926097797943856486468314968025283574261703339838205584281166354\
845645018438781079052303807155969763774347488066598729730683427810832382324517\
688371233518456834023025971579181396005719258882723187485484764995864066623767\
535388162355192158681446051112257497550129056278614965133441349874122287238540\
007877085245436549651164664314096823538400357474745176872037443478777693206342\
100150992722896094699678177922855268163680176152501014678719881770012007918607\
082588507304208294775840359844316544210628475154071000854624083034777745074752\
846523311770697223321866436270610571602762345064275405684969796992802569320260\
165561408836712448561138580977046779503835825343389248453931805634416819787796\
501635309280507383485675956634064807167100725587216584914159847174498881354715\
937025494215073674360791254983342664406779961720898012807806036698330773158216\
472112507034889083627940511932923367729105655660366281165691603487375785400339\
662156691545519736712615801361733796515001700660822328682743120484747207529023\
408268754571442006670858747369249155896476393410562637480808633855389464890109\
032329262841400804891257502750490701011036218589809586799085052607953619523292\
089342141494410189191818787673790713690088940151435254748477862635326516425413\
469314655831530673571465379324097415381271125986850823878684890356330468494930\
862407638403770421922409063993593506331431327937168775919399530028844589384153\
696954498296473402612031343219375125233823403121303667336601871175166275897071\
702441256853334132510970382415970198253154676567625111846111788676039218040951\
772126428201732756272972251242077219381924038268670015309369322939870793996325\
085686677717137987092665801121000447507223241387728652628022860416888452838831\
619081912403226063089150226298943548432826782707056537474589513961054117223679\
256685513648909396629750732984103987807192885604343895776270099677899715697508\
317063788967096001268485732316742435697655506431526233580503824346868758467007\
943425327590820709438169938685098258562438796468908435390460708971476616659328\
675273420247289290232703910621950880537614897912136450241613915563283938920711\
436991827864247667697522719485180975319708714296385800083266488696993541135944\
734685622619320794789233257691804152065193829359470734362104600948451161459665\
480542048986433869359618289759982658050323165186268418907831838035980362350689\
055729294115474614058361961712539191931487488389468836880876478619113982005011\
763451047455655435374632721847187806040188952732723093945746898297294489470091\
527587424764700221113564052390347616616265064326394015663675486048610976004078\
039721265615003406014232393455971663958124728023175666925237869056799935966030\
383086861814353829757121666109962908942234395785997049282064639119125028105370\
881091616962082071535167791441978437652906498871412073457357879548462850957786\
006300032865326303395384013261459499985016164296241769250203388281539177708648\
276121634581691505486791838032711427540447185920497967464136660799062740393597\
980599252042057852295960690974621753097490468559418470011471129446154046512966\
555184499654216313415259238529246306953740150970518465963493926588219368563554\
880469867603091250514805705005841049379211196280453216989781784647677379195546\
270599015898116590373033699935838938413352728652873059660846921727648691161950\
736092869207406856468894787997675510943849394352491112077530751203851730917108\
914358540032872996368812999136430416488513017303450835715789716428310514971969\
986286444997242535074887160454726788372433642204378167751473757979103686463900\
432292147620503777232106436757979081511352000101814908954433225373083530266955\
612482078726626171218633669440705641254547497353914213522291220463107479913382\
445830077370699472781235881929208477597941092025000122366872930480692368055466\
699754537218777464371953444983761366737501695246762266021923895703989065626665\
832104496785785623025765997353553343633270884246176352489825449649563558983923\
822497680517621666834796963794683911526594252255869014180948003176125973433572\
756670052055747006828952132041412483375697661298313823474304029113512635658766\
729392428255689054638769094260781622295894691917469919661331596041476663617689\
480696246668566164850210284808504166405028502270361112145928120825190302784932\
479681647659684243412655154727156793464867463806936033441179683125345805616463\
134902358073860687920831640609070512961269775529577821373645679998852009614929\
692343785755464363244073278193678878682168471990025152253885684611362432382823\
925705790039230352492649414274411604090639707114802042299345921693074149349348\
474944302405163383819725523636181718714991857154507128179514405192663754527204\
748243650469173621297316662722454124407442591913713491647841331339027963586057\
632644926078591787178157057840282802456657717768871305818114609407966413268416\
982345935510616747151235870427195076345738887488993102516619911057644853939293\
021206129651736519476608180806085099854540183290699555797063861513830651186664\
337642985571828608581875618219871073356652093680744955337183815106508333425567\
008304976149160679227024807046461128015193533908297779871864673908386483928944\
153567995009088590717615509470538390707999331554540764250665767226726468597373\
278536053956735941283716225743266990096970128398536958772066953429800553911398\
009198580636974935007161305630717194804958897686787628949100556977440334901304\
967819521682595463015741659442813929161880371942310767364466533229265593867709\
278314509239043538461710160991389616404630797126042934254669952996277895858835\
919297667244823638417619084152730878079734324892072181577496273914970579844243\
301374589952144090639504265553254460561470917441847551349832563037996573231348\
589730190689857019071678729147121133539596454909933045335772048486838856066977\
225482034261219512642176910502496798957282463537905943461775328975948022365405\
776379648954821344648155010232324429386382028393511762111392001059881226642706\
323888027336943759383281489409697100412902539450729534582966718817720224548990\
079073145467878865540280428151729179517352595636089729247702603274952741898248\
542704957466045155922080937897726318456236856337985624947229260551089049406590\
891950549767807264912024139075074338050611338392539018082856336015303852888743\
002979595700951258633091249167412488107416739534239265528591879866793800573537\
938116045062551689793204472550897766712309583637873203531789264847889963575011\
107785291087837197670589039278946552263408305565355073865467433307170466418594\
950637777044323086309160195154985098666035332669147104151206636307554032085259\
386703636298115426640574442810317024933579524026091840754829522914306874639729\
963535443231789326819773069665784651898116354021285849575193417297398777965509\
498276252965124590998512993141982429928929005057331098296105254151231139995001\
134569701168469090081930954763357026634073805469571360470267181544230479800845\
162034157168515292881153723449671929567756017851910976343296903206048358226728\
914023431657836953413994057846148867820533980400377766852227694100013386575594\
592348512150989246634318503756279195948815736977381001774561115969407491932132\
346888617717611945737033210521991861828568305903225629136073166419714456630844\
110354293637308918305548471585996401934933239709409995905158718579480842366819\
926744107130426544111057047655723200808980260621676701857527544332437898443074\
359299570306093610196374122757436235882294650713381868198029156182270604775330\
152106342392970701304413759627287714420433747395462625077628101390986991580679\
801845471442658364515472651156662024807469601958422446545859143732205809116667\
666140016906659934876220513037732700629427124907122966975489674442540916795685\
348641345324994460958121737140018507364841499637624754713236749237897783192820\
694042744662092019512235752499632360993070090669973678722877322030095615528711\
700539905928335982927606289433106637538162538163112073201147471744847922472463\
283258027827254137030589609432021174878962894868523225043768349442021442639268\
505992642645486462357638965542511400879507833897374080799369674326959564595608\
918209962609547536996430991030587608191229405978195361169386978748467079518648\
407063389989143737257497101048258174494198723415714347354936087763996693434214\
715784456991088272611661519329909322906513785423951275228152199507180314670108\
326784041990439240534235285413709129616596699351895018321735039710104154765511\
372095200614329545710025275922386892056150909952649260194296650934513794020017\
376657837804329081666287490505224884150172229841361522064706906721503944252693\
798061634055451436536350191088277043505048411468272627845636909988966926675510\
086076962526326917305525424203647010899618638896587671701271936798533876470764\
775278803163214621167914211171016001137994838220105220412131313794509880572779\
604972545133965506742651649760466415898999513161217359562079755376097857842449\
729313363727066815205219437576508126353166479884749270426948511226666818803056\
152438498857901043271383156381426507151435324492125541740604499082523065631349\
904279401875438794296787933576399845835321328083108071226009450990626628015080\
176902180027570414599008310080297930424508466318832390558053039392322028116986\
513849617106665998644804474758013024473229827657636969298839696022157481867115\
783278669946129015344356925761349379653868850951702159048034855755506136501327\
431228980056507334979681666067240275034191612467272334129293102716727462314956\
561327826386470650060327817849843242956944154991703279687090859756657679119716\
954300350406385126256464872017494626824005039821376031549975566431269309205484\
111370556723267665028550212928525344396047193859958500437271555869558071929561\
543933263930289158580266384973096723018586212135892556990201067398188007582783\
337415995171403418285394675341728406827799917244049632895927231653824046270718\
693550482664206676414845800000629573292359588144994622580820662799302215900353\
744118317756266914245987504576116749662800756333156983125573559248536581539247\
456294138330338347913946362843051097692052234234830727543811545736822578141224\
270669114282712021459157277594847882092452335774396881448648388073575368306459\
658304434635577405658201916347360943182314593583246822655804399924884939615135\
665064870916855134688974755292815189664366518401547734361579705315259419107882\
563674836702000927505638779437355307990065729514869989217746556689366136498596\
639810133499827072398063265025425311035554126525429785952216235810612990972461\
986074609390720251301285460947236782724666020921031085607668119199252649399824\
142433654306702537258692410341417860050095237475055676317652308615178561774430\
320381996658788311627419092516449499884080524798271287910367252043832967730817\
186614441874058919233621560212961049327150796548236770860045140654162835617032\
725895716793763765879194998823538751523243594835981923847008924787222341526202\
599856885925753948945464466214982139449537059084089474437942978414406285460991\
846806929017896361671746435569800687607937114270889045740572927862857621081548\
725829746804396204206772081480165887157859206684740314198639334407344485434215\
640458855758652324114534092375444102632891608325679854405531059445494674430419\
890736129996687114999890587584642580432081704530535961518541052928141531033567\
277924591520822922429912399156684466369725914698629636633703496384740253818548\
826282897154523757172011470356422553606900790508972954822575754240883153467440\
098890262761667851679309728008108093480909367355869621826866883285038580371937\
123000106419791713770397103998479900788171971361327381965114467770484920596933\
245372161173889153287871581373014801568032076867001248039507526130394840067992\
213402200266001835089532538739852901345820945724814263272348838670047216430369\
222947482493280445374821114093093280525231986571950340042048932352363257446732\
695055552107387225979106458501099122567487119383991262384789003292385168732777\
434337355398658544061756267056253080556125741461123436455727725704879480964986\
459494938532651627212588060973832102356394422766313677850857271602639769234175\
178951983994419235133136865794997689988685030064106599972383377670704986650868\
736224183839447597246965701574904567340184961934650604343142332318385206558875\
178339295575794675395931975003302496426063115671767220504057915483616192599884\
509989234948825315205265648131091708689451743772595899237199809842414922081286\
607371888860623058447709450410547189893295936476745993097219532603592061390504\
164161739681269347836057179319733725801001961974975478135029574152945221514924\
510015125970156352398333432649055108835196875976283943142702488505183210979203\
983924329597224214710430761505024997464180364908786709309142328248652414635973\
715760192558873342948666507670196834972298009969119606126715712789390209269008\
625723676747810742273854520428166669811382339288518535763427138788156205054172\
212855002276700764576876401674749856037972843267704282478125992941046303098718\
789698481295002247271262764755940531481497078429026471229512660730743378520619\
009963443330153128611653702743261365663789495806773928921036179037654766267491\
723730109045007733184787551071361609623632827505468875972351468426473624966880\
485915376742286065440554190809345475702288779734501138851169574286740757929698\
474255222903877480040238862565954745112426406482287718309584041071902946350272\
894323742413768206932989092229036182252770724978945602587505117469053808651679\
996397065631155699706856781641073010197435107510424272891145337733416110145700\
519819018636715367242199144821973799432464643947431816073441526642649863316674\
333178456279579910075723019979421384648332577156743477154461661606099981523172\
691401203835136923951963866031567942939952923058812101617184267395865485019248\
239996988821611246742950984317478841545878408831996662976420936597520529001285\
950398838376677227623971204196036585997039782716060527689519685087805269982294\
289154606901845761194859920961055227187365821360562123984909810158811018863533\
797177974340474330506511104544644185591253569796091827945915691074360781689528\
473021581865975690659762204782940788675594379391278048815665479930889129751233\
192329114542460086303153758076929462286985737313847188581534775238611370775501\
179480616851703743465830894683814557799625418226224247216732415459306817889020\
491705377531260946305453775917287253110717641980992264087260850963939428713418\
207129431475817103505464941049028047175046667846035712944325205298109777846230\
137649106400542186795827745008645307443311737155398000642920658545835325221638\
193192111134994823334676851905784736340109874446156789038800016633151254588081\
473170752620811251084193863161878595256073105893848310672665188351628577956766\
985423049530431322168241599790881264236641618917163153970828310648059565471013\
514925104308297904130350622871047233309527894384996615923431252202101735445995\
234460767439816607803946483548498121841020140789831524355579840248275131413098\
188701096238829794250987651657841111768417734510525490175918885209275960140725\
254053195877867220163664750987174920057593351685575874147623674008084037006175\
127913185636114204513685862817328956571417999574790174263589146739181545631359\
068090479905818802239267761708716227705384756075491050614016867608570496936216\
330141197678254834572871988259462003552546628510934751512138636294106241643761\
003008552082707347429750438494018472554450504206505291998227106460550138895671\
202507774109998980869685582420809610249981781647751997201570470620521388559181\
920007857308274735783588549594719240534380882622194322690810727729942390375012\
043395414317598104072540175153350925601733171102588304904779742705961142912862\
594762956280587729216602972572991425308671049363173742721435732567844259838722\
872998128619786278357709526330204115271667500628335457889087509786474895261513\
450304759189900000410554022007542273094055509102306568466312098975203044170483\
002250975522117901968210356226138796601982031290716432040549756244604841591173\
358938211341010722870785496438662460116071688799746473775383193557725628913450\
751110514147181240768441960848250412984881988822048388629228750864688885171267\
199077493388631663134078545461716638068191739396952464315216672242558446196549\
628755209079485952069793335006289942794600965612654067867896824298335924787210\
787784932816302566416788533486058713186046911991376025527882897705418297615766\
196685354228401066714232488748480452216156654214409484075051195577480690786109\
596769909004653556432167213075147743643636650126680646376062873640177767129467\
963960296441847242240179023431819352439466704760344790780689216424814188403912\
240753429943905581348383975907412140829294011310870783990018088143811018182945\
514263495065559231127800966080865055055227467937363545843088428363396762239841\
814409512763135141745410075122889497411298320256840633089221147661200939940681\
068186842577681542030777827573959506930724919690202068577223859182928519543070\
344644696796589529059509408792099511404883619774254199236480493283030215817831\
963346697813993654232555283910272587810942588781074896132627532295082410302433\
702975745108154767484077239326363643356317359581473959268823055216373352169284\
569522059389942883730859723239194454323487404963339374427267669504675615675297\
542866569736215547580842453082708137724609415954798802682860097008646043297274\
502347390810980490730414979953139501980176788747398037364677744797883362879140\
628661982619050730384444521825678303843442710590138390976291592555221311470470\
029399861778517900965455968860417523444698589119207022774596393771662748687953\
891530935860664835493346661017834775287260074920114192078002399500276518682616\
152559365030973762931455436022006229391378379285085262784709630399479841881706\
316514405266190321121318133171438715161892411431793241651732138220172813157344\
584155709646778255406119979230690216289536743854443469735398282068472399734018\
128347772082654493465636022542131529434027057901995053780958866110228889381382\
506888118763557802494180382571960790541653160833704465036834002121489289458490\
214979760756097104076147094711668465235354554787715454348518034902264713406875\
187475818889189216458483052660397063749680589769830894987142326809608488649366\
962208768839772943446634386655668700770853735911736834574071508694248987620475\
456517297585940185827833372697291462640624796059989571708846766424421539650776\
344696043529224526915185375332688929829969710422935852917817590704056051416609\
302848953795405576140940637723115898971176995244029116601669898900821477044030\
948094124896637052225056549451737476239478946902973547546375571078643318584398\
761974259378313984965324443509164242464246394475696322486920357888671627758414\
787992205811562556713515840206377266789166424156612967249444971498960544729485\
292054303466921260014379245360847667899428942350712581947210710400184423893837\
674717578109762590468848556308876669226770883714052924904516617705739089218171\
208218622901922848287103062442700534129806867070790085095657763530551678967431\
975824248677408773048503996036645880626175866875723380895370701743139157090735\
840918309988349183938231249245761904528789408053771680121263068714889600170258\
203587078021436120505012755204959201530631469635208894247263078211608549327298\
754857766779184707972380636524169326429432135271806701185801067285246939699322\
582641263429395768337258721991332995296792183663233638522729166583812275882754\
740958737366749920623030495986632681472674462860404398512884272610755635329510\
114735068606107536314477514051323326211282240991302739572004728993286169671943\
074170461048142642372135021482595940703169506104809814729043169163638463021558\
445643414956883999618081461774708285907301029402460503168380334803655172595923\
049548680994854127344892994560895242713131170102729341884306283645896092343652\
244142144329524633915656446405475012347781992724099654692154614992577683584532\
099988921131985006037113201075137850243407296584545302654202643925728294060200\
603219807864213769023780551045477676425339312654157973529064632080166142408037\
471267238439134792043016358706317545942791876262796646252767387562239014169240\
570770201992532993499647623246833900967630248288531037547808809447834787662642\
584675668037354347912162683976327219650234404808368501142119997181836974318489\
650891579259744402137865964593734625391041359500697946262944360267482080804607\
245239821120384655229355320460997690914012564950639028961806699538294496033673\
057202971760360872333076921002143420901428973691568645883729367141722991860488\
647221951953843369454665762699025570741597737926659218401506442377186848586256\
826746474196803158697644482951232761802836355911993127934073469432872970630734\
670483912170299733258332178884693946373947367817921343673299137878318052698705\
127246372802974153734071325397738177510897392219630521652369082280651666228325\
118361924179026411486872821187989931059778050772847880949133265388872201561900\
121224385527180721577113388616880447143995112545656968969689421012413831543570\
263383267405940067289403221915457195325301668483310917648941851563602946225483\
886667653306330640483844674732463732736377706800972448118261315488399018031402\
042765700130405058388582438943364196223192058390359551645362640852677877845930\
410608578729858138059254428239958353744205012928213885130697195404991822120839\
671451682497835672832746996293662681874196285285146269801991659613777865371783\
599193916060969510237250467236750088476758588727075225010035293404113491504602\
802743513086998395534226779570880321856899986657952598503321496335421490189828\
718435215667896883137735479237707577376718860637102245577443400389015655585623\
351564289489305683758472676426317330421185439125414599892055513742692599376517\
505913474630598680037882039242495126193995998561320069999814466239492833219590\
559857132439453242762107838675145051944444912470547264656499591800252455074766\
338286649572502911669023474353538055572041301909937706362499652904468225629506\
242549530076635195671034739693976520022691853353553451603459893132119095868038\
375753196275813490456923567171540658641848633825515842164769581995318286820099\
505633710382624365187631250178421452637841155367239319186565223957057145186055\
265580238917410174486367446172546550873536482231912135416192056166167018168062\
876347061816755974334629383128855574302613002740518596456671003290644779688719\
686379379188562414484519237878092365809904683734360031273671608536015025770906\
077818280052716779901370341830370484464868318728488538662483019588021161344833\
376945914922149309509673909888497554070558402798670318195769065917877680750196\
418957330078083741085688277570619744113727660653421893078997235434168539457271\
562872347058404877086509436225146888158828050275122572720138746588471709231287\
225292906876873386136845549536465058036811432492668542284002993952712108152691\
150298250492185617530742365404911302854639456465780726773104970504962123784192\
637297699467571221265432194250973310839984918449296809606846751376194833325248\
419579117211107763323871378743020532443187064432542750431544749819436665028798\
539490827657119638651631029974102061607577529269301520408072337125200647211077\
718240477763710508670789020525600325567506135116443447543946893691420929131882\
587508231186223498464009242572615668096653330639132163348246158687038533200040\
769861799107715039160252557284900663140686346429425727434206744596677986640204\
994655257252199414493977255130561647240187718791142025268611987104488720222295\
596665869847689874544044154729149089502787073771271090968811764349906952995834\
296587358666254452973612055677282546626766569047368292887385535033576890845652\
461502701335250583100771610833169413137759706811674895403368337685226587151450\
235929907641496849487737897779226141064435615032628934916471959982295634334623\
677800991827299072711228603954230527598834070599250423952173231764098901613379\
287325901791743498005683309273794565730675929769172783514579726143079401261563\
596464094841435709928212820033284142189106248003174883204148482509048385495488\
951438382192130532271215542911171730233151596737581766985892601975558089773308\
183232210926777971463248660470446528964382655324527357898348539733426503702078\
875080510320205635161265517402718497880365818953332349450848595167110487000089\
452034374095551727589229513034657103253131044887245710375414737389051648879978\
470607674741621887086609326841283305376823102287159596280197575385942265427523\
557444680397738483545327564195497943621114231548559244763921024659824301593102\
208017852213179490870058803784289008014340737645622488977227513910508838410540\
019697358999259634368527211490119963107457727713312029392352638704333592413158\
987847958238674382888922975924368462702078220888162260892614739764709876097928\
333192637889630686280852751597641363051426704455864170541549746205939126643975\
590677630609741989748791770743077474725113664552973745967675851138440414894736\
690916421481694237640395703847202990436606582830770241885626949993207025431085\
953482043357421191175703062207533454623380918550314539387847044107149292298144\
396508714250001501107756470430233965401860835075817586652097280976300052193122\
691368316326072662149351479497882642782515841142553009849669907897843153669778\
007974077324455133797222423939491317195358236586629341527687637706632260234978\
781257560006092305423063732666535587387406992871541121919367463405647778861807\
937705004463700959597181418229020597418274377391200381440209726047439137876328\
234902700332649265859286491478066867846036807031007615627962336011292410705011\
307239409910759745089513263133632030394071701995016162329672576322927642942354\
538468171071652876632019963408375664832755212513121302471640084716559779955706\
664823893226261970984624038081533870917464739296312814006687048830388125781848\
930304141696167370625302539702097568423358361828123873369491181524204029872216\
424210003940689846462226149396085337775010179308848052561547607622414516559883\
876588941635385010372785826776168234665401386327387752721792377144572131170921\
685800552771672874207522864102230762671340713007060333356105427691213268302043\
490452696735468887064029980080560023629439720643720042052915557439357308798290\
804590886017433924361104669927793465081145359237001914947891246913685777010988\
406178185646141880387318385626975034116570980959265834730547192817603981104576\
959000897712927531046576560224079531367202338485239067352007186703253168304979\
132317503778562374913512922675045276424227442769528695378808685194692241260675\
047977311936962802386803810204863525226345920411547725853920012341666350539690\
195514419436534861555898210899603023243479007629628032561483246870841445060472\
829579107758383206801486820474314983197248752519017904414226089718732461803215\
785877921450885926278848133702958949457629014952512222400937681286584139619735\
761081540632333567322748692928664993745102987722287919108741560651250661594852\
949870523980808700485575734388878659709201645907651937594509132168064099922584\
916575266287544053812902301244305889218281319688882678566076254240845550664161\
711712711732466723445264512152115267430760375888829784474281037790403832197432\
776288083317679342016523620974536491287917146468658937957151415034541599953929\
008822483688745076336226413194336954844200743237746350349577760259687378997113\
867267535292420559308618302687848050032226577561004832739225257759282592892332\
063365912607521253806019332314007976126489128282022191964859993825330767239062\
441482612058813372451885422480031767476740110658541342829899002494069666064272\
930889766252723268707372518265204205432251158697714021016651964165360969713555\
525001367079511483677743383691917906325829881077834606397711710940002805086192\
667301258539588438189885999987309944114159232843740722723866206824754722212862\
647529951303808913721227120897637121683485208143560578454731795443452694460806\
948171610206262989149485895517234380365571084668370720136235377463666494951258\
370959377741981824730018876923354224871729787113614894819339105128319340299148\
110654339361174643218824163003639414191320970813951099626625700955130955580904\
518190204657949933372735781800421482871799722301064342535496885986519357041707\
399085589503425588608042460588077699625645855280567057197179961267528263528328\
160609360874384212632534125789981982118210183476851521374842605290750790000784\
375545998909391567188095777296225015088069889746127130121580914987788362597362\
448756191427350522621337714931130379928136304406217214605105416932539905204319\
341331693731408806642523421580851963394959182449091422558597664777293946948918\
684024369545600699882594648246055656409779929792659608690812440871746008479045\
330320502610392676391601193080811580132061211805000717589922980181411292115292\
429733741677629960237751234559354584383897242402089018595093951619308294320934\
860842585812332047483828283113583114607816403697360938235972282387234324622787\
072555403729092984423262420650890706111681261261052309281217338945344690416274\
668445686491907509502429872135091394865054175329918303949145646201823483270229\
074835138524863002136256620521655991983490085268864105223424592481384583855984\
550085917103031236957821739342554752111700923450695064770581400258142348532053\
279335587014806847239203918596239145392784496982992849999476744973321446322036\
896975288259993346502366312900662649632259652359780615856310313375713468865866\
820106224677918438365863174544278034790863834903138815984779045633485800701433\
081918456331898792952510154088047379199747805800990274647645513012278318348861\
550359905598288371169859877725989997074948952870320595249252551129506022976653\
450074183314886371073463686714263924613714418821279965982977418266787058207424\
531962852790487981413329691674505146962360494433552058722555036704172570434508\
101996434567364197808321467890439649796489825683663051018603873234203252866598\
771203697740114073842986552859652795222748914827765147520623821802883669933118\
884024590709018049606998118333534057727535191923412826278322992588458655639153\
901659816706105944622377978514102819989967426776416764599739332038623419702690\
747714249707812713667736376210045114006722145274894194296483596245413017388898\
825358780969555843751571702220663059914659832884377072554941639758696339533238\
394269216373454460210669018678165973602845092396087166534516908693049046844311\
338156767939271565595850240442909709806638598976097947691512354003451652441137\
534106901304382469497506958806139482063892682293798425018768134280889110347622\
208265904285798553607732179041154479742375546602833683364881513914387324567327\
711959586338383837064248539246203671948502905976157212230411885423574241436742\
665461313776615575418012087017909826013435738802948548715318684461824110921131\
202474821193903977830512385880633478127688664800695908487494020260854708880565\
340680374133459661840420330974744506808330424890379113022072766987901747716221\
613023283392717315962937023548093771638056071806639505048035505549463214849424\
277069644920382811725285241790597039918661981829768653777458196144283116293322\
159095989348316720492633501392333166476441545933255028533061193134279488883242\
265877289273138694587444516041469794897670324150704497693425629755639185989878\
580855940827470891990486082624913245130503840902769876164802514900887482479170\
018570081112571452776332359025454523765276854960195773172908398285986786259259\
736032314501955289130665081698929062304586220697539257483361489153114776002920\
169637868152682485056402033414697910387353571602691310887573190102465988660097\
825938230732222642605227093960077465195503521827190410456123861307555980987154\
324522392607828318852513806841057282127093181252552349784483261197944174926535\
599901683603474946660087864097452624014866396675892578489082600409406043097713\
712437779360855245791173617714184494620244104339436077102192176373630943701058\
002575169341949042931729125696484087274485633060308599389552577677879610494683\
178255353523272515983867001056470547958527248087665954073048634322909352821361\
949790781092554474402538919465892580965572100161335523068192914003839573510180\
967512721396853677345271895302051926006397753686697712589873061863375009735615\
730797791566465744594768484918574453848098509637289839384138305694307484415910\
132750859205300704745543675228508560523273300408644475349874765623102857790974\
104104435719296138578540867219569821956194448048696279924181620195719949965958\
272122640145404445101196809937511385729038012251262194652984390086522801336337\
880865149017783103953790705746878038432504009363462987261733908928462718880649\
994010141823905276700567935547829116734120936003326154264483590121761354165734\
256281722351130756781318253292315110586545274108777790513828945065997813002112\
521577037479412472346839022329974719779288520648101360055868311175566378647556\
947850117143220240203677827683459734512150657074430522691711093154471595374882\
431707805010238886243626670454403330609177256039519933896422382088276304259522\
253666192451775158277261163614163854090643533068949572201807258713390715341181\
471690328587342930165575583448696507905562704969414614926233543660559959566820\
571222983522519471224811342552173122969971001376575612249784796883212247738654\
481003652296207353427299925477720116770534825613504287101915713114962446104518\
030070037122428964909930251296012320776788774636457714695328669482327053221723\
784129618239800364749491778589427819600907609272265363022212072270394588290950\
811559204901741423675083398710934998407995649644184540050402140491102355496742\
930117327282279276332990344987141495352162500496089435186468392855140819471807\
189585771567872392081871013885921314389612714546458047571133415254980425977779\
852336161156088435745871563387121774401097710699058409395790644554193470566623\
512822999786613178052947505558577969347685564474587693369568672413568602136801\
207311697083159775931779032482016785078847349186395000196042997869724068915575\
414704251169003311935598879541575654097232650747278082630932639139154702163263\
576341995963803269034177511163481070986793163343484032982671863125882985379543\
793649410197204029185897531050396242023778558493592549900467923237726625330658\
169094713803756267606423651033858976318239745302953031410585285358701245494753\
231906635799483109117707071930972338227151879699355128310359017713652983779382\
779709793545996012032206072704410351877219566008693915259469343249752541698514\
659676116695562405517267349001529651359732477271588309755095248960267716154422\
381262921631659371410232407027801135320915505672120550790724293041442626909134\
141410684279658362500765282918716150033407657017211147620659321238249531222542\
297594989197550985717987781647109171673197156410966415589196699656281751723384\
375452954008891528505951340174806879909617582312418197576820243061479004316191\
629862502989830237258816933296742184239255233576690338895235942234351009386655\
383427415276848879175164937689856265495441845432903508369980922387529942027852\
686669618430009362955161473849772586188534968286267226049518929274313287092194\
352354569157351609141011952691042312464128598841039381826322620745493346248710\
617955323005641941039859636902191664065400570336792760745820800864397504113877\
149298590861934362556246526506688256185412514903070435151884220716745194525045\
012004567529894951685919273031551195403022100581663599369556469904204612900724\
538452157059943528076052783586150257515170926745449882643713790931054659186416\
834700845061355481634830163883996498582614418596789606182319544614991169089612\
386535756614903249260146206731630411831902490274191798205694619192421155270835\
899500595954977980480826283694428363073113781903056014218603605537423456475126\
342534925623964990649083491545725414860416471806454099957450853188395650085892\
288152110456761278109005149540615611299350436260865733848607548908833155133928\
346820786850711517881835364739075115054160578490197369725555465839304082168056\
439509930583842493442551806856860312427135395131641728960592814816828610679983\
389799214824898960400340948993201749027949413267657811502349990910000195367962\
929643475752806652884062497216616472925645820564710806044972069776407144722569\
628150142488308986238889474317563729965172866034246432529644634595565704083820\
488049787356722437836591164618954367728258657343215197278256747064164120952417\
975669722601337572237769283237789953776975541131769132297620306715901001086936\
358194959069337612544618648736087337713705963853189638552742721099319518391734\
758282214102492595460694870874775754599222036246455542881051921041279112705023\
867482642961534151215795594058821725604213751460082798410127486374338573913223\
027324543760007035057025500924637952281525912455205559344783153874588131179048\
018872041049260804436150597904987148410492107315634077583637321787613319752320\
469181989701474698965325150288354168499366341234531488062808353893801228523249\
070373033077811450721651164352562205592419244225560952246157087926632693640714\
026077211767674053951536316264334336230702860096752719904646247521787533898851\
430068917928298067799386605919379766058430559542902664476617593699642605380541\
176681857153077819500081851446481079632726335690695739804829315374034765240980\
010522374508624606620317872094322191978373322489475959347325757023810405423178\
070167688427404138406953087806292172682731020253050659593272620008575650933545\
449042482938102300472213062209146901912280660680603671672460001052650210778708\
802428376262230165134896763803176770756233102538491515534191635377911216834033\
044544238048913192901501545258841504426926562022269594384976673591358778471508\
294929476511195236396904319941506655271525940470763985538143207599125899451514\
860001835104980843305332817471741614590903746090737790244887758264430893238146\
811555936742811126511935702931670156100972363321675551775376162685179549695306\
032261041688869126074365419706242254845795931585524686693278752130346031930479\
404289391213339064417663172480016734092943854108111702870246948331521109441959\
779867714503919966934234328642591347504372753702484096236679613484968998189177\
023572378193631373969344236167423177620771056062348347852868242171111770642748\
195817355546907028731659433810203399490433963733714181023253812205794283078271\
310294036868747975597291298927122545673421342397481976941540646394461377723922\
923870863710617575312990151102564792384894879040897342494966390479303209350841\
400649328944141631952784743835395530296043706710520450155024624075285624508561\
618788926804187023085011635036952782319514837638764972089794693222450714973802\
389452935357165958344355735274345604224620387366746251834777811092340195095519\
191578655464323797237503775999909835112045674514123377603349460555659508834269\
273320165762417080908125922696253840481899928049594729321120096718680191458796\
985739168410771727164197450089520688929279926398980069018146386686287085615046\
292836759809507328927352608539021129203651332836545322084296171475241553470880\
820028669098165623643279375042464079461096025087602539324400034101570571421944\
609876136784668952108101650898406156228567675010820738754691250720120343803374\
615176048076176145623655703096169686511667651864727503360480440677407430996927\
741175163484979099604233713262751064698724814883141442043833636634945547959308\
783705382917958793128321780369505622321274659700234059676050781668771775806405\
993639106322942043566336205410172820179382596195330730065041770170488267010162\
943642565220667324219554409524618165740694838895839950464298462802274634045319\
480299990517710606594470208291713062735653746499291165650710349881537344196389\
599057787300422162749116464589107497250837527588838411523183962760351198604830\
692922452087041681171805004727163918060935427360882972902444022162691036632990\
066069499574644815709009661232884030101812504841567863812273909617832757453890\
414591556117490045003566585747800212385803226220527470596121869993027588923359\
575658867689214500954440437300934502584843732320287595155698983609820408382007\
455365872852237178713017426843180040222600528474362687567367902622976520103521\
466190322529629413162530057902032715319243868737454000430122691007026433186867\
464883466167787153675179953237756394033142031327057355191876674913209567841729\
543573393603870125317452453853839080679237439845002535390862600945839481365371\
904427398626464164245230414313850720280970561792539555579170255538404204620888\
982966257639063498116572234865621927247839494585000115795181878783450681614340\
407463619587468100980363490155812347375835357327959085655975683639934972096568\
307008502502690832274882609371727828271818456734374776208425336080105826037722\
006725866482731841860963934144494142799255268304344757673562177107683185438025\
388234985972980468982579730998762579237720102480071360125741921346996548400361\
617985564546388819771556607864385295725433321340649648273684867871572769554194\
840234166056933269674299476134182542091051795522370872822957049490158260488968\
325898457972258920104623717995762755018836155750205401345658691278841551527158\
505665403233853788773782693745687085884567260319855787593497124087634247102919\
491571988553764525312596405882089996960875393850324932340315507389468949574171\
977252159744957739368894508643193472336851985409811562548877433636303548477604\
870016760774517416359322447906103371975037247058882579546061048225815374394484\
981281253075344885005814709904562323981176824266868296355180138743881614592094\
047097053418054026161253958941892313435686386052945492572191514667539549179498\
564726360433327117835019170669178299918986797927796428181006429133890246747550\
467396123286208081667680293293853150921895978606631968880799574941879879000938\
936558491059089712264359001671388621356624770314429514064136475232340696932872\
529135611491503131110808880808512045436713132941059093844663469152617399305113\
167977653169838275498314622065526533749854296336907001205631442769661798483648\
534814403159322551610955303587121325999341973376326426263254209608937907416392\
151667572417272263391578897423476131336168302186528445042946104862921784644159\
147248605890124369656968851661095715916302754621322801423852050331890327345002\
879611797889584637445507051374031760428859246298743674280960099621468588140848\
457648390267339925801652935491214239381358941140268706505593300953979644636339\
801362853975410071470830644214633508651817959462480469774859159710406775274865\
807933963544213282736802957046470881138809176306766524221303295703680700708926\
410693717663240204769749125841979744431348142696361605965625973467537865182110\
114033047221316220418134847517752745087038086503509845182366435784586905233819\
718237969850229476563734162691032354556647531719329643589918669281921051849496\
489916711898889852203311227607050790357209359527718487563379657090972944802463\
872301813545349476639320563815735136858938709474343794276711489034788441950502\
989750478856633352615345738466959890832834702234679071159989029231240866937477\
644812851240773072706096795397763733425703909802433941999166823760238257991901\
937478336876132809790596889316386653115851568017111713446805007579464857447662\
488452051886709692144994452945545848213506436466407266887104543801820245151284\
736779409521814760129931683973949487237605998419743967805319067854650440782069\
323970983557010094864738464077605422294932950206564028009990797333991028415876\
403452549562753418284781934227376803936963734737741082022554131155162393958121\
217870910737559955257982714469805786367452666189127849973660945445390674864292\
309865440480935960739636587453259133159617116811361952333278390677946022862322\
599039834951749728558005133138499089248739821947048274056714781356771548632490\
360112656392987442899651749186164724938253967645118324245522784953888184284250\
885153009898905087791104343020154505987115834034054247084424012229920930657261\
570127678631158855490298965335117812176293624358166597071340918326565192570699\
089258457896743048996378726569789282472963620538618027618726185895615340048875\
639164028187363372006709816420274185031074396450524566753855652575874558098630\
286226078759314792264928886924786851984492879397809109204474035604995333498254\
648523998956050648520841372688494640392549212992047544322575696662184386353160\
880100746948476747995290798943337349255036633928306164373272416795929119509074\
472807453590663517619447696098742080787121370193352534659666690185671874934623\
619874962216779783400526889035613516940283827583594205102974786066722725648121\
857011026238957459707654492244132920253216810167074575142776606437607739985032\
316818284504011600403093390657570159501815449494546464061788474812122514241466\
363256572286225085589298226808282299433116957943630492718780590814493297215557\
082369656991435777718479313579281527965787865486184075991770229477034259449709\
614894985377466818287860842436605196246048551794316426761154890720942918540125\
678612584177746587518686673636038108227412652665572639038550656792853257611680\
913305523278392121306655648488015392492236677026515016154521290666865149437869\
236516726402327926954986460491119744904590619915503993645352084802728030665685\
711958187049846023816619254115878186262631642087002043810701322982909200320751\
567421413834825339122908625762077934631055565438806047003001424869232388994226\
401180739501584161225434803137498938275159722683824234042813208181902705008102\
886214060137501819073703398013060261224240377060499650749549416168384983942804\
351869209139708489251616157843669276997303020160291292617278318221281041208203\
151981033010370609090316656392296875102367001968677469788346142166587423053972\
134832520916917410999202357102613811686545935147064429519757366998552393884422\
260286698130443652548644455788276043948275198009466978822492541631436594348671\
718574049861132199541303650652782157456987300379948677812725379698138549529698\
398088741027892539108240453551500383347805669826307055049845381400442229151970\
646912358362975825470021317483081327723108186727357718598614342263063586647925\
157997714865274754816095746954976413065134704201455363781378647661336560485146\
072464654700719855676307733222176463664635868839747891796308372099881740867907\
578694795423175207964571817209036666671060633829064616855641553728154886670925\
831416645275999269568714290541775285433919388511007855848596674780336969622923\
172258052688158113117997376326488562997169233277862629987861323466842664623142\
676131003114917572296003373889652965773926562412249442203504990169582120693945\
740944406179849149688010830138541332638482733918916457841286036361385323711277\
420732873509363499633919032292854924641839031238937403340789285548494787162315\
613489835685697531981444012701064873923568072172162847558944123596260119756200\
680389763754263278734529483839275291854639453148486242317054124982636345027534\
529584498388574574337766320691575336227709269816338789000249202620721585716206\
131071208913804132406526853431974093339141775658167925979581338505538464799741\
534657438837162723111790490641547939888283152356724207087488210711786371220320\
476576689408854568191588601866865062147462930076099158719612338073183601206383\
454341907115602209522603986922460368653291246436908209909582400811520569065716\
347265162942018411929628084952991070446223455437710112409037450039415217934359\
471254727929599293544085766864562025368577689694290958454375435589274963767721\
675643990704980075775200437968514287425591719277273173028374304212412631693756\
881567964752794966364653347678102633113659092759531328593338292540143495735149\
525187300029854595491507394499216014489793526246567858716062098025901710808647\
027570267087199525790476936445617253292217500491733428769797622443305707337655\
713410003642918047169161572992310061215832604056250558357680497899608127570025\
633150031106204135828151159453705198426015286434329110858879291686976849353966\
856175626508775137643708232135373075016074104281749176765119237996062983979298\
955658444472515125836583809366311719696280050917786417315931060038497880145733\
955650987948223429027681873968496566650279858782311508477308164418233888146307\
097569845480281038769851911387020807375774152187702726879787939864940933064691\
770825320181699548152709252451151439059060982836558330802615875670683827488978\
536203764566651319829558805460417534475165263551516564029234944726467821462842\
133658097371459719328394939725377134435251978516971988804790612710575602473903\
217581702368291217828212958950102494387107758563387108929933908129075447985887\
629584712482717094760126924411112298527692273472535892489575533006938534170826\
095339276147396259216833725776573721578894982692698300444183674084199242418909\
326883705640903470368443247860247866712527900008258716156389412708799487484328\
423287720864530980069264036899244708518423649894472183277859291857087131078201\
951384895429720733602368465371182441766597514435564240532456452310390814100730\
930997793713522171426812528059380691340979927557095960681231855301742344008831\
410679000261482465037552758604779765380022978316122987116713318737307344230111\
390225807629477331638428283888026273514113049034416263287619791081748961644920\
721288093835864423669518305619838007534991022147288699227575816666962882547870\
232352276525907047353933417068670857151677876231709874909607093602299624875422\
801816594022848140553045695745136351108062819616105998817150724692592273600625\
274362474156618103503510287353469756830385022150998703993094824992270579543790\
382950503009714727230816566918598176544105349508814284381621335671696881851252\
359026209212876972910079072728579141208275960663326821911542920740414660031063\
292378808295140395438448803350039946496788154657757531205134166103682205678469\
083941557201632482758854598356098171123259828912672811406815278594712529568094\
084675932091120576574575076271945252125845804994488678997678728580546895798195\
552134046707869280188047344670095110840783220535863142565145855904089889286359\
506730109757345874170081992849545589440257480848770163736324388381310905055617\
072596393592814610222660911843144576595955517705624560060439241139190009333497\
551519465670771979826957370876903507598295650152108298237318274608808117838169\
998733608260579750093208645851489346808219293665101722562971990865824663980704\
355524788986590296892303535125759017847245141971803741585465945840703414228693\
932530796750556430768786699685758161272525915506831841893586511556867084374558\
450680796917199224440792569268344852142453548163441887945035071009545143721431\
443067356282186117884295118222334117611902574913529805065829291706661929103036\
973969909305076679181713432134406672410538841015859214203990198156631394924403\
149831621860371992895477133605297109224450667521194326804218493381526684786377\
212195814082482551154760723521678710811389251203433383927856347615871655849927\
476858273245867958637236357515989611088101709082909926913940643801556694815693\
442036088818115010692707733434782374663714883098779264802106384694171894756869\
017723210689790708251980223719644893850138501817733836332009648796192581128360\
615289676266188336653015480922692236249695650343271714854938011159062533645396\
220646790174017615937248286878997579694899870620069487352004775183479603105928\
012035863947428425230926802553784855621389353805266094374744211723643635504026\
809461190855019215435246357392023597428795046348390669336621086041314670216604\
437037683470058670250654804529314069584575993906098694343060988613865372108235\
045792754057973636401630866154396481504390948226980780851854753746802419347971\
144047433873681379343734527525637451808500255203037585027458931408892568610730\
368636314109470771859731423327785113370334629719284961880787085708226168751877\
817415123931910207211560030862141760861052515630752932335859444172206070054623\
374153550364336057945819293871222298126803200811747186092610540538183687823997\
253201818366896081675914703038105426273836637955278825469953920824109795092820\
263362883893059308479754706735406106546108987409668276104499108032798297213742\
092033796875754201948912433477898178631821172445557358723728680988371516850196\
091617499373676625636965892448770038795563583905986365573371812989825625599158\
308184445275089544621613318957044673342789706490948497963194662925789053151487\
117367933529153312756234856121617445245763204032775081036588818554942105517809\
671569836972995291603243208625302971674681689942704504379279899011422674120415\
716800864124957573101950440163409839301480275696124187601997985768375818599507\
299090074310363794813112894002442397746025734123439234822349282471802674126096\
157968952341004866973954635529220799618693667997531107110877645299776636564479\
400432200393109011703657978137131347182531547425753038526909909290738145632135\
668257461765626822449117456459509267655896157431273156131197880978777415986751\
687217693262334720977782087589805099292503094697371597096126713161688595018906\
538018922062986841349419174070098684536936722544143448127902633606511850201114\
151495223897160698054315626525790921136252338258301422073930112707629341014244\
124320639495009773023165039343448179055205646602932634170529143985828298130554\
849073656791914104999166515406527454555956719506646602053523023746037603395973\
106642540107233696571625253394521322552912021671244706865076850144049317980701\
394701560087843207419688110988797230039519785902029586733653164265447200376898\
075269556281279688086818446829557244058153075324702375931858569153570042650297\
991786063264664681182407246938594688124840196538093823705801954875799951297372\
034806208215866803322868440695227342985580748755095385092691665143770011277599\
982208332001608661029907733518856030084250881899512578024643342742163949921610\
180944239475140387271132202325925868812844577648254129315385130889783798143241\
498756007549723778162949922942259615779621305679580679218914713186147029579560\
846854051143829073979586894424107588326924457794524728829457683113258271768674\
635556565717625254959319134415608299569852141664454006802815403831199320291047\
108170562226239843421980468869384873788040369339777739860044709028614237674716\
751209499963312203599913675044763774875906883839045607566678832529522731911582\
510758168220386714861967718869139714134299495954470680930920839303126147544037\
790039743665228600516926574682615443083329626425663479121495827243470701122762\
994807812508582132450573631795926504144983613402819881208695423336020130762996\
060866816792554128849994777219980725207269341628804193688751943642682036761067\
905055898982456420325856470322124723931526234867845328085789971809969486207333\
381669200263591832052102463409949054242519860666959766574223585630353142284958\
291528969155377181820925685440254775005465425497315642822836330394868358337494\
899175174463013799851041653132115107642067789049407591880163515231649751195239\
741576500527655588659092285935947910495326938290785768926536491679856619961638\
704401453226167827923344299474637368014272622274221833380475851426054692636447\
669508561768995337497927239558027673029729999634199653117146229770693922221303\
981260650022169579799820458546764587457040686897584231308593984116298347849030\
331709158116846512086659914682371582026382298842933383363289692371316741442498\
308924167118954306126170822315784246293891611679564539089724052460157176803744\
422337973935445896369646885816027099669369572882869019597334531845017353704114\
451088251253270006080184390611649477680161548790371459313453660695542406474151\
975208663396986449202754835607836115214706554604973334142990148984847703460312\
329071269751738084727190365751924754186134039067494531138709669069388222913325\
143648116515333270699558369740462724031326650758802414601189897241293561748784\
702050707690915619837968458926291706223548225301295409625393047610333990703950\
745768102989992818392662247673722888328794874308623946288568687975631612495374\
913938335682993756648071728065421784468334690807795305718479095215659019255974\
526574960195956773921642587463277334155529001870504645100605198024662666368489\
871601828605480804032518339178211668427405453083034985206913821790396738571151\
283530975729975112804881420689304721114199246510431281756708092604879980709803\
353639847413177014338882736710765259573523354451174363158318249862516414435042\
904780397678210520372160417589409092076099656676731855436857994590974799551857\
457293009996037295001244006984365129872693362738235977474504522601181512525693\
633060204633464264672445942641509963558364700586274394783092506955885678137293\
914226745176278814624173856428709218872962660210582090320994619119634976406602\
430161459170377839833874743833719695239123543815178902008039248598694393805182\
733822366945460746750051843377122223172992321629850413769776177538906629776608\
649776524035819521828449608856942054303675242543463820375222969966183321576006\
970315862320710997433806382668376955272073755925043743081857084379824782245105\
878772432629943227506311517750799562125068282329627601870427675698960213992683\
555990190053042753716240047322612942138196180098173096229616070741284247510393\
311791905756270133241317524299513674616424874827339490068467785352994582877591\
203120149010547031611897725155165930433755493911173491676209846486582224044997\
784385826756269045020069278298008970329891691541234272210036145661026555228621\
848718229744926696926905156657499422377056219134963914609150156339318416275305\
315885985016950026011544400373878645372678468986067717064638537507288975843227\
409554260484324956757621557026432224361324754517014257506975361684452993639211\
363421173741260852502644035335258908031843988846931881529048560326390183857985\
371960264827053898378764781360368186149947748846974603736038202775815634384729\
455491539879207904234431106419641917809373326535483815145922022398810493281663\
230684629241032112663435594081069983528438391990321976565436079736287996428662\
460615614517017727813082899767062877934702725367479423200291488583938854888376\
519015094134016144882902173997602900736770878711777056474729570937533720914171\
704271216146403430509229862281585088367979616916633392361123563460478155425489\
290334267682347761255629980654249027173564766260724342990589877292319141421937\
023817182952789829441862095598579575604978229632037544897259875469776170374218\
196304272587267386829941413315183959222199281037650017485009502589910728311739\
476512227023011977488996071966145125947680511475478722592865532072890010923222\
210754004892315000467907351989144713226372020411753269873665854638104023956481\
405615137739403039921314388453368742821647252489963874344064056980209525136959\
750667362555816553025402227576934186610739583868490808948476001984051487934139\
654654390247663845459661766399388693460941826838185933422817526374607895308228\
714295984384382246833215437574939158758811449204815148128937215584368061249305\
455364121481556240351330661393648159740971093216426023446913832653934773872875\
551435547458740819661602530794927554286837645961985548866961168420885282051305\
800274514921640549182786334411083586447833455910902705243441901101757687156759\
400253185786017906273606030291989635567963520265996570616672409304142285199069\
577868755425205150595025188356819219990493263147013149633262525143007552894578\
599287508855493271330553318293385599210893281807866725804669442450090432318802\
285553236797906382783239869455851484191680908579978005236439135585411670027360\
934284980602758995651055967764118281908718523091139777441716074062132032720664\
565582298344958929243322453031071245196064399715056693184479699679496078319788\
567577183702670224543253309370207749820807807292444147666290659159593643018784\
745065145461325913547279248333395147202883473837493197279352578913809993641740\
000330259932630559581900147596920849512893852800987241185245554609146599415256\
177483940360822948036495430782169104845057543039962495453057879828073015446473\
414617854792737922496650874967002893554850511658119745297672532825629879883981\
960502550441348512103407405452867764156331124501297808086285441325108631481150\
974296901711049173162766630488470752437301192451919285142139658109076235120509\
550665721359275010714937783451528700242716805651485636982009232201487509913021\
830844824885197689535421824905991186927217898654368058307485464736005144872785\
537477776987722807112367939613401129588964170728179289254321567469566852493335\
959689509804981623143827852590770198557574729964416470045053570846741631803467\
818585595801327240634945774594641754667348196502758224516152650358603791015004\
574121173772796994788007638116168116855570254878935137433668719892181073482777\
278273601980456157225636381226471162405935938843491896375955202018385653312686\
605164407047373661509938042624176218414719971351017644844879683743972738902018\
574770505560308659952057411642277621708632014556327049694836569017396698182919\
611219372231379465327762187463850358967286054783461692334376900384020435483336\
115245348515163748017359148541646747373077451413021212360383154202146679371788\
293584519403805453368249956662615684263636637089966136118576917078858880789714\
642601111298107127832871908777351887448907942624158409549667544219906944776480\
200633109269237221645521769653771485862989790236939219067568000898125109154007\
298108335462106317058939251124083548511522788342224480961546879776675206799642\
119978965961222540033092585224250844407077485726050502651706000183155946625358\
737335515718711513891389371612536045270132014038727112568678604596278483694097\
311669614165221629200531740742088189198828257802333930971905226931451295447759\
740488622498319673734230652401646821912511666947040236781461780132001215541468\
158809523361887591481299785292342606715717112262280739524623225570317893465151\
026342469032286553748883476991167461665718346315137181975634471220964497471509\
459175667029873570248301582360563899378724741691084539587714389394484441395302\
027573999765441576133211580651760078828826488685397324960865453571852806540710\
043530384598744088273498890335798900934251733332304886418779726699062495754460\
187885488517159587961526621125869276678682070710220428740322191024959412661058\
728866908251412086807887169448189942444611405682978989656419393573257752595968\
469854356789868580465891296286669106646126464171530227753256203749135797467479\
252790321437285417369329237284861783876803059653686957288924450442621358318870\
196527866999671380167046750332440824412024653881676253563088663524259810116442\
034554304306823654613831532818248626705299094848865458499177081264731901224390\
333942452242560218555977010314613396529197108798606555130867127696314058576366\
731687790536790277693455584579761775626476787103958586405969650830533327950725\
421291467593843370709912807562607419625858737470294160720697418918731831780420\
344243292326536314493795290721855638085521646057347568892487238470347090284203\
235879634444624518850905991004317519779217917720923112463935450209426453282664\
411508698291861073334612479297391372519619554632342593527174664998130099270142\
135897663298721229861710594742556178721547090715680973044701106406141731258137\
857780028434442591684019625287719477523177683358417033476421293281847498910849\
065568455709064680460616053145325097117964635981821345880916252855182821702036\
020646994413915092961565590438630368370037308287556226227766482436012154424863\
987220069100917522004877267022642300497768022335696781033722549357505094491540\
030185199699418346735587700854341543369520368940861317467855044765792876962294\
513219720551277631566104471994329341643353259555453541812558337572241969525115\
833776823204795048128228775871310000937759726653634903903160571015591401710486\
258155196362408324813589810587521621912632878971028336586307396105607307464025\
467902926190499140374723520438560799055937189601043750117671482310404247440216\
745477616305452688381608616616915030436052429843070816191556509996188398424912\
106569473825948845322090722745201825359211033833759764854758844390918190958003\
832298098189896199053789167105671145979822220497200532028324108619674356375333\
580238000600337496035032417341287265595814441001774225265582410215838569651766\
385857119288985125632673671762359111715820037334179578979749416721244986606921\
426233769153105950766172525388810759120839530535184407505436551086470267409751\
699414571962658318575537000978243533171518918269725865146900721826670223990858\
611481184653014446305406344782406400196827050949078652393582850777405009195972\
896975041266999367891881904639309031424415571772221901619078221670316175364393\
061239464932400434477975213202656736419861295460802831338289491539408460736122\
616727412161017883701814206579971070475041705047703629842450928257056714133988\
734809374956341505598235915567361867331657461142919718869857664613333758958876\
548949067315558761203297398599824954359454560683700744703522962516603270118388\
292463505789424153861419242728505165564506193856964313902163873432866895969440\
992400563727127860604518980778126931993905347610593127725183953355651208531799\
359777595600102937963589967451867246711002127685435142836345383574378659002276\
570113047896870531593978979646862571776751718788166877835590004774647424789578\
098012724696840504490696961198673455249341411584093574756095341483896470244350\
537416072681696990293956046341848506261854250938710257698845246899868108185662\
673964508021507559566890019717894386128182192055065333365288006865075591901371\
415271701849580690246970877550302949459438067684660833445913662921922146543402\
844053668368633079039977319423227451237506969797919511906469464932993080327353\
183933167446049811079567115338623677201596432238383287494543482511516424453097\
381215872512588120951088534487549057637401956960344925855291649264522501051899\
201332742495175006373036113939016678531462288821676815165303423841269957307803\
460640597502518204828956091964612684077441528201697160627646409909180032903266\
599055535980703080880318243275787517026294069350115621086671017879430892472420\
547227105931099914072058373171761637174178105428131122282730825339328803309626\
984833953297574778621493592567760524968225558750218491100925670595424830034024\
582328884562147475618720676874524190342006869519699482590520746380389780612365\
641404671870857740631473543589398070420889881920459086365227440699490903516901\
370105024196464851369803915803264981632607486860214397481809616286548944122512\
555302156015449283455102872373709839109978683043308589087003554802098428568137\
696389826309105209773862659991948194816807610934105533117687512146977548455220\
441798605238931781552727997209396623512912260555162175341763654172870735094603\
220974721124718860180476736409440748153090490901339035150631004912851600731287\
556532942710948607158130270128494271435655013488507444234536210657002981347947\
777506548817798887729636403838333716777808935655013747213803524731188985090819\
308928813459693529003472385764048212039018064772423998413812653553353736356983\
369292193532705209872226602829557886440077020763864535800859048112636029696938\
448668287743115766967837911070742579576418878832903921943811793421647158527194\
869210712897770815558765415588737918275649142117373469741712473912416000302797\
531139368714591421523707114767662621578202381310679485598754059076528125802177\
143919994488300211770228838449118831678026703739637753986552891015175192987823\
234177583798779932646958327982248219665769785370932321005626327419163947010460\
283929325169993976299467779717467713823148994124549181283485284798068493170198\
473708213005821626173900694909966325271449517123137575208917601667551290545919\
206153221089438308457361172043695699757626398155972975508474787389545892262633\
256229179279778843263525365598061318834347671607462382807378619204975484006055\
830602636546524879103701760868281604652348228796158001894468779230476911419580\
428727563767854203726202759974543606163069596431851946015114738344869513962497\
203978512662298722729257840930852737727061454508434494148966877773901956424236\
426146574955297871706286490471307353145297154306422336045749318858520183762596\
500319584623776560917358579559892514891484347719490352422094384851834990667255\
004080715963100369798505788635359417828347068645525839009041984152034918351541\
910175927603411469169509830040725784502327896877423113859289722590822417072532\
965519701562970110599117213229170861732264303489754608131068956651967996188181\
582981628652775592849156410270923994415778808482404877985981090178692824685575\
047811992888818153359969974459026816413160309023411819184802775936320995982818\
315287804664454816148370116306696168964739620238727037512854759225447384730947\
031912647268390464100663251907673010303137091705796584740538647747946288080570\
803093295375778482005460216412752154817675463529714289093269260398545171294180\
741413481035873426061667265837538857961266235371646165555789187759539085660546\
713031438129440802708080527460642249009655646676546304285715912859872486259989\
157239033430950716308439899660254355216299931526256649676574304542476101849498\
098472699614168513624462484406952644136445150953447771901010173021799185609316\
993293235521641104671769752801544445940309355636024371460760366534182583950158\
928606556406606702047084706564852055150852927981108905397333384687020508925237\
435695035453717282765227919871940121648957821676931640510803990243391188155867\
716459289870240254212805166908456625396888999340873238638621631219227793596335\
150074969015140057418455989592701769173653280778552623433401176554733641546649\
135070408573892138697559640264304843260883275875250539307194912284422887161892\
576669931640093612556463522945232202488625239394358407441783936281284763371162\
945451453072281390137177787169201251178136833047411574708974540860351238257853\
857846811940588906159035074991185458895269157115649575061969968283873354573524\
391284533061918004078731935484385125256554295452726521877444268897068307105924\
510383592892384889149529775901088985272974965689530915162690271502588153770616\
532233650821933285623972199845055454628546692283417865877740912163189912931937\
934057782303896647036441460576831364067652840935199464268466536330270966333326\
404419182794293855076050602861260816394933658725678326962794775850884466917386\
992893917874924499233061227249863786421122999247593137428315401556232211691364\
484687188611321540226268993026028372279860467632330548872598633680582361299561\
786279419840143293751859415434664240579594800880272609898174051342335759293085\
282084033546741306694753938229507920569825849611408509252114624423660009949714\
787255319768595228837898373850869554204298259966175470719014522004729259149227\
936737456150454062425812334261870963045603757145672171191581150861211125599657\
117020441250981640002340641827324565604271311819072993604296618661801896301990\
854823180900676083714903387887856353464272462670092036274707085503533118886931\
419136708475903531120206508868409994764829118894698730222871204815310674972172\
801895029912399345863483777880509684049007895385508968322698113526836467520328\
280362885723580344516272874253206227533602247019944512333450553117809195549148\
325210632460806749773803351143631819027552797085824381529073813610041134714247\
963647309889369734594720709803187084137933297295073543023751289366154661505467\
093947563326452925431430730644377241376171299601829199044891939264073185900017\
471266613333380088700074640645557518788084258235548343060310407548820639792882\
663715184804623487502381858119087680497517296648210028902813476220943907287526\
404985016204808461094426353803796850172600988714134542113985876218828317029622\
956281736365451150567063899944265164747315936831158447841717090029544333721595\
154275133598478979575152396542093236477874767670038816593761470497516462017055\
144905096525456949579511855708294958037341898586969240307583134265495418888111\
331829278421252347484604726565577794376276539570498496278241607632611485907318\
797696345451776650633481934599031469036613676836261930885678466540254075186991\
996009050779393587825648028365052675971656295313006154787396087815210776687308\
535912630989158273234166421630505915906819366588291287689446806337859833347358\
442546116959275928959695045221510084420587138567713970409185007315132672484242\
726790429440362498080628177308905977885058806215996996630348870973241425360784\
904198591803473471961831248048152020799430824458986149657481618776511128983594\
869393705897501175633233499613569825244600351472040819316614534002926236253882\
502748180475228988526175359228295035782980589479941044654351288564867274757298\
835894182904653430934756058493233772424724147992726757991200726288294485352820\
221007540594596351853055916085502536277473572307853472178145151372308971926570\
664028537448912738226346804869925757299852311438882422494593768264208289463875\
925873206362234163292141448665095375951071088601359691991861619677964084894576\
906183771099643747139043776163319228499049264875463790130357926764591103354919\
598481403443483693077486410166134160911738342612704038169983829238271929334048\
144547909596485528174230969211171674648691814102639533258284928766719388375196\
814726029553245514468475810510737992546145703738922075120255401842580699753955\
034761582016943946359049595859008366890298873995717256880404581098467143489273\
397785629313523267190511866185504844145123834573277867090198525173620090007069\
366507036118504324899047551816048417599317266246893378102293786690939657221217\
591981205815880507770304466798393047616746329435781795759979199924194701948278\
347956050128175627753399042027387821439769033190196860708594805687725000918485\
639980986051026959102456463852617225043658565390596128236370884610409166879300\
504769453112152943299265353260564102631629036686667980041511445429150841285200\
186468579430237671060266550422374308919054738476614894756848459215523895731629\
777807940995801356092257881107528218107637244821703370374220642910763059884009\
352942985670893580043619164602476835078179310627317259555210221786048997940627\
172730505001020874221124031266790951184864529352060907280549741522614002230815\
303461429394339821358798978240324683052259530973682071741136408312671644500355\
419016989615227619543186549406366997468677743274536560061673401951002186366820\
382610102156073602238882601306242245689077229967231491897489929193589940641481\
677201233659963310109706103943372263766972029633011406053406278500192387807139\
918732775270025137465191452172258363199128630605235756629552203000963265012196\
936317102880111760655154856145538394853552653702064915918044243964535626093694\
324115080110214969278464688748476942202818598266190823551139919948917821124782\
775568648689375298658937827942329739369907533564369638596235746289263772358828\
743575625488757287560967816146044258573654470368737286115468246018734535541108\
763974023945902442475355564700479286302157632596577684410189623347551388095208\
279399013407867928969764701414738720630429592358406282861290498270313139426268\
470605282312092380637030873958206103698058087185162692794382161501696158825420\
478714270173733276654656578646402120281819271587725473477242106906428277187359\
566550987750647900018693121547148872108998148352971960931612802862548152393047\
612680459469113262209098289249986167222375309344433540701088955537767313180950\
075801672782797645576389889150789806404685808739532526942082281130692384914780\
026376228059072054112249325636042503398323805958571487700326912769511866773917\
407668284622798615115827001035926716821218772834640843505971448559750971213049\
177589110594557654234683484549694863613697218053711115442212775174855255564446\
050981169040254714255682227969475136277172485795689494298004851389845685916549\
918627433563913713651984598343708690505202039751399948303585238420144483487261\
343293836200183659477771274545020322505862728985511624518336965977546966592015\
228613395031288997182642817363226879652506799849268520698152108601316886777906\
544598118028096141029741420498372153463854397486349500851419143413495858185627\
962211799083579442515444812733776601367921529471455540749488936814391406400258\
628590652268589478314284349705884357039515193001727488848885824833877719583426\
042237562949790222914597837915955133214648629902844764264591759943773558529287\
494455579324531337268733647288547403506070312359210723706069000598706536450247\
356387729233131949159458837960589032703407854999156485927607309213128954959396\
924270042242788788809468912778817670053114649286137996014228821973845059175546\
616840969863783999853475664376795629465190240591429693449215931497121403953814\
986915180972695938703297178415317078400113516976980816277999490860367214611724\
531705349578999458576261162769756470440158209309520952181436493082265504221294\
116160144192778292525821694654073096064550811443829849280652057256693565843027\
207859705744207312344739676826383472045603408389398456230792590026356882980890\
427082604749193430679662034116366370616082140104977611816619904888783858499181\
401429967788374571007732834686535348803783328964010031725843921199847801911184\
285714700658224586538753220158150262529196736543356395885296431593643412921997\
064729493044126417211849858837437039653982401868773287590816894899820329937264\
416085256749813035984363055427771969217534294758145995683038556976329391875650\
981842093465517048687780782882752619976218492701225389205451361341031245006394\
138684368626125304141445219332476260951935495305426051510034256028535142792352\
193963235655520079929227268848310040156182511448063894175988747580121249736296\
896811455793271316658735724096071007877246713095379445145223681571219360333183\
156915492985268879657176569151092440888200113476599000556211886246801314570619\
483734979076079273770977519678079908069197527870330508160303842455102072074277\
409176814084849711524626308987812103742995010196363288705612131557116055224072\
608514651439397234348463172534582001819461611917128021870638990489016124708387\
578192781121343042110637709333554122825351627891827628984542759486436397758680\
086491574377297448842240973709952267626250373099813567252480219637653347657761\
616175312324063040229502186750494544707775198061261020617085154372580957368308\
087548959185709274881525750322031201554643692358703477082355003576891206746948\
650537666720139328660174595004227642777999429000058050570469249918858059905325\
880371039437818545244622784228946317202262417194578621588148744685527968782867\
685566495158763892961171724497702005028528664439137648576609749934456220824769\
849947552533584396082118754585460166464464908323947078957321393533909929470687\
826117923072919358325533789371334603480365607446218915854953193266656451227613\
089605821981812273796898071267918929625513741294725271416406183836565258218352\
706957092759137048017486972666364544298496403319216623267487351700203610874164\
533045166498152743878851158227049669617840604836012902709228305549939844239328\
725264854815602318732522103754987395146444641521756214807370236767496295748396\
052046765322084011985388015199653702319322811802046735427402377756779525116239\
843940819539276591332643666970291902086575831463715281503305467583319621169884\
746042373815228249282434575327307962625093623105426625671281730727861473448674\
801175343189025943420721219933036916396011020260409454423985936620131329078823\
769253853329725509212123780209304802654854152491188669597824240702699917128768\
613345097145266055558635544894344703681671767866709830289189290692789881237394\
682507002446980595665109723922188187839723113098094539713934080516472022704327\
218782877416050613566037573230024722930133586486950244134690839954008540065749\
262850042513896987168469560372395582038741502557844163518369006403608226192505\
788353098946944743967450230111169478643625529320891915461888053874619748865990\
188175754226060940653601320354577039832158654453651907871156562842749131541369\
790444178130493347280230873490158064412364516792602612018536527368288003744713\
017591192881511606019208078270136926406602104242847434803394525949337402601824\
652943034522069751302727381972034476250641559714660823144975937024131662823816\
429329320881694013414864156921055251738663803365196802675193163636157200480029\
091868230270045426973702690492216036827491262797049591999766201391927027684027\
992303047314284747779659901033889255473034818454974741190653700587072857113170\
244775392853387320990332437945626433339350329516933759202267144039917936177231\
794124232977656158139510925181046762461563284480232167779296152730680920521286\
840322642678796393966685023244449680176620913954285049687111763606072688037977\
804131814672201176283537283876851795947696865223295788236988057736170026702910\
735127702876381822847538843268605387739523626104915110702505067629020293609894\
503193829257934803230706376688394622115082992973792078489670807837204170858455\
139790582532836247596472948530965565536431730247370758244505815748772453943921\
749095911465035829644150774572100953297481079981012812989026860324522782078822\
544016443563257181410686605804592063785226083623110787711565208562813099396355\
902277563382920071164885567385310258695980887625455397665574642479455107341102\
395037473710952667796489921170768803478058236747574220742071228962115384878531\
038474421402319855498406275764686716861372518911548451334472440263871578473029\
916448988146183868076754971230999202188548166865731005446970542355623247803459\
563932086133983837176771768601214955301938921863473799377133690032342841321131\
994777768594441410685803358013780533804836450569873052215703637209742481161074\
745937913644221528277694648564676057299106031834825899515554130919966631546219\
716958819325922004304203497194524115210300632254835341465399012243568282490940\
553038327807975507206579470365917334472496499096846680359833867549633720175925\
397495855127974606368485433779676060929629370960633444011953506846779633904446\
726055056964650716654752464329583264019625275842547219231525711432029509640917\
704243269568988251370520088394759296821901098038301634927753033655655055520870\
613003402045204805705425972548953443960333017745038027916505614609688158220523\
371846890609256435404442593797288677493663196800212332931008023343814400187877\
415619876002014536686663498765079183252106838811289274786204573872721260409169\
079476105016698294083344372501856971332389570766388609211043894125292456773000\
243030218775502330703018799710239113720505135442356233672711395303537778583461\
292890891107284903421454571268816049326238099616047050389262907800502729250490\
852452962331273218698400991305538807562896513068883391170208773189281299495004\
262995805999104662786103388025213506442802223830115308506220285586065770118312\
711619689780590728524421769809489958730086047238699993093468649621368788546500\
834140571607723875260498810717069538474068385675412353856328664001549037463137\
566848414931091547140511513661483749618366998189412343495198607163488447644272\
451053785637893147374452977738863977480473364769517346446861412643830290987055\
546495067975145026540108245034592942329753756650879860868696553282766824215926\
580893238515353974875810482378469128292264853665283949530206409681526124513139\
243555063186683012389788186848695920435685208180816172111032341262439566128830\
193924610820356896538516652403428790799456618511044458066690795376460775217564\
702209493114621702360223792410259093825994840427660692710066598481261956343659\
805941972691345306973417954737030965718772818408131924618080346908119415328231\
954129236819431877652723721958028352142447633594615643634193673475888331806331\
578942086817572883579095598920213942076582112077338175936366565685806697069839\
061210219129597690272934978723837495126132259798861202409692085106260277175934\
452604076857192067984684931681922061007065438877733295011404459140434631397412\
918191218390909590079508871057073496454937305775713202375744094205629190956074\
055392370641819813893914071389705683387247724023955849189763710433983509924766\
502448167016782480505457671486262793738932975770022727152276158716104646927460\
504450422654792029963037187710511597682495257482917163151226231448187877255301\
024076577731396993555289470898400177026375430347999978831112909770364354162336\
084967691286044335631849221300552585955454775490715775698549193593692204110193\
578411253123842044278711299228050859109010004537765685288318803264610945121592\
236034237372062035464063694279787912070354461960785667296718808115820753586497\
977913320420502200163188407787637576047001491066938447623539344232842759644927\
659905380909704019416353309396830559138517258251722746593958771221784376045159\
801604726292235214861884032088200927640652799063980475495538453182539620138904\
989348402075058626426636090825359386995932730526213238740113798310240382119227\
630076469935575628487455653477064920670558220273990253443875557477542891275884\
651823168602749748785943991854394936378577402607032848324355768078808469574915\
704220187122323048901514963673865724690863307799005080504320307073719105215942\
733031228403645743377164640668732364764629364632772028407769646498869755964209\
882844868242818240409860316275227506196010598126215561953864396263302333461641\
537800957359304381809362902418978585608555690372699012871741575980636577104634\
454270304835613802341224748353372468050435331260562095913322003818767249596242\
510851486117866163263915493698996406212280382069824346967502240657094346876896\
539707271726833705712320430956775184398659803543100670644440342880606830560050\
915447626159985703024816445979969139166157075662739415251369786187752281135217\
945615888874548058451440976581214992476688097118156349333719355872850031424659\
134508409958600558876844209186964009077801923120291666064874119979370868173988\
138141467918430995325713761851492734992176749322243208397848618510635581625980\
110766213117259511415238790229651935844329971371577768958922273287468055063473\
755270200906372081559015245082302644876136966709106723239741316762029007137456\
389271391391896362390304746174537129678286025474667003578997302858284217675653\
724856727006470295924470122889453070298756088090808222630923190769819930537808\
357017809521011532351899134529649909819419543626773869568362637856543081493928\
526229233552790209559160207872982838905338060494892050098307217148717800770491\
102303856801962342809888206501516334586181443142936234335036123047901290942883\
130482489330577770055435930487508699827553448566898192143919325026750850016983\
504686712529920535335476017615020313708772635365096675688452052146789560816085\
249062842813489772494856853624207531384071370132793031333911244186943452830038\
540943676718596262364124692799066246061858822377504648758171402300015941873924\
233207827453151591021225403880450109647325562116637576095323236820993912987767\
080775974552127536851753399915095176349501591594445021705924001817164237167278\
788096197182786093129264237644891213161396478552687160513499256779043533165375\
661653913383283499633324464488554967063130124164415414511435214865578797789701\
507005805104744131599600438844856766593699245237892867025074768460872075501241\
477605098894176158909394583947481933566130933904988268135499608516066894854101\
265950706976299631640886921378928742569632961419432535273053886451175554242344\
757461970138273919381575600273816224525090301179227543058430527931672553274816\
874970786225493696644753376100775736267078129252342535129425760332590120753372\
197259479013436837966056554680743372218538894274552204174623299325805617031367\
143062735233954645463283971454552699667332550476363628637630345300796521054871\
339850071822490187090781766616213213440884186891629198647601606723865621502326\
370728118179554993616586823449777635339699020324154758815643007352570489252999\
230772649624197736099775471696561384171977574270238332343608181369537118135639\
184722437164143738856560383540691670523072652323032996826555556827720353010065\
715918318353181377811823280638857649834424942652669300347615328030814258603595\
250838197531829583983255346272771681672565934172137695902133389205709801251573\
424702738882159641017998897828355721772311451947492393568017746390388842051215\
516741180231466358790061762641179996158831749192887604893940252003873918012585\
975004244438170541505326543444918715890058511053750933614173536917366663185250\
580063424767350837841503582918772609548022821113709073556210087923376628495102\
675894132903324273505177652250776519498939584584939460918599579840227214141417\
509709004390767006563094024146209249252764211356888707347071555786235537592687\
709625533772613260535496433502137804734874559559418632420545654850133906278861\
692974585474404231639063743424703779942629030939898451892621970646509975659341\
237442781565021240669332217779529053007374367796979661169230453526302865490059\
838324800747637938636769210177220475127715742801681187893629869332533528206616\
006359928909917707596346482174859455284285154162389257970460549857533874182358\
519656745831512043257001337498398239347408713442238697120829358266298791709042\
209931870997599834913648133673909938309045688620592359427038479639166887935029\
635367237324438695361297988698186774215135756776364172745147376473887485769556\
916970090958783924312600295199883920560220540989752403481226510955313434077065\
525749139540452158617370654819018990438277727236359591826733900625123634759207\
725561549189304122854395333759809483694002082379632544103974408444414531405697\
759453260712738198585587621483008190130527457563409178413552803808231345165729\
206242601404915561877770227373849606088856130836368615759252700051835047857744\
138922605942042185628752144814167693739210439538705784352623650226082389059300\
778561058151877159508449667861704661419266838426051877150031370858122340763160\
633096585589306813842935361847436206534858994795346069543047214457623964687167\
734023335143245562951073024191348439153252587665714726822682703003879538767508\
532748752325364252913592422213572728478286712591956249162318665070028476057321\
030940483525097155290450179233251232399457400157418869901817888487941340925174\
781682114222809170541760801380486934467824840952269676779902801023674412682281\
720787547613040323538749126302644665578161858508783390332577862776348226234918\
365679258215653680233122737209027092974158468437831264841321882285421248460528\
692344459339262830736899103127365683313360003900970550141283716557541147642154\
162053003087662403293819146486002117392496693727174103024905472907203381398619\
550121496155131387615834173701288901468805066514700566622041396231078094125798\
555755979342894765326760412604232830164720375426713880266189312325926981521301\
815711917070647090455475595183277840234007063162742953163908435141577092155792\
204425582290391512129255958591495173668437742928129007609571904791894610270966\
521186773371740683708501864803959755920419070922408864348235135993226022142159\
545023905594153584662100909553316450474481433562231113007729017235440468452162\
730564966590592291971790790863087650189984931648291150248959322330961094765205\
905301547184067671099106996460217370322260428474383167843882055488257466509837\
444335108810344446299560722325355193191988416367563077207465429909183831764548\
910084296544175703717877888607608103208822367274362875437888919929892794696581\
896972327110254458615364206926392656706480953301469501110121998223490058315859\
618332866664102974557329104921602208939709185341313729583028107676033731822812\
843286335203705333122684638140151975207074585474671703228925651463887771591700\
311541294028223161756038946434566145566167538501631066970320279997315336391275\
644762967523266132861782281188315984229934555028454077973117829972847960495616\
209445435139749359301485876684321823544025934709611861749215348958445915631634\
016547400450422263542377093946992698339691086901382336141942322132143897172966\
158380411598178037038804933960007528595521355255770950686318508869547662960561\
819396851366298586706810869406473285844903844173009593109184372416829469182228\
265238348649487693393718965778747367873001509659618305095426646121730519294629\
921802736587848927446336127524218484374398907641254900263152365753985078573184\
704273973475609972861952569042514763003121678337925114165622172303065341032382\
295958120812889573436057684128804292893203246006640892370056513591717997531573\
959552578069132677898424274469607406937499913640367794076351738717032973505006\
679551687534869768892985582106308914483291444893098294812167305285103505273559\
082634766170038066023855044727077425542794167948183545753497931833409826972169\
599082112776098197941071730897567538427648316315561224963886868091210171583427\
991220275751623246584162115283511108665330331729787667825301776681271673875565\
472025658809591043409592672278687280631592408362097561578787048384952763463829\
112724116838827619540111321564889578558426559074597774505687443894693480403043\
999773224335462353590570353459877343460714684845625104266804769178485692787578\
037025131518439976785009701433716027152836998718447786862716141253176608699343\
700584721457925713226559687775150590502886667923228933187061770934268462274354\
213958215689255466627690238769421600193896592772719414299178322612461536939354\
085753354403822067180874407679276293509653355860507106892783928303647322673243\
672183508155668215436059434499295538772960059479459842896974020244494939499335\
446487478265809207107666563474955367193289731441461516473718923296017801373465\
051100171135708755696222541196216889539656100584260490263636786050777045420067\
043376337369072063449370453546450131659047097751602626325798427430424645563379\
518369125729303687368396640575802621309848348001171473914542763270492344295719\
991877067212600601769013708140415665460137459328830047892336519192415750839563\
673696326030652513855655748865087808744603308059459270394011282127793973265491\
008559715995045660522713198546219896789403000644249653720758047533739281765747\
122549670886953749038726772212329630266519405859286768140079926826688124356684\
112732555732825458650001791868382207989202239960371826856414750340154431278379\
461564326007369200190249371233506762565149146464409571129115368286586019682098\
924064097471263831361977907705183217890872029985626255974360186274705607236797\
526990285596083813343047271742987113671426682589160517129395716536912295682327\
958604362844687498343202784318637784759260010273898860683238438871094117522111\
560110457486294302064613309090759798927176271877260974388755375920327782361955\
163247461985689725234004964933566653056679324848803618399099460172633459190869\
746877203233167757061169422293767836527127390143525462392385349762022661392767\
890320225906757303088642842962607243280400445573496859017484441049286052262766\
642205707140874236329270308197551006510379185227429169622728017719400333678789\
026681542710036115556174559730606487209308401027558234502509364906332968002484\
903413418405816985427305086695604296701674010125989022478966421513066802680558\
125440928879526277669989397675392022583170886864254377799470116956942683269143\
510153923464111221948796816577426323169481825269657591695978828007698632159794\
622861175252083021778559370832364319950155870669020245951820171403887537691732\
929357025539426520482481376818122422554945810115996986132997859629168344954742\
022234696430552226805497132249530398282634414297273299892492501715926826509496\
819661848820506538224708729939495160408214535645845170936895761552501626343313\
593029989498872469547938785790632151814890898062966482668274489846561758971463\
538798778415960376277012519051503278878929516543022773876977063046104101336694\
019015875946277177379084603591446766038744140221675462819120056259041765332472\
826609662504347282786335175078470298676891298527188240522376101491358568836279\
194164766710392232208430915713660169700061215802129822811265687857364319507180\
545571650331628925539990920219729598605331187329790092252046234562759397655936\
869325533731054871487541318442743796765177069615485641610541892907515655965838\
457682873469599526247441059950274065395961074920421586061958652882138718971033\
125476695051373293028467352588594925132508826974940342022855758958726147839883\
286128834341544842731084822740041199801100690291806051422140858824304038957239\
872602307469903210887542683406039599869771157987933996630033119710134103401909\
990008845100109050710479774096971674379820137439966142656336885346268108056961\
992283883105553410681371778953092490133734781574330355722610981782469098323164\
792330555177502622521290564056623938753026385275596700752664549751119864413026\
917685759590926134659686158570124087716597167389792234321083779383126612780279\
942780418113387313440394043001392041585036183232820871178622022822741482444917\
791904792194349874614768718307757018614697397422319721733128948655090319497263\
299291065591048769322984863876577851410264820430031893620840733861730761607040\
399223020993541535132554847680442139311422030623995234956247538441605027305488\
236108216299730761519802393117810748975449838523607198179249267536954530025413\
075793822750548203157642418598488683353603093800718964008697795025500291658869\
446727244236573350815339999423072636153219361734258701215211600867036328467070\
122507683517364248996923592239943059069573367989163633096057599795184000144291\
864224599854499085955692562773242381064664207050111163496607561661450907065808\
423728243701794110021477828285585254311902890495775852502478416351357615843973\
688700534583805459937193787573335452374594144325111019411028904139951285125826\
367840540349209958034799139062376622712962188240143428143984774797144187128305\
070002612084496839631041158237001066304258781879876129808664997577056969421048\
786950456590665476138414603105427515440555553181613791325280361384218655135782\
631650541759931311673388878866376357410424996478424589145507930825103024787255\
884418115882665957067914696211193435204455133288568938522124317820496949278242\
276896430317937198119111018302335487580625855800820228424691590682464879408818\
244613643480566829551726106355422001372051193017983090465245849979237151685288\
939396202779779223405247610270186587572659919415458023553340311585590174574038\
455687668758158301562396483401244397625872057134515563513107538296023755809347\
743257121641095838722904837585176156962696451142538630069668404471346188412416\
156382287049288833257995551943178537840682793314234407723048426280842174975383\
464093962781267749043580381795663213719022474236668315567677239339618121562694\
708473157180642375900820757728599531083722219754461434666434196483132521330728\
907865597593324305075404910136707590135690959230312886538667593130099023134268\
183444949423156369374297780124361096680544963198350054871286392925904585990432\
931676987471921729578331924927201312743392066372253337844628951099655873593431\
701250078087208232143440869580637583232406002463540002192579825985281662500380\
736769438615600640111376681779509094498800083875561165888361170530801304218665\
858701740121649873484543678836924064345000437283894725408862080470646400650856\
676787628911190401935558250230187493066988951367749662654116339056909659195693\
871830987624359554451390817126919774812168443708833730386612663353365844097726\
314420989167519376604787231891889707910477903686652466134042134797156050124757\
184579678184059976211059217446963827759883017504600134116650981815745762416594\
771058220098943067310836513090597621674667871966662883294871224517239424362785\
183608099702559028126292363942652466869074074907404502914580737936186169686328\
030146014181117674956468681736947428792047557614382112349211707873466796996247\
039399655752517641266925333019510067755607887506522856656470379982831719508377\
329855539884261377907850915974348666390520024252946010053547359646791089270842\
553954314961691746838388962898563835140136826183524154855066486984017856239834\
620419741392917700136153109274799844665199836859411886706827033810913607693374\
468910635616114436858681243048730141830399411780613550668987763356504086871079\
747395174160449089453480648217946496362571851439162519374234369145729131632719\
844724750362961680944214672283466224427290812876063008330698333157103340594647\
729276020351719872768880547024130064743703598249784244986279603248604516876761\
698843951579548604118458134106078584077948437293693426639254035592179409738854\
643783383382436661357215391489782409971999600441308540170475877394948693810006\
049714270546318525256380626772685462105430515798980704581188944163435940355907\
221100169555862443923983795770664349201695597234633030757896117706002791409007\
280384137844354329736740295939129083570224210599174567341011010613765242575382\
690934410476075530912114400226848895931805051043214714127278595089348966822426\
096000067820731092184470213397640966100769271896817527448563449952303466611038\
473200551355088422481992676698233460506532764943163571138528997898317151659788\
075275267073553899969863205980442520354750331973904260159718467986362958303736\
991469769553972789254452785625822757607347309705100161359507655727855757062210\
945160758284685358081506814577728929901702240257373109972771149847042870856904\
684245636534423568367455170366379720688976915631899046216810845490404612201686\
836771716439567606881496971060037658701689310166910839324871688092541006081097\
228856072523303954359671238573764061519205233118324595602076415384278971968536\
626101017460434579001723166920737409316908161674573242180503648009370842410018\
867886733080668990168304461745897620236841677605457358267033440383226033020890\
848586208514725638681681377493858692532641178304553004035976122389620485058059\
895129366961832673697138980341205663668907081341530094514302826485675797083708\
705806517073003687808329785967875888123060365902134068738247745650603430078803\
329971898636393854678676787684478305981985232184852703129581276830164163103845\
269759610887519932740476714003419120754072644026004135433844366290702015657735\
161200317763051228826839427960598170220485453069888037408763447861591328705853\
036386729310089603638232287428444229172426032066582444927832453456586264894081\
017833182938739574168021744845681724121747199507857123579609996512942332756486\
159652582867879932381286497054646249731053047682996890085297304617646970532830\
996846687825367986162374647545925480436538088719509361500328958112413033097301\
251851865323471004172694033667343008815770963408861801863987879479773964380912\
930270552303071696256666720856467927424417583288301711458394138824113455227810\
411756372947299727002471566126066772519352798615291997338738794181361202032048\
611766747205234589802480957645708344331260934718595848790680184663725835146253\
339314733138282675628118006679702562062236795147348870401331097636526594440054\
699102180978604405497569602518837807434116715222992236437956845139640583579896\
419282064297108234791113280012268029075006166703236028892008601839850202290663\
427841551712250979750412872913271747422288704226839655197493130377889737285295\
520921002209917683400815368037473688276417330220093220604095207951725905925504\
172827056246578677104149714216153404486394051361533313960352904055750497526612\
896518410573703863028126132342160815302283131493046304645212149107293512988706\
765907606620693433323168054153067712010948578209366735262133517840204013660321\
904523218396306099236540192020688847695418837083952418367603751795709024424711\
083764680394720739672230156080394173576943793161764298198133738857977691674846\
150272680438548056927668149933853166415180424640424465976799595372966261994251\
782403478754394089816171126220767487572313542978596665019239639088523605090062\
405233673173486543487251899832221531367834145875457135982142318641326623022406\
558867634481886822747998799105133603726714269430762540464096104478397239176592\
815497937656998007864852399233589669218387015825596463251779142731770799969594\
996807805736835559178702896792693002167304375653610643908891028810126484335886\
289414303793264642910471390839643741050938191621353001309767449493989486637908\
263036223024113897108234112537769109973197818800104717700226425087618592796674\
614864526407469104984123396862253180437844893055862745306726065150442346363445\
571647919024695651053518222369366714375366049838817303215642890908752573218319\
976433920033666111258432501414551971545002612659114493684947250051741697690891\
317983099779789167836790408860181950555793338225134549689786531876990603863822\
634448956172767815747789013868713430698187662117860117900274432091180261191847\
570904559078656114824947269693434852966760993919995972198707975738206607257547\
342037780671816529446723135092722493358035403622937696425100104117356984470606\
304471956704692515247642052609620858253895392400719230948429643774790545278734\
136017950721550894784735076560755882666206172680699160857614459750281123397195\
565363798160978526496883781599164667146895516728513122027699877840549818278225\
089000619995497255774452497582814792015400741507354268198900265051833696928472\
587745228069476765027767587190438934382220968628158407994177402229331398979311\
493266482379863735005588576809383027017853949463291532015170310443851484217804\
094090979034585467262927687405469587552519066237949445139769104059031923857948\
741352529685605765299154484727820763496376325691308974201951697195487686246826\
087609619105822191394276785373177925936936814521525191999452499077255936036227\
636492229645705346391268331518295661227009105188351132782582242294551061048782\
208802394600361587127610797612411322610279135372641032623052880426607990648140\
001917380977034504126154321690846677189695519785767394665727358726576937715813\
566966784070991947072340362278044640856992654894991205714055605719674036849014\
025124064663959289859196294539854811990577582636936427797851910831541169244348\
081388473497702588872996722822224829926033350528770933825517776580488173117772\
831580642330633523719476633941172850509816316798229003133756684357335194586620\
298376870023391841487065398012162090647888367103354861811934067746769874576576\
356020101109063239129968808553235281877545625931461282066097960997087679379311\
879283685718544965497818082691277783505729535060272608361221993169572893109497\
615717087427928178495389154679434868157168615054106218189829329175694661321553\
252047001178564592128209242435015819566846979331728618606244406127346607372836\
869051163492063268778187283784386814683867081562865942444419525622530347566676\
061904344834883262614069834594444748499105338957038165380082222134546937743834\
197222552981352301353881132062541706334513066480915355774119683997026983053497\
561752457883434274472038279408697362874746826423776864854758129229016673177466\
211933629590614438266172901241952301584411280549194097202175373909584014873644\
800997958288289359098148095523789911293464112693897234528883722709994177844564\
495752422384218056561697462986524699507279440095857996698812628195292213768384\
038836918180847671172769878560895422614345652098753974360294027685820166382789\
852267569271761635872590247932153445587829123282647267661774644600061955473369\
969134797474676326275403334148104563317976989709386302506856646605297595515101\
887111468717496839905546926859432071825488089585777038001022862931460998487557\
706250987019363129415818844960549107536451027804308171564039638569043928879405\
931914885497047086556496670779677462930048404293662898454734386316221088590652\
341230175331084589826347775488462877303370055447200386959388047168083435710136\
057306108278340871295750764006675329219427046376947740503113442365291661367295\
974301537185135381435233795485103544506890667880642637273162534826044193730618\
193055084292239201433393191413723843217568332718286981028397990427704638756344\
489499891976814323773622705580095175174739199640919045171094124720217692731446\
306226262149027350136985843957101148214697321933568008378831289723177351523742\
198549608801854334146492856438571229934652144108618092617503752340591754916436\
085533021500626899487184882896554267461459302811218623107556800890112632344453\
484831913183876447454420021231158691275857357050452362421758538176265428031422\
739804620088979100312056056492805436549648888872738078515694315730374646283303\
697727464760352673919407429480728415780096664812709669638404521899418209647640\
275848992260182648032744954088935459995589677854219546642227684608794240603818\
783999140176029023443804974076379196307471461862434316254959015568637958775540\
296009049989041483215861094902753107818702660108433919372495094199516337140959\
378155680068195240551691939535764975031943580215192906160386669337670595250971\
510124128489278452468341802482052960575226818191791084792607645835324043744889\
284109821263172063856396287417088434004796791945065085708471274735891568688775\
210365699293182434583593954646811797520448172554237573311212005987554761628701\
372770725690422481186142722658620120881636907564921885266536923530269416215267\
003181425892112349889239097116134304077344003088861273673086693179580604091061\
402804315628944944903541941153307238908064727864272431906213856954519847378510\
678144893789526235666285391233643341951726148016863797807657996865084289945907\
168310170700620133317222930181297693150875443532837788547343643792796393442479\
684177722092984998793645787780028087157075311543317911039197382845185749303225\
684877041050720329190268458855101820348811039331717355960714296656223773520147\
444660336377961803289016001726992975918132701220686675689597857964389379442408\
030254356934301485444902090821082933815674423516203501099672594648223304419738\
328417243607220145983040834021177309279945388797386632265264280334243555735079\
469722973084489058908565595910099929282563698368576641320324194727577730983787\
722780185536251803114169772709682316705052167415692955092991627420776481373853\
055086622708795224404177547319389322268606392936371639805472346143681019774609\
341868657729273961672423170921636323669166120643916042315547356369087431004391\
736375071388527420067440557859950499505328144490238648941381076500921737557084\
073593089390885990758084361631912735203185876780850321794638557367420408915301\
148512655506429037547678983940907721687008147458773176612287747353976872695707\
249270495502000383889473079226891647434460152075739669354328105619905695993988\
142212969875074084935300933275082553902795753162977411297218155635559062613694\
580434924915989667579141361110749540984665739418079824223001917398696029477729\
875528546489259258262166044495883074727639580176330976592923369386964563225373\
478942545582768588209153681720858139527456912749535728562173170289979184195316\
202581043238193502456343394615361713042824318925107352835075590697522103283742\
000442663559695107841994104267819349997642262133863507997329017598087812874206\
974461740482837001093741440358699409433513954223543212249059357786589332217788\
734443725042412997971955638107161498374070498632393168902802071642354160849311\
397428209458615746285480352451599817653152634804544010387296374298103962992135\
214495493067001155222108048160181138293969249874327254309889027389655459305138\
682032311953033881671395582400933495612501128085912103978522396727995447511649\
975320035400485218061846411413025866197437186284022917392314594342199174320295\
374853116779179289407904765389947787660851053190724996281165096942850896324988\
914063610304108947346820710192161749857001317934494821003106650963352017847431\
994435024335830715812930791791507829100129414142401719935637543193317888491603\
403174382959465720345911497233089095830406827075264820079565422332586050997084\
355091822271235463282587042881482386264832712374587318704460586063979864919648\
748490310112639655654237024494971547158535110113332707090586876951370340993906\
938630520195563038642454379153267818944788228242612359891358891664927391124131\
492232016882565075449493718494123019315123012954453733131002554667020394384698\
298953705173929315094294874661758741350158503832960800413264388587564718696412\
806214492313298759917978019200680922214975421388422022735439433059370862785610\
056947405456333407171763765489371928810618124910558236392448568756557204515586\
533574831210537138676315959179874456563388379095073392629710741197414869916538\
194398712097122320945552786438758615592996642358431820169713326720748004279125\
660072540559017165203221074504084074420814269670112844070147062853295471505723\
597137781828377450957908567768372861909371973129254639639427451271445237791619\
512821472707909926189053630484125810654486224639637587552086929706527883046434\
353164548634414550058359555486194094725080356085242967525431257436530916691241\
138213602103292520564875854615364698410636741135550317486470853296725914825564\
264302647823456173015039085787032116389632501086056884265005505225548363265649\
304332067983111240556377894796415144950053952139260711508393070034944949463282\
979635552263302531876400853304878671935538668221052175815151465250695627418846\
046792436204247466625177637403708380370371001439764066830566761494640079918088\
664687013972133401061474947278932799809418089884817122788315034262949796485160\
342522231260144920601228181521581198241025398898148146092168341553914192636748\
254547023591836011868942206285889299992070261150052621875820231538213402352810\
498880688578254818601184181470900856906147969545795713548983962932416525973267\
280844003174632001109861581929042014568545995371382291278867135777708274900144\
351152843127434305606238281993781900664743750312168051436835635085790292466675\
358126488622052538508790633223485159358831252947411192180067024065958707433040\
713620376748509832000345836766841722989370115901152903940375032853699969898579\
569109984818245312373616063517375145338732328888329619839625807987262031852320\
115327112392971167684096385446494535942309903840748509090246757746193044055860\
675609113661449516063697753990504101098151653258748095212985061004951081498152\
345465508433917385354518576355263219678062649522693144790721249952764462108314\
941839557890710868900254734837572885956523647715165473405444933111886835093368\
948995610137346312598249519075826030479237719505450698722531522426878167871773\
636179349588158962764470336854380855842396035485526406650351362399888671745548\
540866830402955886464649029413520852273640953645387072735420926023814566870982\
041312602903658561439712309193348041298100144736596913744094662593317651447919\
040780158735468720989282936535988659793055376484316297698065584201966597895312\
800602644882951211089012134849309533422865007859513352447271208311366561133145\
671412987713110606855490628299596585446264076454432928200495181511777185936397\
374321821606672138090865359288012304423088332120265762958338291907411203612548\
580990671023097984637082105920331771051298896997484809535921155068600805616071\
618171702157709661509331271076493176527709771206955108522820332144510717023921\
198343044770713176511782301037075698532451449853346313704874675484677287284702\
083651568688297721436796642553739014093688764238828932698225684628267403730009\
897809394120751848776386946157484204559671855676282944874716415928553197941445\
466655908190637020130595375255163495285441300983586187778567491111701914050562\
803190733464661709967943720270058711874358943011133207693532285750326770088817\
821431467542438766450303253926120035100601557936691889534591307283084800336990\
137845892029420217871760106253775001224732241932558915846285241134467635763892\
279474322840697789035191903052452551856568183783036088541544306482835731371499\
947517402555932767106301017792258287097518107582544073857535642851449439624796\
592943042317590793323804888007445964993191364315414953927587833037219153788633\
760978369150522890614160565235526650671522690288736800687586259546603728499635\
332718624302251373192270626655419911921876503469407613532491852874392549472203\
963526263742665499970524124973936535998711262216853052480896079106403222482556\
576111804101566687536097531964517087342606640018941060700278005983938100593885\
655871047118880083388547857098168640849204987558818963975646528323220791135911\
177857323178220183021632843381657025332307930005514688661205152217160998823731\
054606708217490645346515172173580970795589357572325767725020763854884948644759\
186607394333036343231853738156357304808956069288381870062813373283479466026711\
749516691128658853387967716823888113427720716371859750854102656316313928376416\
069516198897589281474555416955932420155679686298009348040263749586668959427372\
883082533278605991634732608109882065486539597562095100739142387908049270448043\
495294361627057229568468826495946686890841845797149292392819952914018992251890\
690997561659380741316547728352008590499695388113798843869207330102601866564986\
771933611212861580702261556069777999746158234821630254703056514594990818482968\
665072241048977332028801209687572401033895170430124663886422299337376538491802\
329052072001318993929999191051847884781032110254273168521392575225093586886918\
352182819862311372401652765250856445763771831784020826567167876936618669928647\
815314553830847909792022855516206675696533455900472433022019210646283572229323\
785919427331268839484080121766011007488129504499415677363138457454713311619354\
738375003697743180255070533534755330160802598600903175652979611057111351611885\
568392959206555651778067295469292584281904800297107165289775291631255295737132\
841421635758361413410001371407073604253135711111142278026242483547164415552485\
369167185830697641904291947322502341457060976010348627194368074456240296422946\
174821839361131287242538941180260366251640003988565197765080168297048966360840\
199203363227445813866165783924907636743136717586921937085078849205376152207455\
985916594930530711104016721336190310052819901733590700167174508386285776100810\
421918249016281719317482705981946729716777049625373233519889158785875376432514\
447442026901781340274481701299041159364226242806197653429374703919245684002499\
435443831618966142391158609217445595766732825679598836591489276192125355959317\
756118955005465782563799080371163895411118812487360501383816871155128173537645\
960234640654839752957624905096502206500611994334476731590426319278961228837317\
101323896455232254385853918043271056663974824212704780905330387387780985269945\
197809027657059111667349797190591044826206329472999622170264127935855856378212\
996155193127816074189807381390693830879406370376163937871265633473427941238761\
129234251504943072645422939426291223056602246766975496841756214385667106624624\
677686909525823601923244794807717730728716332576079535499711076587163250637650\
263232654076642115411334929592186875843901599745646373677909985734695906841068\
516305324392609105150163671177884537480169284972164368362532249955794022175334\
901451196966466046411495275087044407027820640409196321451871955814101113798228\
203983298280553149709984864948079004749731301684451929446436409011904783344666\
792626614653490542170867856450917201815468917646994627568081987466299834586848\
836240884141647096061784399756686911999847311672284301471048421588563577265556\
257364791819591680441326232586315679454668016587169215473593881782178414985494\
722342022769526783814266322584947601236289622270524664950244980488445213872406\
912371638184246676017092390941304326046054307940742343780193275305143092351971\
883645927295276613092970301484851460768301724131757941303940708177038833896448\
081526957091842481045832322096088197590763891634235679122689247527351859197118\
447610341105717207757518532478430333087965773076632900029185446117510896701716\
965855481081403426285738700848734748685303581217658367880078102084140519117042\
709426555027481294793673282617687468311221351905287919891269924914899235001417\
729718900420492810913499976707526355047560941190908172084306631741764254663331\
222475680938717027102005554444004524427747263744081221696086221957644017385985\
006437177775090598184923510435978015601445761543700539170622256404963046956533\
398045307732773089650671897598192303927879079333022849364649364770113965831070\
869908061486862499243188044933665068296825273202143820034980952983810265071720\
415958973522683770313225149218582683788140270658979258703216792430337117526008\
761831379942955431704824847016163926672688993735060281730436459824652430257713\
654034031224000881646815007183673123510060965530807599735727847993195783501165\
128764949251303386473506229270865299928071564050703301135952611425260344769999\
622027865750818617781416213367581852485445478191742432800625593417599099894226\
171660299421644095828887112498136630017220260737238938003117418779643040045191\
219797755899079403499525081453324275984107752872550284684065959449805227297792\
771752723631207435192812291359826265602565002745788400570030861610681849620810\
435518638080973839256683286434255650641875376203866718649499544644247776898846\
106978603142974332748434382734368341700415924123173153614201681902352478252438\
248055188519047422937397909969388614311963326983767930844471657121261520494937\
277927744338487672235592165580173000651909363164357844035506139765932251141555\
588752215086610518407161828809238935462748550375545338827822223401038325245879\
939410083689270746662316990663505430760341874268586085078793239304407070934917\
054525339392048727849306609138118545594945287282217250379705208779961176371119\
414151702547100648390799935480071631077564411350679699437988541080100532057988\
243262386306684190720956307842641921808166030666191219697189220512947565235645\
685905139495566275779247858104553632331160072617464079122067929342549496028520\
242717049788485612156611239820454637305374009188213581886792639148091033360993\
079578168554651100896640743644784944408059437253202351127081222725812516257211\
460992202305526788203452681373161306635476138880169789984864440498401945655109\
304524196040702248406805086069443854903026399837869430793797100600899332406012\
834573570093237497552822389280975404745706197417310804327142699236742174188635\
651610112271091678911211696715554399336103821793643351646572199295659707777062\
422169055554085078182731994839536780568638432255757688929187501240194911907812\
466047838761857463182596939716383383638751038570859475682370732239261027683328\
950933525212196884686867005403341453236868729355259485192750548637582380646349\
018290055904579499544280843701422283457099807907043523148498003700220349487778\
050358873778767047444361362443998585064386449798650675219441705907664238396599\
617518679787232005245751912332634476747594340174061178077735919022229090318765\
109841884633590991158472668720844501070104728229847027681648390456784421827962\
918915804737874870357257844390398348873198163706716195226412806943411887785339\
425048525963703486129163679191382826521472574635140181364270197456447800148970\
502175557285393693704560649095443622273571868046292777895790181508577361777969\
682926298079365974883082812336563900403058802163924611062619716552308740271525\
924659761061337496334563274567401438704621616054903989757911734594102741579832\
880990600774311521902581811703407080175176644372141513699228165104648790031221\
401026611619988720687927938405841601282346538404530063396683784057309309883631\
708627973535378536196947999156595859184519935041911647960566418454673503736263\
416347498728786156509317185456886267580785502853928897701338730514713264483508\
666925525465709347611226499921472802264151845489686660042574071102452745384831\
471077659627088483466820396667671739880584392704281423008634281417523068448411\
857776082702398631495500266111171224675726923558354564191399778456800945587592\
788022817796079801222311413058970508517593001045578840542820400049951120982062\
516409027755290418408623131392563439944939712461379003576325312418836067782358\
634838561358780373954484919020325627120587184684395544307712911268441180680424\
951601500997849773684276771608676090848769969065506681864146798151724263852488\
079253465058238396553347260249809782949734501838372884429788059911213024434231\
186537619489789902335805694594774087194686694880821857653574525533923959153151\
458421586026256850280117515952580507386339972700600333947227484315687961325962\
758753544949269446597740940104093323188038093908644811348512527983235905144824\
013327978959733388303904362263085302675311723242407226428219303697246753200361\
891430919934037141673137953233383289720485710278696162627712372774924647301608\
212986478760870625005672648311994503333227472659666937278580380193219227025769\
914513449901458927013014939505806043875680360455008394956443025500906700286881\
499957119564741521238961206420690967102316630033568404231004405551622903186958\
016802569830475339096047268935340080536347812562451676649195633549249774008689\
832935038316186172739445818465986483841318447527711925968086731965388542904891\
655277072201780665176177067389892011163621680220445170557223717589655697448177\
428089031525223343539610818523738199205897218220121538063963907214430909093306\
224987380019833419755038835869546934323939531054112534089824530501217390390677\
707902495496855510701771542646629244255543577731259858750312280727641634755830\
943266293125873245308311262876021616047715579951186737159534686180365004763838\
918552563159486669395935827771672453573436198125809048811337643735594489755861\
156874895295736596358244595101846183233352073746425175326199342022526721018856\
091963904409557696562490463173020290427117138179512965585333320288424674208473\
957201538607086204369924667630428532977898634502428712128591597713547445954314\
022138496902896099679553023972286740695668040540695207027046405819155085498558\
435529070870436820988683338212912832862499832418057663381342271175711939509246\
318855233976602201748611845504832420193065691365113407015217488475715353006065\
338719814403991856129366786791484202918563861177164962635881586583910998398303\
635067710212881585274707707568688896277615344611350613666968894115235739817131\
124894713261366118961567160889712133465533914528405384039310045607162806708101\
855014030299220230647575169181134100783516203038035716601964640857065391388653\
541020308444209274829791180560826268162540651972441324002001049372953281013249\
596271173278046440576740313234966916946686950553940694096088151331414038664856\
150866618572882811260684537280052846794003305555743541721262794468368736385429\
704724428111672982623649124672507796854955187034280371329649325163787628099858\
646811894380433406554766789120569123287847544391095444166264991668945323194296\
827614121435738548481432838062878017600921617610990714285141250653739290847990\
676965209226748918847148740903536789902241507004824365068029900447098509749989\
210289781929764008476644618468447410742557446239023717497002541770162927503993\
949773925373696036239212774976380266968091902032567830743037253236242815591750\
275384845741961954170485012067195967326108452926459835862351301489538463441904\
131567916143885804873971746721741883664044532415308109883123071920877620320219\
618086740574347117809018348163602284984353493699542481239922397067085229948324\
165662994819250864695553505376462397428158258948104339757015038877250957145110\
931226880509252112432064537762187389135751921781818130973880142309785263412330\
354847042785492313417655756415145752142945426050966045670403514525155695308841\
215251306527798493145314917022173483106089447584173183267004936706694964461823\
376992407532887927515960551664872093752968695462983193278546656326428237361274\
371521661431665547917763025639170145458926232611684369200683877025892167995591\
786947474975420672515914080116629333748561250888790316629750129885136506643878\
450381631944666827560871195496629692097465722215587771334137084264218427645167\
980963456879570993936524684887978439640412797328669617381453985974029745236316\
539819050259599331214319262819172992502255163536499784232838227223617341812035\
757756244499704473376793438751842672707005419859989065243275325345057565298661\
024891551571498567511662345702652744214288229995568571730204056707916656804241\
521528704488166095433132304511550127150957895351806272225321014566343657390490\
647566928526741067355923964850693854756488114479107604961978087939951009490924\
447936005302661885723542149957322035364103446636548498443910963605610316018387\
122885088907403587926642067862144399556474812667882903626944673023221983707220\
852558028064535254948917693584802314285421997619430917213411647846817532208999\
848088930643023117637148082297395308964537581225899591679111758933157798133747\
029053859745575929309400190780440204004882537852548183844743922277085029987099\
065782023906556403815363578508151862753387426632441779444676848321176946490734\
869373252151961685750765548165531380474680758196723358068752762990606147227498\
502287951035669638505410867258872386780901342468456158840284479186879512097573\
795908776494669805158028702838737235887878022670708786682045693863489119992735\
569188557491540643213259480353099016152995613556744776829198744982845381315565\
794424501645945843935213687174112322961282073767990086754283271306633532894073\
292404341699329117582503621960439353401310036224515859641654587660151606969061\
470898641988117223109405087728943323303615727899271835260231200911808146918156\
139528658824347298454365474139826084293662840451326622208261988609950482658465\
849061020328426059599271435035649378128451738786463238648303810282976002956787\
899938644497145365259696386753261221395109351338437171164735317267911499900410\
863704987674473594581387827667817948883792556055210370693978115984279724211734\
254960383599825297720602254187408010266855134518636256489884610973300486846829\
243225436063080195327786550840355612876799573861300426254530652342183503509051\
591156803480425703281336628893079412899527641066619249514544684734613684491435\
653394785390627563998172400158123374198556945883530775220813263391897417969184\
700315722071569046709361191466824819807907372265595977990569526404728446527211\
805222334569665640333455001263864422321107868495665730103278674404846617153539\
249070108891517114064179898963163400417583236196754537866294032317481077095127\
247285416267343636433608648318006309443761081316704145009361256687777623464954\
497339868420622489219649297795433555007771487855138776402167437071529706742877\
424005055078175316379455919929244665410957531640780636769341577042970352457816\
420358079411928595442433470220443423652992026476197015375067244927026999007628\
040246028728648810675868866140708922115106205056883449046616251242594470222282\
654541293499308026504131994855498416090505568377588866050967913812787181307042\
654314753121969721008806570451148318246186639956617525423623862206682757453837\
834909068245362066708616294551595511996513120088374436102922526835880914708337\
191871501575220289542070606568210350463004368525382353864451291677116584797189\
591348569109464316517740421338372829806731319354627347887610925428701084449874\
323405579813817274453476463147464058403156685402139780997796388402813913467865\
998017437409033297246765792166481942000859861112485314329799705161209676921181\
465408791021736511583713291356181947482273864307143482055392380628336751511628\
665874493313415473574633188551379199174797031194465814058988729260565438187553\
559274572205139575150817840103960057227417040575062942062293669145402361291388\
592274331395264931559657330084389893973579255604620285931162751193487852973174\
132148891281209894725775304377669167206031824112853284660150370440363118145812\
036594756600258019777261970899747229422772794674708629310922940149671751846091\
809919878274453128385702286527585607552959499273071618725163870150115869189838\
950368208778851292852396600229328218788333993444304329761028993530319131135931\
001722221857018993308533358826119684132908898608135898359381557356117528612088\
787573736119268184412732946871197741871111438178746235465319896235319834530802\
085380958849805735425922872384306259333907642836940798573198993892322371343593\
445127599436555181425172469730570980574699661969367120290864581385873415438644\
190815588089450508018949847539543783550389993523940958045562820072370946788877\
597744768343417950381083658367073656582100673626868479288940201594088029996330\
799672103024687917006932285956784557491141343759067556173979652551630610805252\
783656521990000068414113732256795148747185967220984579346020027253277050426793\
323223817165232575603556721371550031129053597850195403500026911514626789447787\
072057136466521935529380046357938778014901804750030903351682986229874447695309\
523550025522327006148614815236706767517376189379166706607058031419295964938809\
076825235386594175874354828353546527853497162396894930681147892361522217443069\
807416391967899772998045044415785967141093517867963278936734084613371083167902\
720601411136300331243119392614517307023099135303214624989989274689344419677195\
559526358011839306399573122302587769633157572748326425799900668867074087620781\
518837484196739355997167824485416470793450328829458961612852419703607632442809\
876549513702454132799312741398483297005923621980423627597728232141342355430159\
729125575714998467610943853617093059959338482991994010494640140044806687750720\
482439891497827499722573473734476260455002336679705410012961741395996472428612\
973102558019017783680761652313166524221807069776496317700711987075731144096201\
685841015530714607055318739035332887135345360507173557335536477512219553096014\
843546906709351121675847065074627268885611496691629297022500826920592479976190\
271369136173648449039424137932288404548772661472939276499186029622943890477321\
174581005561977228779342853308540226007426348996246842420823978668389771510068\
167364255044364265594658399141266743201511800156642227272087417057925115723692\
815566702828432518279460612169913333354267449375536354975405262724334479926563\
670478969229959350158629126597427462691590839759458798516847227219672353964805\
412827018480704882086470639649259058065324636805348843971935115622707700327494\
463200935536573151830875004500964209671711947239980641962299490494377743019001\
621098735710039283266471226668786584523420950348424188759467740779909676157262\
492486806496587535321658274148338545863070455379869354694611873948357354161740\
656096755588133842942112333138416336217548162840440789699377841659324086713440\
120706590990017754449020928308286761736753705077606458780487033352763867547521\
388031303153441149207845245682939448084386414472192529239316242121972472868589\
855593578465853450370103246099463724852301493837876102768475916982620782144621\
952930376297720195880174433016430968177765447588255051916821469849447939677300\
071945954946530270092736898172614923304601330546013106085296747762244308236885\
934449437287645722503128446719295077913737717366532421657138094695919345338783\
063955440732554548369079492517189746759302038034433323635936418957403649088448\
888609875132247249313057596486869055391275609357345787801370626623286588111746\
289431052847952274661294619007777674464804320690566921304482432185909645971883\
731134517463182878902651008860621559715277956934408149799214530105177880241780\
821911841416329638615420766344329732711468654881338566139425483988448292442243\
255381694321339798194300809544746334321008049343262648348624826035199125430360\
333468511219767462383230790604713557387054146616508184865216690538731737466517\
215833001613506703143665760872429188172006851177201016113652678190823694695866\
935340905937384322915642870787776564332284940075122620593667759227950478323809\
304846660061551272972493833718207678678440079633765499378232553054622691920012\
237795263444183892913749033136174814894688638090102340263366195050482758657227\
340255736697200205362372371133436538350201739780677422872755545876256484496681\
814599906574774963067481181117815101018127559700115080740096118050264047795300\
294325814209158560310233063400630996057745781360194375998544249314767854059380\
357721840007046784073588911529417710869028783679542081909649408535409056425277\
854920963969909002081221539635753862953554654060660286739847708955831798464655\
867539458691353314466117652858089574642488927266013277351453137275152746419278\
571640201040114474673828539563397983062559909987648174948831359471502521023587\
101751506759234694109428330969114055273272465439494120293829045932200660454265\
339019619138826124157033005437141860582521442948080639022157692571467920387892\
097273000010224126396947521935520071784668036769524736197119701077062145386660\
144256647558618505550260138994780942733245943091737987910150336486489556079992\
161843110039077548913962243164894939338913215561608401850219743321046165990763\
337992118171835134201664550091102003188536530810568584158560468960319167584748\
319443681852336820457865747155314057553351658415408424959413365602488051770251\
883075052399979991568913887882587666460637016986433172981522549589451729000759\
410144397474852205482750060379182831138836661827274136549829346117467399512530\
070381188709107086305886055029540436365389327310873868685161841224518870024533\
460304832052384756018592311075633304536096523933316887321047017420098551716684\
166522914942593237553181175672612560807389201415568074623423386571277122055810\
630692682704088821091153813701821909593664758817401378753880628720591725918395\
322407695088814890877074640653646912691175762443389139294726549597169103940666\
304798721902591891974315292431600261682657498178251136933202819553424880903422\
837348048780902232104203053100740821249429965246773209771760614245721135558338\
171443207806984417914238859297796482330466446702001037555035825163575676082791\
016416005089065541021052460187520233309193080399967813217849231934911034650552\
241156746146811376589100986071112668443214628529740807402280925755653934644128\
577176326214749265621374385284501703653112528090675178544203339204491544482957\
882005764297686182660724456503623145484798066607976969934026725297795659445920\
641396169049594360906883021413605283760540721667275839737427233390485089062318\
219810632362694439802200198248895562308857634311298681794203735121497401678267\
165981816464658902616406135910733867245893606300242336051596142219584966577085\
419971287675320540612868733177567509046039252873337754407851962365566682212013\
140784297758489601737163840906804494823748695053449214041140807776676381787721\
110206509333310402364593112217210712136628491722875899136636565670095582056514\
258236066825836491714691535579693929621905969888195575122915284780955780287556\
510332054640896373075435098622002060261691336690812644680508996914002949151416\
805642349747092244081503718734895767850865212782712093907431795342619629583319\
509465488309327407029304419016079574111023658191664733960596161954270831703057\
076832432194631997177705175091351653576543001067809522336551877532000641271088\
550068982005594256743572574158484140640644692458836747610434831560747982066992\
771312964828104430599752013648882256919794607545640939247919379363773442092990\
435270070077828648679871863533538514333133813103963254525957839418956227787334\
319692361912324589986651831325037255709398759131397038772267554844703992903169\
514738177512552106701326615042170237754383329329065647154877377205473672353148\
229767730935864068497644943159144224514860427350986276198069933269920778634775\
178538324379665088176870851330030631411648200069623111341868132495492421807818\
458983528905456005984128125048837067235483928475582915783302499551503733143606\
362203210940201490410626267763326611619264146549516024543096681986265110759360\
066995189860763362388299620912802562921141944872697611049843137893968098505215\
114966164004289946585863309603088746166253450873147881976819362683761045425710\
287557052999573963474124429635883769757820309720271006653720221199194025767564\
879366964130511513047425726146002984606238770919492470427877471878087074788674\
409945638424944371868149064499282852846729544732043571055068789286976249852197\
453686241228448260244318255112515593018254596764747423521825351489056928170538\
025001266010151338808267124180290626181929710019502049608525068171366797991094\
653114546535033576475475501794059978463669416137899366558883623735038639746310\
625031415206635157275942725896681569925471361086876776454093932381686687054616\
345054197104175418770556885539427218392671283600350802034259417360873025628525\
287796301489392251591571721322300477373339005772061404723130308645426276970980\
059685156359894476603115189541786131868149652762276368225709112848854486975923\
919707252335157061808629823553584369894485074151969623165942388176857205826937\
605097615606658882404880970347656742837206894737481147500888343346714362952838\
428177059837062154687367165906760853720233510725668468869852913326168506661737\
466843580800826495592444549219772071849216436013878597319962642075428252518060\
527271900065960849943237085978642312096755756124410478665052180619217785199565\
194179863753987344606340652368354339242644437280388532099437239638088568723715\
598020232335350935644932599630917412457687943178349729726934542754229955012687\
250875949063407537959593666005083301924624054383676054980003816993570111417104\
141698551527372310202190107792126608737491763988513891482216617892710896693639\
497024744833774787763049354432976250999479834799437351047369475035053613588606\
423929940918734005630098973069320197583168351909317237057843565809907813284327\
507956211346031781203436996936072117749409971260095881167560538845009614487787\
278659907957536683462215996548107283591045294819812677363503731325777575562777\
989060252775825008758056281071041345864877938213525821452058102221470114644743\
586203031651976159095851487645471284598177914245339808965371331939414951896501\
200448526623995246541269701254622117298758694737533606466951528116193940395631\
921510500410894745690445636032957787160963737123531887827574240679202578924769\
069012501743530194899548738943607774005341365307616655014891042963539107428505\
574775789459992439061134187566452292447729482880125502528341863482776719447715\
985810232493241932099325997629442446213684350643431893575955504563743570959781\
444215995369469214338498411278358261773314926568584440547699055554266489507480\
933911358242752475834621947389273216781962650603524150095226245043638855357560\
744341710211697043306595918201488916601684605730611362740193844062342994835929\
223818662180647035721177237291001742356266896650948044383252494587209178343211\
436432179186325436950083624302344956397788621998630904321843017399384122563660\
601649325772580550921190876237553013871377637617660238524500550111906801564945\
989969991939355229987011874182967350178665195969015701635936087681698631562660\
860968672154330576776499724637901291214496811856925107006765845212142943012049\
911616481172874103431780068808747693716051660752734031755595309046250151235265\
998980558460331212312643205135636052279204592304055052180720866124989303694867\
320711939521063838511029293274843785562647012093606162966668311253993421517972\
130619714482350569606054641879362152086125141527606592199913508492453118724497\
947597992287770424355544077946994387949030722788857243930407399980002798579061\
551607128823871790498430612678601721878246965434510110777805459425493335290302\
576532244436691027352357657226493921041611221389857814141759375197467646571353\
777632024943517060210487165204926441322769045662343032960308865296875847203956\
968395557546208531500623609571488815924812258158715525888096340438121720651340\
130996329854044660709833212252011772277524088727059803626802857371799911206602\
677778860245581710500685808287663972416831868906744952893098706805397842005414\
016550194743969196414953495783590283123425533854219511032700350565249227772309\
969860656764171363804930325976730554367370890521596338464689576591336967927257\
309677186350486131811784153777819827928646468825892739382942652298071937055237\
337539292637451744975329750268822648130757634443071575878659838278467419228569\
612535869524142302322211445284611215647549864908673581712409600732247666704182\
453786331285509705779116365081351224937675577483896088254693307418591411647917\
415685416701333237895977276269666942371464660700163200739640094383510956141368\
321185237151089256393320815781894048766522197759463119885491304362021564467579\
268358177553489873528505698691964254106038694587730410542470247227060847085743\
559056276806581903589365076323289668421226095137767413707294026628447521827296\
796196669270420721264976676440830698326364353195530301575032318099889332062348\
593896509741357859073586591351659586993911601833059589593115818472261767296234\
650167277619986293970145761384404503783687363036455752879998827627913858397056\
552480974311004628249407375960272541504305736975891856118406437149222976849983\
831601505290603433801670913035223141549964465111206221859994441509373136410203\
786093843242785101697293326513883472828467761902045148076200448392521019977315\
602276822138142846607557507921300403098515021591328291573528842122415307618259\
135657709774039149038800457953351411619663512295958934568694932031682461628701\
853357654652867549819167052352038174673450233839625634126413058254143599210276\
470846939120731662332510183595074864415789824920266785453192853697093304357668\
714667544071822062932794258020795094645702077868642768156962420575248911825819\
850435750670346141116293544708970271001950133844670999765646297053892287845312\
430711669082523685125592219626026581855514098532605154032835927531775652432314\
969083797270905815282592651047861798801031087137897783757076652982915520894207\
773222194927185399119867566224746618916432076166945537741756616491310950071580\
752795633383378803721501308733433126061598708759755930022047659537636191932632\
931873248696831953686173452020515408049401244918248481294467746447747960055113\
691763888886590205211679700407118883959142884449977632350041697796679252293498\
815438070989479798650007936613936737972165201091649987510637743274753119188242\
039988233612299550914185059419541624480427589384471750635010898559684125281126\
118928919942110222444133464575479155121367543344207477481167702751799400099292\
478008704023102796105069560831603770361847071616236703415990805807805884648165\
910555961201776644396804508388654303838679979402462839427510276660010645326619\
610977478307792360208703808501533735088059873363039216458962133876239582571013\
223000373447099874525311172919893167473002804171294908441447611680536899221020\
313752012440387428591379834697946256715245248803018379954760874081754331052000\
366170537051474388624722073409232467551972985621130199693851948877385531611554\
244633836721413942065945533263836820323654023427218749416196914719635902785751\
613810546399900603430608511995576516750816431717601333214995195590133160261452\
380964359724935274617032134934668813012119030941132799983695369408771747376283\
250450628145622847545837972676133495728377434414748626755270629110368149583768\
594939468381505820622338317470333366406748703526063351246670247423992481301087\
117137440419399034232350016620255638724362186052890425470040267444860859016431\
769253250419905150325566078384287217259874346465335411896015326006385670966167\
275991316868851543653861716504200968497744075972101875146599686200702615735561\
624614432418714049375168182408031614355821822630043640531513046488604050983945\
931743491424517608074459004824761330323312831497042570312758138909243142531054\
697424886933441865546116396647212372425322912723612963005583515861393149440205\
859556878939448146753330058665910253052494762940708273080387556120545302512507\
998282192804291830810785697236196455495438989320906805534418575940073056270048\
880816703561014587359376845320327040218923710726166863397954198259924308532739\
142787853065463375260111944120775679881830547155608314847292669488613949523775\
813532602025345140365285139125704323498049777868362579716598228621675115376927\
369898464253369759993668246364833118970947904190294093453306999504557417425092\
079170506607084548939075339977553940560059734291419254734181787072560190587533\
091323151916924524436380742710391481547307258024395618468393994642503941523267\
014145181723732882550870168789378601676769130627982454032098823394237291336159\
141627707111739472383925325827651662575112028743705070267369753241841073173828\
165653165460250516762484845456564994659748657300299814756882790081607031882305\
186198398805856924857242211890792931794811228106230594251519590518083187976576\
497839299326303738959465717258660967947677587343124215064677751187825281697432\
296686439802534808911883879572356066103069420764072325238390432815302808244557\
885095392521825382080908706505329381386897484216901466205831477019323760064515\
695847391278784570089273660318702083254297569862175062803738119633820456730294\
255511105028614780706378905448250179473628528451491566801595714366613669274937\
580006266518423814387080511740290860261199828187260452689762914842534727385776\
710966409956243570753733804666315227265558011318330461794689162871819889060985\
207366322512350320406016022833088372996175406515180725831505635294804394764557\
411675487517272111330710240318578609871256614058379697195425376405986250131917\
202371058108351924366053648038973887858693552870818696768222346223245533133706\
569800766523055078341291170748997965147427104578959284861069794648417493325437\
788108719631435988670598957749550723586159674425367698282491007832230226118289\
337897890942175196252733214924417571679429167325764780780326795995018011773145\
896726089811277512674167305155092770938354807474384656301437390024419522169000\
821848977983916148465689089657165917761536191538364031376892418255157487206811\
467627369917415930798745161392982824003594502205101796539788949325409389928975\
784539492411056019268148496059161720461230879340145374546693172442463361328762\
037420702176889559639477558031405527688854364958623006332692928941480351113797\
827506074385740489902811073091574500372620216872815668624665231106034553191167\
656569339586596057951412682529877812852204838493347158218404748629283602604659\
787356416226156801638309744547600867272910635527491339960385501441417100690555\
740860515949702201798882369836535491450770515337873504335578917836134274229057\
438456137817995920469752342759094121497924473772513710587615661311029382273874\
719161652588862548909406894975816360100656437159865117145796568874548686534553\
751841502969085555150340278694638091242646083585500688256237290065957197436958\
913950343546306702308325326966652412647406219936673251064383770441759282038420\
903872015503545991501194176691772653291783094898500235943977990865100195822863\
231296145292639542181817179474612305059666607934779847189211107719982930611610\
904417251431637871534582717876352839388473847487002731973415906126051104895091\
922012935923673911751737166105625915176043141125428354922075508711035814597306\
653408443244611279791314829784610126449776168300710353356829163180452406161307\
155275274262259920304248376672341476625490109879075041634178376126745554176657\
585648846797928816702043059343845720382300556277137224684529562419728309060338\
987926796306271564394997555926686103967255558713598210963598916195347419472497\
190365540272498574435660561471897110483337312270603477888403224179936392904023\
598900720673331353594219370625374152697681012569830495375068946456227141103658\
135578432598960655802299240924786786009688047298449151647483928098240546073856\
517923697700676725064252181035346915029829539298943660568100093567218428169223\
435084524037125601721339196156180844890682136090685150600154689738859466837479\
883932870747505041140253078638268292763451780748985177420593742497775511402611\
796971597521672873247702191445907633540822340829288136044621159921838455455903\
758224077859867735644677615799898874746675094956839843576983291600170510492541\
962341447371506001435934962870063794429420486050273484911019502756508077871508\
170658427067321135273119011426156680870324176573778366041702736638257110684795\
802978221104896544282816312945586071580623536761135192634771807347415662333591\
369699195006658022334528892138214263669810266529271971283264408697888089177226\
677768930153326638503890654305693237977364057392094047915485425891288781686375\
977647909658016794288481032546471751731968076099129280333058736143663387774407\
592726217026336096885786420834080099912288620532736092510380779892778153320626\
464277821325748939759396103699717216884539238915277638537157781223511511609866\
261139360713279803154454254221763501125293172939051135201499613956390135508875\
436356218820926892064261527152042975352390460847045612257483628421099423783993\
951214956868109493061568335493878929113881901842364647601375387360991068002205\
878458034687093660536938045202764366242810501631327469395857879558077563105972\
342200085648836098419226843274658883642724650117939330150446198980854736354261\
634549258945017414020273760101767853132507426364622280522759149194135051963156\
751232682510472021838983055256934611916297205968833750749294033614356626944161\
332760222584612054155663758538290029734944220450021078741896980380212539849956\
119865605417252383752761912366891711233711631099814868028761855946382778206604\
891165039697592110069925127220054993662543871499577866431840039114755863420328\
182718905898320427542359637126366046259740385072494329941382321201458526445106\
561308896413506088025722201633282854717139469121035615300241575438556766894937\
038064259603370254348998871470626136763048311157533435857628133781200992516373\
561789671882973242209568587160262340151020444461442415189465422788015183300748\
250470659950610415270270225382496253822788249257043159885358520238693091828294\
199311629523624820786022582234534034883246971069766751200540576470236982562058\
393817685596360886171570029820361215772107485914856087039764300428546373436844\
686985082518224038833257773946763266142244233941553768062060511886818146220008\
507225276952635200179919088918906952293618576568955257976316456275856865030740\
037231820801555650776905281464395161689309415347305926522986021667373317810244\
476960158800089844132345802325451340627344831015857384313329937428210775057583\
042188111312756169785587586208829153264713267483063163427884422943036300136196\
076427669697770677427108712473501004468611290831906276845586380324748861936308\
803267974170233177248630563368921574955671606049578385684350341496888897772224\
177223109367096379023578275396615162343241618937789945525063170032849827284145\
184993423806206984660841253917967056187679048906277904534443914586573040053201\
306893698205134864484202076122166553951624615452463988206489851969043532502862\
265602953167726603497696297118822720478652230644096025302775447104925832366961\
857577565111076152952027029283179713087690941206576940654017269268647838169404\
828550598606845556304683149123859702537411994580340390310424164904097224049287\
774745312565999832603710772789585770505528883016123031538909310286048814008586\
334179993080969210164736276343502850335828634730306885621864093215609006346974\
402384400695125887605820314183352973490302288039385345954647890810405797870369\
224136485886742375836390639198578511614601527543868499520952766619133526096029\
510565532487170906680134461503801705520229051586850220868073284539236680921565\
566579188135397446408523743859276066103362434368123098585971813155861351765077\
146539298379102482673804938185077638197135509180922520414880132373676565654267\
193780165514787432341806795302106637392253630954321236156096233505816406986454\
662579399022906800359560522268867295752888966898813914613850918483134286533089\
289740530500697218171933364857307991536343300769366691473842653401583738990370\
241646713979227878042195054291681203076531843568960203869702583254536463382865\
505192086424219498215700027254735140300645923605277159573672542709120648482762\
721179843858617428057432463574873001857904888141755562705295346276210289563819\
276552413253628045954846137041969439708031749655762860400369712784051366829284\
064038211551784134520934618769798089559315592050839586120669076804972850581303\
850901806720707202482391265671553964111482278761076998762615233506629870451686\
734727791837600193760056926171283721885848001736491983914836849870385661979105\
093461335394029642606153845736954989001082408043469168849074852130578778822942\
229295560944263547647496471481448752402833230070103071100658043168537337452621\
661169654692888583506214131579900274638741199715564927540078920890635076521258\
335756687506690939057211495976708015281741270065467212853194834734607848654021\
148347992801290863113324339851932675674663481931112894557949267194245552324032\
223412245233749802664678962313908997954160024340301814976584619757714250682071\
987447204707041351899685071135403487471346017091355031639215865883670792145422\
267850787832214612940317760996866051664788969799328498105541218358095751335525\
197231734898211144721546840118125834033916109516735073370319877761441664030952\
178355134559593818113507888036485474247759204808517898311965136382249127121662\
027999555253020870764722593505097469823645073085802804453032601122775941480265\
356202119447316593046872395422193972017601197933656727220890401506359415473380\
039597361588193639294643936631312288021883047666062505391387432939525786683252\
787360173396704032428678182004239360116220902075709525514486714948268934011755\
860058023363146366592907532833935964420420358686176322746003005455592338944103\
848350982646856381909545119725279448010654630506191899276662140644507453923549\
845065103987054634436559170439345098486461886423255503900960676145732942464910\
157625003381007581997151106376270925162458266771192401084530121411454456971394\
467684665047262096770030051606074635684166612509414104065982189028772392690441\
519666314372616175349627049455724842404401702498383125614565693843580708272049\
493216031394520469280660671335071218616624252669380028664026217931703889016229\
623829942733671266049257690179889279630763534099845676974693184368381176450236\
075993685291390675565779100210963166774322216603216724598047043325918321774540\
242988173394925129748523801062620737193464452108296130838107626124392370705854\
427031156654784165894018043830827575006137667614847680069720874397065815569083\
284923949649180540033045242292620706067777978630854618527644845383086770126822\
969876046198791857064246856123371800663359498544425071467654683547432379511362\
685326764671412655730998129715213532915387472395537680838975723519575151073056\
851773326351180390002379156607824999514660242538033017113943637172656548307576\
984279851446647349339743098692597523924880057188107736197114653345450846888121\
655451881283470685954837515756853111764333313701702722894118821190301219382809\
649756175811835630358693564251006017484640662872573674677409215490366643813535\
062085575886569395304345900081546619515609779397478313254136056918754994851097\
091814193653656965238258743970905730916551755038440312864177537685041672541030\
237603915331970389073307365799329826931347286593365183616316046276130108978577\
436559426524994259068266137159838087985713452329916240638651727376846732462936\
661085197306161823266803117758979020344883362976578379516892012749609577780621\
432335978020451027551710147355068444873932425585807407518260157332715804137169\
983294837068766494036841012772425307151920774795831288243843863309618082781191\
129715973282491937676451180176348814661593270979528558242913730773920308358083\
213779819700708524749900361130197807868191606083364061970068253171666558310480\
047033932412740653886541755522335871177708013289979341313050758295115422353083\
807988333133416643203517981743976230089996893737112353594324893867761465968364\
060518299993229748341109022386297616802123498515450874799294844931843792038606\
111667027336853561692192688304684732572181008214701786462256368392724961562913\
085142853338271196587184727712039831139804850288708959380740459566773242614788\
937973914860608100578574347237681905628347604274230886852118676676552428361274\
859133158265086336399902930130482965906876279880202337639772387412664011321753\
622230511444202628250133154927561103672833625701380435733494109804075497091918\
149629845756473464728292035893301592662496025545722311513273617465700682748718\
280325393104123131403980897373966755876455380915564659845502586680916964903080\
365359517954969848164660723729640088515403459856411354346753317172223471461533\
223176809088106436166845275770542675151174571489232358215790292656756760679116\
541058217644024249568815582476349518998995400111011404643678755266421787797382\
599512928296942861159637385284304664881903567275273876578459427121162747197747\
042036058550917197349028528322090066611353648269754021342084392625813790595754\
298171746758973096169567063129994688014942619547061311662155679259126549569320\
734664539464494359075326130327600950910315832452646413514156782245172354315480\
536010053508896410993784313852826691801019021978183243188699168854439602676418\
630242244587558655483814032799039087793515963464339835526346259478828404906337\
072545577858413112426387712418871022510396454443930104515384393899067043775195\
212552683936469997782825263064327417420992787557981221808335420327907475118834\
096447861637322171904994516237584600742574118300667120531281219196488955252570\
880196194936884753928017045049353176444485807847882450929125428953751483776236\
567754204105959550263373589022815752600633650055423790139803594773489833352131\
248010650187505591630366541083542187445218875733887315828912141225782365630726\
769358829134678615849960484263709687993818634769845592440225973663718005163932\
117081389994958679993515077836867014786603181873734903078100183792062321701380\
282329336747695982111458706628480535997060565356508778788317674153177595317211\
991264741232227628696493421755788803831658685327112055466099592401654463046955\
165323171992638161918758114939102636773117692222005131514553222712702582216322\
914917396244854867292695501993249536948846551063748521533639615059962148843960\
527961194095164573536615933706288737993726498788132735274651548217920079614030\
925023086521910242928487356004686268810227746856377840307824104412674100163740\
354908688866547090018478059469774305731540438798855071010000947130801126603931\
216042513403945377842108022304178529626608695625062824490284875447751651877303\
870487546768854252755791258290309262265123012891960865397588743883546026871380\
241324952212149916108964676303346693322133978176285472553085354808150471428940\
985772030969486491469701273015909774294240444576228648552805577973799124334694\
675733234478287018770253740195996718205350134573808567867636683086312087985156\
932122202904265190000615782455650463013361782205881134168906578357614201990138\
370851588794824304796492904085085801686474361604515467967428952991806954501088\
531915919209640487572714481563650616711903252016890599324435014320993057525435\
662851064203071289541458853308862497207757544663339711866452777585362996291426\
950061824393476501905026324213155733231620376153669282152865619610050514569272\
634884190602121054075359215708407654348909885192354760463414410692709836026008\
209358303509898319389947682446683952364542265030856814293559933835352447988652\
130260469726803499295011056698429376774475811440299823114928252969688624397479\
032421457332211294599255951970755119956886951214538644535276929884175880689822\
846424889066444619707127148523756882950460908454631305158519761672722104343892\
439952771910741679670089417039400027471853553729959476975082746148703006799619\
768755907850863304797015932580253835595817460224203781542907831874496132149018\
235181079639978105105230328564317071709198065000524490971173070486367874576497\
739951923461493790585643749829870140105934988330673298599835210142833219423330\
813269875248321068477911517535982192371913962028608239964822593836948408200888\
776388664286805347175273093546049778364313837265004041980222077384366608302903\
974580487676264175557177138124459092492407012403472678184170501311147323683474\
683170686709667721870915797369957276078101669815856771117027785970158371149637\
527293037367374659679440880595770765670305123806167758486581451861672611331832\
102234620993733112824410586325845683764267316714045673042566159847199990702106\
380187714844039617605161997472781399527928554813735694382338776209998148048026\
390504176604045413294692505272959495453428693394095880763234511632231697234441\
914156895938157268002161755980675229692809677108893493505028044897493003816234\
276358182486500539579612431886140707037142927870990116331219945983517180134113\
574819273147057925205107335111423429763035368198928080021778116610268495226483\
902340913382144288239618300545215530589680970152085043065796339912654414249989\
019749583077630550961401846754004749297584450930721915941994448144235971678112\
688259085668117913806910124366044069847576118880260184556532706639244112257721\
951626888134371787472599001995185387784106828132351156409991922063312658454775\
684452180252460514366164874971181663004009988045141383026157428053790280482734\
738946029725552542401086191577079250462795457839493606569485037659909535988311\
423487948834020795178985340331919638099024574672274140188044770328547238186532\
700947831634728563277204414890952434974562280737054931675332457527197179122515\
944458488011690797198991624660839760785597327462321447297450105523625256221278\
927741029912129133260648770924929503638581975287403140901838803565290890495782\
325993833411971819088029133003564699305416094662634682460314568185740717577452\
407103214414822988274582658674285678142043209584513639286889786635366125972771\
655365564050966620702375196221230589028726691339577095620615852875921507514320\
578434601402714321576232001862291614894571773433416396585460809498215257777933\
865100566037449762434166862656754284083986224818332315205327497602878075465885\
756462538249899830429501297149713377365847867993541144871930473279661483458340\
425193564208415575177577354934374834617182061457545374598388818845293635039261\
337243290903340643313397242697899973981630708314543139322014386425406392070808\
899418765579569204913489082395246995133017781193711739096164130466361786855011\
130126899994401730127736596949396311978191410924945463878779649639494731042434\
369739581721246178744649385583285016159034519817109227779959711864884331575157\
868192863557059426811205159237142904253147905824688327180939205160658682778692\
082011809542694909368465475539409106806215610775175939271077154045783315755045\
613722217438985417894623805642281656562727748291417093738202300659722228050435\
612129409313595427712898094040363353065682008723729482898403965484747871967518\
840175838125864214589133691057325989297963338326869151086810890423093640830629\
105196760066188786273942320870891940869520340856487424859571901471350977217103\
084547382958152716072183435694537085172472158932417499161374235377488548883888\
682785960548213144515381388652461622456192812836313824769334802390075783919239\
516805278409182441926393338117905585878583427762663171569716614260650973514930\
379671250797377069567811336010589470601456790703184240174747257364358059480845\
456620875684424431061014587687009947833191794692701090857929072258924540987193\
155957338291203394239696393855864270574419908553002485709851529422545807095018\
964669791505161348391771079695434295655243133681207736755576091717228753059443\
626609835164650871903649648059539632751554818303666938631056439832987313925371\
013274474936798917822396298833507001266916093883835680910556535940868159891084\
519819059253357675642414592807515948934102965533276929529401994932795282692798\
219650718827329408768105070669602858842469869626398449868613462757746765800727\
813626150033112041605170991036251957784487224187943463443782762773924927864235\
956224262776545756176987590122744997900022849402237047901113789488558090343800\
991692097212378931066255388997304045443085828951664261737420288434703225752162\
825450753955542233194827601682760641673232774132916232543388084857310812456184\
668607603529356882377813875333246642233545210279820067939094384489352175520003\
736673191240818437666417111921635279782550335965802628399073045914224568338381\
537380814992605711193605701460081567607439811444122020988154902216281804900303\
046518640986201903061062102696703837841445364405578317162701176858747824521794\
746035205190926997419981145005946588662695176760066037605752540812605804693213\
244908621603186297521965325444407432183682612854658781100399638032722284081263\
264713409550030912905572772162692828539680277303802249233696489706273204505605\
509929035658067979489894513447383454872704539101222695956421325672782296096043\
798552599581675219398885667482546562327197002038758447013001447940000273970252\
895611274880199291061379584442955554843233036285599683807077182110838673308931\
834185666231460080577163238689490117853573241216165103408332692701749840815707\
705073515857185024907342506762472391426191361209723729082250456831384716967826\
278032383655753306968644432658498198865253489162196754033902874963504221450126\
918622943903737593496268381589868196291406379989898789375571989046826045407099\
091015893520183373861377640686072257607188873619211747518177444620690368447043\
408393714698444231182673206759252380093127795849767723629427269179359688073267\
564287482925335221202657671006168020029769571814925700388917513376472209652178\
862279779268904866000721133507290947191066035508288403779519176992320279218876\
966008761274575522874920030579771911032826051943012864542216537744897208916270\
604923451030106595670636994658494389570615145705626320924844334782340589683102\
431969553912053899419461722795397761912329724725873964440667401057381039532249\
847350809570598603170789740538345175133946469414170009857152211588342932639494\
165703931833671819572042590011713017865911675689462207604027633955022166530892\
670456483851223747304490151514946867129042346547001363140822882770976389082057\
281025694725247207473467816036578459026931430402902524084396573909425112656080\
161884321914375516494887134236397044553803614839982121703354608984950714022017\
944168807236164586902473853061100422114555761965634759399812897163600764469157\
060155613372053461545309045998918373791853924497041509799171661652813424904820\
199522695660415154797012553186163503465452264753956673719769577957374273249278\
326002868067680582969250154684294137210782001782200294162541111053112579213245\
074316714534455894001338450509554659331377432445695575337977873825222746655266\
584645241438198068582558330167480801768995246756341672393883660187889010677439\
936942644895165301552930004468858591438802165185085337213170424114709518453024\
038701842587335328770564478572309008083153827154218885601459511188030944491288\
461234905710965645128693094395831113823784733461733011195024663155209447427010\
447303547752708493295213798301267842535191469219932941546823762191281169740127\
990381651689808328267618678957781054355398759204520852565962972087609889053925\
576320488778718190786279068028670475215508346734233713687909864848352093675540\
234296061522958507236960655339743366130126181155167023951471626946271491552810\
690177905356480489217853693329642167519029969509766306094156116814737678896787\
849219288604256011267861178471797291229987499211342087533943116284448835719970\
694031993409943320766796399737076266607018975184232675160600418520403126767418\
539445725914178461826330008527060734709739736045747275129969919820074197605978\
323066484756452847563625367119160914768241411846012785795514353176091191611171\
080682495029217773836527998761523410509864736907090829692353918147998777395954\
071169331639249600174235409814838352619410607772759023561484541251419638981238\
154530660556535945672914570475772571655224342915005828007441001481311881169994\
852084534574600157826955375227879553308209302265661374832056784066276844683370\
666426984058972359372494639160269054140525716868930413415746216504142114756182\
767965820712242891524673282113479972455236828355731202792651182687239754248391\
472385016598524342462128944547292804492481193790588333633879898601225469334627\
652564636981499298670652527327474377511859167431050555660204420222580765474255\
740101946325882022951988238487573072432210682799816695813537164498041147795055\
116232968034420403947927014566021335824608639695645163616508100564397927681278\
433229811673189948714785569472092304671117667029739724417715494004356186682289\
550576198510112320265284256390816656959165871164828764887555403712534951041538\
616340255265366854812112211990566619402053950909590354852714565846711513248121\
430741160726431633072316108387000001165650210334377649648295627755746466022126\
547884629472920375259977499628433485157956662884254993375981885544528613024170\
887916088257124341035576342406443075175967914888306830733186096104947451177577\
205889945562731591953735709729860928963186571620506920018771942580821099432111\
170661896981943754543945414218983510086349741924524434159314929443793641342935\
018837450773811719829265218501770763151660793213008788585627944487178428669634\
508649926027637026202475751917259118374337184322634314524494497393988009675735\
721577208058249189545909162974643907397427817985611494157513258382723809981399\
159965170450085763843245080587833212898130496103477603351620238886891821756257\
890245624969798873241546726268390989835703315883314926238258011418882930204193\
494510907348376021918820850037644201199633411047190152987304701320376516326662\
756946176392591129620016953432543633774027033005847117171843670564315870095125\
687377679021988383565744773158469837892205525871341842537012185233087550412265\
452288475305677631480953426248221750171433941727945572786317057849839249217958\
774231424989340638606118937417833862432805460696103882627187346977917317002962\
849479741115251159319447568044949457608415293406494332031504717970141831022576\
913361894475866179193363347500882291304953655417227633279453192615516340231647\
015171447009369124230374346353199261295533342494639803765776331600451950736138\
984601772901989699321140646235028853390897193532863406814875437497417964051032\
110262280625133124480142736994889879301721354284602324204527837462065356722242\
411630455201423513084577864060773020987889745821083654433072626926274194978530\
781680604628195457260135261768450507062611421988000085785372495236989462203848\
566936763458177629655582566265746551594678938704231544467687512766168457645589\
531489599472828092825320825222942203510574125978720875235992643046760658754732\
445625065355031880648752351889563199425446458484342271756994286408951821883826\
905719547045388008373468377027798408024285752142286172703203126834152767967655\
373937983623179400062241336751547243082499735013593000143166769159024337088296\
452751082398683017397693848529803946906285222353924770980943382505328710368927\
563718106704855675118237838436882382691073649512424761790277146241782845953646\
921976218163090476301028409977083307638573969539839741678663179947409420034976\
730239798745715539460209930468997374301802614352257069957049411445203103772171\
623957003452574403273052690623146601898408055769281723493479990629796834146751\
148204886102514625493408052943735983520726919664964588004687614818703583487232\
364150803013606224614892088910759091020378059912165895799241595582680016290079\
835482319768731260138515523486021030780069152992338301808647931015870613446451\
990998724148451686193575930599725486151395971100895514497350642344540966561715\
313466834981595199027697035100602900842477950890814808469032522486569882535005\
706175315684411905595418681227327547193235209192662301920386577300421243892166\
700072995523866797418364858420907187110310139985330188992994295493588881030934\
317472897749190827773037947802720221311410534425239516285312160109400006856362\
882598398969429884805211887126765691636426535867159581363011208645831197777984\
701815653838858528429974828482917600199527852608341835839464483545527212033466\
964672877277128145685668041932297094071086702165438547887233237415651258159190\
618979840110021556855668398480136315666247423252067997576791430351912222185906\
050922409172552644916553809608393993319643410418195813436753923566584380409313\
768647836419682480306564855797595457377463835283223828535959029072896037470745\
351072953019583795277002889800551171954689705413568387392775211775575083073320\
601723061199485422508483163145053202569079153356791224587887810155246903397034\
481101101910417736478163155052656359582783136205883073913884101137368694926427\
591327879311857395114042552140093230560593660123949779045731408039908451654411\
593333904877250752721473099855616272774608875083645613167733013780756329614499\
846995684825052614880781499488031294909668056246224061457095485241402325868983\
882187814187893835406965594535269705401305328141723433996752796390554675816848\
177897935980696455559690976201267585630613951168783362647248025059107575816993\
018658751087240899591613941857143829104128446262470030546870874543566203122733\
591724890256020389642017683628673727784609516350062596661361195613803018230389\
326847504286797726023426614546688887380300510406508624932025791961000126928173\
418605244167712129798368378508819701945358223941552465012913033270248284691465\
907695465049324681290890851564583890386102886753699628276804352427198336572841\
822794141279192064055417270373519754021317716952393931035894237194524208470594\
018431147692532035833926481238000291674836469578702131463282567686167042702694\
978654076103344012170799310501738274852314678919961561966258252859343766962303\
964578510280938972953658474935374635370166858129864479270456911640796646071373\
798514445766946260225491929106869140140218820640506016503208806646712186587746\
925854968009508553661342062999512743991791396429320688417800694186869023607112\
766814554575638036303949853697318888261036768715985016719893854920609151636985\
915725462064244129822968894916043772838289394667350919421519346868309249251742\
415285183414397533706824810195089567605428087799793581712391996176589017860926\
866449224152430740072814473694111258467113569840061542219472437483870929491525\
140091473154583774224219018709307930534914714786209299634002794343816686048268\
290974462307605929690110156802647813318395203577888804447196167402324831573128\
701037820706040106539073540229553305982244055386055647292789918628613679842290\
831749997525451160173349474359811900775621969966240920555046274060368936618259\
367391228614224462727591310701141432424873020882508608385461109982836370190113\
906366762207457430802784731782149995043218235477910763880801774698332912708282\
432736273260024086107337174544609068180146689681979258727706693703725681837525\
998714943635204720885645683596152617773143798340409493000523677245759227373882\
770950744691703894328058690086471369707655428565926758629445383002493530443432\
503693431970541866171916360231207079846346947543669810990149185811245966385508\
388729018941247443364052323149124072349377467854084895633651093909502026598893\
082370972169301479668476983940349920232104783777688792028577727155837105513033\
424342040989627436495359249593612517234685341231043702273602400540583874787725\
029114658214631781255068246558447494168965729641277864310038013077453962462321\
060005941382229108350021325582247537845926782520751282025417966323340708728295\
306188513779245407363760927339116611188119729392192328476302842359066680337041\
988462246072488314303630663267998028642886468283391906215648302919380222230203\
762744612981771715453603078800223866559189662527703612402470142335262568777008\
291806267769284526205927208473920578204901691644120389957519771511658274071761\
893334633974163005334358377824125676225694594800351319723414111662184651963309\
601016149418469248000677006760548820667394512768186481793904204619754644006574\
031223242063431065259543663369554272217836816014062890464330346618245659715135\
602733293089047624471300805872211770670385324469389456196616483201685266519754\
460027894356076057938671052740072920045420672078304184454410841201502159878139\
914967611266811115200372539505877804687418405260930743476369321459472221807975\
133397154096700712901093729314545818863517608771518605127910403889740886198950\
934694730934985758353032647833130788067049030288319657094184829843844003448939\
362927077855200300021835466304114509811438023501757949974019177308452515911664\
124379667186873553258711398976018221188201269851091265616184515375872616503304\
877948288678818523877659236660881625431018872163152810300949068280519551092687\
603806906946256493940378307518098429603559786090253598968135538205331328537339\
168883701625565703570668972363510947698836464108345958505642722649485846427141\
152694109640549093876655745346559995885199025478667750384893852612016854798825\
022939687318940500746859221656101992269659395652538893259391408682411575346230\
491872371524252613653999932670437636078951266768833401969701490612439787226027\
743834078146322532319807206944563776966738593979156723309204186328224032427626\
064622186292277309386192123765171537438273431419415613042810535790699110210326\
207315540406022101199568155839635108008942263044484186915185503759651272286573\
427090091184076162708534864056792696679587228168924623117113405646200746588517\
444035375099876533060163288672370102038086181624305657609599967717259541512128\
639634044070045949883471178871372820960605102798905978072594004653709263351032\
031504786148994246283798253731675265453111067380434838683478884581660887876063\
884041305755553621039882140746369479334647851946407900560554644655735341026955\
895707420966114821569174208513951207163144101977817120819034773523618375992571\
246255238548029598820066778101606307361356603946465476708279963106201693305524\
710383179998922297711128548405011782274064699900778331604060058252230590301253\
594698395363706015665273379770466586627756360517117993432465772854674172516300\
516065334657676523287857116431476481485466614162231134137487648259366681553314\
899831050195466445753288749521611048720883545294814827767212668763326435779160\
618946465685981396468588187416780998608762270112280932488352294029044877835267\
578234475013511517181063320238544839380800960554280801003659431437271694886605\
640084769820383698345713608044782129543188202421863047610933700201257889501000\
609343361376511862069707532662914638867139130634419594989428538008012111811917\
744338749509393423521072805786356032734838265872520421681650318997536851190552\
634678900941711511639652575601492261312408716396484287340754193176769193628674\
012801087448836339459453400926644128288578589757576655019240818873798585604443\
406496696529725237643634343018699448406444764578001012642417623171556842871825\
822803376581353015272770347627390507706857759699250389803947782135803437315637\
072957374874793185395259132042242100273591424385511391813092105758733062888320\
483695190327387272086981976791815534643115700547098578691287731348784643278277\
232220064876690249943582193539392537190205904888437258461427255250174549720106\
531286205990333283072948682457706856867742001995264701162266218835382897661931\
076789327886777172944615849930822748437966902341868811838065535304324374512871\
583425155246073421652167865784934902364236137938210880938161763838587019778523\
090550712438416473386435067299693101523236379019050342279289519474402175299612\
826745157514868839672211940384026662655771256824588712155000816523862753695715\
588890879196743765791608392869050601539175892457926951307846510411211900145964\
096421256841725717736536701726093343881140073795094920859230030216892031606108\
778757701505677002550134302979430280213422919625438062021996612720486719838875\
062453809204805695010349597416648698949369530706345488755622832008806253205917\
305083245863870164079527284837378465628154717264477860527911424441478979041761\
359195495774325920022922738507519881047421549477016364003748846921002144327476\
580001000750734008069055794751232051945694373042605302972486369732331667179140\
315867794647203929389932808434704987442220895777918959520303749835148203336675\
452137895100581782842053498770792003389435192106911168368926125054814922410412\
062384338458200309390451344869458889245451640983366574873542714877884731828138\
430038462618759316389154407832436086019910215180317323190129580980122438936454\
487006355657648205074877088675874996057884347635904065426436341272263751471676\
916865399430271206158609052186036498416636251201037730764477002563103189138340\
728866245256126105280490530576087712913226816851326608380837154641112837530640\
416181263304891294764979911981887553632996047298389731249372848988911803524273\
721674290889088830285577611230262091909962665295395802350292143811664686791038\
802114028912436329255898435526297765506424116917721149255146829822239532567695\
459798225594148879590204336184732943333610473359858769601655195287147285389062\
137927477075390452341882823077420821981561778533549331670709659308896121594362\
328123704969297790186600832862007475968322412809347119276732299675825037448908\
500180408077091166222867985001969405261378475822005639089775519742721708563485\
465900093867062409698196774429595099026339624513025323996029829690532181577073\
842955426178786619224575237140652996326526452996369710766006360879695404021575\
651760198936883742357496204751938307255190700054971530283533665466044657049711\
615791615505281275185594227282609235031340364670237644759456720351265485505691\
924554261885112726185026269993501575644406024350769879697858556881340432485896\
098535421726058907016978313743329158085783575990144717146093360364903418862562\
962019782992803978727458088288402681261079868366295717222386344642552999969766\
500665950151895070838754855013547597706168718174737452275185567398694581123658\
630385996258414330710844421265160098593393220901562094944921652375161452503666\
760317651758328581267907405011204273385779866095005231791663850904968846448005\
469630007576585354633769542970743092914609870867065836488917552942046532645219\
944409080935153959555044597230627325092753332494628375876537275346099661934830\
177006402760953523948422911714700185259884892966470152697899488713975091338565\
035634557178460650719782624367819616263296892282785761090207583569504939280784\
961151722828297234755949147423625280852778231069444261524854557661091683166491\
653754456184340809756275173965000906683832546909906076394662340383422200045383\
124516613622442160302749120373648007822048934304675070544291437465480018472333\
721228549627372738253510739501894578673574464254057206820719842554867434810965\
877903707318300356907385162710128574536834483983224603073466759279027532088248\
932773531662897311935009419803228415963315582579827546449496922956852725182774\
326741538665129171632691318359676331662959421205431780718421536207555547586962\
250334019323576165139217147121476074759180157459088190570009378643293277189150\
830014728209029881511471853859970093578398109430300962555027357772490451506932\
827633564563737498769384995872163066152619929987320124839538572530116635083851\
347426741130236003130493127668619631862890033141509101086198166685627277033973\
649462936779507409934507868166957834931655964959785458018062411087934229090112\
557045742252226770316436828823487880294308683247194797136262983135269232064677\
994510688576148165725905496086383595053892820719221432669173447248309568696393\
834818654225006117978255395424580944939284904838539650983003273268896639928420\
810641116160360953302431182240345241036509992764977553685498454196583738736829\
965348670255604306035264162220163320410589979616393140920051661069561681573883\
394267874704672219847245287297480495788791239986734990947041818649251243122314\
215846893822922545801143799628547456330752602998550249776645916948062670841472\
985030115967205658249053028631348219777935570778672307813435676770418212718823\
838148839301088847256711919516663082767178002972345112769962601280080876367926\
817694046516251388101644886365558885353995964214359186672976759847675835772989\
512906982730335646559732378452013430669881970736588727127078524354123523135711\
434636949750975253774542705514690148991591998074853714755073782569105526375990\
871864553645963719653292968761195934193528268962886242311153335781188055745389\
908937199030360658782526377599773644788763836193713002550270700263417511715109\
628190616664087124989140972750276414137255165780209005798030237501379944951372\
548015783368179368681527801065852927983248591446696903422170045686238404780699\
305600762113059054815266153848636744084048283783443673935375698597965426584210\
998369713365407382348796338193979985460990323059302547618081478174712633631072\
429654920408875003809306681767040531866023664003510179712543876950302742566717\
121935554785512166721338233992248068125882106455771244608386703915509580605244\
892460952584556992709623419449781902909947023635082158956437547387302464718382\
511690121092576669859565498013070077452065991516722523454756978034259348383833\
105203454649906728268756089689880837735371356525865514318996854130085362424233\
905664613231035692635547022757917660964514714018629389141800230457076172141712\
659800872915090746675742344545133623015148364263245119913687380776045951708206\
202231661994661752951271652270079424648320210252033728169963735034910059474466\
052314457111497932718023976328167635735299329548322684748311840521335702212644\
633829912890911513403047592036086680658049323073222010260850781712228837347604\
683053364842283909574757830778098002858999041824191743833439373825162002763745\
797657466193996629956382887993458231695037530109922950058002369136609029609520\
028072083964837161030263211792093537901283323462277766948788661788940868403429\
084815678179108229397027994346259301338610974797185331839115048328614417589070\
435816379945908800421657385955389243483949759012522590016723170879163663777794\
310256772709403974684240723082635094258463031166347383756713902096224121493230\
077341492267141880325227277137858922582743397418566146709610905221082328322444\
922455507726550090324220392248212159541071170777481828111384414325439950464030\
402785326501708739807991743608741450591011506366529774313016491930055105406440\
484358032841233492006610662336355021912025102595243140828203469021639402971697\
520609239758209772447807074341396919927365764852182336420787553648083232589432\
454400049206753754316057048199641012437925160294283536437541891579282814791008\
472513655487702795615356222412593207219918977262384297350647022608046272999687\
709951312774731857377147158036370775786270835614607868298414283051210775952089\
873463943661769638266522814536480174410237062242066257839697753444873731977910\
265218631926120308261770188515464566638698971697244422806563722493312424715685\
394664981160125573819524659402740146381086579869548228728956544662913351884849\
461567746300071464703937816425974029198331019377451620161634373736238966670751\
356380825146246840653941029600877908607747020119035469344170228806617389463431\
761039694801190805314933034755352125669812119955086659069973219414364477915949\
327198055201497636519085594216687767409218820965509481450046194578960785485599\
417312913247738065336934960173498008985486109120017510140741200546343778364287\
835169329121775844234939898549840801259408139374251238173902807538047902774356\
005633126393388500451553278725626497037078191092783218063794823788050413229202\
155380237783338400352076595909855098226556585095807418652676322442029718266041\
415844321061488922432021239739160650505888806924710040089948431941565464796178\
394936805965173137336763518528920519484980572963188945035528457334754355843028\
023715948027466638458602484380012757634552225512222790902034166800693431765800\
081243901048214585565115403885944870151227590663633935292688836748816658391724\
186334827378188365139246560224383482308630759479457989785928609786077911556496\
300007053875306493169225658383241417141738619847962281829722032610657043180016\
367925429563410846056024437775872984627181200860154385528480760055926243307862\
191375376564400598024091578796265154077316945295411206563647487234718335845034\
598662819764672587970079126048712242821668856147873915691505695626862219684783\
779845344839773290169397571335434531049536267083063278834813134878715286376936\
123895153643649069355210294704240096112647053936538919796716340142776591439835\
160615983043654463561623983745418015599920350328890883621593551236063885453619\
974564065768579841251207107237961139173761222532721042521504249868322950098335\
791162069927014194433169713621713069282782870765944497908576981912614013733042\
945123521176690156127737529287888992156483711340568131970158963007680077278916\
156636105353414089625927682125463250454597149482420484701459877997804442955041\
110544455291887407233746472616532597256756020003562649021110294666525388513495\
507261693691812970993684359344970547155593190291054967390558975898042252467911\
555596346108433302105692579674307230819246963549279572939011060260613691487858\
471253049026367931234896042677042818022918874620786533064870044907618861717622\
573886711581950767911408320229184713438916266165549089474577634740515279468758\
995043641478916617126534557596004281229912888671001823013463770417867592976238\
456219263941595019570824405578416189735151005438941817975317435982095493569960\
457117069330253770468490062433739985048302523805366988940454006539069020487602\
061439205677151432651895386734429082403027014620804502793913557960053109895391\
815286201176140226656589490117097897781062711181561684668708709995467237361635\
741139007460423029240705050431340786569710421282708545066230915690038426423360\
211587180322999975771611510649970119852796977686292494445581079649517494125484\
119688908938680295527673776181738466242928743483478783646139213039899413927961\
495101927990038122641957825275617866034908000892914829970555293296213961458826\
471702836707802801283084389327826409266447901035765234621636563453594500503007\
933603901086043805145144871228624447147639973322841655338977073783820368450279\
586743361344785833996664652553482548746875357674525216238977869287050473909868\
272883892716542475689736875942272972717064249883269204255873844544074224669565\
453435719661301684635790788122792138436407003155597419044499978348173025067408\
025032766551562480900950319764192815874364788529805348708162351655256839125565\
022152606637735026453158764109100657454224102246328582607913187260726053229223\
219678516418767334675997711009529113535157384005916451373566958224272555318560\
092121507471231479944716950186671512593414769499126284427113125365053342415971\
496568104513967375922425996516148924227401690397191262515287264281557321011288\
458681970163291787450245971476716656005415259289157551083289089504247436516963\
845974673511906105566053285650159641378179425848898008629336853287959204898025\
334265967295325820806015689657578362744526980276841115898440029708289334029120\
703909485223892879461963157223343024819131689733848348780033722397347489112339\
082079160192485627993493316482266205572343923315601020342458000841133602783399\
541093708329392335099002982364306352074318445525126966068751626414925831871638\
629015996345615720785933621497808490493185895305467069482610203750659410691676\
717286561596192471363870662783016518767720630833118391489631610810297777737819\
676383252661569779936230824300205199836474196261579503998296378151857604340170\
935558391950896109314265935593496990318829745676763332335072161008168982192193\
189247574616089806676546301540261098076484516746961711375372084298934803035069\
845421534980163476733260536269207635120796637136569486233330326763683383229323\
037912217026916195892552033045190290527097048422260041522473182382826161761240\
553814300144198166523643649864125519113705583109097337608799511839040618301112\
146126783793083333164358048636182219740294205516170630988131143621194652039125\
102622715286544786219884904649870570514818140761629009703340318749698875282803\
505103041254124791601801154812977033225138950274825791056323249758593171383913\
693814473276539487746631353658139930035475918130045002668894006315586435866378\
788190773752610593774301022380520865778269380725061367340841296160075667975758\
901566672170836840303992649850111851998439812475564493673311450500624940377295\
112132539937161285635375058935021038913804088675509527388172344398962594004748\
902303531578664881854255819639501948702833857676952246271211440512122096291655\
646171418061125485753596830430906907117530414621290649596757167524145859864305\
692902069096068938072024269476304789198233715919042547843186917612330208772841\
266701215547156381423926652632264093234511476903333775048163230845402499510385\
710741004887916098798244931885222294469340161118678648764862927126904754167499\
615288670682542076981917734040595849469654044983787575696326137890535440292723\
790536964788643667161496141920818826510099619851899174616926413862534390760525\
154918510776108110446129967025787963395730824212936665324999631303190393443966\
159306188412513427466556965037995370362245176676382513925918837939578410884453\
786084946968850252556785232753574112133370424447673814121151998798562259354089\
907473143234729460723552206560699181630954011217780355231076619866079847775474\
715178294230844086730576546640571091128152089102224911770707042351840796914678\
435801024015303754465595938349204212018240088993070279797388013671038357195206\
112816458863770649825384842569073369780767057494544988958987388686790965489672\
818546666088869706429735144374655170979868678856328426775211340895790658076522\
002550596702154793452715440329853784322792570027692577125134416480453575665344\
343793687305463918151933826715181465084839508440466985983079113405734022475945\
705121104458104952664025179648555808559169579661342168146260692660388828014553\
201533460480414059930943753137707458879937595598725858603172219478557277621805\
475146561542963945069150938443476669419523202395821937922641215054131661345114\
918550120079757821630857853315941477583672647344759213013690181765722699794446\
933183481266130176698423836654388895155280488079558867040674797781707401921519\
193696486870650807837410583984878391240539899794236486040599868392641348464577\
421651855695793456171187632872874813416813083195100102746384209694266087449187\
971602434539054140713748294015446203039525918002164409069678000624640404782235\
541596702542862164947710827313170818946140477564622264186903397565050506965845\
140595084939596368416674108182781478403778121649730584209895109089107703631627\
100129881774999329103672428517458273251780759144377231569188656723733092702301\
424559006442241366754444016782482483953872102327451599687532697389394622443939\
461389367712384793978767615106944025906365970258999138418506071925975017952198\
794499329341977124318047057939065804362599418787444188814879835477846021406112\
219432033865738590724896533737198991827238574030160517671945249388412765314595\
307506943336349793281079806979963688666491855288533941414858112687978007389409\
266429995526976886547574569254533271695085549050107507282018150969819971480579\
788890510760867414692970320066029477291711540816304601347248875690148808616806\
059762648519086980105733261785847849309146230957874031026798300058247012054239\
076326453980418886612029537458220639142151694039270141155669147559496152011424\
360722871338781865432704156394943888430091872712733165274929241041054576311826\
107188597515959922560283148471100403220126322015228528498201917442152946236530\
424218649878614806368815867910324506846835488820045978242673007906839462352537\
910197987984287220251128577734108623983870084128178485221006489840337794191719\
341033586701246641929443827357709323261993745156153514322921956150590751704831\
410083587910960773682784949537435898597408718782215198649576215369172862551706\
381140743001124396364133877732012552817985898604626981483341444173169184275069\
372623197955904050498826425811214470838250179627613015873580957564137546695237\
456224106033935542987297198982243003628026846855859443017350389996953569091110\
385234711894470712434351703758114804098794124797764735166946050099056126156565\
841371426526126864852158712422213553368870890694643572909591954363515194730868\
824436590981330904733091225898736083190656485262128193421650458424968774292874\
871142837673433301305318828693096496711018602333970958700713165299955154266930\
064715021171226135659791888700040794679467424130917569398160168273691867416210\
855589413080064246109279032917931356720589472064662493267862955849255291712609\
073839922712162185427229625745189601075419666275986425447687674691808312482762\
751983678129177139819742818039811901615613082651486620436002902077583026570401\
932470959937698028561577761931112883074716747292931516336759418684574015028184\
273330216070915209062166827618550618221029408532456430585060222509713356786175\
537104811626457576135081042196395259304622927490291489390316854049885148519623\
714415295454309981490876449181190502602329199933358588617695135250354939947391\
134808809388635267645355463773119991432429603198863554769809187936222503715435\
420408863322051314756794224735135388152185724837312406837767224000019611417451\
106209597536162183346676889638128746902495539666310218575808461257930409088570\
263463029602673889368778298055262302336707499671319764571030770294940502208691\
259460443916104156935409844318171904071432473081404327290565846988538824731498\
153767530538268098069376070598143146619203611519621873029846776561213906698984\
714649681443573576903310599656190470125048530159449470244732380539644398305278\
203645214448669638664041983326101084109373631363926520713871554625564727108510\
204258901270857340927490845364385360966965887837697336809613301631130771200564\
673584258606652667232368189367585302977127659414849905546978245046563915979531\
085920859782682461739341618691786475902732917499694507914652558992382829230123\
372609428972833239605713999623111414484158083454675105174431734742858793072281\
416278643302644031723605255829595618412556595346347053008428684001141043910436\
663903509511180929852226022255319594695826923472590824303891487710447567208839\
100648381100635689574876358592754012442143517179109331395256099827307307071165\
277647968985105831100808196350344458623969111102344708164157409146127659793221\
738749542604104755660372483951236313651153148346646114474120762696379804967480\
771209131712687433258872858165899539616736076892600268871682652809118167650844\
602525131551045323211517845672397183736918909167775236091842615434990201730745\
825869203493509941003436980335696009947766084505694813713616829643188242782223\
415482014601328061235791981468635798273609095610324763208869298078125603497144\
749825460153962122085697797393200298424875239150240498556336635109977868185172\
918448069957818906979020503064097594790258731992421952495260376619418472848165\
853921721264911670292813886127530716265216587840460801308173041419585804678242\
610989272853851632984577333574397205118661118908214504874171927381385897291540\
652390262573010910892844162984352866717503115411952684611077487361039137372693\
402481661991819741859137781573032082081215914699403913111551637125354510661219\
029476674260817565262324897949170378010257635477021160678422168981676681827677\
980374817011820727374203359713285322944645188242779504963118304448866973764191\
318728867012173394728663710519747890935961715930499293052889594105175897546870\
940740207727451863125125395278102825251300468284027776685506530877901113296213\
672373351741587245542964846747406003057494116549738735015356522209509790480440\
764755694259526053738031364085472424988352039330660268717128595716593274426314\
417107093130570930015044939939871294338306115303622696928129347004374477616273\
167345011620364303469536790932104882790438679162796256863573120370892341837798\
260204336655568093945457788489849850184307912904902056498821136486305610790067\
527377594259094814630366878388941877075996769110648643803602842649197169149284\
780860828106304690836504982016615146983236414429969697523207025452528122574065\
615770893142460354751783305960040547051601586814958395235846855400214928174306\
277487845945970007472809026037764025383324876755605811385718752329807619064239\
171610657503954097803293045000358125621873755800387085346620036432503978312074\
233629467578310290430404031190072527800090415338950424362884339380146680353563\
085674076642899183663248374176345126175797079414271799141996971283465079610226\
431601904423412949115087945264682648620047662530951354211169951849630706016348\
456413990366857045572724976126810371209522676402856818887244037594970041142053\
919682276757022251573675918134023719151085476776569601193007925101989273108491\
251404573957830747541033719915724455307945341724292045413934058187292156841281\
682544867949106079890443360967291922210827905399655685521670972321759058485003\
973971254967464560427228415544445866027701702038765184801558544715116869068676\
377670335837521838074386960232877366846829567837304660069893009517791722156993\
278084815993740580233455989409324127538645805800982418029164439285146751484848\
199702720919665060340725323750447150518632053557004513117223842925030611693555\
889520303838703711444681382862493254809330293749178975643302788068322219825903\
527412016233100067457595360971215335891237646859995313245971252848509935284550\
716854500303384596091887947951252289974580014980424831741494319520028576441404\
323543431119633274908493577475634932119857185349858323348454645583105354950660\
250902059722273779328682491566033044942533079150068306907370985043268415689074\
291298189816166833067049233098201109756150596074494282785823481233534095985322\
096124353940400131183372017467033785118156377936853014580151391857812539180236\
712710191022101885740913046119013918471102977937612745334418615421395733469399\
398616053056773461511208807362360509154908070772764332320090825471745627334386\
159937307048486071464485338495518028458679305261708916680039073455040373674627\
777665074961618350501573862898998208024805171924274122644195247490506637321846\
905331007033019913474666874725922864601668425003686245082800830733740587010177\
945940185777864318312194807513504898529734581463511284695148732796041993754008\
476795766994361364760131916494407607196340769306564632562686975514598762461934\
072410411505150719754039498160629158901558352645726235592868563828548266920022\
550929340529484710429635889454843458502568367135850253917180169715911065455047\
261009738786450932864263107493598920427199698225102930884210699377842239892475\
239846118641279786592337229033310656192028897220384625849435693487373882073740\
899668033990381480256142481988522562839627375174842687517893558932824385954471\
211411549332237468724279831036152411431977702649678138964768557094171042198200\
009773920244291541182007349893615227079356889525361783641173304856226779163386\
285000101982255428856830532613092075018702577870097454366616901644309030607368\
399907998225547202463186120031334787363825779073613124232625365659670213506629\
305540941176523528807848751519035556579136738062704986697047580211136987493928\
370018267734108549148010986085175169136495381379406903355032898274193504413058\
852373337336726468851834889721464707616484492378801257375966811166515544610559\
636354993774077875757055349941886031881046738234183672510925614024187768276526\
487994450372659323959907450825300599998494201111486054100386795838197168902710\
036096314135252984897884316116798978719988590204826655514800939220546892866593\
970203487642931653960467560838467334955990780995320698770071654860814586284643\
907035760829469353263501444040016479673301743207693441716348522277182840915065\
345730239314703350407623345749458841996999640694185812102108559576387509503145\
111018615908985257930758684095020200140015787262370036807007721361670391229818\
019672337090650103236654834721035792084275933439995661173539562300146839692557\
831813811846134361317007600196838047070426727135767037927056409959378146715286\
246083198599610693029275664485323131074982316685226693059921524856162490836101\
404571839926979553009094298738527542122304479284314064694246213434676877924877\
877828135541944619686192323493440361674804422676372986051837673044763093516591\
364898765387513709918866745555611016146217407041024862748445045619571297514564\
579591164356371669065452628948308204761972306809532136174945341606994392253674\
734146157005728063431659724857544358392457457038547254544766200360521630648855\
119788327455873123350926876946280586312029401298628418510702220013530604912057\
420722241595790790546486086652249553604554491286274385649284375512295061697233\
250869804980662064709211330062678820924422402063986496314400217377547730124010\
753759940623596229586906080348798192668101728778621093260023730749536160782577\
208869589605231450614639930916886303722958729395167895522437789985361548314933\
798607803320842051069180372790665999842548427938346783379523688571673924377466\
916980253604844844334749538441224146405139130410639675490287301212642411211270\
666984657135624699171104119256510138020472284877592827996348827021937398694615\
414261916311654248880126832284481110827375811052747709867926241822172012980796\
697962829109663419275812702087029877170586154070459702105723260556445587511694\
463192284043116677152317167998684693406716405725959075821701010957951989785574\
219743682929412271008672782885849746090240795339263554828235369501067276883381\
850974069740454930166547158188211275292462720822851665111426799249146749087196\
573899648753573216664728189044775795747922040550593914923760232435472366519223\
859652852733052616438295634553607338811100472929693497416362320796952228163975\
656011926558222583206743617132127127210251155131014040567054971910336591849173\
657210500849335303033211296459043157653233042353575717777730484190417756264719\
569262847398581021929854257495602529881856173891968978054626902664050536920865\
435781043449736335465613370180041519559892312675165594607083415409139299941287\
996354302641781523807566267466317652797267416887179213094446810941267433314144\
464191551460914805287151383646545900480719512877395778026420443178779827027927\
811995661205141952619790152815009132933789815241920749741805555389261994024308\
331461270421032912616935796945641455731368059287023200104539735591392883350637\
532043439770406557288952353301893139904845297253830526751160762488196150908171\
567697815067244237536005421446905116302153814526461961568057000644799752551836\
205723907305128860189170782229635404565632518605882181124049178625415399473700\
563856312920223438677397249834378483124509969658550326854307898991330355362061\
716004838271771975550346029963148785314767308539482627763310207676382970420126\
260950707689341830943909865524293841250137019306858311707427441946479944555402\
034809203259573001921043205127423232700218915698642770770952323629020306062543\
627497292263901647355335060085099945316355265066545308824861894798309722325742\
080382639805301431563944391420684391850549583064981864275956389938969495916792\
128989696061916280624799954667843145311066025549180382565407404465663396471562\
108682762450302610241580878499935331304169154875476046900391661717310639245527\
643604134671744298250244880598396231493502577277639035451043147382037556460545\
749582555021284904616894124936797457448201102976730913361978787434392434283659\
193076318603763645723101412446014920444028585080328210850843872389993322174762\
487372953239597571835661028393251239022761363021522959523692679988375311763376\
972246925360066786687793971137670978723031319715677709857967258494294599526460\
951906976150629334399328364643863009216636756155477516863120385975430702050649\
970644972649166464400903326919401171390247497922927207734710920181758358948754\
103382854529702174275403591772033889019529916762539439716353878103794293466281\
145606117198981397274960107250206462951275981880842434676570834664078461400546\
549348773641860821203704318086430915844499770472779221468471765805458218178337\
942900291158595814141196692594193770739853634675074526363827147852838791369070\
815365165240897051923918081021851282394446514257261237909557425592172997509899\
080759680230267924468259068876510121984966832312754883954451728058428832329608\
099244969361016881401970563469322872945992099984730101563228465231102732451175\
943469069948442830763762858057245875559069618389360962604515973848666290802013\
986124106260170107509723607248267455401797528495270883888891515388217866702399\
601431713055113356297188106618754129578287898893987283827809624805757814838808\
751602266207416334253704016952164673761082005054478630131195650314046198474274\
802590691641061148598131867884594414162606853261274397879320800257506192544480\
705433042424209967256480786294924099632932187516855172572614434605336229921627\
305234281924677782292702521175092728418358987621174288190670202785079352046725\
247350755960475619906144669571306286615665184347031039289138573870131595188529\
474561127766684216885593945837728736171013170233425309216208778698376616777779\
086231751984511702488265538931188699770662778849622882177703553252728212292500\
449651563888245945907659713780703629366358379674842745634962762877998976206660\
949108664206250939539086860222719897194994382980780040489640988087646964905472\
566328886408626576847136297232618060490444413382397780932149283711671829585488\
535067418339825173178297653579649532909741688225006751436278771936593531242783\
929372591388350819253908085832394318605336829899513467099642800194363731163848\
615062955281343808836639933552360355698368343007300756891644573188807477767740\
324819164069853475289934347131613723905351273947338224036666185880218949898390\
353469169701669867932750306564868126029654109919765529330356015873974990827179\
198201565451257795639784378575628022063868743379972148149082204091056523781371\
064368197187709863284142095292045203278264963172358387130713440462328099993831\
292418102499772360905845826896887379340388233178236756612156412523213908257473\
372247048915069559138668676191060623724402078138254151984691724147522262412929\
755643046944408993225472518611939003979014375011238193474250663878494808192931\
851522114935694146619938176081643140778994045414616825163411229759850298041168\
053917935481771316584715079160889604362467141957498864090391029513200232483940\
004383386706139517701504483352387187685305497305684760740714455657133022192945\
635334106717894688293125090821486800856977494960221941296527003121538206371492\
508035629580348559097121674406855687154296144785688254405776964024028330032559\
559952826609263169749169601389866012818602673746423421084294082201211131667415\
832812706796815290440375749150141920854068386336765155716543663040816255377180\
350577056242300098106089228769387597364295918706708420289900179326192527194558\
887230072428709897902765247448638096684477649353467817525966012680292465239302\
367008105304864578399306463228051828271579953911867176145809639630884657415022\
451151572420736249569352028195764123482170793906585020101553474940737067034426\
113069743163990373505456687432483636229705669438914074059214246110781739295581\
131965905695602181813001066588298181146762654287919256563301668100694319613529\
609309319875629636402019149447800481311015665669080638879772271001706231802128\
211542564020973839029279103119930929018202408736514701680125693372130810073454\
907161070285578649574691117141098969219901103732402586995124509734667803065426\
603158010622364554724998863824122282043617704728312474500220983295177994347463\
806302690116503132920513260762928111961868979458835725973190360214012803389623\
575796498660381049905387250249555078456258446354916676467603657261928819741892\
778314857572591944397668723521247366700580185854598737938934661921321039527791\
386850539388697225845704846581822604483969038984966486052203066410055245637187\
128213604750120362899356400751741973088938365900247705588197351295547652455314\
988224071339772967112019098442934871777318348719429683830078510183851556575361\
805080368189659178888789907661952504700593897272594743142234721733462104749641\
151558698756590167172410694413147444304608903607036365584234702481950804812241\
639631831322845863374389889900805347598936406285192386026691951353674192042065\
081604006001668778820418628198241662678831498748953561103924877895157783682720\
695733258496802644326832531877805913828459836313737428201066334448546811875141\
567565363094030472395763601681758960130744943502230301343209486809765368780957\
321145492740332184690282188024465842995094599993794972675680734810806211770098\
950387510395804805234644957758823549893552988805566331995731749545778817034096\
535237575130653329643198211998602315529747139825435211713763848278149428435118\
064593529559665637220221653785003109922742772045734278832252359393814057411318\
272275743596841307160294204750033176689547706876314542890115001803937016677164\
391668042664087580348942389442864649428156446821572875441761911333486044864624\
954560920914654654333948594416099173772428535315172050078180855070766278775806\
105289767375195584308823890846203339707016226353331438034719792446657293645955\
678045852565267041386732607795894338162615432109680865510013152310593230992252\
384028153601899241692695795192171855882706842661484174627960332016232268452583\
544487938272465441216291471969999196690930910137262578240829189656118659334951\
927823637764772487466213638296138470323636571133041873154338516817849518632098\
916972616191926608890238250958691995063430234758954155942316651640559485573010\
937613417753527151526021997443584188707033963206471294390952182055440738232156\
556660398273097881265595330669697493887257472524749422924880908610578247763356\
500113972184805974232153827167285825104732933742192290408570253917488470499247\
157053268781465143400912774405563942770880099271270079231421829104012837970085\
903957264909729030014917525094918643517612436815786963139936364572145047314006\
072121440311649498400936927882379674212293701230906443613685189978797631688652\
003023788804855768260786306797157327298147836553639293989753226535711519825980\
848215893449238764793793220938982518160159743834942590676821436659631711297986\
324771325779778420554547421215525753357558167647378119280603414305510545693315\
364274308868238701576937602614256557186853578044982273908719126052972165924664\
115779913471326013987672086184681431768068978514716608046808592884764333783162\
961587316523391191194074419086705361784592154588084317106088267896060682279026\
493993947369200639884780532452880499601006052657458927314793414724201359176721\
920192735494806277353363521070712766921524665602605870808000276875727957678644\
055007667789714064798238690463128002795197047435907667348967035751836707603659\
063516232834280289504217364103186743958363652595864920187588931407987429914916\
248600825940329443101205236930532265831792631514440720912968392523098016988686\
269954271279206581688090373126575433622762219962936886207546247302783759542604\
084674560456546750247465230043854856602556078278990003733801363915149161415645\
941596644453170193056382102588438428953137819299105133426975741147274586697859\
248166110215005428771774715448481986067763641560340946769316091426464706583977\
624310882304241792107804001567055154102202743972782661491896915570912954255613\
493999659597391301201605629126469872410925306608030785635576207467050138289469\
138128241010227559193735333184057218847908888506928614862080768838562244508562\
209965924289348789154549096755848335818723275724224322434249811770808375158817\
645488942502509413941502650069073355915053731727468503399152317907885957029503\
159217278768255570338658148415092663121869238557509108127456352754218416106561\
726731985496706867539650694497751678655075019493187779373072323640401946712657\
327227428843206807911067721925090463209928633544208392922526057849753937459790\
271925161610883636250378050177259836142510202081839804841131414861052911177168\
397108859532506120770144995167210594430787978844655877223464123713257570247057\
341224599674562627308812262932788002543144012240578939972232021990398670590195\
350187098733557652470307764599253760491772620463552886855864069962982324147666\
841375340522809370471390377708519716565560484931438224293437947710864786415525\
105168221902973513786772939223583539666876497704993325231832944626597269128923\
133422243525715178931374394563468721829146633513612545586828736733785293064350\
323754065977476018946806046862604240035604057320484125077737594933378528359472\
857609930890546393006174827903474335597466067183915880793322736853133896632927\
126979985640560292219344460434569709766331234468946855999130246629949139938610\
900662099896021038272222428423812958139260375474825521399171012993575349544000\
839379446554855064978569900622732929597967347490673431535804131735548110451366\
949739281540795615532277632525369926082118547277167317432353654789030269534581\
489733132118111148838135832578980536790671206935593075653867262668823998559522\
555773800315015368040381891932751334174595680882797406957426937634824309883541\
208971507661038755147471235770305833112955976723910638305258396979943942792811\
765498156438487805299324809947552536164031220111102220631590444564540213681199\
188509096394281823084183417144605679415472111546668629690307783929575290147033\
923874141696376413747516207569639696330097677874243558329255724607830326637751\
083243019772318860610679564918812401395005234362289103521838340641640329290803\
447829775189846738804248087107895305490152686811337949662977580828897176230201\
585361891725606981421112778229495815482654533756187951680027746322002920761334\
953240065580655508091318946292434801211069542655379454028894693791214220078295\
600714040169071253406668945743789435360057699023309741015437350461037549936731\
846328999420730469192078732738779274267808787279005868232474989461224250668566\
919202849661105566814215046216871388947679792807691186210333049026724835834357\
929586086213687590690826161271252172107044768841884874405665728259830848320162\
127842630916404107200383366294730115134005638099887833679790005755554044705913\
404323963005552830756117976706137800695021073641219489706173030543933711898269\
722548632700048254011216599875528263351318625841308283220789423855347424776851\
363969258134753866453442696214189304601647941306859038771843906885871977496058\
963194905609908769489088882820821177510057863373705380716601466044610144081651\
355652235995686962707800343512499613383305512165836583673332514330230188271900\
388674201972455533175890868328382841764751063596001839523435593220944239314495\
514761526637554372899064909430521752180156721195005347679931218388947586145383\
317801367665025918171475358811752626391001519547754909273396666261146844465330\
905205446132219398919120825883549961635406604856643285649518381192703219856931\
242827345996413234941244074129943065533322728849474881866490245844071601478665\
954944377354963763954908484027427323305176986125693744446667102070295120885153\
154338684277571313179140027500766915573489744943704929803136440444506366560488\
639537962960216378156660220652520582087862219647887255616028561897692907677600\
348880316286024201597353301090623659873250453405675376300034655592119937163573\
623026918708994555583098036538637533770337335009627943691204055669421732330144\
641414457206586389201503612917925034621716508346786439629624285306348845097225\
545733658028789722325079537469144230510259440704620372403732026573689304031668\
687518508199474648207476277266766913916805375007035220549635490617797521626342\
998623408283282461163433420123950219170595009240610325470996536266063666810588\
856979786748396138129076589334340363277976384769907330190745638523847269202504\
712356631433318109928174424404803085393125707996795407457806197472361271814609\
529123141194106766586734182571925314959844380846839216481005781855874196972340\
393971980544225788649233713128551227451629853942016826298660359322206188623809\
002223496154190407342016783628745926230786315448122552874987243417372922991585\
509674256046893050506646981839882523941328480278668689304902884093108794015841\
779387021578317669736346088891652783899780021793697081648550883670227604874640\
043260077758259160042482573851949815326761723829615910923005241650695205798065\
211957015256509374922507734818656261436376045808148551446402445738226718986304\
294578955445228840560805008791940373162357113635961311558665137179468291147204\
915299943261247973261483473669677834418772981916234996337403099861436224691650\
662033602367102396649204695445076122625583075253182539439597854645793147442653\
052139572681416813518693513827505221732980345322286978032055712624169452277961\
899224758052900731143743037093591494332111648940765843482801195120553311052994\
162006250224973805970814788513030433485722489298488392136962672548466550021756\
935359003153257981228311708160167343542075836573692030908839264148474863747104\
556997703832172620414577295166851446090821629885617485206309031526746963022564\
522684935212655835331572606199590861031541929640233439444691339344345317059957\
784702990331652560810860835479344019718522830667095133817264705305325748503189\
093554196113317245817936842954282090109062345616366507185880378653344811631494\
931248196141295530663477125467255392787388419394233365217660737171403204598851\
178019685783180777439755393209933133479485282978625262649276507309529307813685\
824094396666210962053880368190489661475147629715187935850995064594831625740729\
097710534892558031118839753139804700977407595222684463784700289333404893438089\
054068655846175658291933024656673489512800804775361127923989380334645352453729\
305589347266751638465828190444585336590856611281328975155172122970236754953311\
887979325777858952067860150850879975895494650831556691845933542573070381513264\
492411098704260403524343513626007105245087978052169723285657096956242656375837\
446348240473690204511830343055370972696161302391911823287383120994194059689641\
803582390134696172499430936553321378027207091555029186186700124520458569260713\
671292615988024525526293377607654788266076848559794583479620285597683726503363\
567249585168714502281864060463761221566651855420982770637785517116477218337636\
544162064731930495920722929242292140537721607125400531761382923180307996609219\
320087286573724304587487149491064028282192962142055942468317867837940608294172\
078536131948163897738511273030860158276149259082813621128766518653504355959657\
206468357247923160868958696665127838130817684431838871874379944930609835467999\
028328719069228349597679335019159866185000039450929797544842360782275891234961\
567177145286568355420357949889698810583149313799539160284665582677759704390198\
898117472399688385552667931557085752309545065960507492522869021468173465907978\
984249206936379550012926164873147369413147501279771861098016124283258699810997\
723907469090803002139969559412667097619405017869430400076730386103319455189480\
909359329276087402425750321984714554435204647781903063654353624948415108591705\
392314057265252385143154349534648977732602246267257422262727543643502080612753\
920755826990811608817975780726310120271045579529310080752453746321219176220012\
643682588338543432867689536495845071893626340448655384386480071218772004038149\
638225929456603616816371306055559529416040222383189458907036841499565640945403\
915323095265209744132293844220419549759468973486562824102403760994199695898347\
197452705964242177847202368015149899682848574293716998354133560627284561944114\
117853839062531521329916844862177764781025061058704735570587065370651954549911\
887780387905796809671129971550081898657544902037882943589417034104049077681717\
568734225908808220350656537529171363532710435840028077269083790945300104783863\
505421688634081964261267421150236470777615585927580552899365574473293045747059\
153621106347911158859270882731344926062659836390911238995061919730452117120184\
389219928985034470086049390080281934070561958773960162587072742264394047358304\
943497575721899536710906028427919455637212447769862055839067520539139928321785\
628751575696723006303458126599955490254682429503503252962089032386341334611591\
079662587537087569946244996636087110904259813449647768368200045098859729823682\
485358301200451936326131595750581280484564366688144931358331735256898339855203\
877527100965742916776063406371346959982171347049364735208898877843725979061919\
390832545750562785079463290462519944982734230713751980181972968105272267003039\
186821751757811680505150066241888759922168354092461854321437876273029694695203\
358582829391956091252515679831531083481947107004367421170056862373423899009249\
632026562143571130253223234564910337702769678980701894657400970366354188840761\
226336440498448603534199296223886177761936014006977914589823618513060845559481\
569649332038969900991711508028368694700093149294363960175628042057411054554071\
901814394131513601054282044219257199692599325805275172935005358975268193766495\
519696652739305552293708634926016798034284989296414489595592515829762091484458\
172743542812917077826245808042392805645944668099065866975190999020653189441846\
947913171944908229322888533024116991165762329083961512778755678889544224007187\
646361008847930219195281958549546422554437510144857562887710387653790036688268\
708952321849436271866683980166966332426593289944210147113389974994081981943546\
535321753680285885934928437229775117000361178094711682561281820554468145578690\
721025209994706424631745089846501302566454282274916796778802159364249247727350\
706921131514913962495399065959000250331901776938982132343957426294997976162348\
209239728037941549734170133746099949102647888631389553247419542670501992049839\
826872670935627875576621758414781114324098816334805796048596800070218339327117\
881096074446223742453436439439549340252149511339340036166434002828969247938273\
168201174653981689329648935535139674335040936674370659535331685689354345110377\
815379988140646275284711590560269794115902972139055714353808258425107756486188\
955675112364358119201132648602593483346838568228834612139087764251817193973949\
533235758356316229410806794292830443284366513532170604217031818442887368961436\
172060188825528447282065881154002963401650304944082661276995677405769927062978\
496733003184907219119220887655571010847196000313152343329834819465253645450388\
171694767967557252094991367689428015775088148981935685492085642731220401593233\
727179748562275714871610724468036865991131066455857081003316727738831210187114\
710829054023711644583105538709098757245923837071540133082564291320532129071690\
708493486965641240795890860939092648208599203714225272337617983973544808190852\
720729354497558454771754277402928907669168610873036623061969305739981200403224\
278190965134617684559545770860182020222669563676937292917180262372565358748807\
804577751312015409786785131730650656086840815974130973809822933079789627587675\
292680609900308361783452076049620088932877785510822800556774710374614536329803\
083069754729362963305130603992188975303083569681330426694146903092378452032877\
847709701996486036013697087913928832196804447945891419707460413142817601692417\
257573140545141125379397361869000624871025814870341472793766409124518622665345\
910910850751783313727553787749139179116158575038871583286117323419391492749973\
338295420571883985269280045159397063797008724735990704283364738710757980288113\
779723869049720320291516972555768025612134315605489086618249446325258212468716\
490710020402127174763037410391406447315201956763629985145143832756936198850897\
076901890274834204154672993515223839354802609175388325894248659764411489443079\
328070216151941556670844396194471400931362564067957558528185314491852805550809\
444041014145267316311775316367747646238808498068802187218281012433293495601198\
620000226898328435536154228342216966060448872973020169969632975259351019206711\
321982300299658240516571545649502749720474770047811429699747203089884593285229\
485488704561835261164058173528781011836081429990460220163501255750281826452432\
761452361710177444956227948595270224461693400305147730638775590675994611149095\
495642098032730779549124483325713975646124711216786975686785488907168964620268\
030307243693618418379190083630287196129315141021212663123295656985246863910576\
806370166020636657341776877837129903653508940980745832258532848745289821546477\
374843724508829007821322033008565391596782218875363444877058898986537184610562\
583272451474719359646469231318648198679447316610411936468742125877672720552943\
164371219005051023238076667272482482232663956675709430724277711528630287376249\
029087956559173570303100283012282833136368153035720678431151030006260163013820\
772726758505508056944151354450192885291266554255807647883925895101862434407862\
475837459930032932613597700797821936327393686068782766715769644096476708605478\
918966268214964120268608585826693854141823196613000342564242187001463709773371\
213215440435186088622030038896726568207755041121966998368648730891514804422434\
761368414526898548188372842003076542921911046928757724024208736848842546463204\
606305304069620093441321511093325033595799602812463927637034288563717924805343\
588229115945110589653884463003620005837507703069971530439025384633851068710021\
875842395474068719766640063228163519967519393194688833042072974713867545915784\
818157336626643063966763617223840889993253945870041438992381273818761735962511\
187055195906250835965381958165794046494027663309454190318599537989354691743974\
425494555864110618771579067368701979173603528032804250955507331892670394124021\
358867082948996489335411848674600958503635016376918516010117692811575895383064\
176588380974964947154148416767299966783903078220319624851304610885965859091048\
866497583674953249358977279405002682006616780184895547207700812442364194166885\
546943461209285017412438315265698077582079662536536413092159191893969825885615\
529022246377510507934044353103230195634959222073263079561772326106955272806209\
077100479882928881202147915289921337589203172241867141467627457473713869409568\
145405411571944916088572554322253303012036599352203570742412137553884935283234\
776666172013684258664012968119813151014659321148515250126423768654545050252160\
498883396838013645447604407271351883048300892385274204386554529999173051110887\
585741228347454856976558466374158408657978064908110706705872469407534598356267\
046969709681073081878765988163041948091634084749878146466676991343496116611019\
618830054880814525671697509458812875272642835397598236763631356943038787393638\
925721147244146591429640469793200286576095432284907467968997236943858449929019\
833514647029462638839864201150319969081566808460426931332498752489947912374315\
249770786968289031046414845514576053160250298947790304544607435679435878645958\
622551188405165287826723595806549106173946037119129933174306708331843037912269\
722003283544898777343852200647769669790070010050309663168046681539455951953394\
121577885251757578143319628703304084499078263624042779934757144171130953545200\
892921900724535702229242971932654352858497837743504563190772099303795675751427\
334575720551788893988325440727197738815191608158538653842529167052132433588049\
959047438669758195922651850488452224886830098706602075263416283113138894091700\
347676203300873414736797518675408638525358492784989532346407113337561014316157\
411554741465045265051326966720204257773350942088940824966314813619774972346372\
581447650302215741284026152972257910676316906478745314757627083809308465281901\
786125778082230313026362081916784381850880172026219136216477063676551365751551\
122446376091205591750618998537430900774166313491397659771326627259309961207454\
682575961913305637639929013980845692169234349239748512856974891809734813890542\
736073561340114922787412625964252000966260125152423203916429789601362299018973\
944560713355035838082586990728128803430438303906453430719457678982819192600590\
592946163921576046082262551231982388726237893367559497498271023264873535322514\
396035342225474030320878939466121521716423633076775875352653682562682159164615\
033506267479579939967809994757465903749767486463259973222209063483328903626724\
864863407150164319507058554675175303718300700353885106400568073789302977138213\
096723886858983345017650765960871259765835391580455150658150922679713802207515\
573664664838104149600212138053901831027125818621609843489029217607818785854064\
268114261181997876396067912649483552926476600699291889877569251984792793482200\
121870221559046955529637574149010612427055576634431261250023064270846537988361\
696147839592004722047507577742814611401830630503198333225812352706741170558884\
517542161716263161969026993881437888040826273358756293701529319694823752390933\
658805671330551218909558713581981360773688106246953317726138665530253191666567\
565081038678026676205883449425654418732244320368422258042596310626289815756836\
985372945935441885488550795161341061600361824438382143313638898895492135406758\
218866969908237155312583446892956517967506467271013651239207850991355301894584\
879950194497868056842011920332024861867185806797154193232035642356344552521484\
932992138762118141790872016873501187802305710332664451450313945720830272333531\
611997624233825821971955260653317925827415144412351803885246084909175085997853\
159634754829475760104073788924206531406647461597930524216360088608762634799199\
985998626157653246538529072565537865547747005468983834860557202161748029316561\
925926496632227332605789622965690533425160541238903973035523078270857804612332\
068822894449803070632268431277377731030432427292831204396718906309888843775567\
309952019373657069419377385207022060235154191786749597138646655721405054379016\
686872142470768433035772829595159444575265495648641780859187890150121242973848\
936516436720304216450649824232980055799407529494191356327280774851919958083627\
055172868356652038542241582275610464812126850212192521893420580715680892568304\
523061866093008210152849322814378479163822590495981436643680947532154922091968\
108357986011274106053656626973431376020047453003385614256509715084492001039832\
172410889035623893391044285999426552905406270324139588219854816203156553016873\
189501884485614306152154053190091201383366648834372419144617107816937832334304\
776827478492753160406995149666483402825175321979015407408079434012049534559405\
093851654596294985176871687394569065765099716735802267938795562508410766769914\
584739134565216126301309616033280564635137657640919281394520715870970439577578\
658272405192195048861659630671449767821196664136470265777883455413124423426675\
473581587957892902016139197719167289693726191360337180576308956298337877928795\
664180748583389993361868612854304029992947447574693161066896763486599578696475\
988854899744108784073927448716899800968811410388663511685607170697484091000011\
426918414039567277664255424754310551467213062741635185778682974542924103152235\
509948247999895999721158725887223280473037588070908026078391449536450867756260\
700513204053899745505860433656503601756987711577116053565427395833614362351932\
975856970310571754759813238549948875841392488553767181177521703747717876825685\
191526251725885011160602673015607593195483463370222254371729183502876973144486\
081904386041879681909219830981406272632050778882228924585475430228130817366276\
785202734150344735703875803520843922968223118542462978268505339113142292932489\
075954840786303578718675743235285620117882012202775345205667680331849772462691\
072487672440704781529147827277835419109475339322664695687099043011964734779902\
937426365950189926615617814801817551930932587333921747410001207208165313428882\
642682289953357154882046236348875133439995723736400495729697963217595547952324\
545712531484712608053167307330554318029988555976577855340136425434681785692835\
195693236745040706534150876237759744876910303639430960169421472217439625803511\
589758911781160420582300388504432667083234124984272749043231324868236249545777\
781573847084212433304887558706390624698989619572761247772502255564683680432341\
010879857519749346536851191423474497075811710598632089619883329520176172488551\
304318789607065006212213007840264573752520938943914498529574030189259927076609\
623498676343077589838192164916074962221832056308993383767056911477470923894673\
953708395978565227262762682636902959837762644167740145715321038192730953109127\
921731616354980874046358296598317348509241239556536361166019404745855551072407\
094540809679400946278324989413765667967155491117230520413285821276884274241302\
460818262405554407043052636910098988927206691971592973749183055570576639305948\
137938079327345190792851340095542458392610305397035268423659510887537279962705\
292662826482624918873473393478163751243571106592644485442549898518535205160971\
842833542468682915863379418239503685332983060497669298919131662824561133125044\
016887150600498214557746373375316236441355988011944290779923104859176236689705\
849890308389364060645860528729748671643578168941033307637983684952851522987076\
849132168006691366853420506266194082683798538504636365973905442638589277267280\
355325775078777496730786579143163570930334306966120549034096593223066618738143\
005447332326214310332336105245331570512021478334245147875318036300033723715138\
979309348846691505817417102403323791927896057668220810848915613108946983970879\
419587530048954533353989629560616028095236159744488733780305864659853333968729\
712539086371339306561079936547192729263421389304727238628267730157190618997048\
329626890893361725941800047229691971659872693843006370204306688721464830014310\
335084342288573129765320644473769660147083115808806696890623192758039291409984\
851734297763710007552645262974918014715027306060562682597077896074717600694020\
193189214452686070839649596245647633876239627645649529471997370765712468492306\
180420275562436570761714966862282897006081249933456844631443220255937610045697\
833954950665656098628819176121904024427401589567670256135097017197841968081935\
328105688753158111696814438706020487159914735310959406882823003567954841603874\
789048080957602662790188564575927573886882180101775491967034896433010833158173\
978312041494421879075719246990203099849528815231876570931031783222074368392739\
508961926235105992610926427374257185162641438530488314798011283383535706573574\
708891297613383663415023159363844831300053975056967941293274944552769384673925\
624034080219838799479409477758287541101664370508352876340382796582452672572263\
722585461184549467048835502590800402132758848206907312567969600859213356114004\
027330890425487400668660440122393920710198617520579069027732532929486253915600\
612741078232303804478377969512037659418399534961792986587998210592931797759180\
757372961436906310243364957250245535095696244505893798254398995759488468681044\
353550323582277993371897694355082319812592994909257417203627332480707621957180\
218797954563816509410949936937819705959592518765817320613949761889578281238275\
004045754621663451468586591845386561430787708759863947354239512078649477351764\
084028350143702323720969539591821004261818844957429634756809742355075508704381\
642942440240821093293065299722833548960662135362990584639229178069375196823338\
627111072192611622872202534115517945390956746771332093102212894452451171820197\
925531239799421266936177010410262649284553390747008881492796981460064410320365\
400528434751651469033375185650086512855090823371815400103512975219192709849947\
232038680256484103030152058452954471932144401555780436464609917183386205131041\
649670033862888622605911404537198019549004357001020409246567690707536346991803\
840195934199780186135641822624833207718629113070299956783922379743641009256000\
683703695301374586143938420021145512042810621643271281817529107798194972941459\
571616564393634376890401829139816883179249437449153148309882929617882370780600\
356699914428269989539468253660575331835973099614885258003417878647455935808438\
641539547132846890711693511930512139742924726311640972763197939526267616837452\
455531797139390018176730382471514017296330129156837035193732784441471596584678\
045863333007406516951767898508304254091325150327055235797962718641935477878878\
167866025073391416853367639998310550243203438927531204378805505878613012517149\
399599812671227176931038479141526481119302619201464082213312720198770752565883\
511976737821259598008606851443737219932834205101929154681268189418478302525955\
000569671672521234706309452221713965009973154876340151683109975405473305838356\
394467234860819020365776956482269198465401524280237749028272042190650683398518\
107279602688385664868291819451086723278796923353101878256438739888101400757786\
118151994780622834711563683066621890356147086395126498994065032092343541162054\
039159778745106179019213408179453881210903835192734380565317544823771066249828\
483882979921963058802648403015672223422211585792254785816821459904299441193911\
165856400215714436127482884024232067078703291392922734222139678907721160198820\
866316601311596983597201715170593028833626628047129360099701939675659593732239\
714550742757520097326346498221916333354644608368352323060987870454584243929096\
815324756187018348399710507954688649440891286461464820715425492765704747457968\
197944642844626395371737357160050189198625876121406480405560841860073268458595\
232355287337571104404778356785326628640482195113284005588939299077620488577238\
080684436666239677863963882148381594020426940542790445409848296202286414052368\
351110776290484027897012698518565089146548083540611530712990680315300705712650\
517278363201236941862219924152784893274728399656453265557395256341065765260157\
511675165900338713750469296240886202179981482327364858667281141426497406138800\
974833262181135218877513381555960376617981644246005745482217779423440362408205\
138249136076605433598300456478557366293306778467842735837019048415043148841383\
778974475007047572614134421015851272461997473672695205480136591510741406049722\
558821745824066055818891857148105648794103776556258128271726538829961468127787\
737960017140757892390044021147987282159289114445257626509235479279052517888664\
046731888670013073195754565678552796719560205981708665726492501873002341261300\
393487957703670732413697990514162847283278038687798383533995102538585381520993\
038301492899993564321512358629256970077305476924170661636819630026313012716991\
379462991990387277604228534491770923587271546554421088625570323143773730940301\
702065700407045762304687378357523023059637192167573464177688909057484756634373\
488425846224420638479521217109247608495622042871578367766307615696456222267072\
560444085232857393785281372763916401683227533499975267369582807090316658383938\
193204778735358999404578511249456218001376467183238755588736234381134887244904\
795430607402423090267897701793759834869619709012768306302425853890282723767378\
784649561412535944059252459252696787898368839100026011456766798764170450988641\
640189745026007260692195637346455320944345294587165245296288602254969406389575\
507238352918131066899269044592237507669407418413449175607740121738983837720356\
622709845380304373669230460859714208213565682341489308886635450579593671441455\
433934892052150011222394586420726431567965728367652898943936139995695996935350\
773708048944942425964257894773071106668545292946524798769027752011506186411448\
324420347414450984192017512132369799669612719828470482246370789033272119130828\
194436969641629096718879112195594534551784084327731306884380969155047810980903\
029051867216456878275410934379333015456689511652100252913759438823254642743475\
090696880233849328520934421862652802897321322367684890133200820979841840485254\
920256596004432570996780772975081119949203505397374478476111845383499723758157\
901783537429206119527228372930401311566050616249175481348659490656068964536359\
014057405182763794489704869783659219554473003021318063120875372161033475248573\
722826619709740606798633998710040789000902650501936113845501887464853968349070\
218552417427255512519950938907830580559340704624826995401276907301259497436565\
942356765865980526128924476924116757211404718516530419931677522498323982138190\
768225172880421028187082695252621870167774129219535978192513474219052377587325\
135308261493608667404491611544099821231234077246879172113911508839514533992751\
114615147172165622280845427568380554032296980281163625068858673673341159302478\
893737567377474182591813210812248056959838475018491301006122748479701901639849\
768087571145448051015990523539611942987154502091969429621127320402243970983370\
906314183721831373630893909547423346537646727393198843738720124194569684592145\
882689497867796988895873083850855522280300787924569639433742663145879387017909\
650680791102280522853893970160484486694530334141646685845666007329852664982253\
102062210859414253195094741977378936391410803414358748393879748085932010258586\
164559341700949992357639081164198090284579404807879739956225589220186051819959\
920232123885495393813721267118566791501852982488104805980777668910186405117017\
159880485851129997220874369512408628525446473347350428940284335558121661985418\
951246552515698715691612679419345932350702114576593375150189021625553114947946\
425234788178496596834008368375279986883151442975624638541650253776559798407055\
852897527670797869636723743632460515796932419674099192485829958366317161577695\
890412654636945189079551254777217459260704346972208350096387162343440387019519\
476684978444813912283833936013581173041446429422077682492016236817537998966716\
936073182699319773446925233068565271712845350924690647225860704370797686281599\
884091265779209977816153397122334746264632846993649104234259353383184379420970\
514211555086186729892004795969960411107651870364851071278723187187477084823559\
407915689514815984892830126811386280632583990481301071112778134902972478534384\
600837529985605428311930404787236669512716061939184522713311601213460827788256\
833552146297184256271546371128112693719349105403156420833883197521263342716621\
984250837969981845404163151421243351611991596567415596737232678137596894803883\
113078109722591342709945039164701589951375017276237105498136677340804989992413\
574867244004178247491322841726442298783399880393911250141777213019126149532056\
801955649316391878290240049219850927235970952150974090896579143905111788234358\
931774558618379884458415474186186384560790093394136055586474571850154651636535\
287026709483727099404634564384503610138431821629849990502306623363360413064762\
122152590712788628274513917008418911541319888350941552761124342953755174886705\
899650707176514889417261082274301854521641996487630389629867810571611684928096\
569445658081250029592174850478303107838619788288333596622788062656703055750925\
637631425493040515850768130196640439825389217371059840831020981402885371243543\
638307737629281531609672517222633825326664433073494408130500819699289395070521\
881871253310648484876416819593275786802389959700023423124096819661706978102710\
145463932325899426205140755053507799879018344186829559531289332199659459288351\
727743726694857324634930778970189346464088301053655039503847005423297107638557\
132622192684734519843787391154198099779875051308557322168462628900659433454642\
375181312249134670492997041125526061253012879368822063052003606573525805138187\
154643703284787522247664588140926006199684203270765959118602971609991997324506\
223543563375773751532565857791776329453240333641137586996582506915106844084444\
545524816000435536534322223870647438034529241697969443826551057633970901613545\
762361144727131707187800324550602221718805899535354104737348674448481117325365\
864500062678414062498137691248063072202341479181765096592941841663159559029070\
232229666415541768969040015085630829029227185901734549786400209449444341562990\
268113857760250123964181094195018592462711480104614761736361173676131312275528\
041164879781090588525533949097798794198568943929814082216715168277508987880949\
870725205746932894069368448895186188545256625673498750031254945532187322667132\
374654663159675253865344563221982165843032148195645090185316085470795728280151\
640074826098002190527348952117421019014213797098329825932179591161711512700413\
660883515084954599354534956872122099664160789955489303588729446219509271881844\
848317105705635443421208906416426396437673123205648418973882882771263480921315\
826110331012723189539414821356480929494231297459664845354089733808756326027480\
202127341554316086102936179390812834988941383532792971447044256288515666659012\
377196877297619874948711863365905455362983122344682870729581093310695618539791\
985535089619642764595880121228424943112861183724550168863930095808855189618934\
415499433480646498135513246851965414192793002840801507243584681099443582937241\
687487365609655870106788074227437104407350769394410947675537134838971418322761\
102140315723246042401917376182725942966726319800404259137059029606953276511407\
783895189235983192392788050842473370548646984295579612590730757061677213212524\
043759151685423537720704500039766558596493930284204826484262207864496962769359\
170147215017618210900545329453672758551313969847581834857943330707580037835916\
191396773898885692200226730765596815866049987688312763474064201295211647719382\
976809162667985784722986641969608338451147698900895194613692100452019611213698\
606794425193409619715499507483455048585543676186538339746415382971050980895359\
015373281289585912787994664691646874216878075512488935410787393520777857370130\
702130148768657662760899014853028456471000820832787206163693086123874482477520\
513836709732981491109535790083513386266272829282496972977650269978193935170627\
924956491638816254385605390815872669991204266761660624505130970873941857337692\
853476662925907180460598749667480926824142835979369681034132726918563042486231\
126284294078371671835415889071035051138239449366352866220081310318803060730305\
828780081107322763468354651540240232400262979858116305622749099863284644347429\
944409712542154912511616680904414353415346898500688004793202908863168170680079\
860521494276854574334622618608147493713972716574954006840219468075056795783411\
495828795912822411391701122167374787841990008070168828443286608240247981560014\
339953156720385125661025984546760302179126625168331041465583702132417050949549\
103322103978353940008941758814693608617570187118065120313653711441608833422182\
647946472659628293853174611807679588470927596556196849334175712210623850471766\
658533397845667176227125253288433994187603370215709403693394758821067825669133\
143681936810077409065873510699766348196249321730655135563180415031061855143385\
740947846202423666156047519323313313932234466092284026102200950385983686024570\
790357545579889862030081191658406364523810667270487386167899110339818074148721\
413035521430348269399089960571273212703631125974776043014519409998698214152148\
794808046822415235327673434698765470068421996796901202245284710945053559365488\
016000232590996854594301844881363330443231061926961824354558841855033126751193\
024394575089006558277915443533186166371349312016807173660032257686577470745402\
640912592168799418993856296030324976638034535946170912618216657447420843197432\
811130824108730775031563076670558916994288726627285384080428920633770177551451\
665890326807280096279355104039441475041124834968480818148239826149928020435973\
921456021456320190063476569742266306314894969105865316788491561744036403462899\
996691153143903192280146778269427697427404655762666747594188368264270188511103\
863011539962683014709779384920975647916279915727070258474892781764950924451077\
015658686269951274693060015264230794749384239754651766988535571555511511514062\
078483926207280410002486048450774884703278006157303354563925843785647825422364\
467883964412029251084750029231482624749119834458178869293730654482345782062505\
047739420045134514744191469651387971527499581283735484532394458903386179344313\
828242112132200774650727300635452350051640633871906760008947744271954352027569\
076128726775887129067925421203275913145509108734562447589096760964179312397990\
810529374320142850437411140015124207449924071371199263045463481386490276681773\
129894138129705011744522673895751140090886320956411961397400709600516916848417\
426400455637840328984581000183153826969960008736099589962157577666462901491003\
837674513064482821380884429075576864745038791278390415537298209603674484327333\
184822017001796465627068034017320903825346725936187488130059869488862915964389\
911013567663252863060900090209301172702480190309439266948709625108274540878972\
307278291158218691861616942717871301653575438689070399562390613720134911183494\
522190012113450719096908982195045613431779676971709758417341819084031982881336\
996968938793156901423034659991345141423043046100969455046159579324893533870136\
784709779249356698813526165965272374207890797555963318527342730994412182712401\
687379735360621906414238954430786139730713855518176506518179351869153468708129\
347687920590140782464907360982368528753062739093442391712876785702680482581813\
377354170136802892308976619968854897212375679803857604553381068417912699313260\
670764464948216717219301504934523147805451529543549846050121997993845816238592\
854445223475137491858883747951549018884127008827868345184226696960934552587309\
079439556250952504857713518314127251253276218128379158539754622383707849514712\
410541786546643493100215496157482265461616214619923862226838797614422904660084\
357775204939181109769238652872048533319934025492749429785257895476410373409480\
434270702233334064267753907776798453477414441311968257615304890704992334662615\
586937610377220625214928317966537668359790902454727900721672582598680140244157\
291713117760603293715880273556815961652933038446442499239433148461099825463389\
591924535696370458450480317551386554935890545558280010534728538160677129818064\
103529720651581316457270543697287360307275634354072203256831723801370150000997\
082296229970809102457777357351941189324284373367569279615903717703839916137030\
999159122271941178309101694509857702756651483035736773383638230530494076434361\
313682886521799426875734409203148788229470001193702905697759234999454380390623\
157284050669556965736328326647681531696349951526854509934063605411629651237797\
126301196660355706337067597980506488098909262464606597012545976314832948533695\
270409522469777369572143138140038447940856705611759833012654011532393321646710\
649572614708270710109830609685618196372963420888514477821301118394051966613440\
001133750496950474836322551603199576053552144263527204316109040292571948503728\
703401740632245798535628570329315046008789558660162491319740781680085216266602\
773296211066978370442919970150790010794808392708208094209553827961844510203503\
398285140388795146247588859578688259493314389147745226807391280202766446180157\
278972835741929004928446155215912004996217445874960620178759589661448464693192\
814052128294601408830692451505714119484486600698761950014657159136426120773029\
242190631099383968043191755311227145852582677380215500035868511471430498595842\
420509560972379289608075654685596705193494339965990858062887651663105187266001\
151084924361202383899275625416961176468546933550152514111279314286553552287794\
892116270725429075027569219631434543974377713880872325566297456916952181306203\
560019894896404169259538679182988268984508762350894024367369069896910845982171\
292383268508818194738375762566947342978232611381972202068800922986100192227454\
019740895714127174105883565203400278086550361362933953424031294919175186431112\
709234052670256744695627914924634156594504877248564248318111925196594239281900\
748045119721042669917630546761712422221394506588102287429816115203023845518203\
810247319613647983019361907928689029957412226968396411435986800458522563591745\
099376571934223109787132337077016473444232250972246538987025838870578786784940\
499844155526136827760389847192885417454467833827647975417104217601587656226948\
304599911919186684512939368589330060562542594961165641417145349921438078495421\
923423403873523407364736721566040929196513538226728646571009166599805803106347\
285198825238343743487388958643883218454401358727342250441251554388891280926507\
688858407533078532273947212136488751364344894539648291368309874043057474402819\
203749401522989389230217586033158966473327566033222561984619410001784618363405\
806912889545698093916454249581309155797055383787575392514869855815740600930500\
321845262445132304841991574144104709489411376650157804156037365779228475139185\
970436306877335640109638733661592500009713916619960931876522295203514492363525\
609385579945474227234373696187774865644897052373080831631853903904262684759283\
816608658988524848601580631511856325589891823762526463181739412692664019138917\
672230731921490611150412705905658428739461065644075078986439310214822471517791\
098746493016603517054589160997165243724069256244478738314802025194453489387191\
593845733902644710057267596154698056048206715318727792139088150662814463526268\
822405831686429145753922226107495457021911265235617401108850612571067644626319\
901738898700697989244065107973015596111492837541669721787028692657702012139518\
873959335574151680259301431499078762832247320378756015410361644894849429332393\
363914031721365328555532599784335605604056195756480757060343642088698286092320\
022037840529530518298857538967163645661351869526767242622141391252401446548606\
575283290386647077318149132187073728461611844665372238304181277775795684117956\
740062614177580886059492076009011366782155869988577662897226220783217983903832\
837077663417236521541990526436482306937220821158905895795131200539145520953253\
300308091310899270460892231484296870496732551125799397635609234114619963264038\
849807810014023331776474411925565103037877587060260391156864354722702089272126\
313361046798736089453113504102989102971515470269782811182703636764638694689405\
589736084577131806215849829183266041074034831023401549596773777985218918435649\
076666330630709597643561671180412343780184246686893595452520249014973303776727\
271581277721607604107216289353536738920542381495064457924481157201414054214843\
726624134376393145641507819410517268551377392723402553262737478526199416084042\
460156308693824709756501980330675319181178023997292472681854275987520537632919\
728484967322818375988243016425222640479986097876564294333660976000487150941804\
170606361743500799125506719663656719662184094551251925827460770590613856305078\
630653268366171951600270547746523347984413324426481687986764371011295460409015\
637044160116285786625337420347294324460130127424208617134740598240177382814714\
222673112233941002739392769153677132178453839817185830101991127176896216563059\
139647377999552574524822277353391525044178538375502532890984193501895265173286\
156915320169078809842275285147268591756373543309619955362437745208103466260462\
900084217586672001806524099089695478607940452024478005861056824008729187484779\
585943321449629272626884263657824924844639424122029482957230864160223282585858\
245573186410271044467503381143587558343212803346804875871159644361734774358330\
616623716187653000460200739184386759174691180171115790183358195390265732779430\
115469293320491320556760442513452093886134793896193162447956377497819856570403\
077485889409199083074644484972133225948060843636692277062265472644901719945399\
829043422632763726761622764218273266884286861532975060666778449391922553989445\
174735575805201227543556047392893521552929123497639747968667443827311373037493\
384361889322372397789471708778881713521840162290913370430549246290410599122109\
053313111398585245942507978982374511902711621293968417245245562672488841973615\
496690076519363403008322915596454563826872526628125018662784362155503826917335\
303530751085703912827108457625407338087843464441082334546441542704801883408973\
651653616108532389427006373052635345782170588563794397750247576270652780553056\
167379331969778981052902012210884969319411711415551233396547912446281260565786\
677050203689067442454714914711571442954326901036504779639903370907557607523717\
929113951192212090972186206541981248822105100476546570007562946796891528828521\
315027280342561432458460609048740198756808018600642856234889772648974131901245\
396399938551397133178319242482682759573575344487563091972196410271491248128950\
758225723553208738579588265870740219988669224527822352586898122054513067728102\
288080888093146899750378941957623327808484412852728637779842349733704868562635\
637189861641052928560052392922332779900295142940307280519494732419170889084667\
559099337311739423416154211650317481216491379200624695362388378910005735127636\
484743147524883661953599550145295949860029621597963041147345113870747520136664\
744874064107122691217628860141121632981334169381596858399848435896446311701056\
862365031585825838114406704635354243451550637974211586904327831749884454139077\
043715416988185252974230213739411811310612523005546633360145136986990167466232\
149877170762625333143557697942308120741037703979341255982870782464003321573735\
857433072834861413929578121616492128397879299457938912546624675377576986401979\
181145326210768573117606933487902187421133791660459272925350686398054178016703\
422460635709121060209149080953219939977087088611529273432418526600746989576408\
338079057105703588896734593562915988090452372610803279995689329526507889745686\
761081771560581484756334512707483930114561998978445323120897258478662221289763\
690633249225653159247567419233358726012384437291825215686618356943095893294530\
318924090990144871787194005954736667026087217523907248933898957545581150698057\
047469617000245714329498522509749249588291051626070647192859412385960841626493\
741835140604468975111214498756574227711054627774470944656417436270491668719628\
321066242155576308018902263631650016478376352560376280831622433015331703260233\
093305646516637937013587326514589061589789148721213480830679801757088338237872\
403713623763768907195457927579765898794674315181946561361550487397558476741973\
573289855564730633927204707341856702848347166644143806985216393882720081005366\
546906579543494100630030220224693589112745715347677223015714537934336032415955\
915406910946566961855424127504146749674011000272099093535309685286826173630365\
832487736561063287207265064025387592878011991935364107718702971528190103454182\
785004816532279279589391744605326994471629779587431833533906727211714640697665\
339114804097218651344165179007249410699727921090962802141316681962785626683443\
761736559956261131210035769188585362182952932597964758786977374595174587723797\
266758508964187016462392539580783971768428230979200706266942097121344629641235\
644401505594879294905016179695507203694216416427799886763767941004490996560078\
018679658307371743288616647287350559604314388098305598292041285778221559714651\
236801018177131994741544804693942698901999446890539605844121268627204967928955\
304492381323121683525527991975817412436624953622685851141792648024699831221696\
928398736892111710908008715951030134799982769471302584930749461987349674704268\
008078870900186175453784165545638540485324061614039169341429758434294505156994\
817717074079542171073601617664922403435531591303106790920983751548287628557303\
414100289725016532073261833095762766705157592955253762021259229422718121783340\
751044529627734958751001527326930526172783625354279410156221682670030394717566\
776072827150016212757094036954858725913782825254767797983005134416572119173560\
546424966391504348951958127100246624745924628924795817528779320876467625010411\
994785745613997844605962140646931604825213912874929412665139675589908865695088\
249477311682748363768393964592951512304113208638817898932287096250305625254823\
625184871879930912804884942464121208237330205629236368138249277552809745551314\
558869429667281704573201081875555833375202784971590045411675469954361522885368\
615541583388246250808236921390801309953656887185834772137117226610465512728707\
204052237699882984620983478642790909395619210447396363581001602269266911556072\
510750814113952785670163113908361904655224307394742371036058654322439548534916\
253172478561259062020842244458188240246741263751707212629065095545711308817433\
263361172437826136399584754087689122758945403233681566266838511973399841362270\
375230298886183719111872481854751477484474060520749594206415893629222408969502\
819444229356082209869220213104465981195980925566638690021032063038247059401193\
251067486096710193409281124397705141223350868856199320240951506091456119648141\
971800060602964948394634754938099488782156487156138666104000402402834941161417\
026795531187873315193952219548115803796404593156437592656154351829126857907693\
504834040569488251242853020819372724223655886736576298903128296194511297016484\
998782201972797101243476484045165406096913866988957244885545837993763602023582\
275566253908500918131382452488928987610896019214969903078340446441599717657033\
615306306775620634702507591652125925705467322139010280249847801436193366981004\
204662416700954201259651761615757349421234277031472062944412230951074541562718\
669109972780174363515333731598742380752983656605040296242736543829176997067631\
439482312035835461690547730281206789888306753806758227246530314156824915052433\
137349022467700032804980075342213225679708126633540286070351370014407282499638\
679396968710519033204341721582902111981737479225333433371452781541984762298167\
433449202797028997520261255832735719909354412829727582323830397585500461326879\
211965472853638953116772673040269924026689039142586717511495085684059013429957\
794075754509372465118657450532364713402637105794218515240802140464551549694755\
927292215315186321682274020373700688134180932298227267341384721102189818961038\
885176833940894544353146074392579293250426670471741395578551079022769402126663\
352255311397050509699984100472814622999816553542377667644394854645026560206621\
794711964106940157513937646615708862658616999920534911223566635141120735662348\
693436528686149173562441684307080796011252833371698906565739285827445370525516\
070739048182630200823934474891534942242539195882854208144488927432410790104874\
691515169772469430353292305903069556083675140545172538168358133594502948431353\
607933502996229725405329492590961915763371694059544340288166523511702310027847\
746113721585109465191245725897402056928332208072329680519690634986732967635102\
978649279754422094985157595660143238974150228941624264659984996445560312617998\
070089983588533301535385065238926618643659502734048555767848966308103625027740\
885628212818039585783520407960036408421432672439116415221272564214620032385372\
573811758735197116488642877816865496301844121783329950487746205714970213951549\
439535444827099264504668677627661253294264439338882363864849792578238438362834\
488487710046001862791170571292663686568116384492921306516328348428470068393592\
076139445371675517227529187362076969317334115265911684791808977260702108396225\
122026911257311557082644962690688713902280262535724909320880105792447504453402\
501657843963003438828547166892107959115893943988032852647501580946704658480851\
734297468969194221610213803748324582285530256392710317370858211152405514020803\
864835536827858605929856764689309718581813574495959785437456561190367092380307\
607182113129927599633761075605327166667410815250234356816652126976772247021317\
084476984404425789041053414435772426070306583774819442077633140158844069831697\
007730165913451335102306621281036347719485520995092673366532842277757138506797\
788856609164594418141721894246397978720630670256109442536413411503097851262896\
081544500410553220624493294774475365731365180219137026321062210896719723039453\
897935261313071831328705577084992494490949836493728984655525205746088002089301\
895633769139997598503888543132917761292840301251391114482213240189519468656251\
243924325865532228742654904759005675325520908195254857742772467974297405129181\
265560145572626802820410278370637579304179903464229554872650987219532024620161\
061144192523339192029549530022984144812954895848588011165817588193406071422796\
558534631558882015585576238054085705938599432571054402238725001840853745671953\
712508474100651658402177481401725845284934294846226118068339424121822609850905\
313897522630833255242524890471263679077077394985822472546427990605791024993893\
161753130204338006815734674433836650550716440265197329349386147432002095144923\
699187221049471862062201531063521371307920242391141218474847705850233422026615\
368885556926942551439984217067954938747349295182092186238547264440687291788688\
754360824300618067710818003257570644357807370497592350447851405201376178844390\
474713407551868125054055800780948939976751107877005727880960815722515619928388\
176812966668920300351073886164499200298457562627335807401964094365431777000181\
515987303834157612272775136764733872354842357587455899411649557858779545376414\
499245599983816182848416410917973675190800193412685637579780568059158356562259\
369540514944635485145155117590780797877877928629743585541490878411999441375479\
461417486020051457088738831613966953876182811299339096326902301152967041015637\
824535817659447967680753815235624940919758610312409748397116646596434028218233\
568031507870007144848604039470151325947910475098678685284254975713431176549529\
732891980644370471600675527445534164367560477068186108132774982239936241840541\
655702036788565860248309388219986998046636492669785788504704689423979758078550\
758897432248620284525500139043014322938850955959735437869537932852995317996458\
118694185674412372727569651060200681416281600503680890936414561906857278553672\
147068015083101672006873774390149525224941909504363112787292677184354848677593\
467290046109124847935073859885781237142425621517226817884673514498525097190805\
808773280065963260803015096434001436849499659576424529881549617659426557427118\
633881676810008031262499959615495102250884207790856885575611153136727963110103\
635423392244937428986902697107065469711114014393297783791844827024614245228212\
080499709326091359430700161049657599295075520859292655788397996846585305190871\
736808416254342871965942181297432123878212289287709993483431745087698715176083\
084187356514628312229095660792106493606115901019032420435921199035452975219383\
665643098946866260870887747346091681177644180145287478992803122219066351477566\
211050568475404662871714010228404720625048821029672815472904785812584395328107\
210754023003379083147530913625128133754711858010172226600387980497874146192420\
902784714181443691711305380254060570690399927279075000165774581504348230053959\
677706649907764352808913257971706884134153492656170562708673656008946678430892\
681257620159976099669706771682749587595072717568399480856595334008277242730165\
303358180113190894380131506816471916993904143067219351484575545656716297998528\
432781877429809001769548325607724245945679885448971576810409896771220396571412\
345136580097141747297106583743596255138035560101792953950376064629860654668339\
920609364061149147077390391192124038852827233123994384315751317835846642383190\
666869631760845811586403753586564397457549439771605223697668056465722908048626\
125796935190224039995419933490163521858063257366528023194307583360680026591611\
424718014788133430913576675609594895197724127626843347236488985621356603349731\
471049893929409500711027653909551355885705445488037997407094763671250431930169\
316983675541426331217722586390086237711437475717819684624727590064261750379406\
963964234153852686186333748119831701136076673093986170834585187967822185498788\
728889804383679090599701056007000823791396109798000284160938033139368598440432\
307383108839697685201352515572684792403109885110995999539329590436928964710095\
548833439464932617970639555620076515506384774636852317511084183834717571736397\
821191116796181063441806278380774317456677992894221190611225664742748597024067\
662671640899788379138947571156919549452852540191128672349731462949668634515670\
373057665906195993355572481845060535432340140563244561133054964621534171738465\
587474057306324441306019122187034492661274909303355333474995447136097960837014\
761841771319063972843700837388402573033933907749246060758398351479073706627130\
316668914153838034116894744955403691206247169843539783147097229122613121403593\
578531323046726663809243697865303348499244113443218444826126995196565118320368\
330909529897692307163847784630931955346404829058055319637991922180732408198045\
026048285490449479397509536393377290554728254139300417374876889427946289927716\
594482482707343225013618709910122907342023505172206230896732105577921535636141\
447234772940842590022159071354237720973783097419640589244618831979103539422880\
920815467737816958038525636161576153805947464468275280106266135230042556443999\
857754339927423442821308608475064901244665595343664170315695378023101036877705\
734675390524907438623400269415643000626908247705304131759603907305923003518024\
459906069304442989407626064112089382006012018089651130517272884477923799089624\
185456943140985190402395382245841038127500282633761053086805873792323735378341\
510839817140271026870346867127752018992198868385229214363691983070120605771269\
848199502637064249369088744235515027801656640159241312984981691916015848211924\
912095859828871417055117039454709621560443335822661377080665621524998081462051\
491784913594618080714025376064959825581823597755464353585067080751550223608984\
224328730037841886731327663834010877164231749017971340346517625133078512488617\
828545224836079777566092968534373288321850136924154343522939993467370425459671\
280928243192164271887832309117189834187235198360230157474313262354739995843145\
323446566554385793093890647873704511175231177555399491726875877209103306624722\
325766159977332650089194277826067771542143608372157255297794141143987360002245\
085520589356108933285517997584915946471922982010125086975585265243284063753753\
266019390884473697508596249525132084133124000705005358220918332169947328765342\
845313524906396773086395980406050071280513819578836873619255457615269519340902\
054184883510066261879726272254197965488926364287353706123214359728615117048357\
802953498166516566885398181691931907234042959546967612162365454073262489281194\
280461465582755470551440183013816485375248129964066619477665395929648185429856\
313356094084454368009970707343598929571634111817752099846302834511449696505157\
745262196387846309372255913384609583502082006219691839104162072916353117559964\
896480193155241330850684357428094193135439764016205986769141569958155386961079\
071174766864682019748211644471373504292536650113926875974695259025769817386032\
904482962642676946396951366764271074277802472811063298996200336417982992132408\
820096237120596232832082414181663210911210607133206896227253050951416162774662\
773693531688227959027959455090096985814832725577152773825305142074370242865733\
485937600804212065942408775945904012112378200405271370047301810855007167231718\
392428392836242047468751600503376500732734112498663063438029702033423804932620\
457498092055965742044414953356226929319366379762004603966566170652991181650592\
632037508644754023844504334687930978969753663336151585466277594311623831531027\
306388722398135880717445068597835700186367299527740056036077372484476047056659\
938789755227742125818607751873046614728067103997357553552691607615897193407250\
398358161043119611962460955720094569484057452848104734392206349576584716957059\
480101629606249619852514792826434069029359595164452411167332712220109292499501\
537114569650840153556653639220506501249978268851092149483392971419398974256817\
766204224922794514664872986183076082785802985438020155709087523019366420384689\
844775190118906453015853453147300146322823044982708283805511564802360067787466\
058527553657465823499495873307992654493303943910021584146217656627143738131097\
841117928303414637125269837278717115252877764978010444603288713365077158590200\
329491051073478969869601176921141447520870164227935945785073647047807441204891\
010664516797150463209950244535602243407887057422357867251720866117289516111384\
477938802243572708511007668688664191064175719265127259122364386854156234114132\
653205281225456372262582904092278895614231799037628490984489075480692631995724\
253891047582583197847501075045861699667989398820659892036817576846021757871192\
290777570887562454581150459310576495720062622983541914441048896213920009131330\
839075118544714554822746584132817106301567339885508298022551488812644597894538\
084129318438061039263354264647414641727498725784087492985190274674797418042526\
467164901037902586531633338413773024557654380398201281675706765445085616711159\
230810920406092423227834396490872971524799630072956304176359363441980006254251\
334962317957908014977047642040079480907850453816651596427887409507655112944857\
766349541401843179942944642942605165463973525863890506694266340028718836396304\
977411427105484906937814592039755511187811097734965127907137002644710632455557\
423504439778039434675207810761092371030622006630675883682810319244237811304343\
999657231886285350550796420664946434235331450918342263006597876149396595406135\
254085775325001404348668756231260487361579373747252970044961493434623449771498\
579223189241349592498389487786756155489049951404197051497626973935718123052385\
503683925541032197890027452030623890915633844179434922996033239689660040810528\
158024808412982489057024018816529516574088872920574958008260693785282557416703\
704997924208491106082173083709431275420442430032958862713606293639560705641737\
817226183055958641192541383934542152715464317739784511548522965165951182575234\
661105753809725875886796605159223154694860408875060496152237148290070865701241\
928402102833022782275713513687240721767538698164965902788171924875418608041677\
290192731038780200872783919972931809968891522256454627920823466815800636059963\
019139264730618773880774167423970930262418950173530319901614601273687782949883\
611346176139133360962371007419722026076130042269971813975926246514653826721057\
483933060617103025187398360344223982762955823341592416162794090215687080386940\
113649465265353560687530547002909217503756164847623911558960063125238790087658\
419486221179252554420658709624204718333699975255105466477544750036205069803188\
693369904680490329284881811925270052067849582883320638457524220370802209699744\
677708794658687515323128002454998803688482295911343042758616428442539703482745\
616287270281208757399290917997858365905720851793163575478727272491582536230358\
421707154442871830933240613375226387863623021029417573157481429819661198857316\
673422051785920601024588848060382568232771192202454778909455658203381475564397\
540031775002717958935925743791826685374099648811234540590904078518855291377918\
459820638145221641179396461583369349208739008561605870642106066091375621041998\
060142499588344117445677211150434933674457543948634282595103517813882725118919\
667307552626554043337310789842164930071118069942964497966238316105067427766547\
623921542788486330647866383820980121883517261425543836519356958269204920877335\
068733287334527448155381117020545351954059100163159585302816524397782107875560\
157838018442512868188368816766341430741533970554253918246575165912089039148435\
280047656697087769189276025851009110750470269037669727507713921072369121929996\
121995215795859205580441936812191390591684475990561833411764920520955009000548\
570985693603772339302332622968717386741939643536118452767686160183314565589264\
375231639995105425059515058920836215202815979361557228885170273063572764955666\
495492507856474981208474845804617201687615600193808413509029143083204230832702\
310699861595339285568992042662079152335922236687324368851807041624247997254578\
393161253365931125047451631844063087390255511869790256695569951072150703627752\
583110026992503606417311997611691282074332161561897745774309672987221615073399\
946372632583154859521421550199556377709475089914884991288123340249064950855197\
427709472835667804084107566925698113692487659997988890277292035461406251092359\
118583680301801040845850675447390849538187331135263551163671195404504184211296\
295680998326465537889215936712500019837910807529667586993107829168280909456721\
954256311051769337859704441481224518424157892270643915508315389336224376661841\
808165452565934523637235456534285369815683797720527221942717388983681192880141\
084122330417278045382849064294849001502336320324582755720712943516443633491351\
802945983089866443144832659938349309296771111013234677144677493572242154541686\
929853711207902737918065060309106345601000993895544587145804025693334963845562\
549513137905146187895344464542402300532125375281777323430992433811745596785730\
725724565980033268297017761648233186592785804456262901479941043118222144689512\
657013243475624027124033582667689937059793068525942961435582895776929937688811\
113692714590504975877935966499979587328286107291757429864741033513374818144260\
813556703914230470873973320799374501141519705205075210583691047114397556721901\
741379422673082746331018102610043991003819140791537702191355576541699978886199\
849412573242039510018150530147676182482362452306725939635052273772112559724087\
516830722210118797920410775440194765666924185797212195425488151621561087840873\
534762702716867126869292304880828752457960782332416083906874577997419145870169\
129412833230731096216216234906283187119110737330683949907602801163872229327032\
016974014339310418765647317115717982290443544628998425834296840284568225036097\
922700494916395234902319448156941841826960197028191162138108323863252456271381\
400156751463914191954294203838782261004782033938273600595492518751788210769288\
326472224857512514678955181377025816000408831724379992343763615109541236791501\
314339369504445729979311805500576721887966795173161253311659813862428514516936\
048714828907109634292819805163362474063341680177090109405175666287724558386477\
357286419833518430257266982155680147992520310091515278649585674858783415763539\
681550645026490643034421839010540140947783122767230500915093671880426799116415\
480611454579446123173409502544752217840169159239717324954769816034913298514234\
974383067036779079878912901907629951163666192950331515586901322865941417779656\
910549336436691809376578825799059818178071686126535699701161005931259698111233\
368276905609321762344591327136564366345987613587676740732540126994761090983716\
862624881330028539035298057850035429242330665689195469165365390703032303448628\
509373784947238171375921608578095828663427185898205994217096828180796068202170\
893662915199917538265225742611461746516815576640683439825870577353589868120900\
327454382001865317346561964772959232821772929177473337530555128861057927476317\
107511588026482859710025800068875076578063061227879879239396048211820344595155\
425925884085722836119006348241520049199060451637656807938908582314363965832561\
012266645302205582055811380059230273664435380927131265251763051503619329003063\
029856475594147171103799127256704196559439868624997697030941306540082882050267\
243639156154616770661685615276268600639388830011476763913380650895853401981786\
011010587884780252877502071186556357969452913576367167490656203611283427424910\
229089429750724823086166878286570166243955167776275697251062079591283854827440\
456312275126290430821775507856486940231070296909423174721512021618190716960081\
614225357691947315097824850372824550033214546925086054100441725762203769028849\
813962904654593046439785385859660183854218101285423956994305321167843150813180\
145503817092855003791231847010120630049067179600167170592064507832239898761094\
362663846055972899378254972844516435329042263540722842621493582757018823825730\
578397429571762034708548796969023712643311371723149837474942174609129602567812\
747808611563037481889547168204786127703641328973478577118674063556073211396367\
256003773287639653541902302055129175514824436172151439520465432388872655938690\
752079731967052298943293172597337093552454046228285796413002566992487399935823\
484674410545396329401372952236430225138440813115661775311240079383202981399896\
469192277391661839991947396296663158721974378305794055662196627044790647780494\
476298707027442524979111581824251852645168927609193579311765139417541111170808\
928965529731021666366195312550850735962303838813083842960087138628895564570358\
409500695553165570952865646514824466294791931374013046517646171165122260826607\
338563242020482106413941245342478726553593524308902523824539208091983970827884\
462280539284507804733850412443704865767618781130591094390200662332350235992895\
004268221978984038183026635472526615257462865649933531472980548201431608695430\
936511883528159956741047151078407564423105116408839923147080794888966869474403\
678202283455720820832518852562386807864660652396678797513322726767298050124351\
295318644249204363882682702972878104000535303842028082995550670727813877694538\
498539411163592080247803579447481999121761492721151364053931952536410587138843\
132111254259378711265325341511240497062365603880842919101212475868862303385718\
895184715220528672110644702619187291047696788721983573188684712810095921691678\
667893824891552031877992576307481797744221064506286067000522934482236343084718\
305767239357539770858882381120748989446772834803984810173152317402788584698263\
487861215902734810225004620459266986085794803522462848798013929982592070568033\
068535067745011627591906892793956874851193553870000941891907989478517665981581\
627113718099522310261088815041524659935142415901228357469680238489659842817073\
020233804445244684556879383930197559006337655770151316555381499837304282708429\
556302481456051951556095444847324250623243002951404996239745137210539413985195\
599813739477331352845264433561544651168187139224396936991010185041668109096868\
609997603924470649562373992231081079840648900245575092995342615718940247063140\
166780091186531410610763230512619711838378713646855077437925687928218318898724\
539912562489291848679548488064606805234094234422905557259293687420616953485245\
048148722650748146734888879842059396797786949357922850102337314791520824253529\
429762195673454736384467720492210997849788874803283835371742414193787777704245\
001656505104668860049672608574650944255408575372461629652087508746887715822299\
987582541557616303391239062895989452056789675014651743637275220875713096883118\
992152115036146080507825088649313510692543131628173037652648854247288961783679\
041686866668348682317832159462222601202777831286655217516874154645055081708892\
216347032961050551938039088647169920423453427243455503818207355744086898303745\
811961658537259501755843668734973227239442993766418716984403906850173089844681\
078464557290292243154278033197520409077405119266173572423114083839423205964974\
136592201940921304084379339242496372017009050491318152078187320499299083158124\
835441849395466936288823281774182616771304146877417898205645107708859177376675\
777030038975185318376572646726087071312571943428882396889268139109597903814675\
500844257782555052824498662699884287584547681171757570610223178356412260189012\
874500482433463235471006292433887341716948541135534945941619292977837150025271\
155670394700002861551965351823871227232503413460326174992135845650404365017298\
634626959690738101911268723972349069618311258890140003509302893572389551378324\
996238051753093702273936967572717662700513097973651376108687702829389196892411\
357220779968604174081072332781090707892625826646375024633242654686889004760874\
951582254105205838638327548316314710357360530108811057273187708396522509818185\
854066176698762752870026775843453298154356292216699838159581793398776906059958\
331871551986088457131825530309091929421222151227748387802486254821634990281856\
620061971135918102585228440788807069108415883991846889510176447143737457832157\
744070481324025654591024701181188920312445684116826688900863504090427673649553\
329465032037918047570100977569703091573950450266896070826556008347437764763406\
808326795233657808297878144909274639002209501958977480230305907224141465087503\
822952938606868395825239544476973349940762608007277910217232985616400916300674\
639927668301427410862625937768168745880396249717312529759401311442206949282061\
941385623615051698973568188813787896326254377363666969353742151236810417241642\
736539882599879105965632328813272200604157029995687388882536390081284615179486\
094415520141443964871796940867516582533377679258678593887205242498379206528213\
171457622387384948922097360311329612320694587988429938880097361878990769478742\
034436928443451205690371764708637545403635170645642450660578057683233938046378\
506281674247683218333548549676805666325326919301416778092696923172769198490724\
192024363310857448935386307582656109614314683911001856860652218721479833081115\
877986423907070419365159475488887231300584098709971602123059809909193908327428\
571738459931682247956253683907986451410677208274569325879784614092647177028353\
032922009505807437446545624731562317866314526384319836175821678609602857805627\
641167467336278205534547802389230284923746804942369969928298167290923492802404\
518315180520719682325302123125768613939914021638704623361523433359946153646954\
389751100242676485981060035965364278110457567828040121394134689004515241668844\
415552195441430370918852999692127560089307123192397109573342985280029145023098\
488582441991344649591549411754273158832382609141212919978620610044034628158605\
405126608627905711572900524917098377116865610849071680079986346025694325600954\
907173106079595160032300298804011331656603807044996035672618472230844161292560\
183434509342516275187837828164016285626256276707017959648284513422898780203071\
347097552684472184510645206979522524827424879212406791310452223860887177515482\
648832741049358662274938229845615016957677872907566548790770906114768801830360\
861372756232121764786694832267980694984403483916034042132167392088025301382704\
725682541640232562262349512533741376931250272367206195021715535478293727193218\
380955885090727471396875399094123129851974842799815518539007059217575212014926\
635786336212438287685778186991263118101293700349826723038806171701676851870416\
034722854333054435729252386427507292139737522507735840342210646538508785709400\
314158163025467250882973752700814978371035185395031817672365242766615787259156\
262755953422496580898663166612947592045633504548771446306463029588667464652471\
764306096818423674451755808816715404038683766674068244272951515767971951285982\
877138819133001354687764543055811606177897140041373913957279312919491349592475\
993772232585706114296288816607844272447622621593408348448830401725226335964571\
967186653494688984966684787663678613030784133394343086512844395970759005181041\
831530859850645326115668524276926744089974564452891566800310789967663507059116\
395718547186804134812110982791556151509872434533183642324180771402713322536702\
240819399351040887718049507519610767468962656607845533084149268392837565419721\
548770377612214023392096767304978550280191904379765808447636505979559422254467\
704442445114337300044496090539622621790538863129195062498033680213888216236300\
985999708288190045080735256019563715548823544467265295004069690013830427986243\
255485432390304558177445164926951525691096384301690875260645120289684600934855\
385283676044206099909188694917146285491707171291218922132007486778831889154263\
131569624272039468952034290310171564046761768157157493500820229381446275476967\
743057973787283825628631707527252753614980469851656360569495233554622457848895\
623913188935209334423479012682177209646750593831136301184920379630017729065758\
203369125710484220284156989615672904027275077473888881647652651382308926996951\
698848411401440787141121489166229177435039287678961176260225491322313520178220\
781416765163646012174239972933166430771330944568737807349748698375843525390082\
501313763117839223818173736427479674133681884846321918741000091475164547068294\
413180863316979476989386325274686335318210874234964391519603175953827748339287\
598244395799141834904264134252395324587739914590648522179841534642386895178084\
254520196491675966057624212037840781618514512232705887374944746413253235266590\
868605541732864423830683186565658295265752764299505409904182818870467125305864\
725376951018142026354715884642332478188245738912973145019787640562254578038493\
747428967083169173199178051588516505598584448608800532668162151952482112480164\
922999652570729590786874044958189539719366263539671078853381619016803040379610\
842461186878534465227570619678306513976823936286182136373266267284273126394231\
123900324106133676262119845483552532607859282171323304922456039452310112796333\
228926399768594598164418462542133240306674373476085100139177814186499193758942\
727973384957707254939179621765658066838400622359872837167165119027514809716040\
569988043250348252639282415895810170587023946659531115649420761293550877083045\
813269541170358408006857067296500076324814984614556546515639383489830986695759\
367436502740483940391141555569838005540813422935760819659622837798250999813806\
781937655718367372104099461760557146078944708576572687333603891995183969347285\
233365396702188854171855157272140351111684517589039329908502135470506293935802\
968487265363214592500913838122206216165133220556437774945666138587181907208446\
700954296563396539366787047824809874673758942076201865132177518002545238188038\
372416941134869356452253671878025579609560603549529594510159450582237881837047\
751397584586677309530883388889724181885181964062039563243051479971080238527256\
493238448978390365930714783111574431962254481342892556788226819406739380405748\
014668867120414898064777847726713973200907173432482530688725075349879101974713\
820580929683443928984827365666357692883619262219509434162778131074474955359176\
477104451542819674138852010205317130229828771104608758149870337037663424417802\
608176248390238054345616151429771815528214435584778217868564672819695270122469\
962686345852655255760633347978432126183010367695415408723258326916428285368212\
975191749118684093110367851018122002691474826832013613869349971512426631003036\
863577246273086612292658277069394526638783610928882870641473927198503970672996\
138630110252212162699183302007659460021465238639965297364144595167111842206102\
849057612717474826986174800741778605164591163788037255115446567038272084913042\
784660426808727454789756488110575436335654290796320289662454346722136578716300\
454853648790095247039577377243646905390095157811625931666201218113576398469300\
197492160558661613762761758430407047044693916803476163613905844067613823715000\
669552900571977255474579090014279959582533326864042953787052329259328534353455\
622315839508663390880961349185842296726924512138124077727666238600591112956019\
572957915738177889700119934935530061584013330899581023065826233211460044696254\
526452601045664486278195716521133421787002680483215473154236602709069667611546\
149718043097648496717931039761008837907462822638642459886344578822403270734627\
368177909924326948831376058029364265651853071595322525671718523293812289633435\
976653511170335950963739274849586092174668105327012365513856731256069364069752\
956147300159848801988224103824718735651896754048189355701758579307794931815454\
166531887786807873878740276862267140879720369427243317378075011606545081774765\
486689044147284636203842107720384721489747509235844340261793447938715309009951\
589401505719676659035937689213991847920688278596918993227485279532346172533264\
795594925770716121260465051629392287752372234610390112381206201308469245854019\
575575236351570017705811497381838992952171426176180626215583220240726555947594\
531141554953518236277796914438808879638045451433345812497428794581433269836422\
018382174226231526558640569286505505639029075323200656090296171947855464644407\
453004996904328205479668242501902013875298195792274003062260168308889252515548\
199667250488552446126063916914205687986719252623399815097555445854111276711693\
462284844443897867594223353810199961787052399478350678169027418951737239446778\
752941844925348689173171786787054785196865740569645024615710527545183991470794\
516479679539719614929134893481979919843734118042964580331673638464704551678126\
687725217364772246237375714783092106565874347106466898812606736992807295260218\
423523570305707920759056423817952171298561934762764618197351573609859806790510\
642875185581575571322159035751876422340891312830927469176500479068210619785666\
066457171161310408456987477059109445596211752421228178760335279157126211656481\
785459754164730502929767977679162660346154741288974897058752047541769569575356\
630489061693006836131004859546052129021809963648956942021320363659429037079722\
188441200344857949325951961885137344220999069851173660323361435597021614554698\
811969010922387389877728922558295140223766658383832369934493303391251823993672\
495321575462731373319141762532623864466328868232097011543313200779955498806479\
624007567707888323442191967384027576580691841401017836549957708625940343719162\
841049518346739900159182139336025322312609014663063862888118607630740205888669\
149696851669734165328315753667164384952430940154484088126649794635781684149421\
662943747728814535477122008005093044336202706135886506108180317836001912869009\
557126770149028692928414405789758756077768339833542455514955214963865208270449\
523921494652603870578946021310293834251422168070261519506204064090858363442832\
892371641089430571768674706058635241411857234595913673035190081457172199591197\
518188799998294791444780376999780558471748816133227174586945651623419365883187\
915790837168466528512221820795687111055628579111685195568716960993198032641603\
758471262987292116086662034134529539357706607134165444537166221502393120443336\
273181720307323924812035419956313830975683037486023808349003086803803988969789\
890480043530186361562187608137668414622231998642675112637576100032438309876557\
405862326469459849604252376375648791455993919360790665014590005913801758332469\
101925410716086826076426339968016448378377207038466210640338423971875560563042\
663457458835976071343651234612231472897469431384821231447875144906802678160585\
207715667129461182359730487954438018462802615626704040111283058497522243811901\
222652821218668484739290083539148361610873573677118822414613050594432741392400\
983136100595727895184740116024770622465210373200620130248755341048680378560656\
575555544534300014758558195189959608661535426300038456906809373258803614330283\
441315957604432338105083950391279373486114547961172533408645511867946477315965\
064331671715358314955814940002756630584821200237587086043446329052432725793969\
228353218533231142368997790398282201356024317704346328528650274433924842706776\
394442222934128707240324378213641583028966972235746894759888861649348946406124\
763317937367164088145765367805746417238687163124983384402137788123157098376351\
738196358839584107555852073013157251400100074457755292543701483164241314283289\
591391716976761864320899928693616826574463404671472889756730646815077129069726\
529371659115105316480436022045237907555111243056828073143794395622390614134468\
388692753814251745208461198580992436676449233502504354005733378932419279202127\
728057195451925040785360906689648028059199946135242377939989961362279219974605\
674796987574803487257531720117777106163121877701173515725556355697043218207655\
842654585936181358403192349390392745692769226510105168632975919570850089821025\
377506301857838884372723086243438470442381234883548477565428548930871046297629\
376138719380624625917580742755798108492240799902309642685841419992630001192704\
008971361101349343933249760849134265996918423574218814228194147589481383776466\
191185092233255245938780075659319742778708790341079374364558148543680524007018\
058802247725754685882891221328316252670606959942444379496860681811281242918430\
356208804423040859476272157587776095171160634839998610778911139220035300775505\
186266839713665342625894566788658360897921907137143865697050702655487668923272\
888499421149867514812156878973448724318953451474742437838798447243543496472455\
106975585750052370995904649190545042302487134841487047737511735653143712489968\
832721418507099717859349323313469275806518464693902595576062201024137608795687\
916963975076389041127685359640760871498330299600847289036282771959145152389038\
293140186946821319251776687892225992735352434567201680756788628387306877474690\
509476569883267258935474694866591473051149769135985733268420148287940623288616\
591370627528858231911495392764113382714129590560859219213480723474452502273253\
412678124833238167484616405190089298321579993245182105043315863700224508835598\
752647050301510182064281339421565150490977628062066485048235890440460696386377\
100138636919360075041632705099254920283605255137663065471095766603023658038939\
299689937105375180577530947531700288322562471873026226649665294082072708621584\
037641523098464423205526100813964126570618367445926604696330966130012744430835\
257520673180893878648165659400190817067709687539526995742202486076641683679476\
781443677476622013071694528829693217671407018119453199876237471499288093407148\
327318915104850182464266200195800801426663824984814859235430179968184546987398\
785682782012128133379373066139012005127336815250614105375624548673664307143575\
815285232497773976898990352727017483428581532475041201550913515689048175317426\
831719378487321377221563067964478765378951195228620503796641847853568038826044\
506380294704574644030388945860799577112576880405337389460424595581830412670704\
556614354758990439915854684767760642003587349538368593706632814730663471904713\
894316404701026941079887348638111147949928749698899141559801112245849112102458\
118308350895060140105186704015382004108406322246510452537154755988748730551513\
116236843040412947608668129687352495667917300348039604341497627982272312520026\
007063841847213965634604298888354883637518713836915549367000682721898072184203\
520196354942008743880209067257663420812074537589422067994462099047677166449662\
924704955566965279155009171438416577545854710872565881131902797680191750842401\
207233293328296359441028403694962624078354110812979755592187846981698647063162\
834576286236829456589696799009288561641540915438526822697713392570910034489514\
166112035380306189083673397806022754314166192569748367431815510291916772012414\
540881560158430172925688840182817202446585450633500187697380842639312467776223\
613705811155361434014675232735338350170581437454479757584626617052668534448052\
847830290885080610719215922807706064612847786597974850024958035677695526705337\
735882108592189996652393691529863333035081559974382146290202262026946349933809\
515791451945776526478389447738256114194097195159325185454085806019821709704176\
966157462681943760398515410305672933036069852299694190340000399631021123278385\
322513891050598133809695915001282256926763305831492043730415810222672740389116\
526284828711266940569237631908084853763541871465680512824533011978737712234471\
142146885775752002006462997598277876080655230710029912512707242838383339886754\
500116529325533244710139360593890498264497461348471836970846823841685802979383\
901275454330929668328311487524611049071805012295862255594381415620466736162967\
073601742416466566588704287137391575205780515046384196461493960023857086488817\
644017666352789166877210084298698902452168484336044600833479065592088025339113\
808244717980500260878571581478994634837034147731770325750812225516457036014191\
963054338631197906291265538872593091901631556042797259330127107681858589169303\
354170450802571256351062025512369279097560174519891645546533838957440867169835\
799235446800486584702598226447582052507236001165629731951321172476472516111140\
415985620940564800354776927953244562003648929800022596983963510340705069118661\
601742502645680757699240962541914297181370422157007635108372559935710489345186\
025693752828180314278268799660532049312384878006828347006621623470838042780766\
246630515267912945738271020206737029053032082017526357208334297046935761462232\
206543938292997094977377780795995950687058605879735166138547467383686781637933\
433100542385610702370294524557080236440917188539801606303955288525820648691810\
040776260672085693050647937673404494784392669924138164703651037887741307175516\
024165082988214593960324958421941315288663924209045440140044403188894547736912\
208762947290459128091363196727692000451898063684509621558640507689061215374269\
007803255108545512579782202159251396754827679250932253831740059805430685982091\
288203057408145350733582444362805146926910965686202240492401047581140675812802\
866025203406352339774856033748865378301737207926440936306186364000612545219860\
821624361946456808455898428331751945365626612633028456008904722890855495233106\
298452214178794358544121850879631011275184120806537940624231868916999187044460\
905444929105966050450334236003060243674832997846843582164878168760164207433652\
295869995146195398067894402129083953673928663653450317527532809444040292157536\
455732662270399979844767179373822228624137994730093153481068230195202884222328\
627342307287885493247401069797980167986708556298624651283094200857956384104381\
508421774036980985231532591883117363641198533080298641917534527148693335452363\
549860870660691324467899923276841626372868109849386478684325058063534185581878\
931417287668999976562056236092966637743283959455952330224757108792086146765963\
757291856880388922140862112741337871575606931650543544832167255380863124624952\
431881497005960966895666176197938561907162868870619200205319313619887447491178\
708108982863281542392065452195135277683498077357950248878326653084026161807471\
384078926279803558750450414994687267746478737088004571298162428913268454298833\
684781874200392126531915256960431905364625998880812298855298115598723323974545\
365901014489661505422298047678683586789501812939878672263458813435473348580135\
630546477881366244240980476048735416310699106454626413759722071044024659686439\
309391595128963497965961357138240391762008810091409078736467658129433089107434\
257631146090547178089969120682474650200613515980338357118010712166335221962720\
284680979884045916448432382268249885851327545208316720742880264923692270860296\
143712143432680871268759003376187761777084000823542190404570083654901215284341\
846343338118922252313046435960604455161695911459415699814074514421995087874861\
013240137037596778602688481027064348144935823145532984093103136097760453915367\
828954962164170381503166023035997804981058168148243145086345250643756826442604\
424679799506997633591554520819903096473288163930006719996649945503734958473764\
733691759942719397748718883074440572063896370082083288247916633764393188739985\
582532111865280662791506998570342499142557356638994261495799276793281306456076\
740430198838936703068395233386041981470818722981520972411984867205457753174631\
783778253538925411888126271327227280337805903434170586048670616292907237617396\
609736462622419973827888035083902134637737563651244060420875679167811772158833\
563628021772490725420633107033120562782691850939830317768726659768733934067034\
063803063989788245922400101790371211265135200616711038936690837712350462484943\
986423122074089410919288486686841836507822880975542796524108105159103818191473\
678580581187357871099119259769199013164282685391693932024722440118711247920134\
048620876119552834817717390801439358657216642296744147111201370021956978238446\
890849997625796377932831031452473878834594583266099051343647136379377294045315\
613755572978327489708655245202209555058430459188669921992383086813657313926519\
544022248269882758166480902463342089912470894839342351151318824350763265451736\
380485820625961577903472855021725222964846076071034720345124108583587770307986\
411823798503703511373459502486459882396865952341831110262695197477344098673860\
535821275722890605769291943222478417989243713921720510696082139143000694361695\
564216387868196071522933733554671376582329668813451249462990523269275557232468\
449521120893561360768034714921715724886693882856611220105088794851074617128520\
652756468497827436449752043786063171114920812401841952122880281575631103981401\
351586458839275135310909155279298946592828787338018875413385822119374493002345\
359017274066478649081860544818277492680529412460068209052770546158799202356112\
904979523307229032374518693289155475804719815004201084791605273413218660000293\
740802451411983928712471331319620835018038764119043120294510025800584990830984\
227864993841919390251647259670652709726654441683116159842338651128901440391531\
220888879537506579091272609853084405499272753156103398305796801392669065914626\
728786182328509922941959725697315987152695601122371444459288800443851910715557\
189773251230584552765046533812349908442643716902969509182091361623281723556922\
334193794591978403147114553704922988935335390898927816871397139290983962021149\
238523514223149267080663086272778067090054245876237123846664840064926537636320\
747130894667440633963575798744296335278578513675982771029287345815939196926209\
621633921962032430327834764291258828403711228642527577550479645913223464159745\
944889595252510409980636675314503867692166033896617726002875350692003410782541\
531817661434419805311741778577068550757714516518363126203612723576292793596412\
571391071786267091184980056296365531992682490982698348571776535438305600800381\
434530648818857768483966230210254725476374390930286240771671951644207010603860\
740557995045166403722673908837672844812771688871757871802511637468880933466593\
085399419815346884649896502717101164029002767263762635329046204328288093215931\
480214048099716333705125345331854098123800685157441769874910584045550689725712\
635439505946591177720937887406497385707929266488833904570979841777056640606133\
822885801226732264472234810319575357260385693023755751981074679973230515985631\
296718381633785534219813572740381209703450971870941271843845528068933735635626\
712828762050054251835941265342288729021564695210804682406126686005896968732096\
472793971098680523679357666910510438336070089295329313124559504754347277422493\
387334425048630368040849299506525639597807546100087837511384281370549680329014\
824354596900709441728499803538974338230614721614925877627513578286105745716687\
006084888975756210966212424048649476238447202514045671980513130351593442335107\
186059778524451290390040259158361472062766843830035336523498236386152093264345\
964785719039076903653542151392179366413109133019603617957222934902497199889110\
961053272000211470702419726556328491064226470738585163717298715238124645160376\
623602400871350332619279551332003332350491540710845657106304549617847738822477\
861741906165311574140205531717764504242206295634282640454114678933103530039770\
347945275364032023240490247861529161357176921809169399438705959659225111364198\
574797287746707305913510174014988151452020349342680505765209072651317038440214\
056194003533281969570382061416307147586334344211811770049370424819476479704976\
463772737803385702231744480580125312724892574833456557986674977384780806819741\
708779336053925439017202885602385309789203382519809929670851947546468878936618\
207958439611210674292179213771933195974696778867311598819871520500970532599975\
289828260072058058010306100688200199670779260851503806052141088390366965358834\
435316680211346812129455108531316112763286838755634809357329391740657115322303\
324512463549728747717668714527451793828289988147651702197395200087466764269099\
922440294830782840218945168264101094844976540972640963039043064186537450531129\
892721922087880692239282426323933202329290508168875436626333709616154773047642\
840005119734000616928328841338538398506954786903981931701460610214318024289586\
526782522267709283150670874166348842724583558656308458117183793889633877054057\
279366480946301717783944395683848410903517866379122417849688982248289614051322\
703166379627486687491087788993446319997618310995922290112347474089560416883133\
758706034413040309255182858456458486164968445720522065387290098462051447233788\
222084546876425282008590526014243209288941176330353319252252790714820483453093\
051670164479045869085794393262606558384836048699026664539551531565761218119805\
105074177039345311570735011188491769039054240423445163111538830516197555419310\
515202831339658183172966732721453606560289016427583964995025333412684415944894\
988192058659095054844630391154812027332329777087944291069518449734838458082064\
486979691043411422757969207900758413255270907156793136298071571430382560873169\
293397532365365044955305217194507031913245909986770951931431545141180156561699\
379581297420718132369406595893223512002946920612162264619149909227067179923718\
485172807460382154616733628842231901751354840132274537149566681810539241159287\
181899081007295112130601779093750178247159087897099712954093726949181597021344\
317393614361836557614930177776583869749169526212868485892386224898130862498386\
469109091031767410701378257951638299895409414435134351895420489124273748800179\
988262207080853122870100957574263917662811980798732213218626369941022961523175\
319357490160837346968462681571542675385403122564466492896628586694449567034860\
372985318885705074870322937658437154420311472525305123234114144606170144185502\
610913762906504278528813866154504229671275309938723938374456822621081115595474\
572488266440980612780779456700476657874255424674315611800862792050046744928529\
748818440104233216778797568956920807921561465813085330614414018663610868129570\
378026936538004092725478987658547114126727617589492833257678646829241347014806\
253274291367108092289558435235043321766834337926732830748982556801008819088712\
011853228110358813415015900577679023617920180859330770112596357122389919720004\
259664052282073206591171729280688265347674834202554199363779787082236365330720\
550899792862959226847371381086109523178583567535600588197013140385349794979521\
943595767922650877931173397613253791689181022961013335800273801712419844156712\
627292416058202550276221686116827964725821471145417499117686406059842279344266\
583090642684069069503395752708485532897536089437485426227649892568963624612890\
828319038971022106955853386718344525588237242996199226029125580418572102667554\
132152985460729676897390005712244519828675947986927284203661408765744294022669\
880624188952012677579119927410502743602259592477333635275447058241900260411756\
427572173911573509669519049711982856167067923157854440285416416496483414575986\
395823155357124635745424996950518872618171425158143916085441333375597903501474\
469099341462056640166343058231085069997680677522697607947852787170264400727585\
740744796891779208378535492383886213327815022867280219983008725071198436925584\
169660065103589537193778098413287999928044067167112122518785865824105120370697\
122179828186242969152760212485918204466551320241437324963303461851974269952829\
447908882077356609901630414513910928594742479257478326905717961318625685243326\
598737498253637297320469958167879659324878754805752857737505726686152265880225\
250335181267300322250376362665029491045489100409007430742045050824655523096385\
262071123580266591613811633192412524781989624413077065656194229550051467517953\
487078970725784769979122386653426286398542639130934833180713408757747313544455\
334421064719838945811130742107086808525838291144968806229148553934178340199572\
680230861233429889702415966879068802057260470819492371149579897052206471967415\
083092731359240073881894952602028521234952521179675828498994236085265842080219\
901815997942515927571019634276803036679300109999224695486483143240806202977546\
251063940609587140199065230144387397531605225412898489890331159177704690616916\
120988043736067984993259292661208075534393274478308189394448204118954095874476\
945160500178543435109040992097624819547580658818964930766216248348781345333777\
050812475772818835187572606669566933864314202803565989422978512490153870696213\
568198608337148404494729337984499463159356206166233138272458238348430196837357\
464495474152491983078719527926791730966643673798312264584054555312036436930123\
888181765922666545224365820778388337278475171101792484404001227371109413273379\
331974228204671747168535037862427749056372522394368281672929681520444810815961\
950936817537034386715753757217363768409474638449581419153280375701946014673451\
693552453995314228195238682021457407398026092108141634482564019536885110547984\
776609205243932897730793918994275845107630022127036857258332915258239170246407\
046239230532706306070122049733209490957339229998630365275512661826894123449879\
988811937853968773495191725150646365066591426022850981906212572887003634913776\
086644638780963500064906720811775428895447062471282638185420010846278402051061\
511945130113925089591066865408656953692686019019126169823762967324948173955265\
055393964957668723427167793540041817988782510371784914417718054162572240975277\
856960467423515662981768321319000122956003319832602726553777086756785245982167\
233466672698719504393325618879203786423411978337073068839278481061883433670387\
341467452295039042728264523037678181003129765006037059528663506166132900782491\
689349910104051686369916618067313050644185881870193730027455589047202543028368\
062864569700953371943925298947822355913410479308476597109960111237526016032298\
634332607944606734344746951627572947232584975939997645226044283711419823255900\
284182785311908524651799672691832670808854798809553409326947717649682144878038\
505322979666256798301589341043067030557153232434706109698765892056020421779243\
232684907899904698884678102099662951448682804072317619732078897279538620192592\
592989214605290264750318868143277392042434242202424570675530757006922557617458\
315358735163406365629357483945766594358853912650777637495506024731417423166150\
463401007230495095090567261157937753284411073532636541918994631132969358727348\
081474274588501569895228997373739548116457654308939563245704578485326521891279\
982544585301306514113663063358486961037841932544231482374097451330559784161240\
486824750120188963543505007932252082041981976763156497833986314256055876476628\
322500344099648125377924721942324160464963348831819302353696991080320534289494\
947400406615760655719489762087262827973866331452217950331284296797533712615952\
755687139949806276947138879606336614393816784402029443415418246605813696368285\
442711191359850900732686112101179248055843905520930978114906252579423565732728\
096525018189311805632501413652442037556647526158277749008360028642863096590626\
418105217905735753826120235890178019623156767549413349982107210778176026288206\
510029879452756334762754735494501792678401987257197823035275674895495503674441\
207648196568902896325252282836455219877144478024930514250845211460473041983981\
824210867005472446172059256858565705338387178240905889459221818332573060495238\
978810348539791302613964294373464871237179360136943758908731093954305331718341\
378128232864882262133011352721839560705937448609856660081140708106109416460600\
665559155790819230450757048559394105979619853881906347338670475401290562876818\
166679011865637324822692859949047321479049723580504153055309786869500465012810\
275246095606620674515438259203986966068139191973786587589253960459674936469398\
521787874291899566611017702370910929958993497344835941780551123504247302219726\
404454753751932592021405721619905607797961758848794060270968852691293888437508\
982105490692522456886175723118729439879152756038708814415502081357628311519106\
623953776567248016670733291512935163560680232774551429467252114107707098895200\
434110821108088505807292657000943857435977144386972380237642174159078260623800\
882518435219238216292048946288618293923187270364336472371425343560152035368544\
403463412823423853517716582793920300941438677861027839998100551278994310514019\
619373949350927480179221795845579217782181747521530461442095698345959754906407\
463080606715869054709891166331324463168802785203612229931738031874258433292727\
402755693800097063865180693807931219539771529296770655856603039070833277219091\
644661019776502825389548557578322680884395729047600662981346653051141533641594\
966824669914145909497334957061685070915732434603524538932675527947721557539364\
893560991340298757879016332466799448200687233661262611927158947118954105094813\
567873081645488415235049290212253959375487147382689832652220767136570458361327\
415731036759868993906216164625997105143590485869932099692526357583663957899024\
894522483684171441618526559070033151054421837864768073916921261447392614265596\
437137363617162340425613853265534494230135907152465549313471832155973191104373\
305188572596622608702126533706981500598509279707474234879452658534218179106602\
059753267713189957045685785488904022243992762530906727101792182470911601799789\
538814080302896592220270084191034330115285774607594092132163291125301883447162\
471667180946993858609028967895536812308028953476927203554084555916932632195722\
824029579411542961753656045744893310063299718679697799871892991939367262143748\
768726327646599468836391565397778699112224702329873208720788871007803985792243\
507238539844624863611407169863431981946145874329927366688419495325083294795120\
390781337933281671051838416180082818681401196145825577770955740011794762687911\
131771979752370232672856425590276091330326583413253262636004133155550655195705\
818703800009828721307327401934738041181076042273304269439996232918926892871688\
271714460307264625149099715252548807647510072153297286590281970226246847456494\
515129752985523473874161955806937282555839956841936088652135989616843841160733\
901518410495514260441442657117882130567968861957646698153499162945495337618682\
426853375913844020611907094646145638502469298967476371318161914687251151607353\
897387576132689112648210337043935756320376128416086680478316893923871798025588\
065711682242379740899572624119317498715766673510811886256869322238928035291463\
038093572364795407411485215784831547068974966911322296261434138571420475601110\
715228759947433089213844720730666017345845610138079056569466046084921482796033\
059718776458797207948184844683035036299549050044034138316115069840829583656024\
746490419507837800064466796764588264578866355948405101987295742711127498664879\
650705478532667939591042809330314519103058425817813239504394994800614019661981\
304666850464463157675290191945406878397621483324630443054638952342482883790934\
797715436985580067694258409450414774330041803991113999868369290267236844224515\
049626037154535883501068231641812041061626014887373582208970712532154787949033\
930942032354649786684781903119001106196892925126228683764707290114913792404358\
142668776320987669108822403167047786764998584118003450203756931659417816690513\
935336874694323439269411301879703466021666611571743056551776359202274976711615\
266027534169597436162172099910521913615274291984091159375971101321498447084045\
628557517073439070990570105452940308064437939401959384650298635373830968240012\
168753760609550919167546832408549839012826386414908903006308441472106287672349\
323099503209462925091810677930460098057467860807736440151542495806208597549605\
916448526528336138348623925353711290475582052886600860396892494074444313480463\
680713836568175364255308689931738619058119535215363624596657357809503841609678\
932993099775390435350862817111814625732908615942721737637762526186499946071389\
791596122802205867993454586362411578455420064230502538776828826197531942354021\
840305374391694241413820601480853024232299826164775494000150450356722906201567\
883764623454803525462453962961298175184159755038876109502817526318601573921351\
151455745156852843339280403566303582100146726156079839686800649320721950717503\
180992030075659636453627653464070267129996432788772064773291907985813999421090\
893480014428741570952843709944679705247508798646184498787729496430262933950275\
694540456050774517999964188537321820291822270342616941604274314145950938637123\
744441201635761629857053631753689888229930315331357306928004091359454473210389\
152763112551904720267990210570446972235650573820516437169458005820718162273501\
876117916464989252805634642442246093164888535615203737568695722692339933244229\
696905986901832778475771395476676299610073749101441563835038969748937566531713\
175024262437654267217773062827065003007018872372286569291895353833048401571392\
925177730302002303127328569979780258219193724780698850252101748202271830592440\
965060390662536059434468847442706222894883740236718358309744637270354426973674\
269570576754713021739953897750189996783255739495114698420022540939108566236877\
542298735593540429147626069526494522644302957608632679853622543296831201758018\
337667409363041250840422083978206382973053494439524473393320136615318874845286\
380310685203934793045149673528272081374873622706584363067329512846757214940262\
255169846938213023516145522123371895724928680396529873744866207175447541963346\
277559776718678921431916174054519050207015628827168314699280371644497639935117\
256391386844562722304411134583012714584791437493585586039888963667674099474143\
861116740867249764832696370500922014113115755544328778426351325213811783983006\
014736867995927722581973650330749005339132863618218351435207099518560493802117\
620774915748136206359980923092830337737210792228594998912500886126572453316101\
306391239708665755371091777975499509649365947951802451634754297163952184949837\
217607994859293119618831243428820068837267363858937171834029953685945112855566\
438391658156559950690310050776152297603979929885536095926619205580370431280709\
658244670235103260402050891285295907418093371608698385531030522885741970427396\
248497103510914456447736484216240196859547613532507344464824541542319085231635\
521617915137964684184647304168232053246170858238161019843152055201434408224287\
038467938723271440974963463001934510845642000138079384696235829840203065910326\
363191573903864484736994347303214438642283185663038268333174726359625281088110\
160683389504693839342268672250378913120950634588985195775862994557459712543864\
705613639847534594194182793753559440003593007663424444354588105546787079338214\
698802324618097637673249894962654798396150655716083655225676680739932369430089\
644296782363830410427177387747907487831181130563404847865327185170953827960350\
106508208911075470331366365470783129959926325226683863795506237538669508071780\
305773840192627344329120384039285608092182772560873525112125593058009136828468\
699503187026762922872099940948079872794804287975823546738420053493546124685511\
623937499511117636652269654976088726294364532226848945971363940011701011238586\
282164387798684120970594004283342985652751401023743739968174143296957408837712\
730259311134616653041191746295215279020905445017973375680596919270401363544473\
954301723900475442371267844049227284445976128655950205940240302833992020981321\
622952303785652393291447865868902515101779254441353252895157156434384073901870\
390844109021506206922292359324563872149410964072482629145120359266835809915031\
383201106622552100331403427943137481815587877609037951767706386243752229679439\
134046682701896065797302718598793328959685773554113477795216940857241066354948\
813634439775723328124691688518790335029443419318174386647309238977447293910820\
667935227599556535127454836125307162651784284954186561730667314713246745912869\
485406009417924573176025931282591448526809529588665284298507700539418918130534\
643197601193504685382149163307537226011753894710474000705871300737602114829297\
118397063799694498420773595703316513634483818398781885949138840474246682075153\
922419569976746527548361278542186710866735485260746409081821579849465151117731\
374925134131705426964404566881242847651367221535096177549265364678508486896832\
428224954747975630072478435565106950297191200119067344149521594834598356992429\
744725669215518354511507178229027926298839563065750474300810827315263555074853\
618985495306931755506868158717152098387714575789893928549846863565351250060800\
475027652117302555141472252670233383303079417545964194491435406625018315876877\
270738863096754622979028688535743768341597977673006454711813728110275615843229\
323644220894319029558497573109497452898316038723504552874097778579874338052330\
858731389479714320568996723031359425198759187714058639027355430225906844678241\
399159689681410588352130827144125331747780575167645712800198327478192877726250\
252415588480632283215204958879303614629555971965355382534606744123550869816272\
255679270119714213359096197203053164472542541376246412364215566731462023243518\
024063360354595786317680643470814739579753605842152082119337337402394541862021\
496725840833583874982918087350888362019544180735698990476097921074005777312130\
624191622743984563379956781463587936419725479869674319056010596970691861849922\
160353028409372705561590182869914046000717173655258462143433862819584289115826\
455785215470002473100025465518853253632461216784121092735459846406019024833126\
975750541464625867175740501233338769720104167801983179428556177465741025700828\
457751390798203071090094037236220493636560497384684664765022768242936955402780\
394403753644132185071015775559143559608265423105859245228210988223512837730573\
776924549835998842251404628183063769279049967110425896796218378905301493561177\
662173532822899518305088223604104218191419681861938562378713375941828346422902\
125506110917582165074208942544074398485176361485722577987671676791189744910487\
791934613536808607434215964432794062121047223474138580296088153592482658718619\
596121666773434772713248055415503048125277928315934268853622549058800423899712\
956724680274499178629724811069023271314902212410828444790463142127294627629665\
304916951352361211622508831745797924640719169833202856264551494810541893533188\
542017320083445631620780406236862601377792464235201332918574168303533135514792\
362083244076437052308555159243069215993761059094974974912032890727971121374692\
973982156520976727548234591785526506302624884081504296889049495958257800561869\
587839335746655997468723760389930523109163638264724199632587009692768188959440\
630629725986034815990498444613288856458193610128107046222468764173048763884150\
096886881812076020677728427548835891981192186149762360338703908587615294227131\
343333826874989592552609627988770758266179770636438499545518985372542241529529\
566691613371111691319016688060166075336619876331615301600219476340957460601594\
201536391884669549181290960862938983370296997062767387234837390247788173200179\
996941868381936799767204998301127114883512015723784046074145383707964465199400\
939137465923899448332287717480884783813480266296809427647527251242502219643655\
118691853033922798625462399798145803084376209049386032040964463665721517848178\
749559662053630008660039803679657953787290660731424831471386219786094738339754\
291612370322403015042763617512574725831699306796265139002914381727661040497882\
724943039462942670028966782812781457414149925136639114718556971645810000863375\
294108795748268444630856920725467398614073581281604834791699063291077494832908\
573229566594251280194636189682422863504876046125935459427277391185098515919326\
750566912922129439033350837230341329236990081864682371672573863816796193245350\
367333019255484507361353133823289295473227771054615739102352944779255050824093\
504123646303864849816640630017420466977117108733802092952079520674361528186244\
909073641148719342247712809477593691533960517732816965390733290547533382799734\
224904799838704754942903308166957401740333052768616713530978550238402506992892\
284604902105957495837092486834754831441190102855386652072882049969277754776757\
620167282821813745250237640297718377443790862453256793029436750364564700988064\
130348282612703751850259375992095421880833055016517143818252536228836430451938\
533669676637930009262498582577981210567451669952030870796288067011247683542337\
098122626949445145630082348790724909571715398191877100538587377886749390269271\
523731455695731172553002492264135954782355915911016436947380828870657977815940\
570319504210583367019259848361994535148567864459340128082726478320833985972422\
648236446073710277509184609299406924853158043895443085986286559081584838671870\
974450664775455422577148955679545282649043326857676939823413166045133053760513\
564221458548597826388564691569054407308046753337471365506990107403161023648305\
802667681182121909001341832454517666168116402102796691803988109912590673193673\
025029308109305171668333210824471583273891298177970771882489501308811812678946\
378435792194159797793429661979859074645812003491480449485927787839162166149736\
361967380655736868235556643830294109547121193498374026343216148013918320625563\
227445366749392864583892059338190484547084117543342339385822416794283238363657\
468752494763709868507251713584093248405120088477332302399200021969731666406467\
865527374605381870532350319035554641737641127869497072674268599514911090257663\
860019817217421839090023112796878363109971103147631753359966514033173331874279\
244323569369045151409482326594386258786536933392422491970859489586263957176110\
982438199218473916284337669072840238661283540267946535666429348035840841809359\
722313280522640879390485725833683850669838123063324698504071042183330484545039\
499789192596072946565727084450314512067167400728367941724832047069111235098436\
596213761958826632723566321433826775989640658950841535333240646344508033752894\
134788931891009502767921169837125717681994209535707277840773723115160042980939\
270290301112464042324069078549717745312621714036260460669650011372615490013061\
604701235070280018810009477028539998078476609549985801266732006124199976694640\
145561531779473167950597356082021933058285375921192375047910850445751119463487\
720700017310267700212878698814838734372797290956365177304405286547832755481856\
489661739595167503146678696800154178788614699553639273602486475135225696875303\
458929751345760444723231493869040548527323943644361426309587314116942546506852\
306922993786210224440800878206502180818213017239188850994565200157118728091141\
296711072778426160570699514920856766994455246744300403062947870034381108239948\
165279444570611493754769032658553743202220466671517157336098561032268437580845\
894273668459408449125531969208684788121946498174387910311302076631503463600005\
455828587704182094777188494575158202302367838879685807561556478239175921920534\
258038452021713283462719602067197485998903598396840610983136815255946040540770\
485456647401467834380813806299300870972415521335950706108935612968769561822570\
866071340048773699535261178882286279327174763268950774128300825244320965885548\
712760182805977769888505831087482349730447719857439761757497603776657359214335\
392007797012273132865187862086515162078988896842072500387314681113785257335232\
223308511894085661006216288943267091750826664013804111996191976856769621614462\
043561516623113530499053568720110152543562855905295132900047891132158925066944\
070544214563218597298900378028386484150692243073948239272284210899326690010295\
098994028531767069656126981425205104718666783481253503285528235192551976577446\
135212344938996333862286217918033410129960128795476366785451086234768821368758\
395400591748920969211578931555074770381737769708040053752453767751987115181752\
180131654655573828842014518011769671001827191226029944513532477396069653140877\
505868210671248445620250306506867166805450299250871500243960278846587093420621\
597714456708031934555200625966215852578318486723867976653911854811865152463773\
637516632315913869538242212720208156695818703602563855372759813966279514063690\
199244806862309967832146988166291467973161208864285388676997873279840699660777\
208093304286118852603368218795782049316211958928060771406826724008229508561640\
886918958038635400353439657339641129543361570710338629287243655188956484380819\
762391818268849329606634876660303035230188300556278204946213517937203797281057\
758607989901145981280505804626003082225085202076381781413290619945440108103876\
819970611952088688574182988014016874435003646938218991387177717247710744976455\
929280792081409659323357587852823672746211127724527262321569224279219131608034\
988148846038564126702550385237345835451865516559512060913480262821876027296181\
156508692904252048101650284346284845910140469294889007354629152273540787862977\
774338338254041018888441507510095070650102987209006332066831331706012730563075\
984255611378668861526247676815631272635192720617625930056265977749487330007613\
752632676673260191803813001827877202674295222348861680932622338172197429663620\
962069845148948448493756733670700371463175976679094608517167560224049540739389\
083072569497605292598324341275033197458115456969861098165155688676432010557983\
949609548353540874961271202786248089333946754469122545978971805758471771859236\
421567303282215025480707623556087380199046681660839607491934650858576186018357\
148336255459878965803914216955982262186861214410333035911794529005032170982564\
590153707284576215147657717351174841161706631604706249172746810651733912419264\
282961274352513710048075741236993380639409402287144245624500785382813878640120\
672264646806718735263449097886382787146158299685853193206848774900277109413236\
144700155397912329665367167834594626034242488834355650147411605826870742903467\
444508519967529504670301350502507198322465615030107064270826584080165955908586\
515803575114181297944998057341556862638734941901376453290592633569353129230488\
434923039889333740770322143966070031773595605105618568683249118926796804063991\
357435037252294734910169429736445497502555830991891997474715255799813718785722\
838841775793640888028150757384530193285463818986365648373242759652201338822405\
376617829896837506979503901674945320722587821481557071322876555496756157781965\
895612481897558838785213199385836341514981761966928755574757071354163124944214\
985317644418533653361617631631990089878577629735622525646567100827610933557507\
470906300899344307802058286208118003835698825545060403483117334162811303482375\
420461396829634459325887217834429081146819671143659883065953798045394408345813\
755862673648120331826459255651274137407078476794388896312031259914463707474938\
570056444838099847565427553624491630245653256953678152329300319189221743284852\
835350059524065570728064306846034936514622954191997616657666660677959893556368\
412628709968339556296596396485884515761311235170436780155818287682007973018170\
865793079974382559353657958311170512569282807975248526220352660515571160115878\
968302762626755235923703572767483023990321066900145530291291001414697973097656\
265183229003998123903231868782742770842463990489162590886824725356618210735116\
388320092127554165457081784740879337358727121210395821127134164678007565754726\
971406048217540110061913627690531515693476104624252432474267081863191013555620\
876327773335485763970851431618148183303262305530256756543375751296339539295898\
422414184136394949010857322498622056501175701804731512496714959304992851192872\
474471328573258619320561608740770008198759046297333018958578699724126881463095\
756377388287717816926297672107287658233205297283923029180390690905795473496459\
331282688324364927616324245180644397174621830764425402759817296483585804035335\
847088727900680020701712253172365830922665056059461374365405391768269973937707\
562665183657629275086118070922552917061064916881238178357218966249524392502466\
019629671775086222711757408028850492495798395092060029275051141119754173389624\
419168763341607932446686710409800402562840623971247733070270723819052183438339\
585656007069444110630834227267767289172316891228122712955237189097216552312039\
704702341771010711189922347034965296928871285306968765320184567621020053885773\
323543419630161019347447194584438470407242484582573400051016354930150579258974\
869558748437709597929818821402974406252742119687685995507264910772491087839050\
874838496354509638148858428718500046570419558480786201053457805099269794229202\
845691342636497138339993518855314414387817013180031933930635352325809356071552\
294821998370140994414934652170153247264066144597309598297849551971512668562685\
872142613139519584892347732738851705813693434057396193096507417771790623996409\
510930179904364347092391725609973208021302196783363086476899250166613357743883\
322976579063952030327309570218441564807087919342099815043871817348273658248754\
590257798583924212425312231239142135054761688668584156108624608491935090368157\
873713060843280778763805557288287845657431565188932002440240489911745824914011\
593108512088685732889403176906748826595014407396935740336426147124775163159482\
417687559241177651319613798386234836673314372422227711702078025709724299215486\
894657971702094500796862920711597264091547338065323073373201744329321843791355\
618086691874108278913758227236310567588691256453846524341276573813892440594998\
683014753219571600297329031244220362788554971682845346885723458553508943248970\
546613208518915410224557430160103666532840491480321393465728343189673163237574\
850168461342072775380554510044045617645543636509375972030746029479087198268034\
622613417398590251184518060981819672808942046664242720558449225756831217726866\
037315828297019428584177989571371803586242738294012587854752025222289351289877\
651032893804711392907112436974694169611384866858557747211629920504766937766856\
468705238385383503586779898190993007709266184141226947599315009871772954213051\
340683975131709986330967493429170109241830428031396433420166343816619886698751\
045526081812633176323022063490532263060068845363117930714786871899442553504123\
690816090471825566241839197291519226096853646852218051871380613882041277299914\
133995742474225468142087110107745180994678576893234967010311035797128160838172\
441084928252129581079722398644821465687410205646555136104905755459437944500927\
499919373614629077997978787766199495105767294859403087398593314230047687264946\
585413160524279367260742036561409750122072227527449190687028958668785340592023\
743183781150726492454820995108183256548749021007000305311885930813109051985319\
007149003022235029684939197313221041591726556549971992204169368522382465137335\
313457450593786387337803056453324798923710235163427391003888665213910670993192\
775132614501402160537692643594723330231200470591422027022861324868768326894200\
181384984265526407945384260573442178271964927346959900453129968178249060850246\
163969836592901758955275213307237736330390427738955065508825787200492000421580\
412961783658843245117342272659121010048938734106280558491015795465837918072622\
347644815168369661266736942765785311483515016544338827534392586104603457526071\
107360286291476962427503724498648474713740441901384954986568894157940731492637\
655740092167896090540864513713667623659823905747932335281108170948282480864814\
197605186419041034588368087229001634674131477906751709998776733167150910914457\
464194925893116396690217691284172718885664301262693076240286669517030838107047\
023683430498970416567262410128179800310783937796083250404845623022214256975847\
630929101838395433972721439381698902566248211215947473624467738847809143693780\
730195225714762593982508116055656932935035091933400758164813588337901316524357\
683734595896135103119357522575055058621025504809229628347811390530086942842197\
718758885719062608245573675517178734876448803531473146639069693513963327976362\
413791593782633509406289048842194743543213599617697325104007170253940707278542\
839835374872534188656399829327975967531284440575272778875105879433170495497763\
742942205490051476302108814295408944843049632259330350318128585692966304377169\
271246571215117519178168013731639926712911740626383962760175635549091852039179\
824325509946578150358252327201709485084488016614771241814545609869304431030465\
764810944512639812865993945080358876186705480037216641905803607909587018165843\
904938763511304523976024611997863646714023223812453003534462178924500357492280\
703170635568441294142443067516029101849094750750879247756730084357697950214315\
923470981668944478450803004269556388743846439072727880631973961243445483726030\
523889074983353596952235367295277473783797553391706860833601193527907354898903\
340904670169292456299530686974377396388663932720390844892430162592048316614216\
473630392478973542494632237287875104988353190402539586402780022379423550889745\
325797483788038005558555001949743333968682774226199011038209171754944338498146\
639862047948803947746833610591379038334054014390228883713830127711770384876360\
995388892712338810987054440741786674201026738080359373201951316076056222335259\
442578079523196085325015974350609956072834393660855997815558112550415448952150\
966656786387984791632324767901809577798172883298642881749164014637569217425167\
539180123793672399215421823442371022305520432665884027737422302270964283704528\
794695280937992879814007775912278573334281208858541386232040791699492172995683\
214590938286639461487599851678399660535061538419022910946975377012868891738787\
534448696427983235314168837462230011076983993853942412390963753242203398234875\
394458875455742779135224690567124895217327592294360693068957311734972518029404\
698833209887405048376987042019658863200025269161048820705041632275290900675050\
227940890741024335321956924824109941903374334193570334457899305086474401847978\
280233175585390692152560936766318973573209525167145552435374887942311019192826\
346034046671169447210172032865484501932604108191664237017121987656062800516156\
726883019864551328362877022730863681386508881025971014206340672406611445310480\
547450116260662757548304396748712911209222492631060470285665467218712040485787\
694249673879438577347389100659869590558346303098446560289586090846874855164196\
752016166860090313880873901077547075941835303514487960148700718198254460538186\
455449171680894482301681154560205478592916455290103019432780935352985889316439\
352845848725908867345146508035868206657254353377591056640848864813017314892140\
046954363851562611913467479473950073378752774517116458533216050950346815449479\
096130281308385135295931375229983196835418307383531501790842990301525001805857\
854236963495151610849445146877680669100352048547739293768779686570183525845240\
973162807181486537041317510957352148871456924793260532025099332411455440761789\
904400210798912610584935393560373638195004192546714091231631061136522456659100\
776709701017321678101001529375934691927897777093614533365737373687671268821119\
553354367015182335789993365171911636076981180773661190638106641565607292629129\
393238054621037800234367992549490828747659806583256931383085189637286138670891\
740011562581597493873902396490771157026725125602801805351157161651810876112132\
528275236971335767699907499722255383492636696678742911599499400595564805261468\
052552718086523939784342022353826113699945841877244069128686876377024782387225\
180625279383737997809008767147877336111970268289742705594626325534699681535445\
046144750182572668285954288136519676691618477218511384770083800666556883595458\
131004932956578235874690489872259527120974565481612282119682957970918866793234\
055942501138786736602068211716193609016881125996258749421518224336556967200381\
318092192495756587922543305742996941620430418815427172295817550175337681247325\
134267929539468013540439535374844994850983233333799663915761172831178576641126\
427186393003206390801503239905598257208694782959465298557352767117497004800170\
467349664392250623939442986542842097336029150337086078647027300936108876769081\
069615970646700147700457976940869599132282900561604150477969060119788666092055\
472563637162749052009546314202213491278595699829773865059713544326779046990100\
381105337345706251121667960248707163556103090762341336603845045498152705649040\
142408877352466717106533652353357762083566966074150615229453047667066343016564\
915137184895759729361195023024017221619443294702537402960710613323301799502866\
200267994381730825137045596118968602875291005377605428110664097971510727695908\
597484224579548884637614832221648419821500105764584513029231503614731511555479\
253356630011441922821173611905108596668659644756235409793042382627802071503413\
692162702233483760886347775439486005865566114469540234593353786705796940680138\
794221351245670606747726036017646653295272710962159797912614525992347436172014\
482939120198821211067003963795204124364218186218955996034776591209444184316265\
645136146031650393100656537685955364548590778701969606378175682931544640896774\
917854448734245344643699538356246081531114326925049265837464443354659779073111\
840524741834859924965810396655929420001658828971588012403156657472527607928915\
997803707707766317643239837337063503187257994585255011775633465796301797703765\
717234127555622414424217008695976966670789184666798496881987714194265417607768\
165413360037254910566921234764547340563535189757610533382376583208631553029254\
980927443240157834751122389878703776299152995557909045899651273068855998047596\
390597645447529210161634922558427457743561796508615494721830925835833858161054\
717887200681760948912347385961076872510085295035610255016988432180391664478174\
286643827708864404273626596703822397109718825443646661856956885025930495908885\
920023475785951591194962457144110507838534594905225609058436069447075195603074\
365280856751349504337150631502868395931177622158060293056746962541536658701426\
948869087613158909224425958376454729705328704358605201096592416089185161291226\
956384919454892204201696394422269507034273910603245145021743249475040820072953\
448376682163415370045567042021018008827123230661527305658192851177394700499411\
291803743931890170451568028864659240163459102062946660371088357781627642555499\
134072713586078759080882102620734855724213469271980066216920301823587964719073\
363243572706173794343574971095537384215943850499803429117415636179712315310937\
766296023922747853870408451693976963240187253261075560575592214748609945756856\
880760047412565854482567155308092104654054788091126582927516280916608652148286\
409904254026591679379645921123622865559487259207382097209356939165946242528228\
980209558573746740233866029089792185565866619445781771413780893671000219653535\
329689392320546126369937635586199778169725498817223546597969775867295338123444\
986872788710601384478780581127877793890836080597991605306679157677129041717111\
798566456338093541050258619026775137712040308854545689175380972366440223172392\
896156627658620620928023468297915875073524730699555828367500249598110706475398\
631097721002797644868384416104746745996246704792355248912097486799511674777855\
509106823216751157474177375297501361635964380487103221407775633355984298050428\
894159231673325178196255169486854808785058742449172881921028105493163238881839\
776338665071293214177473224468683542514000083974563440643904876598123309521936\
067525902352051813755293242951172896909396792008093241829533598382647901648073\
300088665804970835385558938044779567436052822473554226802951028104071916547844\
810267582434554879809208197107362169974512335044483268944412803882495304310050\
401737045390608562390792663068728346664776424622166815544223460656245507944496\
393771826969681130073131759566998202724389079592465421980366463084692544580878\
562341879809149872955500500096349614241539374499854612608755724744155959981117\
416694733994981842409842155032543806723543612686271000600845432281917603274614\
758433688550411091255713783704699917128141580936198190976721085448073053233224\
212176167913448987328233374154237988208024982350724012144168313088384843998105\
819263508347357299169341824271975920925778870014755907439674897301718141065302\
766335036636381350401225140068247599708779789257875942935295326453281918794878\
627013963338735252711744775818603861193419275155354318392007466053505078525325\
025775308955758954904382922420921523386435967029402248403859669991853939711109\
327951626074113097084480350629400817871091037601445406046290504246530314210746\
049620419641165544473447702349397304064046434176274535840121528377704577374266\
725692328789334423328260917922528738194433088200880878907752736012509419734133\
799816811958830728445834098174195438165652729320292438984264891474563982507996\
865405894144760072394381425011807032907598680774388901931671918204202226177971\
712160292297148426615748826073716258688813174737126285355158409896087329494138\
845296171475167070240407579094839235439515915001647735443133430619696969476060\
984039460888367791822774965274634178795096123405859212844089544493496712164596\
332605256046211364233102609595401121469640908121694070115782431709701951176683\
195844181786631700516382958705286467915655161144744886798307906979159697709181\
569677120483143421374184166019884635206326955714091339291443636539887769614844\
406624454425725953002828234762668038875175654029435730716376221949420685252145\
378035412245863184347174374365907594986764832945799150458075109012325553539497\
474152786458019458467655440724994229388116539839522931305885177742273925419322\
076150632026978001155365587661111777300761573943699333542416012909808217470723\
797087810444220795381060050697233214920648968055132074949868827068143109759757\
216879875981167382948776795686756041115906112000309720818961652057651996770685\
510567436455425695373162488617213470840584496535694554837616956435605691498818\
634611550131438194455385932253784487796762972610323102959524317376053969960394\
107387705653373174729762991254360737570094911193435951791941272657465385484533\
927812627893077690460015400585241186649332320159056500164040004466100658840233\
562246193371788170537037666571714780279057284682936388224201428044232773352446\
580758001014855995128271081394596459102216418069149653236981658108929904924169\
886939408872558684782596756308089607582311992555337070084523589491912316707387\
661102128558687404185312453895669962781807483329942478486868527492905026970090\
350322337199368147317068878506995362888398302532035131188492515958936385677630\
766047374478849303159456662589746750442468849564322209241920638266210399500155\
438407707771163106101415370960496677803167535638300778127957885280617773590078\
295600435735377652336571931812024290114193794865503096324719192921482663282002\
628165144391783692641611489898748740645886164438101022615812873605094287129283\
319531533665642174654043680393381848738120086569190647180589885305406326357896\
731704824812689409574731862254946649058674389083590713051649270924081299180086\
724208783296040221427336728290496081749873004675029039328660545551943911410623\
209502599255420966015364303119634154356075728179307377190165258788092099878757\
529485144047678035034406200320305564360981834419668008204523489475972093204361\
072823523517291254035540746996160264611631238020883856382443839900936622916558\
200876886909523983209485942816300913914918122974848241190469876212279328888972\
704641732804934347006153258191229034890972425207599725110196262799243793877079\
647185496525557513260067210139860486004622054058560677354524572946973600839545\
054694656052158765712018416514679858841008614775080286573368622383339869675049\
889765077334957014014237499731032711439773319710739953972611502301756853844049\
812966270693810292825559424732931981179441718825357983902293488245355647207687\
198127537550754496911192701187966587625519719571691083390562026197350333950526\
405952170370084127596092500749916513074173220646622534758457814809310990242385\
602453997986541933141314989446811943492519441199338304731427147120479910516095\
959270803643450226947133588973276312561252304540935796738100180404774827339575\
560813837023892558765422425802136807872353961168244105154031184543208882090530\
231575334117329904291795205918263408609660247270232089297471667496303072607635\
247980733788856701897459739498747276552455383055216891721209914761382881245763\
491670461910202032183798768347998824198290320240227258337368730345913050931703\
185415441828808197309815557027686428057497889225112678429238173386074518527097\
246045761461654716001531542455285358137259276418586107988190012051810854457403\
828249096613771847139958811656194146018692391674377195357546917767035674040795\
874858156603104673820427840087948796536418932931186866074513030258154827878336\
313869145188746075072608966986444191053509567990990995077670046715788100081590\
827315884894847038718920915328329802981880360551443085415960408334165890956670\
514526446581438314013421257188410706490623867922187373718278921807132190570020\
691194068130429359954675481585690991169755955104527243474829134178585095870126\
524057374618416812261407940730527752140405107215280989638811600295570382712533\
854015209633614776454562328022928603872598414371898145096224991720327500456626\
413777568602127829276209442595716084127805966841487979171606888057091564812740\
346685708526758540556530425054602390118737459610690907723587508812611377782027\
914850878104262330800780949109594446331286174826119400021708522956856608503891\
531078283963770435086485996547412598414844065014224763695266544693042525599491\
145006323493432739733138576629481709825844929712762261060209152760549639969200\
632435541785144904630855336591553023400556037646564431937280295446194580546076\
124879015881114190345847885370083905865221068765579721848247118966735966621614\
858198899861835815071437216277050022659390674844244359536746639183550444756749\
113713186004964263848702654170983224571349333187453312475188452204246690535892\
653436644883234615039848980794952037593156389947335084566854192035299100518220\
768634372619704092116147657389952135008883521145083792632706364888309430178003\
277557988882912587418026957885879248172589165129706156330382652255997898001487\
105309188738467683098903670188154262498528265348665663642765693412982974632661\
030536990881039769831423718336948934742842289250115260103440703632576356303330\
825966046159997928484115659001446760201390793997031823919750336547299650241144\
956617645820809144551104648857743587805300910364546817419450623218979334863670\
468082431352168492131655625043965316516731490826968978110357798912287627951449\
752541909888077480754521801679728050375351768435475424436180397821433200020023\
050002377269080258783009693056028614911368209767614231353282304936208213591852\
321878469572371969491214875138329994558017092579066426982732463641922767082465\
704171236089755430834119495638882209311572389979141346629697689248853198241890\
688767456070966106771875525890952429506831468573612020320251267148833440287504\
362962903751455835847716428696519072038179582560320310988392571444310464000777\
011282355667744257292700688100473588667226105878197263357139731030569168901676\
169489438125114877002725780553467500928282577211541140908419991446430800460468\
580478664542413273515162832288467667764616848771424259999425491226153343847641\
403338003340964387543558749135582128655403346936193311048515796688666777869299\
873723958995610743995498994352230292660945274608976662959315341970789187485155\
855218155629722436281399111321079612071374187378641828754026883898804827825499\
492887008436290247724227325513473441799569604937342155418038458944344602719928\
496879138947141880325409595331874998059525968899658285939913809237592129379097\
139202790198488428184673748551978956998878727118051034501470924142457601470514\
274664928735238867889386504772541598794632871866695021373870437941276855638922\
769754638280456548100547475538050193123263694103310160322606220601966617879992\
235185492442086575089138380005842094307158500264522241479047048472561353715486\
971660345335494453728181227936241186879055015551474114897370224303788147397814\
613417927051511412779801040977861589422563635792152284623086115359035377350853\
782325198867299552719343520928328125512239989068448608515242627800650617756451\
960808542301463512100223145865508491163815006449366392783577514255050390012266\
132958407224071483581949816021768347089910531810791800502569012485695940767196\
497119799871273170639081064606863008544152627941278395295270299304542864646135\
416845712478663699837694369720190778054157315328264435873325578016071681913059\
270755240093956888867521434591110264038198430310032803707209165881080717960217\
211564346625715549679695202755771421078102908133478461203230719867873332454012\
377774205291043526367769503900444316026277904587126326782045125200289547780487\
295645295986998693262905348693106177390742362202490021344249472077835306398546\
096788501419052195262536062362911128208516048022144460505493154973811483525490\
891508878421496052057572385919352457136767423226923724095142952387508225274702\
942587680173177463900552331365387932749912908900090601023670335854067269216732\
648805902876995078765864857856799590069901539403969660784860670065162755943404\
832294251532640121979839806505040267377277111638389410348188241612350384251412\
258076826328789600827544635772721158573237834810755148756773613739445033885808\
196375076653061170728246299853104198086702492559268779955944633341192231383621\
771090438140437920067961720517092812235007156252769654203200036665792348123310\
504692355390766322331857620781865936937853577844204049711238874059605212202091\
045064327888998053377786445866887574367401330677472219353447572624364413155009\
028572317188550331176113458242896664795045553902772900678645191073535720575675\
792919034547003228497321178349658568315419871070754735226530764923979399166198\
674087567818473918712247731012129553574959437343766320948100526089920996649249\
152205457318523189881129152166761257302967909273914246194831218900012251174425\
965011799579187037832132215962846307509790696201711771753959646879757007845283\
846643072385840999654738208109022373901857642910497523006938253227140778782761\
385849306454172356063249480062376649488363244052230931328494064348004624034840\
625343258767780998127419325127381913052455331614935409881060062778410352799231\
137791396262903699270153419581378968227158649998518210952330664700377040343897\
708030612885379802642555054606317000381549678288390713846759065114552156987565\
880308436517652288558096592383167066547559166448159395603509977687353500145089\
005545772819691575010096380301272067863290602582691780218050015470006128145895\
661360571036620841299706459455511660835434539145132421690719544364452269775900\
793869403118256481792344309056325098285634892135965801847548831632327220061563\
122246258415272498085548603906457618113687383046637426485320683571559946211840\
407747747793572627382830423245326466274462352057773823086375393886867192009658\
080757464604330933568159984372856895014647348402169020687349226738863539263421\
238833822085929284575610195111947075738178690676841904718223971186068501465318\
080116320477822652504977367659327524790231297270615131480265613196886445218089\
166734031890945193354662067247314102638247634774147143924415998139550790448603\
684386521949218738451854297152742463298847503563141392696491511710909616536576\
821754285568782825212279194328686232352366776719956048778749811350359588723080\
073584592327010487124482623740716416131116797064814375163011264051614674186099\
455854478444974168085933315851598682934873276065427550301685583899694313203876\
723779856307399922491480913189728742758405308752081388364634168032152591071212\
539552702323067708561359833056431664283071037647222626655594203359480581648184\
135067145520245877101111847202458234424849751833878258131443280391880224420553\
499509852963116322299185719798792200086941660006262220876227661552130930469869\
261813064205933913749239216389241485882525736212032953079530118577666425884881\
399390525564432968878002161412857515382896202480924916132542261996819964026494\
779869476365464361782424179934458835562214180043075047730021000823575897490038\
950498558861505729248486174940692478428307096279307790985796559699536269760225\
907543179497788100689378008751944113241940736250878784871685476739094252853214\
583108579984371031686531108228581393017265868306944950703619224391626741954707\
693500958453979628409793035134111919506762476613554470121213407971397185284420\
562335666077747520521263748173531235717159176209386574153420786338871282266639\
817069489603871769396259809548005359978039834257585084432337868714474151056676\
284846213624185571388115910740981038413377586156117087537370287366650029271563\
126694975464757780493690586797076861456523200088487623315895726219475115103011\
580320694541364508609592653140410018367425193626905713942741967113937834360916\
611843520842333984823624057665693690474294190136092303239317924122144587650626\
249764152240279347783591263213282330716551999118084228603041712955744187608522\
471289225714570824202755008007943046307727518366737898927499696969009457564651\
334619012480093078909089526341856732212395624094400462880455280633697744804775\
504705736094921055064103148732492058026611208073585882086789020460360164716869\
356339947553393332011888283149905674104222382891767752956997452456472481251280\
269140677221160032408773173247275454689954734040629244407007496671224796429011\
119096049416774485817779658215001181732601091639791335664259627251505002148159\
963586063030935937269193915060528790351144100115149368435286015186715679480417\
517311440606758260108805264055004875799347598021238031087536817778826198354658\
815836196692969834642440334706761963587552642667675950685318612362019507003787\
508695162392235276911691287832418733243289723756159725707487035288659344841603\
646934816817816320758233060234109588673263409998853030950825429833073882707817\
674917872072749470851182169060634355763650831740922968119745581800062872080215\
472444832322935072962919175742571238137278941187210308634448801450212834548967\
188835897704564127449985272673173763953200741648447951734726672431925872480369\
593096311087235405026718284039521270148502084620623320058343131233434733086182\
013143544073761968292025296791277374410151517952963854367367554105166258380551\
433968145424958331488824683083691102515504862980398645355536464134102448759708\
253672604732815716781225318968390539265752984738554457405025354795387128859091\
273245287924315823248308094645916916162531947706806239598213376078575834365037\
988014528084565085634097528743624138268138456268217450748815674265168052786546\
779745488836450727897541439311428788935135436811386488204760368076733091193208\
008854995210500683208519430476658715270713374483710724402345135500779332275289\
941678242137429368372447063362192455369916683491824034768527444194607843083271\
650224261974392189016705438233132503386216922683997138188189951325984385184386\
130569460520218014592419810580000167244456536074115685035727219054335970216021\
751122288720315775848985559799028066054131858402454336215502309682725850318156\
781846535057640622161221484991783349145888747372695423411604648982329356113014\
679105959849892687214005027394663769888184669459672006247632840511094414291227\
093154164166880197737222531640690899555909297894897712741964323357194535457675\
830147248130193665588267362158533836390941013769573016349028068385760326710575\
197382494700584038590735867714887455366856395048132613227764136998936926459350\
356561564843655842125055572228056216620068128669343380390590505515532911974905\
154606961325717224042826416738689822758746912662778715839624617968847600883311\
883755672455564320127900814705755493880895883144006367783812182023879308764382\
653323494540937501705916083536856760416297057537473037881894372368375163709294\
375936192625893446589102421437991442178803811026108706455190768559250382512537\
785707132686691985295464306785372285717424761112547256607414198544071040294502\
569820888727614856755614283453906541137475708582989057768855253534575402469021\
758162461126729876493996409486116242139906969921173227556787958449118863498598\
194857263493017759182518068457339626945272577746076410246529737341920382333605\
639027056229581673011317580738174356823014612723202409359473449641020678342658\
890562823272101229981733430311107039485804802025963251439778931599976354089020\
269991141423591026542760865297334231843365557990283059977554707266589935606948\
907388768514233770721427898798111005180051981839844505715948326234260395484268\
641980057489657580959627696566370985297465452230299088358869562345059836351596\
204616906436137636785565297117647034327138331847842231504395358675719318171637\
196282681532260500135170279711448302470619000249723668635425828563791723321921\
143075897194390124949124818747058816271565515012700848274392229041048276310333\
607890548777479510076111666709318600164839532599197159578245284209968357115033\
093809732184999535118397201507216318125676108981208789415722266567571035277744\
068749409973089367773055479422451227119189530006256675737508097456672472734114\
856703705597360340681966012554062664037240551638391359668533828056323859382964\
705740410113458833050005195370845958615983778589283371887468496815956586248272\
676759620399940791241749873385006131921098962834387416777102780700277798270271\
953193576968239925809144399084325321457137292033230839924956734203375436199385\
945715029307078560472306447084997543691682399620159316016550085953245666308677\
434119547527399525406562581909608206511203903146026509920876088910729266965284\
758843385109848151010188138144482650061831191179748011433067214942385670953433\
065348985947620389246744541188901318639983255539123966989788983858905920119750\
635706513115510423685380007604126856948287675589668859547628032580288069174118\
045212631171414936700162147605770275156468289611042853466654932552664025652250\
419049073585216429481235691734212461021963329734920927527618632644959078100123\
136109399492702994396679413256221421487213927899162656298148338817261468185384\
280523668822667453105466187580879996200182461710176841409802114479382635558243\
451432886209559376460636170444975494381040096718884755300561483512389441954361\
686804816197785522837611280814034031666755814994194813809006266103009098295621\
069461840369676831968003147588321019472972672289345511700004166608982817848000\
791178391618949980962096045121646629124212829139916893946074797888024852897375\
477516307994592796218537971957757906233629393898081021161062206314636415217097\
140326285662837489662112091290112815855673244824697952009610953380242466211352\
143036862794423915760493346904599452006781486523143139420039085119714590556148\
320720479634524341642545422190336833061557586285565632491255525349863741312079\
824799528021748176947698662034307639572422848906402873129050396804389567043155\
859616012161814295183340232030641821436767751752829437095778336647036297471329\
248202098110249171243146025651187478801901936036055338359080522349064391445158\
683768444242929214839942025714860175839177299701817845118351464561368891400318\
152530372373908494980937266504751277859842719928361829830126152149463620089478\
021676134669002790845042612970969268090913972639830896199628963042587379335311\
162227634503206502478796598638988842283832343998281791418924912631055038862514\
375664137866824464120110890636584131521588903293615832547300101761809214188031\
991155554358018982357664843263583223407334880684277404833700841042225342512878\
252991845054313336813093144204848304445098782247521683199838196206627900976391\
077455139678935849177844022919364361099226687835825956980939730204495113915246\
043156075673156683788380989075238562789040260407416791942315200370785595152214\
816422950204257128646433632081063377970588698730190431403016830844561308798663\
104400433996307539555081836273823308444913264954521709345894218362893769384545\
041777728537137293620007838003778836198793704478827262057581667711900538935268\
659332199160801724479838943955620125310408597125230746549078180650806762923512\
208496038412516849372273824159262707775036613833243344102518880627868652473371\
511404566885970129107265427334368591782855117573627026736654408168455335946422\
295536855009317193952706571090965555270076585466025960669110207726195619480100\
112606235000758348326688203775667250454553506518291960426837576632352776946824\
560997713695872859695790222744196760955220185464036381116397484669143972370005\
465170141704724449735193996221653537699877723229297796145682737476687127549494\
352935210240373157543413068199570624806749003355097600421154904991364253714644\
716672075659089703213812556857012455924433219851291153797776550180715624677778\
489665272813621937371970533672265066639172533421713549388233025606347408645334\
532736975856486394704647035069258796819378604347373624565801744781448024407805\
919652760065314170425485004090863700935350995610007592225136775410449541476058\
144668421120919643759649129564019157823609067793989663476163196521870637428090\
295863959608143058423887039247621866320317634157438849444532585612531408012624\
857201634658416091092921267128889575532400794033679405289154208688713003967432\
380555872497989007292667949473213438290780401832493449734650013536615821415988\
413762773217851247035613528782087730615705245387911206385534827818438026012141\
361130264327853686483611308890122960410650005259461255078348853952914685547533\
194991285385096653575522174307862186865037447346961794326075330826540990211976\
935234962766902611139921916419987278740194967203772116838424066868952238965320\
902183772569185935452469316480942577856551879481319208960923422794209957890982\
325890739564681527402366177086613628090043460817390487013897955411692195981454\
398821250923533495465406276205723436499488383841363829429540559602531768791116\
414436918260009923644622751943635391383537704651365526990651891532801011522218\
328046291966083597005862156223482873514363185801923901644062578061906613669961\
688574002579323317992434320162142411293311444417578757312165194162084485582658\
880549226311558683919655393303046453918949732188772600722890424476692559630841\
692517706862607431127462359837972315249018653379653242637801665311125584849527\
555131120902905594881965423927455324872877756568745060775047686407114205769264\
003304905280145526125017480982951464775027633205113730601565731975455377918147\
313713706407029802054053470977445003011036654603168023786085739425992771107158\
953813934914167371479796347509619793366920356074722827566317158182082992675533\
140490556042284909560377990071857092634882058865174185222930334661191340337177\
895995052871041055911389965656888717435341205858473573429618408215625282498560\
753475441990777414699176284963089266410569960693034732538973575426662715989515\
520704808567522669275670103372882409000731173196341933146010422382292180967323\
384526904003426560781004214236267946077087619958841345165595416224388956091570\
101190113226899976597472220916063353087588321725665729388083708380302955413077\
544795162194216169052117589630129265103926201425352325006298118428453616329218\
875804010751784484308980094696976880105279984252608467683594652810876511119388\
725999101916150105433399458632055344188886065669706984946144513064797666425612\
601732576555276129844154069339410633105886101291052678303889778356108502694994\
925798022510055282059982854692707375351493803405049992991255835935196628946104\
023888557832903271867080487647610319230736491442960206454018488532404756235292\
670257345824625541345095097369200739446563885233368815236079763695051031431902\
461927756129894363681532406464102603156795923988514171733368915197385678053419\
656788667556271254881101456659518962231727494676199512973191121342743759093975\
625269295382732853260005573372923840500326917821203351163699883972146195702284\
695726526963482898332842916436766194343750293545357255305975883092347201362991\
232706304044613021517194690253716168647087132109388864631728344836719073557775\
807763292014855850371935248323068041569311473108683768626013818518757641066822\
660796293372849996060068633884328093188213862725747107606136256317282812865062\
040783792621749842487071499633368626140771356366501329459289126646956817457997\
965116470173195593415680989106613339393459599356159318692086693175774525920748\
854155899696362154563380045209256422661956543376081288753501150036014346667434\
023848712012906629790069860295294315440944719599902610276941825721192824752260\
156610592766895502094219234687670543246295768864416663973542950721445378269857\
681420998412002371866126621544774014084368673227884766960019468867659450322537\
493705570894857783149932417958843519892982911964919938318693470722726787730527\
296388976048223971953249171891572107346245581574016594382651232960309323472715\
170103585838154037520873681207339028126456973066015374969501276818773162310690\
109426102022397590317141367516508104013440246885046877656844722238020648257284\
202013839060393591929944735517236534046597775355057261193246067795477024197698\
088899259511529476190841577296699813659722353140885742836007506134210210654391\
878851968057002274025595189040592716279434085513951185605034548613280994469152\
243404819478883434891259677217964179452802316493570533664375720166026794181014\
082244543026870566820790267151477613379972085366037779470126662023430354346961\
444494814811945911732471513946790344008839947056236150367204603878156825457163\
875586354119000408586911500338015145596588596389985120127273519607197317047188\
975336667671116902449942636748116323216402594875382957325098523936011513953735\
863343302867583614124299416707856167772728008748753405755902918826457589547226\
802037772112055796768368499402878856837653763412888477379036350858086969024152\
750780950332533669674562968069793486231596421752259828896093588573306119268778\
236892297158496326588745351579006138845589678894423802851251003919449912289503\
335195685408475885918112493215636986378580853886239780019293654356394160524958\
255609160151199491952453016137184276537121879560613844582033650716848439121195\
317590971828848269972279347824796678416061263762457040774076519023150449647657\
275918258668256044085865320692789318118712170022120546158402469326024218143921\
063902097801364993935159659974891864540151776566073459498977772985620414949350\
618358454600220885202923313551134375763726238664211754740180495346258380185750\
004741955639098539466495149167963894050561388265518954911758963478254161507787\
083059034398390757804865626518415403492632847321937149132488547280874593583577\
897743909649365236510935880614239210091959517423563087944783940192171736296667\
085873313716029803254810981990613919477421631398562150139965256158275869041780\
278030870753270748559956958169721447956742994573926923233565653457503579443462\
428678885325139832678721470003527413257835656481311194350443388484058320508064\
236827684834265522670100718561994624176288027135841849511119613751277381702488\
029212098636112728778199689245129413949853804613233667891657002033752187456214\
047767416557636178005481881133971341862150820464043242820062101345001022797193\
252791224634271442662270012691865681018827987522100966797377115015398872351584\
829359001915730289454139142883791329673855275518799984949899849368892062154125\
885760062914613991586089986089249536381280027928319122855983712193746545261647\
796865106581564858591985143707151048720930735132167316416853882836300616495146\
692810719756500114940145471557060424032528757453112591682307272994528796199846\
414068485235993925676556871434357521973336245330875017110515439250821507045394\
762630782658444127775157433788711579896151378340172447133186803648865422659953\
730462350872136015139358072431301284613229145616276214584362757591937766417565\
333207347503015169719660701303034430392636102091280725467496429735054178450569\
593705303049214090978264003134038908513340335222301096044262430408544114439170\
265711382082130288146609840269321076179123163863121337695535134141099609352956\
641404711639595172305818585350939258378388637465538799961055516856939162261292\
205728620443171167770986756365195418453139518175143527540049239492582477330539\
970634179524411157765668839667281842742691977425839329678088072375799664775435\
057019294340687510671108303038217743632126825015369885576166310401049961877905\
585764558122745038895233444120750624029256884268646026561689495113168107776536\
174631796655145789582771729985685330049761851491966363713793413224476446967576\
320009212871907450483463127907992247806977987979646206779909271740993653576167\
232330481704654125089206697560280867719479518924670331133987122366099015950504\
012687626262812079679941446586393757579249328576925049778449587511671791582497\
136227700973580827980775572184402539555200553110736242784180792330340660086661\
524197133063218616129684562674327167468515690035959063026436496316456954488827\
185437306675011618377093597447897039098201025269215922314648006991000240901555\
391977568034687220877488939795319328919227333160917025799301786587434120555672\
481329799280116393252523641449478511040618632899727192897525256827606835757554\
741887395262664064644103821127754851022480209580495337923607536143990043158984\
544626107100554747479455681458731402065730281969711788632804801664222431550776\
162780736813836821672147843716571356132192670743275522347483233109863389515199\
792185802941692576359280584349005716238228961255976194267476938011075967776138\
832374012643722692307583950788843353195998365686713592489134810044312342046451\
510336205685349939114357873898161542863980517991646780558772158168886911971432\
833762571800371607620771373072986470986040142436185049137485533929158855665355\
560812730810982660926436811039330010573772925297481375542529649040665787633226\
234555099564901341389154482633020959079291879676683115673719152301006913501803\
093799363590031960110659406201801812706163056577358373601461241903540829642316\
661242455158690361006561841010847702281932776774136171642197735215492431441151\
909925820202406628078565680961415264139630530526422267992616039818717100793717\
942487726730259601406877525265421002810484507136240261169330124754478977288030\
633087256271208591042727942750291256403190067084197627347391137789750024095152\
386313164536484894876032294778453612767095198610481254351994086807622737805260\
800947177207359888733135922012529454651658655708573056496090487572123781155198\
649536385574915653049585575454010491128595062204592054433603201128756263178099\
190362083299553939465307803419883910858459539969915460222828387415803349752037\
780299260541493515476543734503987801901888417786153986688779035288680307838196\
332519216793262883228604091521850362163542646579677681827054343343804057699585\
131954097558380737029139722159138314749277681526454988599592101924234557308455\
597589469447753799916080636867396587703560493816833778288539060587594324650517\
641742037662892357941595432165962522250474369858080857427116116905873604423809\
487202840230823689096253641393990268842586209033996440857354769477857932430948\
264221859107798417925934847062609538489598244161570329066752198338496021799659\
605225295942942534567577638441373753058614337505034408444995417052823528421319\
877644416535049843811642199347947806818274374402464728188546935352059221496947\
094299292269978361628022555860781074767699903241542355305445492820742274084408\
521849663668216110647466318615596160751544303527992190503956077405885610846104\
862012437439255922335156899442050103806276472199622525354885127461077918703436\
511649175299438320601500134299779920638711870696058636422043199570838544431017\
102731947427586251781089694937787112575979586963390296783184738967638931381737\
261299188687230705951505763719605321869462978361715841802073329823710227105811\
119891001713782923209435435635028605156108350371751976177053667407209455437572\
870121372858241781896604054106417674994863959440188537844720428150381936255004\
697409527011077815594748091094478855554486675016452745306998115656300743965757\
314232682015544517280848310582731408383455666864761322741493423379367022715786\
071850692720399944045933076083153770658106129712784194963019897546661173106446\
076138716450962436002046526215604247877683845161270780116570666583734971569662\
235704656299500504961889679253776300462736922748897983475961225514836495865894\
539724142854969324013679810982483139489632880259389105949119009955707816181041\
010535052520603976913271395727626053419567067427123644875376080433865082001751\
494446615345375266736992951385814660920066866814725543346889887610704308432183\
060893101114224268850507102107859483982388230156510901048427529684611665039544\
867821828256865659829686489655336325626296548786969616888529278941410466005692\
562060699515664117087338222843833357365340913063413887095662747590757821348443\
018352885462896882333586083205140316526010728001578892208483532359366275006186\
261666638312797099119927327183124784254784128466743458221673336820279653218245\
022053017994039274987568415076183504155417757701345730279179581528084289396826\
108420534242254924147616419342026930434206558174607838935197426513230975738858\
780468476223830139163635249156928725379445900546498293225030335700168794669937\
053272147104168905913359583744064791419820618566653528692848685975579907828926\
270258982027228609063251194471123014516020853543724055890240088062326537276449\
250072979736310433073784636734401620337509379267184348174551278385741404617348\
144138256333900436824050516846966336670347093339259252750138935537967552425320\
276801110569084093654457057245024612059391487794726290122878782726466844153244\
374285768101848670276036783909395621158270625914229893983890057738452994332872\
508655543714719195970070791323118638040024472705915443034004307018061417825172\
789757213390979046127463574410130829188477260857483475719766260547420385188025\
835847677465760682392690157788975733497525843803457713045312486669982465824383\
457000776421398590250321706216569390252103821557260169480224273829465121773774\
845188580106431105783692104180906641348032024251985952948538759535273593546407\
899270717376479548864619584814064611107741867097603609696428562002182231808358\
601543790680344847076302837849344156863708362672788866016894405927914081972776\
987109341243022423630286390055532974063137588288405501487815717047943665294904\
704600045043296142691716703153604056488446808775797618864485575516843017084732\
846269409540702224420499073466120754173550602014032866780133124481722738931641\
779886146131364017240499305341190912947526719305927763323281428127078915311793\
056257402128030331145570244561871304711451498135236386537819632161328794576878\
488205116216305377049478269087409313562432628407961627255545987926389580487036\
901949099343056370173180432933276121180962563577068283615009610853163012260816\
842702888585352819079614294568413762536530115431347785854139098713953582008232\
249929945268743604583771229022923952200159672022337340515587761452050207851251\
250637738163041269368359937492361596947133754478254629795681966783257727068845\
549986444615339317611129344375911337336779142574235994071448082626773178746525\
188874301940862545700261079947060665830081745969266935760275569133849207050449\
262016853913772453999497764773975067566181016414874434412255726732388388998844\
002236765748769242152622160810393372547965794459828008680584156649224272753849\
616739306975883839867157459192503278101652426844872008487261077301833492491876\
096357936936965612583204463934265577545710034488741324297212300043550051418876\
550351283394613783673093833566437392507509641089729471499673072145915738377469\
791868820584391223333560417519333378082055081744046124208817548958055585850547\
974983160891390087568978216303910738029884421092852454031568076622125345774784\
564533905680841554435884284072023010625895916159290500090258700664195445679872\
985525321244743779407476759179284463884976489396511305055034008200164190920615\
326425727930184230984971336383095572892855576027676683114865025992360772350070\
148387627044068596890539917203291445177501308239754911997352210597256831683564\
681222747644490989661143393848926159431304217313082601963150062178028107317854\
986760845681347686958498805169603134311251474192151695064204647510242122542713\
797267737995745823126211569270422407081280036009218953336604882603824768113683\
717123616828707999723782948897849916105164966312859643099889447574450139208751\
952579059224362037842753093177269472454256015765515231733327834780704264186253\
060453880516017633287430697626104236316297863625213077697984865670534731870873\
810297273425935297255840087764080815256159116808430874145139265154152295076079\
724931003135736497015444754030287676869489743516269166163907482236715610346087\
525018873202396827383726194423342775725457634365167579749799096154848034049480\
883424778324790685582876003869527875678451402095629901452755017453165839256727\
744007040285280319305287605775922190961513254991216921540248249030549908765879\
829612051456617381688176701108877568535892608156013498309640690839052232312664\
511739820808288079587057758053772514465781359803189276756708676201737769911904\
844571252548165369969865791397066442345038140147310662941360650702298164417502\
908821304942749536893364324983722697965395873731000829931174976852866346411266\
251236603484793851082171018799543245202137773831419983308625233027264692595068\
219792480234896018864909493804857911376194302788427652214026299519939730400371\
947628992693458544583240020827388325061625954477624640741202201972654206629749\
748347561457809447859866704761077321882138843023029721600444733127593595880127\
498612658044325701080557721129731644609743224267028445096590430807916893278196\
057145580047823546641934586686107396046346635657596551317617649520451751433800\
977779675577004279086010862371587758017808505569750596249297588876461288980226\
028116373012054364731484167412235259761803976923452494350377783138874585446098\
597904325691924735604652647449730028267975930374073046133678235758516967465493\
270026937876829401853562245145453234675854745174816742656483372134503830050135\
572686019595584028527046778392852027081607156810618214609348424387109153329887\
464790463868225331757268700209825375594211022881715297257957309785232812000513\
721991143462926359037253503282288298252045357129133989453882204484631292926797\
703588980967810752985271462551907834364090279536403274864391699954593712061606\
372020220147079963354121806161862061419759370614661839099729743361145649219519\
163780639540202770743382622444783458055430056025093544566670874875655880965370\
758465584806236604222083043611182752455509325002968930750774243117402208411124\
777790542495348834537438369568077356665274440526109274019107229807128601940391\
356992420976730773333769385522075114537635313150593966093454284627024980894116\
894172710024136918619712317986944331589673162235135737757470309729608958870597\
289141561925915144997122116513961808015177169805434064830457951295621823543672\
428969926957599555110759871507802816048349323430588039017429761014351446775411\
044536395834603269956221678504045027430502404581636601801334347340440901697380\
860707728659131511201881803512508467305990901598552382869126777656824195392802\
745776146409527906783944559011070310639389197431743800602448254916425447793389\
380026890802697138425787175848882597077457752024841601919780666234645851917205\
158675209851094503933379662095603659321104505088134628006048708041100324424892\
325839000394194680935912469047248223687477312986764886310801211901172787651533\
961043639249215819138785535563819367817113485327192012272890126824217424887435\
650552217269102601866384967408421329000840711593208036454266404169031136337285\
609567614074802001826712581405436823684405571670564061564091430311928614562179\
103233718665680636462993894610962320825418727686253892948654513641200882105525\
628941591188969020037712098127219779651467533900499037641423051054805886194709\
638418649614210687525466438001990002969651666686003465839802398392140504296703\
692880026208446772425155515785777736217238439972898919037848258226292877110893\
291108102320840206071897970615711224550752891155553982369584767156160112529482\
565672917533040216464319199136656562804255838177449216765220066154265127631263\
053674516791643612946451114654845103351723541808405654029094373181891220794030\
143888005372904762255785088922952393391094333043231112222646193427208321269771\
960148891755132349948497263129733535326887073495477571406833863498621185874175\
611453151059542291228970533354848457863521902842407608658218794245596224024053\
695608376096327352992687204865564241264856633233701962969515561350669613832095\
049660341208403348833908381674211232242915568822255283681423476778639563645055\
824639844687768424877626706508069711998569986278675990944186380536908974217087\
011619158979136367463193232480986435902702687263885668197619434865267680252601\
042422989386547191361105043807651485436828362676955426707397293175521967100359\
157313672758553074730479482744419603024186219286313737739842362959771258514683\
714332002810301706374635924296957295492147580985453590351833032473541052907652\
292508567435565482408170965956128530319593654740580942296718043599952898952415\
003899508620492108566738751377918469714489460943940865991985847122156443440431\
105116403969461138592916091517071921255224756166947137221795314435069415246062\
763796719838118270721141653796978884860184172917778419422208239628840985291654\
503172000559365751227069580320598985296145754421735002756960910267994013293701\
482135159347789775197642106796353158846342565426878848688048085945008767762060\
832390761812962747510928845882828188526331602162957936409401295996163816881596\
322138180740715537784014935748921776690704533997540178267467673977001301497799\
602087482825149162169265775526717105730935172955916853879165824994385794768114\
598949540489943536760404433176164052239923565642013935914891352106997922960321\
040389633792977584457296471448843529942481214724088333171250070025684129194963\
696422724823213360476401735661964053310780389241266656305321368656995191200096\
107452980518580968877863888802668224488256303121267349740187460366824125510830\
695429345620039027038470552386008947919810163693101208711876985348730676060220\
309653279053270783822217401403747465119442160361135986347172271298161045433171\
031373946040153584671453967766379566835116186778319419277204559495487412524241\
229067791769161249652007736456984086867942043836210939738110983962771297525964\
514686953444791548587404311895020140784325600033570742467714996114964878695573\
720420931721907620885470668612050344497923701397560245221406727865732659825982\
904411814607903521436504912545724742751693328069922681151658278212156689581832\
226439072244649941665948484365698707982965754792590429123502765917553668078794\
284039565276215892578087274151959869939116891077121087167924573767949252827559\
844256645835270923767831651531578610664526130229883038526455711114525198745101\
858736701720425762890982300353628610466201171358895173389170474727201048192415\
278594541232829004666769900747965495902594199726274052014321345265672881010974\
274574971167641373481452910672118287902885808972721417340619983783661043313917\
116355633004425023742929771242713461756701240291383986368080312382846592614254\
697205332485963420717241917335632452271221815376166404527799587432836729510167\
744438610341513141156665377545070537761493991946360219986563827009204576310430\
292595494709338510906522181552321343154235867615635855168989460572692580439785\
983959882901516174581911390446683558051323103679897887628810350127046873279711\
557048777127298723555786397615995748481878661678273793654810795638148788948421\
320853377008918951147402174554143226087176466768258083800329435264402740136718\
823123193417442007960895946973378968646828542839110087369189267934279500853921\
791043813739230909870830181189235981932415456847960551122700848553833494657789\
204893003033497558057336002705710126198330738307091755210218104077037335095677\
116308961396561536097547798819868877722434155513892909313985862175965142378946\
878693599495843365279552759342672401826725453583192169422168750670598282148318\
243452889360715173458022176495189455455265923404513131644732645207805669001333\
564269846318920830516221591171423113475325153434205484745212200986872405638978\
049668283728696226248865851976946984388010311997707686254568432441634395426292\
093258390053706885375193888913474820581627650206025778489728727852372151298409\
475976508554966288841036245856566300123331558352709847113947753032199354083392\
530416277941112493729421591483909031700463523827714916975966006863652801705992\
947516939024133939701160546152604068519568116935538547792221565149286067093741\
445937409719611105349051318504027171252616042586317994999796275995464885902810\
831788183030117417817008150612902289825979263971969956006572731721526619477961\
812540311572792450507786137228630835863910821098050078990585028356010026642725\
646002818701509308572789768699656818555256646007502684822391842226387889269780\
904609984037745193816441609873866043556525324239933441260353544417789648800690\
210058093446775349814666961048326691250284915899675736753114450893848630287037\
219721277711063325005449590307576383214611186374184098857725674633403883408855\
690698344997314117532605554421464190757363452620960079400424601869188321754844\
406222190251526168038256064352018510840661766839474302220753871548415911973692\
419937733557600262867914911411022893519539189712687098944026650479411478422893\
163354719116607363679588956551187121777639692227511704088175541990534528202016\
172942680451974505482347137064255214239952101191440893973437718882577841068495\
607938386932919346911833184597563882315773510426023904620698884206554920171186\
647403455154275982099493938044729408773374509151473027849668915311475451315219\
256574782724450781399479708178501675376629197872659136454419839470021006404458\
204616538742543499253350694610697373841710128448251724959444493343966330573509\
449861642447241732225122980074582552178995428857541214463538659589617455639734\
634287146067642914461827020453284145869841624899155757451736403034019046302081\
842275183868900469187682034450390582430090858326189702158726504711388022235949\
104316502836023734891398086920634424707412920145054500304457391118878778338148\
759919909746678130896119176103282095684838997677356191884064557785935308500851\
584061612308554860941137173773393154436208110117324830589529089494964615629979\
247745573029454160832532833059277346233710660595627517511866753129830718344474\
086986996510787764370753617987980442685363990396529879285179549946926700309953\
075478704258752746057479783618730766346862155870030933036798567552855408743627\
069039445941701030201468883257743693172514318071679578407884568030672161170986\
806370976630410873965723805365021576967312762128926688076325942409652628346992\
063930949686833627957862227378613074677054500315896960629160275228466040216007\
327284655063888850186177588790227771551488116883106279502956941028889004560942\
168793122944229754477585685226327600786207421049215703798944994933122000863105\
310082631988186931889020497115595432162159984235765955156732869034180975151403\
114245946458701790509794086113745881951254947603140831646331803662612422778520\
309641980088634357071056822221535432545445113557465065238695720265015995413398\
928719152937448947813132415002889062641528665142261935317671285863979277533371\
719442868356242877461365204062854504068946785464279061699132374149233990829407\
623397709763803155596926510085577761562664316562521974382985595001360333910012\
401190773874989346580055447646750089907138590176154256412930321769275414398632\
879013914308087439746978609051847980117482900507490942526866704440356750922911\
931624589502482819322221058892287702636762029366853606087888219455007175619381\
005346573978737056805139319073402702997932581857007762133541108642406061443938\
956592702695888261684190701214985884263882976449996274180530993840877131063458\
820690390869677440231028813262805287720241407535587293556982356706078038690423\
676784210880940797320045587203663470410498756945829249116114635994977454412466\
881904634411844945537350810582130822134678572045990418835375950312304198659128\
067347463089978667921530484942352214084444071472692542137186800614494163115552\
933005334658867978569230236466523225372503514218609816076503230170911564187803\
313530798879884085633900472685742464905109926213109832937297941341232982481982\
675062575655974651985728243652290018719316376611322749742482398199344195729679\
908990690041539694585882253253858137216249755532063451755597800457918954308731\
588718343625192979584480667807939777678467954141216509040884892188198205028748\
551858892242981709346834569893245909665919188750384503004457109161215456397668\
238769694839716467053438772690133073875353825672703618157531587157076088846144\
598751883106157877973778935079996096505616077185520801672318155664088858607156\
123633159982074773333725351341634000880380238829956415326486126066471151480377\
406367479415440394920170368472857932677509859240732381854592405030433168070404\
781445839157079569671604682151901873857467419560974914349912170702220981367162\
283848546721530923416838767530517682392173318460430464760511487222669459799047\
758834740842805439938542164830286396843295354032617179667862818805346855839540\
176355736443304078130429584528927930602459523619044653518721333368558571968255\
120452136444156026741101601342859009133763125604185623532318963482312787737100\
888798557222141408204412095484128770865167244314270996342548416151082054353254\
563456147398051165825448771013725991543988174125984854776149595977290375626640\
914032325875728412029622462477122494035824930897736760045179661688634437795588\
751786596564915715757835297986749066943846668732514965474543338474607320150777\
873716339832558367922844121125773070525442255833397158731755362176806580789230\
055281536862716285063103283048444477234933975366422728956899573722059464605194\
321361267251082389166693314804262204140964144942098162874247266621196845963368\
328970082971514372053541256983466536823175104879409140720446355372360627240203\
123273369858887335109430789840720076578532488493248575138979052728465917004696\
262646754194964654555891456475664323979510485539103894591720617277576826119357\
493878136172496050516044015234031192713949881974207922945203673786337468532048\
786619544463208720745872771855793150747497697246846470795517978062010565296601\
523282805458046216076043486734396048671453056353020009027362447761835218608871\
321042235278592561418054176749155016653958771079434694942158899889256009236968\
375445666190977662742927981810220778674018796864034478122687064854206804878616\
838017682778166546167053800750943713594721916337382129714654252760896867401103\
971258469508398868098906977687624639155912712783605712098291729052660544534551\
161073914112085322649675921976526336524560452705989978413702779222322082395114\
164989668750551377812090300261400317972980591620458992155417417669472017728562\
840480839573456616939631449227970556955573343236629384106655369836794967639054\
644265976517960366670929648316447157765636330252696510557131410529854797202601\
860881175951664770198548741095032623165111604567205997576869502449486807599981\
149239587272560304630049017979814519243411384569269182397742585445588185663888\
041815426618785179862687582048618532768135674213076513447789849692405650981289\
562613500128525298673052668858078195100490626269724335536638969162179490559460\
489691213816354212190960574121584296304821765585024076105683965688939654559119\
845077795011561421793409350372028810047953204579932224473615061744957127557933\
997949452043352079800540479128385763804681630714417069723797393086026644091152\
757275178047736046249824538916315854499368998730974580127358721740872193008037\
205796656653436017884999146027636989598330933860796379852033133522537350996193\
894603787585578820079822264733997541922037667512075532175253437759550445939624\
257329250164652128187016534252964105899738022523521625779819272824228780250165\
479745715461894709168669450051575004389626538466752500774408184551658080875082\
966913623191887819390820270436192270089724863296614750712344453927387408331415\
727219926546848355334125516321308156163213780237150468764834197710230544154011\
032991720347447148521758991057846458685841880952414440008350501088741791189779\
161659734823517519380470631818992626673892700227858158920930098263634653600353\
112872970317141795532399966117782773751546624870910701089907152932547071996317\
702771854537193322202693590585733287957809924450270758081411457689143932569249\
497432565524708546723740038429426424374261743293179153947838784545045405505399\
529008607536191396165102792547915398802685431667450622895211153117531836492872\
327796215982409780604031831579411810790283391138677170456295809241745017656153\
266036646526327565799641641584422266284348094862034098786344036219009819683823\
744808101617043295737548744606330848079590800672183254949003387224646871193801\
449119300686557956371106338406336545765527782599878148869230156965720952394953\
835478964424930994131384214854773090716454188446035078373825107442804619785861\
753803147798723259370652750457442874673035419703769836177603491706438539432409\
773316581955990579531598535868777528578274949586114734518615319901891041819624\
987054645956419536535353206236891347309589319812878780410252674950989927204792\
741975163749162990455888742183043085498890333320623764688029201768980634067827\
791829890382887614367672313707950339903778718279260563453992704791802142200291\
102575859709343663124921052496422458473774233842641474660789537802059698568891\
898241012032492036143309423278389206012840124033720211950097551772924065030704\
392654988400472980224428588723845714549058097904298382220738987287086736466310\
552177099712130492748074636950804445564019005062740105139129169763268980648184\
486381231260489843097456839012620838303550962729921557352709281065922027735458\
419117702371242495534540332856675751162422958007090100179115738496198582218127\
664039810713440008225391284130948252233695425002538849454658887765586983442215\
778916972564443800919648768510879683138206191508702954779339978687780013485398\
421176237745106504674392201683847319032215342680929895929404837495422012638219\
980171641420089765380313637971982468916993283846637651437877954986250537703160\
225341329709724700262369900540102592085470335095990378675585527390074974312370\
117473806373660607697912847388348517198615159270028364862481831906356259168272\
584082178661335008134061593395443355226709871309791096608192635116305780325711\
066547556114831193033341584044588955531806967698387631093292368877708416359808\
106145448031503245515183700386253319286130083363583793743988578967474198437103\
430572949662309617327922988282527850918166473011445687440872582600213901316430\
706562394370650505077154699760380997291598208756294111884436097942425203639821\
015265489425803050446008341172416111126896332169050660398572674242617118299663\
899185131698825443193263332642924481919430894157862170708561751127062972066772\
762030486812092268014092547499283120919070289300159342472715040068756722009869\
106547179044647042444251741171175494618416892617085209490611618184811409944661\
570966027164644883405074628868083522056497907336948154971363523327686324450554\
349805808283430965155907073559285835504535127403781468668516569722537177377244\
514102421855428859301386352116328568116451615177298244677499501862826724130889\
828774944614557422897044569677654554770217480084730168355516023738425217586540\
143100022691785206032244527317062034749974821018144749146717862357023399590608\
356061409483795892568650384111661344204552203384487986188143470287916148523612\
926105516287985148161230747266850064468962547999015146954393451975336777966241\
957582171617155674326339515480841197774309813844019524681455162315542620419539\
507839444400400012266871025885018615185840455200450058870040805933291451999041\
902065591614945454025081228690581541208283292237639422457158011230998967906786\
315093717612392200957455218653585010813866633140991128710081484514075952237203\
407067210168980886828416443891113928727028324065632308568392942371004650347606\
572254089555821827059758480911392096667984113929659619136953196921813547015751\
887828119445658618279134833373683506670241219956309513586740534645739153784498\
045129796514382011708979087910365984264447925243199562924828184623248423183501\
465300349855660400977114486036709203659438580101101260998187286883873621974443\
181711720602865910765297155944293534349331134161925983511767296645671819921864\
086858435116088510334569491967274106484905601983564878929869690905627117397746\
114853576255694800162103818789936541474710437494710484277984465808169467971777\
410576492136484052387490162913226031666034662141104818711956039010640873183516\
952682002094190290819228214703978652160837804889440967975667309681022558199755\
327947892518746724526079872835514503968547212275253020574261882469636325636855\
246374961902014515709766589487213554622780998526360929403039186634542574933438\
254090145921459587533900263066891343415552193293842806075187366221492476242194\
129461592050600164303731417505523867972772306742871808447250288885649859548660\
603912592567654838790090948998200745122971645561313633345840052389100562765400\
630527857619763465632158801185979852545261874546149898736839908751521730779262\
750112636362491761537323597063439687403893192513728808199115916954209138494756\
841700305596055890110919528064945420645700979952499343759318961860110047206791\
182806271683892734410504320527783750787687851061310965284378468394591081548457\
400257957472697418562923503224341585603324151435703358756321002237030522082578\
564760413242942285214310071671971431243296138371044575652439322663716358451523\
514189029777372984858979988465944192100305564946336399556440500191650653197106\
105306952533693929625784755477927179526175753217749088257883069698857017351966\
364442717056245073617555947297128188104731064955106450627335913508926641099076\
484431277690319446548964399670105036525744961876510656259474845385922450042319\
051507034622050933261785569760762583322870114107221973186780373976799701601255\
609558444432819744321352890309099535605187559200388823728090104347677981554544\
474704710552165165612217043303961853139413907543590010346369943286453797240605\
386990577562698548035458386173650962551955728777964301690455558920534999570794\
180425034739061832590370060005270908999401788189866719333872371858205482035752\
208028186081176271419159848964206189638184976379971708614621248724567781532684\
608694444616733583384255871527248716281980832471616910652578138112783671634774\
883971358556428724244586710775397338088827295106409217050981424246345787157858\
666720112209239542091950951072239115545021340512703221959377894607775672628846\
874442155405292493561609139685997839330126854280210523342119331325899979796210\
748311073205088099424450118751405993527192634099029025235185606765564888995519\
734977176895730750881034422888542528587087117919569087482913563465340415826648\
386181381462220751927753236862696236559862390903449951111108402765503495518476\
558557784030650142258555063688931176250548080642338788687954600707342960766496\
861573136437227638404303855241307258939246407835553333489120423765557699296261\
527677685151602764969957044833218847379996740030532040955560052462382944584742\
727750602275248709626917054600744382192003837645130619054483130898821053004496\
113920385508343281777041578405969541701689547492702114899342091823716655543478\
403938690268912793976729560033509586647525850019993928534503359403467596814816\
549766168832294550849654660359742134524296533337355370548697168880354006570638\
226431432288265250372738292157090501947075590342547699608943582554401024922539\
856199854039537219814053121424989773036177493917202471108809499860037899449650\
703373802390606887544887386024619756533424098332215021340095603315136083424315\
153567757907238051575579529086873176437996925078595200549342032672394041190033\
257964558282975026105010717126058962830058061708590051060852027140334576046299\
309178917695277711206888479056969411449669108859311035728688361074039316602804\
335220437644795388754413580227158288173558808110453283703445159817723391401013\
962323348915096940832342806660300179346198232010390214722364839868907370147125\
639268339517830679245177099812700461684452883779475003128959537776642830517455\
738313361876962642876024671911743526678866259969108040419913067973801534924207\
162277194385928330343438849027472572784830885306948178004124576279838399350770\
66084805717629571580128735640650144709554070631672209695815306791074710