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.


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


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\
660848057176295715801287356406501447095540706316722096958153067910747105887128\
494113444279572415160376301815915505299204366223718888335715665539006360242843\
365137663778731911058195524885620353195186804101652660945843949583204776494956\
360032856240152598593004855225870751921486892314337716712990928104947209336844\
538488477981448454067566661245505516304710956861836903466004206752912368010954\
347217170702188720171706410648139098531500549723081393943112940788871373284067\
206331677311547353511488445592091826327259853695224933057088022309511834601140\
209478018409343283541766348809525965347976158871111122190577708646902143240732\
852287850745316177652134867211385453016009432183068807465231380186459889452278\
274147752323786825185592793401893496154883102948862960770469629868043182107171\
867904867824933502221102585115560665203207789207410932264373490394902414968960\
781385183695757611820946817710198478011984294578075321238546332578657014457932\
031113039495343512284408230881197286942475858007716160047037640801360827213965\
682455830105047631179118100248523586460668094200990533972058156865701872245635\
507607412394739910639818271964275767345632868251397463113291164590111771225415\
834657164535499235243744268329495155050920897981723401327291606427201023420260\
454743514000668963490801776960589859138368925822614090986353487471620102633886\
504243216814295546627999428129269276791445425265592369576035836740947087508980\
660289851611017573577334173373242105930954146970670287417138287972896575114358\
167738888807880825579186940999034938748569049047503949925904672903732107411252\
541421930340589970672388890506851546623038603137526456290082663813927314982163\
945302289133935214176540759924617227767309826177518855201599495597076808646638\
082198203430224185516440867667378851902570359690355145540897118121849810501175\
221250529172335149790166464536705331452151060349262800799918219260345978259303\
486380589701219932078952842932549856553481322836919051206857305323165397807102\
986286161254478002574854393523815795317555243038430573814295826613437507220002\
966249572392780283405197831954927465091821533045299021184731248428740367519598\
021986345505915529325962865224537222613975814065123826591810298815525956168048\
071687965180427546439745805826945075431914889677649741257710656939936161526919\
503705375924797084115820843776742647722261464410701813748868474711841087050529\
178361213864658287994603587173204620356333661626856844065330914488617272709657\
844857181890676290525752906881744496413130926749886286427460772656672068006661\
776202764051918206885278867561916903255550661234004396873453918280122756237487\
862844907835562937465904435249883417066411880599592834235814836733466033882937\
114362425168395221894788603989246666741506123452611785933558495062546522029326\
714978558959396638739623335358525706285521669212050158851555000657782829581439\
214865465143216192132291239503498184530928124254437181770683424150473933368069\
492785570357756087203764509196212809411632544129302476773464207415831272669683\
508235310698315776475837373880870879237326380452590556296224626745817249569406\
122600271958431673097967291672829353821680168744693445627148208722683091055315\
501242492931324520261539441314957881647128221963767313967822288332956662467715\
476891021763994875126547132872860078010175748064889640443761229817600816213839\
655642549161165207238280154614369288407809285744258573524058695806872523358635\
614570021737991927865304050993820741306200575097376745020710616855524001571167\
857970068810338929278019262733187602161523509780409603483473502589809738513546\
426243450476444738020371490541025695771484595208632002035915184337415967415651\
908018216755024855859334791166880899277250919001771178100870881056583403318596\
086422292579633899565859797121529168877482045234656310069829698226881713264796\
213865651077041960654353322285637437233397480512708105746076436631055052438222\
117134487138207537035804744177434649406308422158645478183448126592578865293976\
308998054667723454301827228705406517761387759903020299632869834710161869334621\
117434422977803159143519087563928232907332371995497608722741521978676291108139\
849000473259950047491453962632687704223349739988104486557884770149725110680451\
193709120604542475454162650575150868863163693347052284306369914735517403302479\
638120232456658075074656694193460622407245382073631355917916362602300555315143\
480879883865958706196390422923283336530514285607076041580783226698143947306801\
926693511380305716563365171054930375182936882834540672149880759045314564266133\
258713760730059402213437497610280833598988669748888074492119906415224366938069\
229348150858391966101914502199967234751825362202650760598285324139140826117085\
290544031126629164901290283046147949958261447630724575596344554272656189720220\
105566989813005243869588438978649847783552868069226868519775939756504269094170\
741678245877468174762763720427193697844998545892506278187530841627181716919817\
081316724431780743178919203139446928987246779259179855697036862773408780704044\
542642325518417537425719930724583723099296080002808073052009961815207971384868\
610552169171039777843537308225167940951460324285012269175117265070230207213389\
460741544187154717954236312822786439614570176819954582534528589309994483305160\
539391136167132842344248588660968313274021511917171024111005808661548280991112\
659917930971760673247813720566169177703481312618413992512768051718869368781289\
698161983724333575071899747435608490517486368840280958126169929733241185117827\
707105200756824983242761899403053609693038193938579494111692568924379731026215\
673637575759639351417243217150669386114106602903385362331055260551227154283457\
528102394815414136942325982537531818550820571096322706548864055906403347808437\
091848112238716334502748112593220418660122181378957736081966847119776431980222\
815545778887606302224709626354312849903959316095744919978681106495835241381155\
276344973561760929727227920374303962897823421576493261923283604661746568862562\
558407410812962811151205857125781276167897949137541570168980054345329662720899\
300479932428585322708516158938375174609465630595278119346538091329733202639452\
653538346702812252954984210700440270431786077942333640589957529969875994130027\
047897266156279899138639487435039194240404534214094232454532301385594230005021\
869905122418627487366464318888795792855302115260329985116784067723889839555843\
162304319910178018949635531252848516890367126072673314327937847726864498378583\
875930351055325557529911760216740081464118770657021406909885665828952995564838\
499297104794000068790770702782908846509840415681531254083716941939433868003440\
083970245555854733900820481260194113604623153816862040973160160607914421385229\
644829526572753554470575855549071949716798527195873046240106112698676340773035\
786667915160442599290215187659321232312314457492627849357642418114017134833070\
737545330501010258527225043053266124781832950035612230328743032569669990190993\
791020491135865191412587756663074800211766507029687497019019208132995624084759\
575779204530999073511576262207516451306209216974091352233515153788877032315701\
718295731151903420717339394634655344798645929058292180399477773054932175950183\
710817891931987902403021770600429532931175859756838584237401818452049081127171\
971203267495833792502599225125144127764749990970874345077319821592274828434699\
541129855688839692763189861467041065838996586877354437893066707272280392676009\
824667939432474921705717752024764487897024985624933219731438981308173268452851\
169737632516786449170403032880547650681294319216251540225277547227592248692050\
797837986339338171443811021659924699584043373789201919212729104288765301707802\
508218759482460166919838746635632196789011865806961328862454320841888365083129\
688674282413411687439992706359084510951195240062096118777308919779717246262489\
424896382471165591906349576730663419133129741457211969601478980918334484757529\
874311840007388574935089984955573684188798882272973866240955262354249798201871\
535166891330350097583348974769264259785202365976427931057658139642795653808722\
333236043209295633829378013569872147388831003544149588772831168527891870403866\
467890517096523987202160544280450861201388412798484657090603001604041737006170\
381249971252869847602902394398245211250703543694321149897366907705023052964484\
907718328639423285273086348829927194171871522929173071050830692135241288615937\
350800323872422524751560595071566452413748173902322161844264615665522663442144\
228572269200730356182643523791246078407103015032490813524224842368575024979588\
949910667228027597695825009641668846504340976746194548297229691722736443254011\
418345933489783611143912568809107893610247685533234558123607345828357885316231\
339005696092292708845724103616458990792996976451097440892165482206529703754489\
988170584641230666869336303301453904249112344084784779101615497357976942986103\
578072371578211315224367982954324427670358625621637244553428721939263878835886\
577728064900774594261339436287737291359489067024260990862402273937300150965807\
563834200108280937878047975465091863652804890013845581494050547451293986892412\
118016212618231919995143679719301218690062947425260058225369003860776375946822\
040612348262215464282212573444310347916459681691181071991403513031678108147469\
745408262395757061541407413861230787807857188862223648685581845516773676422214\
577412102358451715269466555417543118323608713737442498472335543736461954555147\
023625667004351461713718520804632525628660350960259714787892116387171575004531\
701552518125458000269333460375305020518666934160214179248333109131676316014120\
523043404803196160257907771769990004368443742084275838603954851039151557058436\
424565813284154454773332408386137154715993380076571677843945280655869087885633\
946521373361689181755030355714435296590455632734240003888189524874448631004393\
117521391960652138982424817338372918415840890179698090715241977414853557489392\
743763684280229946393690381331239956553721561076624543485332034673385091296778\
948925390458461530886409905027426953177780841619605411639509539245066695763265\
106141527424549199647547567028320477123587058361012100813628715982594485431516\
904294669776225149386786538988011136837846999707089169888380719454382810113865\
991176691925869800892780718743086624352799482386574199723926575387140853488395\
423265437260229576442760492958771956857550064450307366911718850491529516827421\
531905207702192834649202960449723303333281739320649042237557663053430712740879\
672262524335941002583958730950898291797181895574910165287623426891557527180960\
757778587948122010998494903745463613805384570437226980163962623539076821850649\
223625744731025989221163311522355455383448618379761820111234311977702643988558\
078157194788982269768883864201078093524104304092852313723562972938149610103310\
389078458965557369558320969016546735491034789439198218291726620402671280398719\
567636154433712931367199010418366697944964593722403987570444333335511319587068\
036185759783380485980420134757851948160337681284366532780999547417273710803424\
310092712723167789421216336488892488815750332849206116747413675503710828237590\
445542898005294687215438223315311935220287626789297865952708303340076863310936\
784884845247385038755583428198846192189815441432303693875644269128976706849829\
185838209337919242778834097062029729072494664716093952100488897011637114101513\
541324118039419577601556301486340276158360619332045121092514311314579546305069\
555149433824935116237362317704467978956744727849379178173680766184356055534190\
035150610223523298176337602089046355765338072359824622557681083575975603790809\
877691498434729304054465760077328382371397714595649406364238319782224155636988\
431903782177435207868988699105716520802288071127053069717695447676793893821634\
131387698495620884374235784382535679502712423953478787099208898525413365126996\
625217385777927412550895756193282524910457868120507065329896584861709134943865\
660752424934071129714861551573926416093578844040876548604065355343099285543056\
956900747036613446096965143789792450902493030401598425976084584423431300037982\
085676204611347936776598902836357829714261829046552608554472198278104570151535\
255320326258525102755930494497666665809055092706875939634061878238572339067930\
236681332379138527051220331600337609690672359935932536890022869258424942840798\
335413835548226854544120731046159324162595279849471101790811156712070899592868\
662949456638879644358175127126532118366190920434539206653568082114640140683128\
317782552700763099824355861706941360545549436291141685502311606110974692528421\
596768317163624923121386221804743215885123627027433837711963857043123177063479\
120444211375478440681087451974328475397296096541542539192872700532631956274093\
133074938913521785420031802910241090343448849583094675418757736961724329552756\
103741517700959386538232221799822369293133976702858204607966173184903847526469\
992312812973045545399315549470779004226829760840589772578603477531406557789524\
667327489604223831289303229648496092340284015809299951729992826871543126126959\
029219593466121799167683253355040485051017820267268490226155643037127113045513\
094354036322840522189457680908935598263786259659598235895272243009054114444763\
006361173346261317764831468162105788103353803942937984618494871492046398551146\
361311332618050482627713961479139340924335244862042612235636243790291230815503\
054188092328351718068963506850948298999711459680423552579381455118145471391606\
725244647330242914459266272618577602112443859105867517423452624348306266216227\
001189068218772592939835035331171320269855250254400023378512017846941872111523\
147148874139712292363691808790185327259736964619429012562175523616080657921099\
413783266617920591945648019157089041250503692253167073276277278198902410859428\
030048468051010758215835602509502080974668984379402626881190427719787153514964\
316226221979935105278923380062389331968866975705540610655845617798959412346042\
086085328833492794520108497899780689971713011941424201374111473310610400855534\
297894475156777900402973756495124151926574045239958228973432267460636402951095\
783881180899306033093315081486044826636439357018025583111338194877284444310960\
310310297782638622772892602723280592081222175229673135447272878214098107956283\
630512037185494688916807836676136979615027166279833543814623086887438429233462\
465214733896793331550224196841515349412096740767710500863416502981105018497611\
852584072567546579738801220415122268044516532015532633802477188260156624606500\
543380141472576540022912872570270340332165881741017810972751907653062876644247\
785443207676805485720217842360291434681514261178109992114810959930171608650341\
859020131148626627750794243872220928680178335679834314332639001369238133367141\
194643045737098651463828254350097613286172129024943952167786359205184877233145\
263511196902388401269882372311813892882904493407946958506683454524323398791350\
435365408828314100761438708318383297509690666813459258641674474833441727353333\
687143257242993026079438130347020245841542416085640227490217378979101831930781\
811870965984341869925504917755486196832211239304478022644266276322780033784592\
494697444721941425058658375280031150610854385365817947390452083386463665625286\
047998752742226222356532710252608620567767504298533050151005508059173303736123\
601337717054883366983803212661705940567130307130676722644743368627010823820686\
334100945626296375059224911978602916246764653649455416876136665272888468349394\
292786405567462187182772278033671068897462083623721841313866953222626005816981\
347835593107740874988645796502547900129642577844922287793517128648229427237303\
172561942245985850844874943231480187481169292093452321104456261717645595292365\
780737847073562004153067005527396525008702651176546452728206102949768535847871\
579552039153464913811444522217216896857172927522989600956695882555590429722870\
516122467375313334324867950499080147731441669745512324996845337918847559191004\
982723497026541138784273003948851855501471732539297535754451716350128861108885\
057395028462995471484401706936281389702009236860305189582512430016849936997939\
892877305771783316627648981956443424956362875259274157227305385370608958237771\
226651085859867622610239914484046126177517444426027183324209745121100521348933\
852522777262305475815480141573957912976406096426850336184487314098246597543777\
050888845125211013142866899306695374786609799915025201178242372148992687930166\
782506156022168937825540189535592786144829153875389084348246783339769855210406\
075706568316753204014249738283548107323240172978237150711255517022753771928204\
956510007136416309342508038400484849614754112179003763394545918329644414301884\
559499623115523347337509505272238829965263085020426677708338392852825124197372\
782617249712885618554098130672875748557823150770306007919211511998408676820632\
386818231949469757648617682537644199272339947001811313215656272491744222899698\
642532867811049671897554254884497335303434579386028258366627022737754234638209\
579078377700043217695016068225746083204806744025323540915301276289436165880054\
696975229832167300556830785537805779583109873980160429593180782336354910442128\
409590427671820818758060329029470216574112641279039757459357533350105466232367\
429055382349330030462250322079418008000856328326674031788526256691110781566839\
572863596984856662853791850333990989952842264607182999666087532258579555455179\
308526972647223403527077041458243478139726763642562726752034688979784324779016\
100556571119050153932010287506716093983455627644321249499161967050407960195468\
804777687752853379722934907428591923763542176911214803568251523245488609007605\
774985368698658583620900688427797352832342448622530366830544828695624805073199\
216197733170316819882899202859484504295439423156087348931004509545250407130172\
291339750428377235428527734516880680893040843407584114113241016979983541649129\
413509371128606198532495939992737357541911053940198356710716406014216143450033\
464681900453505220372750304456344443553130947550603132334928529487518540841131\
393532569507262422319169097015814356662972241501650575633107946294845052738026\
872089061309094174605970697080944366713119308946555381309422898107643969728745\
285085830018098384915519662097718667138289629957212882054693915964026783510833\
474855523417669870696773107260616320153663342741394841683729692790646539709992\
682547966589867005483340801629602819355792997921772501946340782113812639966143\
538198320260382017726047837100700931940844987574315387058756202258133736183593\
093870226255716803713643888028035768617839353633069206915900172235006057276740\
635370931460667290238265938766303398334847943815522342266104701019471553985006\
918905346408253427566500096144244914187381787531185063815120445438594835161964\
976011550944439735631375305733280268676226846625162525859041117965856564721593\
851985795848868512432226641014752770908338698372019168674947339760355338724040\
666883629779435365876763608938254230157045052466950221940950815406798329978997\
267496676935312395006426484641367298569300213386428280428395795305129352845571\
213482015156919490224145073664956579100690413019556582037217069447547484912975\
948902561742397297667948249797772821706558540060850419130519754944978741996771\
083045775974086450191017653866855977625791277652676253461330515441215298302072\
113675723738429966545867956619960021030811364461565751098813193236783533054039\
709304988738951311394196504618777129578395705131029068426056042815226577346866\
221997693045498732187838629230575680522696950209704940164047089401822369085513\
787930315056376437754872427346935862687022814369775191421332760056294682874053\
486920847381193846809948664676420725457342408428498614897836967224081655170771\
250485328980659850091974635078412806986945157267300562569055449287222304646452\
987784616596050352760153378002470042280398272978132232910049882098261691633891\
725923695468478296276783397492821870934007035804025360784990025958305903874398\
592695584954384526300463346696543803872336875497517711122982405772240852871112\
068540953590793607543568767878861445805211562834919956054989126164078040107177\
824302295510280435328286124007678714126385237231297290819194466941211334945117\
592841217361276304946954314082339067539150661649885489404567074421339962560038\
153303666981672783066748249666852265803853153797533659929942393086159803862578\
924660534640853575961390534279500743166474384669585383460330228032144989917997\
384370055248849102546052360618796158787672252626068541976975258705944147675659\
606333314949410916993648045564369252795509925603359198075895992894503886718963\
977361723204321142776161035073510440782215553321002232874938123949602256915123\
412311050159239868849626693734474306455845800183266705409670725192792488942618\
995473525540697352479558535726731605535864994818613294501370997628902943933827\
422965151153873280255782540147890706251983260643386942900243358545648299765533\
232004454218816157578455056859131542518952625931443787617043823743813317971611\
455384709962877243425915188312704861432349321980514627879386241904911377246645\
666008134950909598111782830808640556321764168645973570787509339801687571336919\
567167927876726053519032322059486175476601598686479225692785782763935832487083\
877844663558452593118911355806353705663390916522731226441059562104255544531198\
261938880553688125295428598744108175276922779536431753849515609843076041675371\
516642877380285401321981528959843856371515984846282454362862997331393354918098\
827517686367088260993972012462815980764905257050449317386457790795127921222983\
598971324139847118548461236740144029216235152738112808907051650056559806436392\
105772588244131288929509967126391919601485600172815970828296367689757725427594\
122190190161484305204041856411027622454562707245736244457872211126120086454512\
053484769127132983758773337504138134157222051197511387374323264109089385130008\
423457633116333300736333902041425415415693865738757353759480014894779935341628\
652142872981158939949697937800333940119118143074432326697155800495267692107361\
108627047353776268715433831668767628675620290310302800021015743588542042066691\
605474380783820346573442319370204093699351361313555260177084625885440877414880\
028011590567017001547057252631827977513888333352471421820454292963417666615062\
397137587144697437070790827557422049790607717264019338776603419488178803469705\
231965267364381908268209553519959345216998963579553886092187544905080421919714\
400399871611299647560055262136208830870754142156522641763772852766231782256601\
551736533751522025679917300358715985548589675134257317487437215384843333084796\
998408955451340744014329779934110251165578557158440418211128482097347324807519\
539954738525048371053592619785899132299308835098835854097141442960832147632210\
990017119709201944657070672447223133128994155054455513852267913839863453429467\
154918014976027844834540267067583986166824793197034245055741959927157416715969\
625054347461745901900963202736175603742661018399050250797016161085443945239269\
579560465812964478580985756929882704797926170343851808822749690136755983530422\
956312125908194385948390355787813899838314514717460897127328541699615757824625\
062459452744960724201312675896765863762493001491251769748037619970454721096629\
888885226190917098345667452007490018067363748588715574636689659154856921016714\
900773550107268656877613350819807738399222789113309347047119555951290567258511\
756481060585265298377246038423845048084672185420534411455288994140936256272402\
450721154636705815346177213209273623534861885139366036035860608238397318607981\
391016289133434452132400111075373603666451040809972960851611455282253230723099\
035053642097090667912644294771237642276444130134391199302154340196331144629369\
707833477872223692391566390031020798396157158175280066037264520091899518393965\
313503455013453047651825891045126834206216075910025203389162104892365421744353\
356604729317503718809004051445741011202408117462727211321652898425440002210689\
612672666761160454208775610874235712418716054772887650394644940239140731486358\
753086216892137467323043229853989865316150236900889210678424992609402598817597\
120340379789708144194607026831347534094868182469207217961722318698584719918750\
249841550760172353263726200280459491268328868025749412124154341019419246140220\
932586237063176895077648560596184027810430834053615098003049427592586123998136\
834620758807882298562573161090194243755403938773204503858023318587005085240911\
637322169902431963635424166405933502815135931063012317001577639776946437512975\
998380636744707699336811017365982748199383164435508288389684492063200683619895\
250994961294158999272972717039890440710853449155710639215169549061969710487712\
517617750067525137416893277786649185912357827301745514722383817725506093037106\
454079025626840395222545081797435257587315566195176335461616013902852647716841\
176385029461298442604203600365131908702098909907589991160745070874583303602490\
400009792586964947585377728760175201652296674157555219585042158881557406872619\
325407749294684517662865033930004199868423182568516323250694151249784385101049\
011913902947214290177478632086958099909461908037467744772893672626644367211800\
065941939727087281324546626882684683372365524001397570043520204419177151094527\
543583998009878358585029015792399464218473193342465961990667653811060738369750\
919645444706649558478375273678570411052422550026150007878408020767038472197927\
061463773122155881759094415798278680462562031929275573109531123634084330698460\
427075031405900007169626176958028624959027677081833785313961080389099416595028\
994591248438309733645715794290184899295660081256884316804202453364019846403960\
038982115416268553168313114726236289146757317575774942396265996446503410511826\
348985900302345310765221795684704688588276680692134867422318169949849950086961\
393605717075444374474618868612904420170289877807435492381904242670368900561671\
140046205556985971144147192035455266280172300781298098852773069371131613192942\
112513430108355191374955134224422108038118299562357857575347845316330807009247\
402259983314601096753879143086842067575168799928570796201846085256877802225197\
281924261835323307828711517453063741333856600722592800112548889766773611991529\
520626820791814141891019036605901211021697417370758632372146671307350485112831\
602246040310530250562234613353021820790342608167341895476919775129087551410944\
775641678587110912836247212791123906934400205191889615029242279673705282599508\
480449769762650007808800614201326549166181538264666974328903651900357659882829\
569107964169559086141949996411154662752086319861900010968976036760428311952652\
751837010410805461836198836113192404618424022527343485474076756241330319526851\
603909456585261332483752252757497093659007401751739187073573301846207979272456\
698910576841379062133616512211079874064300419820986293065012594456976415744857\
488344207197019496210149588463129487911498447030223020548858586979551540688384\
029811714865477982213507404109245637657445365629504306009547115228629665843821\
905152608584418550746544266391016439223764633429061961411265622964395222624492\
747164104270665276357302673974400883875905840173757196578450880445936142974033\
309559619813854735641715143140686433305010523772706475906748895148250688080567\
579200859703648673348146362485839703041573135971513030228856839374178521515445\
378301953529568878562881642579395871685068276628410264975964725869831505537063\
229266769413907343262171700507408810438609015147712472656686381087620245638918\
048109449922640095207755547756395694485012750718227949931403222139902406702743\
544355664445124003931044075385752326927580385201689219964571267111982434910525\
090707871942181168061669391797228523512665797047019947180194272407024383608229\
410695664720930162382690493415035749876700791312689484449538472094147959707936\
545319322873446272050654615034662239675395301729813076068101228103170500043295\
090919208972278454608901819241058902999784717906570315626495942861700442314767\
169375807696060921188336171125937377350907323744872017954036622481861585795095\
077867426137504585483107541434154945290728951510880000292890418405547048127598\
551866327922982187105632434208198831600076005822199808897651962350936956974689\
967857860775551667602914006770456461123922747036275966815056014653105390707774\
453581352551591156278034562854913893102564101821230083803263044896955176330870\
654941074087253574913989395865963296148688984996472346529326250903816737857099\
384227443491217089541856125302931690331462221295550667467644944018798753801688\
238174176270336868426889366363533084288564923863717197607993220602313089141685\
793728401712833943471640520850260801102949148289372622737819109076437732239167\
581171283916887490932562625523058099683945434739822109716040858752047415493415\
532348301674713482484569817880060491167493387757616750921502485375980364425543\
305900190016743755916074424829810868998298471005502756021349772453890322149664\
561388369145693343474459467599738867935255185513465507361737139912381413083588\
639285561156271900984328933755251048244883570118245916303050739018339799523576\
885067775101160809693744920692768877054699347526702599190279858881303234596225\
375178588592071353529274188787130830410690969081199950372848403138137739097523\
260990999463308098482769560898895114191102484583915986778209803687955387481780\
407414489569820467461223501973651110799162154734339665406668860808216867295867\
352159752608000800871220079865568977438499360008397918178809249446113830134865\
161327006507318722025503022389030694528616631486084091516547384397139165723293\
921253664845821506546558929314141574873476087650425652210007555843356257353800\
261947183976227420266674565180909351920184145785677480700696106435142747623719\
820743329273496348222122039305983291833645757311127434543895708473223936612175\
413260161340288228507085554750139899801434958197288761999457716018538424775046\
837377352855915106557597907892497304607043489528727641105491231951117054772897\
556302938878834878327898986132650270114593120739381649741491651398318462852467\
717145061994234753575388664831162842989696872870027477411939231395695544791836\
079672219442988576672392614115013656800007477791407905885236712189824149673953\
928184523604430489214509641281596472745122853835802646599756603079391051577463\
265072758371215242333141669723609399913426955084871116512256079549914721767669\
108596861510092736808013388351117541097235878638483733768994626477994829029490\
532453089421366557175962886003829781976455301299210439647114267827134294553909\
964643438193979434829581897424312594450275902516411388962543948158225587587371\
897169412636599218626333223542654069567549340238732190740720888686578522096466\
672715097947569791648103320002767476090832333294157908751637762677339480248343\
686383945718434202578929553751139245214513273440996034474671933733832563350106\
063031766490554002552733196258062504498714158732917756371084874254953689789490\
187735801651037177379473653198581672959052082021699303541222387373532443674947\
994577678374380074887211311043913822258282810023366973762013105158934627220740\
191541567642987777987482002179967476323894043622803144543527144242615235403694\
538377218956707618950956493103679131580994126107002307958000647571780752537040\
423639991672509257079960360978814191407675058360455895999095943273091511153888\
256162437363361146418876065646828952636009488314857774335630087745462964425109\
669760915527732829951831401526572349998041240145275831720165952082609521840461\
484498523819165810256806924111270933887185191857915475240205513537243270798852\
519629326432952081264678619799094552971368807167168942190175950616911625105476\
563082773386039162817164782981480862069582680685860998432018322982791542454497\
522302935414420302096092467719348975671063355514712706248062442012634038535910\
288454819471886138959939922806781097044041804827678672991843081096321217478869\
845373460690389796016230607077506900713614389950956846766357478528379460532179\
186394031621194982124002290627190832603108980932000444830849175538726962326522\
626246282897817398069483285980949983740052797785953061290588805183390530375072\
902684586652919954793301295935637830317320534714414420244756964933549344936859\
278645876227804164853207756732157498198371416342145374757334987037567119222886\
510080550613189053026951239151039997607050528878352190019383044187509254062229\
749795486130857395833727295717391838542316642240220229962642755146626596146817\
431650307026727172571320157175007212654820062166025093808814029359367492834756\
013856619202962996831611580358908119034027243765192097978780798888230787903296\
531376696406094625850820885996378559821525427423351059559637232123380615550896\
455290276208966998838847209335627862763065660658779127356586633386460554728016\
383273072724305833498145873887581743798170451560253168805336948024656277854910\
539183372640132820104262174916999394676906004628731108211057606345032707830420\
901043703905370204450598719062803344187491235728953438694768340730392996003190\
567224445976499110884487791065201346278775163610069908193236536197350213166035\
589567905363250136222119408352605217581375580953064514127794214501953679788548\
449250242452272018973383284456334478348783798725791666789287161017722031791646\
502391809876881098021555875354659024008446972711036438286126595174155007767475\
444745744052694318346219165405050513664334428516802934719109334563479169449759\
421914623260861542566816007166173865204220546796292736283038293404270681232909\
778743059488892462846148852153568111435013951919064364367219885001356407802295\
498501611651570487869979054876996801967823583815266292901253534138030722601720\
515675520535149452462993065912095254600511942472367895122296658856981011941868\
065414110769373050224646854389770833599511028705039241821331517192657334500384\
855147735097451496274760065802767998643508814099513487351145214024276603520106\
400392684951689853958554084080494138112198689520342051419413020727814714395930\
986390389428390307043755039295190696620652542508588035117116790220803934585640\
337120457839907047587630783456014808001516662549479342403838798543714510841326\
536129253083040337094807972327172936424356452370301734402647853385167326732332\
730477482923857714997941069767264915184797888461188005266184468854159265108551\
039209069134861039433640443760206388553919515759187546589971164246737051083136\
225735768113319634387734765303394589966836541193541190950954214336415387623905\
229386756295229177274383386735932741747839679082780127583483429017969225326971\
938971291641055994546150018343098067568682213991425586991784789297141027923910\
287149175168754351887251601573519425534447234734504908478230159686650623239481\
173009527266521123031432857049150690526657865610480275850399057973576114282974\
420531787678206338504103151203551309051201366741494332897899229928658308949090\
288817486859565368705598717031788801609553450353910668161396041824176406336000\
174932196772417017667149734635474773126835325661829394220494654262204548517307\
047221111400550535141565867391532483614500566176830962010113070409223482729132\
462001018354168308918748916975960405574566558269903291629573652765268319500621\
902492363252768931736586123931309784321947399775710911941220254207097847148357\
863232851758007614666077053746191862290196295565426750651771253614904232564834\
584053554415469058357643912318475093329867617982893454214161961621225601441872\
159844722934977501607029077509894103881662667395927368751275869352539628683735\
259147435515209003192641178209368825194904270135690751233334627219603075085978\
953434048130722639286567589254594816478992933069612944405080919619240930169286\
659658001538023332621198505400937027927285258801244654216062491947532936917061\
191768695390155753288788167378887811804672630137936159738324815515429477346992\
612172221190934131445230945292837883701559329267038558319596113078793222971537\
566061174594974701739715177373887557210911812569370493322292511938434613311726\
865598085523072500805367661175177871887048102124842414480780765513863104825501\
951967470941028499373862343639119025649030182233360973673908080975657877488815\
175092676132953362964700060713888093205437963925198350355095193479716982551860\
176344122789220589677649856822337932540282121835962471225438852382902357551836\
771616053909804612089212371629270158021961741758916610033743677347373957606443\
209917248082007718343555871574756767270722814612824916680411595720215900692221\
020865572979619056992570030348779327092430231211034042316412260484507833682328\
809654787729938756047615641058600619033162660712382524672668462294559671162076\
136698498983427190245744700479418904037210664225224310107551932415048951797563\
282747161098313056818452720632510021469099550250016697185242623744529739533460\
692889363143745164885824210091597281192244354863440368527776190596186959713721\
450562748266533791446296877944810455930497180008272771431106251258964347255146\
637664883885088184405622418609504642094036727024005201798448383762991029410069\
986303637091628764709338061940724918167652449320017119483242178488436371398602\
541803074922648099274585742164579792300857465226021898024917494147940810519523\
639820693207638344319767673750778884498737184115829778593904039465715216581330\
517592334594594743500140248904777564857860929387434581034402007771554931054445\
985038307074090656344099182529596529021058069867616747318922609791281256549781\
045135363190402250710395480795557583808098234686484894160532558885422887902966\
006587764623351158828004886171480752443021902086426191398727502334397892481977\
530137146687466114920827167149937257168085936608599823006687027714111689566620\
548434556999504072179123600289007870663167352620824570241538128621208578945272\
168950114623965571470044132839775185529613777066537695798221934477388691487298\
536942485286962536399798246345518549111182461656364714163609327590630647533216\
235430206869917534922174692221000595499984858895475584574160218499830399426303\
422673339447186945465774657493940268096383339239974477042134380176353110780291\
050680699946692614720767512932330857637308554478952032247535758997054950204445\
793122880938234702336529978941468393622101284979001450539094888868592551348105\
947918470541123164632746933965378970066279617353565166625414598371413043940926\
070318156299897632329477467093650253061159038168271627088027850121099511989630\
151128079889791222246913567773723921340092001915694495069331449190295477176520\
265372585310402193112407333759106485296698849108847938310714628385209902597646\
099858826744626283569530789610506875826250232546732879288354597951162677345904\
775718057328483739578917525746134416093395455294098473282436666416501177975812\
988093306625270924709305215077637790168079207745170436010091706401925614898799\
789028810006625503287851939684911304762899023809367302294559252862002777899466\
586692031096807320225092946756078038744110122964222610569187112341984552008419\
841868852239515270448758566158536562385802169714534307990949012497637127029560\
136841259156343373099972310404406665679535536094574033946322756471412676701650\
148524506691024193689781035282296970198954476799959554129384371917024559174254\
835745367382478871581898274110860354064137544767210408154007969146670924658145\
869873268589484359485589751674261676380804446299704289840535392647969045756584\
677340501429657848956848920122394499413371860006337767976122398687862810698655\
671444903541625687159369920081467071753990712025729270301245122035826279531041\
095240869099169239819851984001686107925366231893796113801204619085448412478685\
310330692495399293683853291878736969425890483304059283856641354850682014617856\
227568186011888100375351250635826729047567690728705184093174736652611031794939\
735033852401449037613580852172230664888814789100159531864798781717118651131832\
629399554378600462511000418697678135873380844778009576193987443996489231556810\
091920929290001767427507662214622823662324715301834236897930619295261162096879\
055527405926381576064490887809895266580202992198618565953114602811416356868292\
654943947670694514009503800156276080846249860624735881916074198153003368369845\
897800116880803166989816229546309435682452657280313484395618844119998762026346\
258124166598974686366256276007964815991986869238445768351912729055482827252890\
473286256534339516752342630936836385302233562116308001242570114819869174782542\
042716409315977515766066219102876252739185960800478141480503186106677528243927\
914487585842159513478077077927333544785915896955580572031317712486871575804201\
531845844957859801947591330821390303573264480062014595056764077144147993626026\
782545557735633194810631455301143418972594825797792970935044367055910181974163\
845637476716185034278411098644162112636991136306742611235079095276682088015181\
042744966403342119980690686161609858356390510495803001630963083509092983422188\
751509265251984077199552251917649532206593427354268713263127210269733786398157\
479478292083341260738916576799836619446224819864897546492074416328748831494418\
520960712807027810564283183478425991736502430033610813143034163248256419935876\
686319435998036491439427745412312740889027171472502375903720820417415702537140\
157067312308369173011070098015724374065750671387714345273547459971687519896591\
823201315275369572394253754866737172946265101918683956921114220793069080338547\
477874310082664983393435640860296998112408859636230930206768684978028788660214\
827527621358415925310399825299755071376554677819222354898242770494395590602860\
192505572317086590415801591382545239852273594378809936933421173059409197024892\
732745109978515890297723196738080338096944385388247988248373243418490408433757\
540643861048720247622242509581277719464074267151501488898648173007621064450457\
331091997787954828432647455969519668871136027173469838285905918889767828436647\
466130753357238306889746719266060714117719512146070891524356886929533802867276\
885825258080008389980751594370121959931521805938511319640888049735383274498831\
143623860193987096746222491348132329839957990960340027703748556471622179363542\
245613760114261369818327640062743864878216941552607271021119659709036374759107\
205491241308837089920638226268803438346603567017501202718883639765888484455063\
964618107779915206357447969104635552629633416282595327268721915636361711607777\
027203335178195904848287345272661995816724351342497608137075651238782388273439\
491696144224733510480108972177445025661547708734106794780076251341937281230293\
883832978619559789126632512643486147436882598636109008603633551232420584022813\
079699679370927336016243275925329105159843072914016994328270923114768475669310\
089617698370672546764362405343044416255253926475349400509586795611119328329331\
961354277143743201390759274014677609923876393053912056499081794799980512825879\
065254853898494356810090689949477746149971239848079280858378952820437771983802\
958981671832551263157482213799764505704752640651736279409902588470867284662150\
729095778326418667056160144269310290288086598990995511977426780032392210320734\
844127083745122024927234664425183986153569589687057124423493290189547439885963\
380286780209796294947465286386546799248779863258199299960527076367530741061754\
813921701479973140309295899265157522656115012222721646892238787270796760596376\
603274790574583895302641981178142876601022767204037129759581576176962441472916\
279567805863299221972881779576950353968149324633687197951759731536529513977332\
697139150492308770701689111828299769143734699767152092393915432060498329224519\
636916288012188598025878010382019345425458868012234945475954974433338924355834\
734191695263312882889350666581131746976723553184253083827871855345104745516866\
437466273511345635424716841946487931748503383812042760050815787066396998391666\
932270937440187543043742489373541832325855339999303515814898659581197783583793\
458928371187452509764430531428686615065796026373986636393250839324223744918829\
472629341916363378665897564496321767666210962311729362213327694438541588312238\
346936679363909990261660399088509040528499859404118249397024055210762161563275\
855349089244160895929255234007964498584780240721485637710610705439128936882596\
881290324412943755552130007683762203568826971126731256072107947088388526891571\
019037473533374543443468679649204773891280563552510198540986703054979963204801\
370842977350503711367320788686890964855090051437025532322937115176957511072369\
858530963421173790680967302723126208014145868544081095862154752626797490378602\
300306694651010193721378545494779891192085884564403856872712225098635631402796\
811820423763769232265093485570609038222761822475250744312594327936686056219518\
360024346301562005451433504359427919217541321586768636019960137110910679115533\
262973922489101193252725292140917488857164815036991073595394457917977616115253\
351313231847192443151791355545351649755751630456106235854484178877156639883625\
959644506133553659650124901322548565988240163202074016610969005533113599441889\
354331451383968352257120810515421634330811357991720916892217511250980913296671\
995655256205900439722045855038303421194937072357273721287431299595812777548845\
083488196491869748110288737255311070233941448623315437340330056642005829852245\
958035608222982193357223601692683877376152442282789909877613885264346874224972\
022032785602128928255879952530026400431830300419536795017835436349095297526945\
028645027456323682720979307718003972794639001995213678256684708567549002704026\
740277634418080070351038948684866808641866177026862570380033864241449473864263\
940431304750041216382054124988663001012076127871115974080653163864154867052135\
970753611704866743596079096091167883728878735727543898816331701956887235439181\
057939218571995284800104314005711591185577314382416613052274575213523241513102\
393103103478197863747296794595821112443595688663325669317508306871423753307670\
091640835432076889319535212638150247560787226327925803523979244476367462993271\
165849702210371220687540064857254268716333844324211939652013453791117313703437\
280899408299792792326148425594088988295632261769236146548317393278715108644057\
989605472226344849586442574499097129130956285259574728892217052753753740522231\
136483907893074385481845714447522279127864899240815418125037085116613441134745\
528351222336564065150350842590060651842129921195390981566038180762179005506684\
929769453825222579828097318457160506726858648462143021585821288402996757806700\
799384358384960785954747987336801842491707722329324903941028759209130681010865\
957332112052916302373379495381560827358850390902450222677524485277246119683228\
054501259620841698821309964978277062382591447959949842529773409198887686967215\
228612181582566110281071667288275830138274485153008283747985685505000265333282\
615841553697362478765844818087264369459807255933421307705121879734388155584508\
173813755676054645839213921641115386695669016189925457459150552468256853580844\
833799707432489067758154555274028274711518886898453914325519160884136635649919\
272699104696044419260089700699906060386125244780055198496390996621018740604162\
780855172210215401791273608375370556309609963497215849635371120412001870830707\
114162370832446281439579702481266496185280384188538820454927101349411702996763\
951446589752666250408851934792995240662890084852491038514603881651776124804993\
774686667175165328767961358382424290789489971638851776389387451574063228756703\
001576238416430460797201498893807739666999139980445319350047100516779123177747\
107734203018733936473908051335772562445467811125368832755896926508285699961030\
220034032894682605544969235574612747175484571031023754913340709965292846269575\
766020974796589806118848771731738261026609585322505043896450865515937106899870\
953095623033943300717878304042793068142765538021883295331482556020134153295298\
663066932627283000857615225846850872807325057578805771033805310867649919924179\
973533660421013861520408661733885627454912516118826365216370866343866999201523\
131211630624690990754406027985741499345938684336020564300271752983799739721965\
685446234248643340981105316182608034572005431227322753094516047171140993988961\
953338862328538844993972651438262001414646932294984464321165043500432133942041\
190437459039103964161551892298138599658738628309188446677532729908027221318096\
669227439050395411688271662162637402546952366996749362338218400571601368711621\
986539405455594102683669768787746895336664704302019907173729705677569906297683\
747997200005491956146210613946502517240443292265733098241747466228748837619053\
559381680415977327787233790932755530749898308902873324838469737175793505128724\
205171335389711288861982208552596932078077858975957741854575934164241220946058\
614742859624498757451854246575751987773090011534201618561879117708582165372925\
021219600367915914162314376648863037875596767437593871212422045486394636985659\
503618872123618774266405600172067743506570849645908489188116763960199092206115\
128215185758763526808578572270928417866899316298638780538488131687556664385281\
872746422255917985598731627236300621165842193700098634596898511985853991352408\
473078869443970389936803304887117979220481678465105991135082186998308935470535\
086553144681551221619369749005430633524088337708445551012979959741851133965796\
035993845957537739751766257934574373952379549718133420756429445458257535221144\
593743124701770426333990125022357355224035076651193610280101059731761813717286\
445584492856473409776429401516254131057798888941315399807696637026443453014538\
799511125852512871863436237156283589011329838716927777086844580348034143089731\
793129101628881075746573260626635937801475132214299052113078752413975921588329\
168425867676005592192411904619801885132999595475170789938573317826302534438373\
148090185159704042033014992972496640052816896524501769368017710678533922258537\
029659893318820214503790073658451659156873121654742647672368389016595397031952\
438548641611156289208277009207271794193111008234998630191507174804754969224805\
464990359872785261213850115569553558867082797435684470938883143451611806358641\
728575531102579426485730990238842275921093870725484347801038994868815555781238\
221020254357589443981438860234176504563435167284480981160337084242558447076050\
028428248174073130870455072533093418056677640132220583374159620743624204091841\
165091558687691487983315766411521420587083842834326205496451291499506753079435\
568359385406206756561882386225029670147619978473179994198496163508971350970756\
594583275547686246885384535414501052794205765555073327723986962771183719748524\
526390915716648444801901604448358478671084238131816358413003537006187646514818\
820970370629491742451234202391012209602121103216128924232175691306865735161063\
980660820617696885855101195019759657195464507659324523039797073257556593665315\
550219529478467644813601671108467307753521891931291571688510678360575750095604\
650089121299506281591975697959584521321617923466798621541288525091462960833670\
632510731201990727041799244624666947269131866480633399336774907218967155480138\
023867535590261627606698474884824012919067185390449890631040919644686587193851\
669270194965353577625736911691507719122818652830694835796676744218275411222709\
753488938778539086678276277595559603513313087383667124489528142057425005964886\
774700606531096599765097478034835390410871761152867697261098076802217227870342\
491688271314676552133458283531664065249495123224167901804599372910199967094207\
131009584779678214612001223937348714819343755115154842486890066663497750056714\
798132691218176386255147822297048815420011182879544470036565623641951833810379\
870145508968454933089286762867329322043236926328359621894761364965219035035337\
300680627931354066384573817154441390299188415169082260647214645502701637542427\
294648097799394259429491444965483156147306338058976340727765901243842748442848\
690234241721395168953154518726754619143489546805973527151004368704847443555638\
706877302805205678195353532167860316998996949229482618397024946995402815366480\
508945745233636444078960331011243595567100152614650612149692393794349381451176\
056951016701731638822434810670333871224627787934559902391001154214817771082149\
639510415880476234996752584340093115865101742871333835041950004024913475383562\
604705992612977278725062230509732840203098763365315703161899720696932277506186\
274562109595200133401782694538077062558073649770145297333314716963618596885975\
385418376258577067484502933633534789787410198690163346631291745788398162640279\
148043732220274157759273766507680129153083415059012356368157388631345409217822\
767420558661257962587455564746175638603070389421853847073501181162090630789296\
325634855924764750467760079921643617503312291302893908861069866006269894655592\
666570852466993819018047532754141750936688411447191773082394752681530195202304\
735250741791287885684427108569479680737744927736022313523803580184055005323192\
523666496202354940464683880669413316281845355042411284014886529943878714619352\
713016975264353312056998666068924375053458266455650788501696673624138448641260\
278585973656956409423675782928962752331573921159619341135389673027939816144488\
448988393557489900943595610111068679952447064316797977977612789216807077344971\
527729882188712567168153710857423373949331917621803073435128353159282262801498\
873245794485995659004772321839877968624491546671047034159129410994132644395403\
738956492722681366448225228770514249442572595944697821603452586242054242160677\
093719673405641416821823190320836185325743168748593218330340432021442082012466\
326674342217501637703468006023278591053884475520716148954637766704955735798659\
201360300420225113239947191923484053549518889299136718362542534796338664608999\
606398415898119678194307805838079985859715211614768382410047368239596228402917\
293801749118523363198389435063818316788616090288182628088467153508813591812593\
714574853643350408568004589115627846591694167182905827814195372556663370825266\
600440961274257900682527929220727517175324898681699511168352242215961417245073\
351998726665400003265958397576464794296445906833873975366820038062893539416708\
431018924819157036161749404159559475096734967178136076354673234533731749398837\
896633570746190928024227846225695887909052230380993909282994569495978755372719\
452058941579009450586808786113651952084043640758366906082262644549512269930713\
864558102593574100893139506213619516469391797145605774573362239944650975185707\
351218844591060246978619995539412082417820726628560134484051997975495398840349\
553464570742036681676440111374553930052650950687719287425484893974107481288955\
215971504161173958475897287322956576876800999444204529685984810392110893192108\
331929068848687454687861016740816054234133389501607796180856976196592725533519\
768990128901625235810127985977772636691777216415651680022870341559960760067259\
187889451124176975325188584339700410583983424670543093591334099186965237240339\
914101479953387900061145022049747857390496037183969919790243633377235655072312\
305649467147585734364135336662458949545773320306034639269596837519776281258677\
615544400039412530984828671557247921617592025049760274653949656019532201615275\
677284462504387618408430025096054959254255883036578072529019427110895300888583\
248693261549942110005802059794440182915729522151794954083937256437431892784157\
279904832953673528431228524158133744239931525138389794749403798944773607754655\
507995864396104963794372349298410397216150558397392762740518573660941154432620\
757782957096604926664487414993641664545078057810425606474607643519267014679453\
206762718476748422387145619327148356280122732776858205654439432585742745057896\
795854786002981429108400016007174741974132668375990216725320116655640733716937\
761565995731829890812336301277353270170937314017644813591689208799781370230985\
489480239431596572043721050868223663396543625370233547643749012297438703940555\
677634547669747307963533019954564652205616535919753002767211587499617522063572\
657459436007403771590754046665374927786901477893395015980857192900559959879259\
176542439423649085499237271145511697900282184091870879191206909456273235039101\
209636637043719605615435280949121639155860688959224432577813974455307042504164\
865874031057982150655880943303671638771251901058466058888782132687195090259614\
973632221634879489006832676153106763445199140982348296888737122898663410981842\
859511606758835540957687713085302518927893836433801164472903743743731219506889\
477942376631976982860193620200684598877492217674268637693817814189452291213203\
939815024731372379986556277989851909122127216536315778772115310082819305172149\
175013040982071857469863069915676819808421419017083559938173343033862335319342\
393455493404550705129945921540364514799561010298946987544996574320050801936533\
658013496278594133215104294426674528045677742173511205056435160458572421703674\
373885056341019567592852249618541587518594279504009452556076393155523095705666\
788136550705793342662758209280019654144726313586089641839145021925258878301101\
858232686300833403886751239112432897875681359762961270781796948885499280330079\
062098465377404731328018366293828239361034525672103793953955345109500465596430\
408081176385734886586001097384535784578753266479578046526272420969638123584740\
468636463098064013913552676948004034095293715764342046196816884855477120801940\
819996583962990795420606971618535726989697494506864236813306557637314044094252\
034336040635734644290292354561298928950156153181669208355082154340628218158457\
438328241686842036681411682740245525407050844618214624531271592599057725853128\
746310884359890165762758990355337210085015044199272734534933959513279572137087\
457065640832554378583730811727379138089969564361583234080449647509782251094878\
324490491748508962994482325789452622819469559320091763984547804001327903732407\
538049770439190836081910657575995548767660501390740262422892922672689771744738\
870865341698421048764219516829370652059350613195634570048805207770653482025542\
817135844948546657363276874845298806086540251308072434445033303730897489656936\
424911747985323156111232405584883877283683260468809707121690834436624390467309\
723077024942348560425994832631510399973591231862773756557011622994161972602774\
929989631083983120567752163456269360956903561887163107223041517297269648522965\
637517226420837001733123210140051890019064608201975212558225429511715796252157\
927278040088425638567968361043107243677368382170186086267286204799209836273060\
383767924598926818542707142410097756623109489874023274457018685647270087438812\
899433487754192357697428512384510352607331845291539646801056833311337666147928\
193160288111144496877256370350552111124339645638109529479508663564159067869436\
637915683811944497428343815856457843681236812763925544150331458370945577827943\
067352120459259866640921556756143126972439185631034507289609509206030544853903\
454066951245162145808433497256470969469091738976152865528249282545669368624793\
101961095565220640162454944440038427085249412336760597199321468212910646777496\
178204909788068126493062379268700315883218616740145283556011251516266700263518\
651999063322726144956519223617429137488334611162690626907937924228400025099685\
627120865566818769370481069940141505414440108627785975471275601755298408270066\
722067417424701942220791520340071406281757936635557159803098833589834644633610\
255840703102720324361798858124210860005116065374073481581816061827854256480027\
600922444150438273499218762646409417501071200067937541769963840305479514849131\
171850630570334896771905276209051799073823643400292705372161209174532589949955\
356736547774293963746958255619090913737213967872942139175854429675791382175076\
019922952193252742057655085737226113151059095095413526803221922331866617956708\
020129185507813011501869040769348850814881411583944923562781858373804220262969\
459350192295884036800833832159454869648451992876214120437546139099281301307717\
735872503026090375766704027247410957905971243653564760906078170140115693204017\
553329070681731095165981756470702517346338844850219908451195752316042055733364\
837414535903151155439275808757005633894523534616166312156507811401696201126028\
139483110630761974119085015723640203568568305219778375292337190844455003624253\
442905129356455923354772509636129389885680669892797513281046221590240613825229\
586202269425089492056075055549872303703392693533917400254186349155101740969115\
221674324426545088617928893176986987598451243864671643046286735019278194909940\
394503059315190827358522643917956275388712009935414319432290101211033292771273\
996927226362489788311369428938256384522986890477082957934524370712984767864004\
202657440024912865418813815137700759904456319112602253905177531998562756312679\
940994829979684864240929431106991883369880522127561117867662404150319353311584\
247943657312229348576715864824458885402870262040019990103628073392490884874105\
309088436182029201446153164063561350367206905288878176174245121461067605039030\
538911945880315340271651666091415642396162965470962065364418742667984880238128\
387100399982954284072765830956368260807139745642003651295002137243123548799237\
486921051246181008898883450092777904515221294819891329156572526372001546392301\
267967389157195285037978136482244468076922283176966011597253960623672980167042\
376661585295055464247857631773268722783484070489467264629768670663220938119482\
580658898725735327234879125857799577188486333736601936227828550911003331051483\
967159148862772586962857376196832730527785613119581404264962094086053595101975\
825081858999914329908342998444697893726004871989387021773956827089665811364567\
025251208431716979453240486532721330217072863546867943093405766656945768473635\
008689371934143051486493701228835052947836864930865902510242444752632576151831\
755584176172626812512663049361751905761038731016416670362233526062052435677902\
560099493903713045000083227221534131723785918699685147489539488094711461305552\
292976467744054867365836166121630105297336372177148197304370047715158644307958\
055456520536356519369010829748563521923434997957540236563086862505378777474684\
198534849352562024178086320813101641179738404306973636787768909073901278300645\
359883292669167592286130871434342790102609439876004636862981068071723505367004\
654462215076090379883565096146305760984815694318182768930704077105136797469897\
336210399992811552279889242173371767541102305729378730747409510726253273773958\
440915835989706788876052939676105147669922035828140081790957452539393568927148\
848513564384961281127747659502203342424448526037879235272936105473386862475580\
651680288312627909366613849102749394280746426172384005096124447321269946983418\
482904626777114091893147477456679678043799909560836884405248064093996369055676\
894725575753269903259013524745362815574424604888116851625344949703950977509046\
793483666954712545383635054309311895562886801499745485720230393564070234121358\
837980949880496457215438721763290516454756630952633682229625781093248707725621\
470103435891682171275034130710938032453131498076120561587997793618600720497099\
563608705399155282536590521715187018553987770246654410136130838097219274688880\
865911316253158386736480778967569293234537769775725576149757326743094554793295\
928555543580006013539596900579120722392310013868923580903676226367306043152344\
489628941607289412688321927215130430392217065589177891024869092402092397894502\
495737931125973467800692205820740692974195133050238567045715592000345275042332\
314674745788456879326354953261617891017758000500602439507616945782032188953464\
448859752082845732975143347112262702276544107726401728335013657027358807049846\
099022557069214648504034401855325183243284848015790699332847065630416207390627\
012630781335222323618375685792534698778192655013881628524030091599939416884756\
530042054772520508806610859924049978381963651464564010586320658134410709916397\
187244450691149023137777183068805763600753200734389520584641838198770048554421\
798673125110594501783262957426149866876097773852009144739188974642681267372093\
459632396146554761894387600117674400453472433151364895618353794535086564146629\
909207644404626747040574054007705258162211310604421494095452278273141988081066\
844345200238882884768345256117686416935880914618199466464276278266602851052756\
489270098707298653619393885496879316891327250103677804672693489673562624603216\
372825692431560817867126906315836916913272758004207437018916703386596087723973\
724422901551989564432893908759269491281407491825965553603810985276090384925533\
593843720238549580182227697428686260055839561931793213000421580130663937332486\
256662218999015356946461204829298716260580257330476054494166594117986637473997\
964679715367428711907280838579503300866901875102892725007527414607516091057061\
103142117645738750785179352378076607206918303351841584116899479940237182896764\
578116027757059559987103257973421438020191953375082312734627867141251714635103\
670097023573708473662786655198861518237467868163883491406426545338734564759860\
754984790917671890875149602159165744887340736652444925677979670790908934384182\
503175733263176043005875216611458152672338186750523957978597450081941002822603\
312850560599468451400476023046780876981931708269944353617724239752595260368501\
099251957996218904380624578690835170315573023465223261538370698650579380686783\
872360813050687570905048292556209757346828939077973528863269960104240639755975\
499705294557647035977635608440493460574872077366582607481134479966095056559674\
237672824359091393897812498398699230803049404175438524020912952576105504889370\
233121940221802258502996364688303979127916949675626815955885585466015688705118\
662713401945772951955375547737700746216208138211172330123189119055194563844141\
806489485975258537193057440224936547260055872804294331063239206887681175189554\
775993147736527069919162365464880353924062164463410363572967736892636335732977\
737585316276546252881011376261589235228281063595004427991759822859770489600812\
681044128036842892032614284481916480929658652205655594950727482580481274032828\
917060622066594571472793520102871956646770173105578982808626860029525289201641\
773590434881484705402450928182255126991251844316452596283557298810537676169635\
268756907099320828482070577056498309628412275008556172983225404161825923510780\
519688851017456180400739962466591128934555485168736317961497963628733467239559\
481858984812471214921761453474422013219225100178994150845995933188667169760769\
488863732759187506337969736064417073745478582414209053359890994960135767495352\
104104582809544878020875498588869072797837280497942734723549257988382289059473\
900582771743910186769148798545355500844824152285673042003071970052654763514708\
571151956299210656330647590866323691878812459672309094866833671377016757516575\
200223072977267351485990092520372006796563504270885647256927062858653851273518\
518255056917231962321108871101786730191272633780800708357752486701455994409896\
250036465345999609749656658319435825600065542599798982625010339040507255023174\
139640405171968815996216424526507364989327962129645716257734360556101264413205\
075088688731129052204481080529427354343134220211323627812672427609867452441503\
219852241345516129109465554247331265620909155485888856408707175016255346730818\
387914551884041351705974510530922157882750943014727148904283994181743488709958\
356905268675598331025038589743537262502722552530592837150379560083899661620505\
868835021924894818609366059565571261665411055989931160787667876129136670915673\
949927040213309762329586538573514583747353912603744010739649513824177755872031\
726187436461932435765466161960471267486619858861607756252664106578273434481163\
206249730285986294020471578242171264055439242666795783157904683553132317259295\
529247095770029422487108734547339822311745982070863745203433729430384849068843\
120195072758917210657726445798186505732525349813497268165405137981962850666272\
183606740919730352092463653206381763540418442085040042649389115886206252919346\
796616024637043357508447687419881657859161740388270771025006916801430713913036\
264797941631043439048961817491285976587718274978584020844486156874397524383500\
496168273354039505292310813969103696308956465873291903534567966756611321543502\
413465627125639725332727573228682730609035350174130201509242885943072345577845\
751666803687602059971377265936031358574927962139842575335255815105190976931660\
989345369404488793725139574505507271293606850362136816658580349894546854594104\
801691748678160390818297233246044703385442548437812233300173623940192539602642\
308706744104424142522466839216810563520887540729925750614297196510434069307703\
216719366938946181350358489511631801385027231241439768167958467302790312816692\
879325439688454779523959695077428829072890596607100765894689024620048337898124\
634625953859903218101342650776918299581550886351458358866830993299443195713652\
303971459031239068117872195364330378228110643804260660049995048278573927320334\
608611524066438424289208730509501418463823688729470099875290971547891347294305\
540066742306593921989362011771215833435349754290082448593716391804387048494654\
160896167503666479748684298167023822722882322685993294331006572214241309919015\
547637618721658245266483235646025537111486077389232416151957120422117536978449\
717892139731736165186575184282092410067782405904853525816715838416149038121508\
680628233546447708499332913004573467190305616822772085325525451287786830661490\
527805280544776395959125075067061051522735307950483827773428178260157231266908\
444037521408404552556607249470320427174828338470456118104286212248523175695365\
738710885483023686580668466714563405934395508219458353757297220018925094172739\
202955585020496740959240829242058734471703435225127203495884274088759335096915\
344395435324841801372593967261060561315477484811443172761175628352491593298970\
913061696386431925082739894787655427392839959189310344903878216908433367099295\
263992656488100036307131038715188531479904619602417012995635995578964567483410\
582016867615742847790683831845834075384222963050392854193355816929856219259880\
573105931500816876434252363854336233278296902116934142753371331727659759616603\
660771112444000382304715671592315723818592902247772009508656752318638832802140\
216599760978607510798775015253406523890962069599015796857841906594690732129933\
639197926248677473565986913090613197944974723502216205492490758057518716192003\
695850198984954859336276957067050387929061698401542757552535562733632020783868\
286012092265273081460787809845990793219703455634714977312810596940879305759416\
001228283774560521648996167057249393640747021168862945464692138356186781770814\
057603945294720609121981594329441740158496127177911534913851299358239708995347\
226394395460796523502279285282050526231362652665698327099270072005611699821919\
787147668176577476299888681942797256869385291098697113158010759754706957513685\
826536487452260402937965599465520262729160187417074754115345278205602381941405\
356530324435703650116073710731460538011145191562923469155973137017640157013709\
265904338618814570105757138382429119230157360000212654983327350035788640448373\
950734713387880994103437454235785175808720268972678629831601183474086114925674\
867394387833031906159333051740480139824580220920101208602843156523463917106894\
790682009086966130970570491447636643347408193935011199258495205155513621975770\
097653684366851875293829753327980031277589929519577190284634239057493350764224\
282387015509200263138324826054809605596427478027900701282962143966591096118692\
076163193520278011416704549358330848403288757508554057351660484423299179900990\
417253097761871650565774818259566817941879082729571090538652110301844605552393\
043039353445973426265263219638225279449464758711864883231994112009541645239891\
942133383281060213012454449252278174283149728807554569358103852174241338335541\
964315455800605781253025566909357886395401876641274076054327593260305774785700\
168265523265349450046497462919620670161431171340123976134945126416317098128241\
121606261936091302932757538688625839596167257869111406933253195118492736591591\
276752766931608443355225623320835227721721238489273026008199817935966215410934\
802275449764637806096671289234701363218675291860786665288052242880354089406840\
885706969557496120503198257910410197774390116514609413074773580558168559965758\
006256585718402155072935341952565774385800984894854081422668087896072352333633\
591039883385177635955155518038570813941787284697990126907771707563212745474031\
959680103799182986843913139189422519727966250756642193899272654817531661421355\
567634157985762452780961620295698973046970994737850171740872913073700888427266\
399661665102668662951735306804105509502941775216414699269612900806851016632586\
117110582829870026495660189749923427022757008027569867629398684147114043556519\
915192276543500125222104770259345494058347632376820838993295139085202624273253\
054731123797836291803490430623527594180468813613480033159620588620117443838336\
648778392675518066122439833761334117270023667598427326626014668615269469897191\
027793005927229181864854708863793766779872344111317561629128744328571940171396\
238257213945217020937065273452554494020795901578278331636656183206168507425713\
637183800755326206183929493694037299336343852323277917961268189567317855600686\
809228738220523099597354876388234467907285643126480951093167315524231513768645\
564663439926244980595718295559601608873555651133525606949710650752224957150723\
049880099866316528892017728972675235325766929778562339171645800004569425638168\
849424517602286925051910110793117519872490775611359483365917912042855397991613\
922089429795442657353624927556182619295686713986620787760024562216648962711081\
435106338562655738666934899657120240010969102042180498146290801602392037489836\
890065949296232621783814752554364594427803353582752383247506536484892581763911\
863747795713295639233697566183480169725963128959353131244542059284091664883591\
326521446399329626379981207455370342638935855611134568208569247064514649155044\
251535787582174453994073322118732307931920465874743037884468412534167554309536\
974196181257182791776631246744150261694784082283324783092958452095744330573844\
448647473812533034891838019096316220479060221547831806573065476403885739789851\
935914732946627212371760018515321803976103298372758411780804210155697041016314\
642704756772702832920687244611135361161634848261261643553690145502594542069512\
204786419887489041447372100615519113240876750226925645274661625574344529871753\
348560851690978100357380072545672907920164324358047055530886322559718966763534\
796924828476654278794409102349863903347453293980344074197648023728441853870826\
056808204105588946135580117661163889641346760401131190685508461574760726570491\
314366113612154008215016695732071607438622387984035835891499991882738717879326\
618118525270013142472893328525907178765215632230621302939569815531178781346945\
420394405445473521963272575631364567170177834787329847096633032534766115304213\
769984822691724470072317353302552055594378005808650177005584984039727346796651\
063554225717378916641698143132180529548763933002249603991870631178788906339672\
363237743450408432281783392261014799643629230227877397971695807798593957835928\
373580431653087826712396090168371978516514298375659443373082924100088362625506\
998787243155441774574758239569061522570911015734380048503417256810178651863120\
907048832251988676437544221921200577871336990188374947048835635881558027411237\
864775603208923215563349366067758193402904394003466680486232880855684783734548\
657674220625611614042861523054933499658426351983432445219221318241899111592822\
028090624460603129439305617304875497557503163990859796217144477984585251215894\
066033486123426171822644978427882526061894918766894535797790293295452817325385\
225241107275227050516669516207210097922575727475024921360632013245504189499520\
514492121345864613956307794270657340862771527668091613325486643213115901670640\
951028120049832453577574467995307068517722264222428076635716444175562991787648\
968892602830977328686985399080052659619818727161460223649409967205261281401890\
735853276121631690185858738215512598285927770140770652726004189321192988297651\
029136275289559354122488806875222558472023100890229316418295373541906844815553\
076245874614964058356072565726045530686722357322776572822996091136662297708321\
603361399133865589896790333844012140659563699063336835912820322843227277864659\
433266761108630738213976221452198353059583755866171086545852279700200916301924\
408713665607951872924167660226384036429627728025143083405343194070785459295622\
451958985692853640317880161108531513247172562806889206041969474589634288890625\
387368888821317890387762851961933493354415796557521485297144803773933329715436\
185268782476787772402852033463335862578080098239529364661373501410496639193920\
969565114668314949545622530953803958627333191739555076880438172993540257927960\
746872410631908930984740027540229766187381586651015554074163096596327040649215\
198166070693864064006164566512770514983691621701872887961818778324304439525555\
896613154177762000188943687874060717437676261791768541889398864856208823225531\
841263344442099331485350888296527104596731377055556640965586664275553988178820\
454094644589164995420624554227874457262748117614467529517824268907569145213581\
758835405898733922820802708711875481670259686021441608747465925469098121264350\
095447684983141946547608918257926131668276707068600312448628310585725822234679\
175011263392194809268689411887858800688066030317769235813595268344261852518117\
812698069698813836532624542461071770561745969513461499962390273446283551876277\
565683499401120336529436577448083662348187572926775662155086458402147579802575\
186939630777169574690727152811974339770359620354017385084811438990625816488826\
803867060811543495707244402794886931031858021219276921775368252664925361831418\
632465576967218590129828171664202839168669615333517420039335854314317681657668\
233169689969391574981964505668161367665356424496110950975297697175444474616171\
194829676038289235451008692484607135837709719948260616486108717526335180652561\
452548509993453415492053374737172474211899094143134661816466540803565570944897\
082376820442140968473109511927309267605760994593182803524647818223628333329232\
810032548687755021318468978710696702727828965308233256089124012766828808761440\
036901960470196372587195418993791262775692634795845777649248539893201142147738\
744093503347915059839371945493986117683587635426517016888408953929463604201646\
334415166822151136525390584038408138432149305553001219643825213506525345891582\
366040369786710402733713944428342548045747791294014704478732778016188526026167\
476478961279385222305945127278080656910010998686205914817185767072108164133364\
487263812676936783977254819571008007632395289532068283022915806747886722000808\
895644972930268429553037199377698181026078290790549923443185920605936189844596\
798507222657656594686538957329440693622623070650057600303091907896119251609691\
979913053018231712849903864273131092590266676831161896520381348657833926913719\
420075768108403250487924209376364075161266749743042516524654088680914916674669\
279033093376977490810852636815896602318468545811129944145582876757655122811368\
537024072952360129613882062202946125150402813500747567538685399057220103964900\
621605830032521615555051494666199208016332700459373386821018474654558360417082\
857796374502579159720078538688317869431716658324424725816566443874394735816112\
708433340804800450889780410871681320454730331808453425395233245394022408548978\
575608032220305272477449649081445969049956909988462736031722014572897618116526\
154452602919594598944419590136562815207816093379332327257180741324444916748630\
031730660065399840122217480403604536228869128267649756473211622396011360363908\
055428457996298119991127286993641685548015923658814051113482379916277015474429\
716221707902630048834980129666050005067353953929023999409120848833905162910782\
097745321456144954203007994056402557863915679639048895580220917259263864993944\
500129062468148610593859852783643908009205724689116327290011372219137712949447\
988558629431256062112273772543572635961088439343271741590622695460163913321422\
975685913076315722756630804625217429605927357347000872710254954398740593368478\
351795168234018164520803249581408860873883058715937265545017689888764876063916\
976990819205302854361215885979307225463534774331862737480676061774206295950170\
674710025699758989346593477978124446023541777644923112436739001612348675554033\
565510593341896452897648966984109757246047457752682218525023527063014059924423\
306560898596965296581764733437206726388797026081401158996148775258388739441990\
491052188606978323418652904267143945883395882993673100038976236829822970434899\
534766594865914660547049003415158345613578404010372698841724314789952159881607\
342304480136027918361254826202033154833096220990278121276004981215344595994281\
988032132968106493431846587924319517589665526955456704379105839255257531923308\
727831428429377761325277379071444719898316810914496759702184380602715025812518\
045316876449728775011967014376267157194807003373881517115745623391240449974527\
590203272532563894940137722044376151719414644381502833368299246544138590636643\
242325837333568983962166808042618616427618990512549386471441515830611058548908\
047793397368639075506365271495046002626644673794854094575543562340733204709957\
721658082687840683555853069676615770681132991255046852752228787809979217884442\
624726279221573542730070858611028460411659996759207351419532390802132292755969\
324794396613655724013163703472251480997634039270310322428094219166225365892887\
261850742337961131700100382034946743142393417831096812144631392082506629572410\
548276151298461951198535761562590186771371975520327216481508730268173563067650\
024366952049700092394178750335863147705096513585135512614778223357959384777395\
096655197282403465860813025932107972340291436263109053393411123955637036949398\
172642347110753659863188746737177334468201923420379444403607093065043288934329\
402326498836822194252888086099937546161436605163182890238675773714475556633413\
472199225069716751673564500522430986142197985498580455988258811180661919493471\
099970925109786270751437324963036610656135569664668082585588741147595849747976\
498055636751478275062569836346323001528218687022931826281699130190687547406321\
590835292353326638398208745963703170413722102230476369039043780565532550537333\
299097612293024431893603871226964581222277823670046741079007473468447498373567\
574563573779135408371262239846989548530228943414105771178858964804222181950953\
129500224996334403195335648042509472180793534475439550759198657929967950363208\
099511832521764003837075022497322517369061206837113728467433098996481624352288\
590057297563308673792113623400977965794613957942299019621480117410912896119184\
397202351822227630759448442495240064914731694577729981691704106354431450697646\
848725243045698344744087009079615199773701508589397722908832025178653940389308\
710297450671829901431266507209527630553867608686809728207517547222455124045305\
220139510462689377870110847604991766972678024862552790584976501014050081438472\
972596575307823374860182318531148728772474860543976842473978869541736733800298\
553309437160529505655348328591969253037984611019997043024863030388755834106916\
525959077993216875904068018831767243924680461268978399322027474090800532880163\
286149790053303108799611335911350845738733322313504428854190776258276686707195\
414103454486398216775982335678315706939336101878821766151012394316742227560947\
563601397322991991976476347585995348013542588801665457470882933514829922254504\
555941806765321138366488320662829317341068751676059729802845377124619620479309\
987161556655712943969781529360871002090873498633749222742731919601440111730347\
353452316748522729593541453210456512052508203422114521887431257714683891667756\
527418437035509663770578610102924897546564793281311007035379267392975296410007\
478121040613684241150092389733782136608639789000547573305476298739505598046738\
913177206807837119171983186169587548992549738076747883894858611337424188295361\
406931440838874420767347193327475584490827144405595254009697194023725321774614\
596265402866924387262874175540240377522705176547981326009610745682556170512110\
352213159938287230100616693320014164896822138337516432368209560092890141322315\
168897226568518817601547575861239891038897726300593782862020100330184803967295\
161886600032221759604446822035633575379854887293513911320515485701485253872445\
846387104507336392564347259495324383754948283432322750680524756175530573645159\
178018889014576854429014146943991239184548575235809806933072503117878877563692\
355792547584453116424435523594173306548884341013225773536866876135395197617130\
059633199286788805732650663091302514593352431464634336387499367133676265280569\
807689882159469210106771245141940888427534540312037081385550260350171214460681\
867441949937707959858042101075260851223500323441280685132448793227524581852458\
708799100546048966461484430580728407809662308797067210950891379368590717023444\
416423786002484639473442175008921473836748466860414244777235060966443141613141\
870773081918502593612864779652936884264914293444824191223407840428229434794315\
557551133828138399939577152857833899134457879875126505936469798794770357901203\
765907032358736109753264018354257854492491972478697505297020601773308618523032\
915373064560266712895035319747290413242883190197603729730619997389241372103221\
019363414110367257783381474096483635997587458726694807453386172165022762722866\
106496974225197629345771870770233166485547868061438808706512543159427130171533\
411757743715564069503830439346543880998612064241803697147458283501989466307162\
493292429801004983607328050262500781746452045452972543614651044887628831351744\
753386610073069022848847143428766796454526587213809067167615514807850702604037\
761629158555550122479477728391506304327642900591462132657030018604245745333949\
954248791289614266050703068583348029886591937270549822950584022449776203584468\
775460329212638173245752325740872341746515213806399475498892639251673769980995\
952648950068488491451317096671655741460655819905815716739909313352546092616355\
446441011019676449074742973672201082754346023245726289549892645593271042489969\
308010240587335736755956206011012283779414297734076485383968086358078679341724\
402506297393444648394080358829074260381328877953225205987683417032977087916665\
579071937010149873982909727296397362415721940872386859729426601319076957872498\
372484701427981464292060794542013320166326624006002385304050026132351517716215\
628720682700360425936862253553803983990593556685347870764826374081610259062071\
587471924861892857602340487662469245103140330860315340604043008597080069532491\
111818911175615548502920254195455658193595184795366882309632609248372939585897\
574597589950568428298460840676710037183176900414525375451174522167300020562267\
246118106913177383836369511592024567353343378332918458059611023282451611385023\
608026668134706727183102524286927956369602716963781660197532564663282519991401\
251324070527287246774678560877744666331693615201193750106389785388365557731417\
494223310751942833355277805595907652836257685578024561959715123521148498177881\
500791761819250406885103370232663989377460642393117528626694361500714081744658\
362616968884043152068784269841198402418926196744188524533578348439804266734586\
424486516710385426445183019349383245972475007357309672418154028278454427995179\
029862930332036863179931993584220863970626230723919167792247538362972870671229\
338207975431880006049683940001982403101589970905706227860040647991018513322486\
807160680171674493246836796441863717996067640422541768499066244033719393977332\
545164839648681399569051647703159369390855210555248882000172473293004997368359\
770399666248464304932004110767463794627364179580008079070896188528413181934735\
030488597966040612066862744892588498850313920811348489833003872780163567368710\
910452365076637070722011363031372242980661867064015352826116379977603915643166\
128941101060018399372498467058102297302672704240076194269168792594119630360021\
042497149188929312667635748313340164495603147249199555170141278005864091329209\
315287837603049112773967248120982153145714235805088926190526779661464622801833\
999626135707431483161418579650829060867821022142856563520336371364700578019767\
558223266238028960188748342316686849995539593192130616134870455763955492014874\
102939257183753684049040571928929125613776693294488233010647037508974240857502\
503028741403411884701571547780917194421667078208606753306633166802611209386027\
878554270523399991951089886392702674744486402867474605141546016250650966780533\
159774879574040449900586605089537940080388161830248067797693387186026968426751\
113057443074794250628523849528363463016300020786326844380518890115203993591246\
717720625805866984175618981602118356720995560702301499785074152336821382905276\
519851175295511514530350889552202383755539063615922626071906082308712686076396\
238732114178397284846090038140471901852652024725017236436055886870514075975929\
048175108962103820617324459572677068527698775101836324865274054971148809041624\
063010637624272238709004270503495555701533863389707550074936909588514639098452\
805724304283010799271730722648792472729147377478801104912229386914679004831718\
360482622012412111197140676985247133137473822857312446977028041527604085952173\
204216923130565462963589438309131108242382026984907044874075593095641677840883\
927884892392856567803553109645232482752769412499457122549722336150557823630041\
922963440056544483783068311855750233390879507025207774680567400533393547299208\
027504751428084206329729054299501297537993314636231122760223992556682794593518\
774212577564590415985440407406130284280198182238153511547918248467348334603191\
289132919815782139190401456366893932064480280866756898478658718842160082495041\
165554906098068279949470304616823631769646814921632373584440379303323180182663\
987550913777628864550256969307571907997202481162480051685802242040494584209823\
025337110896536586521820461532498360710137559360986591916245525974388751325138\
343905704372833413375784691414600969637030914101743730879262542384753944795747\
612882067269823659776313627146710416249706990349009299273276954961079962454844\
842154639976955930342352579928402744116533130008121778685343601158812156125223\
909406769030998533101347833639794711825731211525679145101459204039266792325363\
149751271730474993190385100598172821857738675118335032966274580815892779968948\
991636405591385882813780950313708845018507426208990968597591928256724893683752\
654669519959159030632571525232497338911510538263595857010487295594490165165908\
985146242322095074787573787132206990696240817313013801887249412540656494531375\
244037196208511482467226044342264300008217702847476802730405628506633172186302\
504128752767782215784567155080150298202880602356677490572435613865741392669523\
322111331702866672714685644598819652297028608543416303574475898964170856282381\
317938964148120100338688414691558232362377868679758986332029485021036468693591\
716921677901408245469234040611802630512291721909139541588462466185846380539293\
710108784573034037687141858560357480041073769033704360733908788467564367541290\
896307394751283412403957853081177713677590584611825584039529262377463357433715\
091423638436528805793564534846510688200240587979181039876927814183497803443491\
487392316456781049682584170787196931587404699412100289938517159140937488429943\
197567762054528589953076336970739790134380634941761810047882831710611705646197\
459050173237315064098093981348889008713386455319399686013741378458769281224020\
961116383306554032586382515132094257714201980879132401063432999333808564524283\
711846703493317154525310990188746558752542590260717538386441229169528937006858\
437838945119527450260089407737119029150803013197829823234920305589619315415573\
705593323828190584189564988444396360874256545613085487941644556425506944826063\
125647548176814026225820928795461054929285400312866164915141314711360859043806\
086486907782097143737529751895963728188046054471370807051395237960407062260728\
053510182851091223795764279209943800469674857794737539898021470706673847804061\
203248893422082120616097511127193360975932917268668120064083044727612914419975\
872080890526552290318589044907213239926452600286367726889804509606601307511880\
292453002516480057811003589728735080032675888804169813185755338685712452063171\
087007118619436178267405698627711287789754138807523891697813769574820622985045\
305696893900721684607195461186906936754062584879978480083881832680249720388771\
274666395305542431776571406092272353147371500187340233817603161089615950826789\
541299128756430977374410540141131417338910786573152901246456231825194171386841\
469881492282522625533833585342309008361451289415486432563085265474833187842446\
354399732478310820705628798014559355774813561222637322559575816945722639431178\
229025979671943496259453302721012689634916134972353541227229859844744781168568\
573458031785166748446828549548329581495988425196644479768803254668135425812343\
760232215125640671329368075523798532807196074684769601855536925908475197870843\
770322198865569194610221414422821064039687486752737519801122252346913313385560\
451328164926919109488322577367338954328506595220745251641207388046456148031777\
134242030447244975436177629088737583243844891141879184719667344143171582093080\
469643004589423502225652957150699355879125874594721896883270726390359133742331\
904664512698143173255098184431978163570575071203111298938781570207366132355471\
199081222215573815436931605937431975532225206877717889152348790816123528410923\
732482950456707399937710652991623163050397945085099111016562835277440427662633\
473507976475650247030593996485692974747008600604612426246033924449617255970513\
921982291353609359256826666226355757710357284629213700884083563892246420761133\
958054280545259849178994104621439412222640712835162999782181096190687148282954\
037966961126005170122166354380512745369923033567250543793548776461095535529916\
950832840925889629147496331719458677771082945870934740869757513701320164581268\
214775692970353074276376879297901117048301862168077137069306090168098467249265\
657488816911400658689349919206333712518734557593212200500520960285057920569895\
813419803836418465936963535150477853829248702899612579198150138991642492212776\
162523594579720507730238413598389347116466241372907489291621252578316586573490\
608322568715779112875091836671697034082204644997315410318405435089276707093929\
013463280653912412784516812405477414090457322817706874822076511979984548125540\
271781050292793140843854521369045309147520458928189074427409753096284937388145\
693257887288972921905940089593532680817868705487222861820535616108206953086794\
014423983110743817727224838799780573253848814631886766975046002890378958183428\
856641545254647824166070663343614780394293622184254638511622057662108035220286\
697953479969551488075144548905738844311296492018597000801776675761944738165085\
147800310572914629808719293255329937195284950614489997114634912764131354177454\
737561215064478681650584949533864633026503396368326452084910654732019425773068\
360430939845462518110567154409332352268175556300829025884374893413551372086063\
425478419886440033066992655590520388105280694833677292555666889207054095402602\
327732655072768615920096236587523644526048325030183974910513308843004843156448\
759386272265571030935631980743749195741698018201245613748483924675030648206211\
546907023370784639364479095325388313718611883385346261145928067732770538739112\
330078211421038978998036698410754589313197562209181508748688364501209847609296\
886488226943309329497480569022772510443347532145879146341179443645779277945227\
508611415439952061523181678687515447274251661460511142139454179736555153953499\
871729238957139098949178336656401452898743236218455372816891062463754318283240\
125147537698093088413575239474806189437172985386833481208678453916985058792055\
900398807616741359050119095252243903808123520691765546416599238506672919800736\
403065860417256785397779381119176418078476176679833203481063299519042781201765\
259168176102149287554469105019222449133421390905830664329607672303430484125790\
912456371829675833639591325282915650554358193136881116202645487109552248423732\
781178790076559061317937786025033110535964261857396936962701920133202161730971\
162191298807191472718421053714377499035946066669884368489768767097549886878474\
352355665121041691218876584845896151901213575474941672037222695120881507934494\
526072944380734881594201167891982700240212591835865286261371984660970913837488\
063062987843650947060754228357373755501180506921829625995337511650736628369894\
970164700376363946354802837554915272365150393421738572053844902018610833479954\
671982365458793303437340154435249567876026862748284523194729016334515141470291\
776781872066799656903903973085328688839845619647311720728625533762228413005824\
343935634926672424941901302022023554261018770972156530384093854774975035319257\
947596029150955720885158599395668896641755176578110521798251641066121721827290\
423402574909584282464429116653155821639826847344312429073997958843646841812176\
001889618536626925939817335938153697541952890888385694313584844308845297029633\
749076708505556418752778756828568742053498407440508863344440783451134269460712\
305212477953618391926688480816740834620732524841985406068196162364925007861583\
945633132997976881420513728991806916992858122837527360783434264101744289743194\
758745747994644279484717220776778009736880332855242331589372306196622758159491\
059371407116031981033012859615083485177945773113402827171732561075456631809335\
715214464263872264958501863449450258399882657459255898005621974871951128433652\
492150920777125836539812345261015142166352493403069917891829270824459484148808\
107509514478660107405901178231757945120164261959381124281283173731832861250960\
138717006076424072347482541580384749054057573532836670913435496033181710675172\
975345094706150685980931635188685957137971273612172553382179442481428256040326\
572830342648873665117860612736683232825426882137853198533366210430778067065442\
448899481369940042434219774078942241148075607668738262091105389275906587250087\
939305314624371565308808310240235217617150826664815214825616667568184932424041\
035153701551629682749154679129351043818189316550668502031370978891871969124428\
025104810265831900121705134316342427034474164684438314820351810723729181642355\
684544662843331725002774043430138381046071271164773145419898457715104799831556\
577589411536209222123623253053121524639880851447093220817431426470031774090542\
612258302698594529891088021442515711239434458909375985623435553792407450681054\
755770172066796457588376807826096099786551163943926070261227473916662260142683\
134261359580910981228986005281985168965820094925573826789695953500798464973843\
680174761887413775814009333853474720112914696509278000643082341811716780941886\
971992510526633412880287325142144439027068119101409876593527888051295846426766\
405194397804416334824282752947955178668588576335362149656421984614169363877315\
290592151697576213310021393884410640581958929016165513264157002130499406969099\
931946788697077974823702725797411828504592847333894550243590332688026819691060\
563081413832100300862866947548157610408019907522204895755590910403593962463071\
766144599711725988161070028163216341512679807885043804901256540827360341973704\
693523040003789381858851537283461833162578501600223269790356240155447486889707\
449693767981002924737844013502098049547907274028655777665634275307538334852621\
500530305307183531200675419380318780218456652545920207722205202480879294944867\
441609103059726913608450089402858324936453281621040102969500242661683499959804\
598862194570378509943408626923555151259392453875316078293075942700558207454888\
657455745158588383404597558159878524501927875497183905783163206503223595051097\
675466467883859872049385613276647822486476437514666776397825069449699124500055\
733820738616065451390298832028820173920511132047584976782877055609991205413746\
165200803028104765407204968298039599008359979170940561794470640237973949395437\
183095958647733843651288015829266605743129496218063248382536361877015858815963\
184944539580787736289505986439644021006250846314915294260725200546327050643901\
178485853006412116214379673847139214956348801661356136287130972001322621847343\
472866878671938738381822884967572494644304363381812951586667008941990705378703\
097709092803124264561017801420243522153842358771971102289490130517950552316291\
291578897444466221750629852273366045612395499437341118906200367351286642394503\
337580049546369516483758929854738129586931572854540834773041040405656276834202\
566739103415753476205573730300501547755661359846310738381612137645083331909832\
790278292743324067198874446654993092275511387196410816769046204394666924783743\
275042651469018668835365333984348986897254206996321359490578502729590142817987\
410137367673213929235116004953314650531790131735555510409714779360445408837584\
188925456235678469032430950056180593237564118521914283895323849473452530579704\
552227026241156995546482031403752703853965302608047438667460802538723258555189\
955528582957769024122712085815725103649378227025315470335924428770476175866309\
386454902871674176307814711928155585256653280736926255021364563099445849144155\
863276344487432668639567308607971440757347554389033241797419250488750410880087\
540780931802578017090592476365314392884000567396257724180545973177090426870299\
509238096058943994904986144442394356639854909337650051927596342447144805153106\
148558329384148096618405967581940065632350410477734302469279095095306067949750\
071769911452248502817099523003282904072221698882823130609077889594165466656904\
266759321228578575607894922664102952409271397731150973189785890749239160167707\
759578949745916990434942212117700251765333280034288854539529324635663119934241\
744320895023156050429343549833968466291131059498869446844501716340789138107669\
796512501777953686290215351376146023255388812387788087708544189977069700563151\
282981758485450454144897618214855099637612975020400520207238028852116912127706\
573197809920258126814210719425546112459090441140267751229780074755945884841633\
144486663059101732390885077556371178501235079832760035576920705972465393825547\
689153144908505203103242206514706076544391382925888602159729462663889296455363\
165676681614900834263430331938321053860976858864744466882990388041686747208481\
577695683977849243577160244948448246525829300106882702114520010314023257567929\
437416721234899901699243107102717110842034146444742771958733787261027540065638\
418026021955031228825958038008969352852733895673545793258295815246962713917294\
135653955459673844261238737735349242998489652922024990510208216764186647946432\
075485008923786968043053439925166710137416083385166650675870929527690771301845\
155635319302499453770051742264639292338521973410162310266940499799562482710315\
317987611541297617965252308668937151516408559501995970205312085095410407199103\
264606686309741709742063844771225307013516482881668433150055220121101857654510\
078542989858601988405875635904470879535380028427036569404301530975338207672644\
777096188157255154805395258694692042321956593988542591624050350228628041099441\
766904523866400193939774352263753874135751215687150840585032621356445011765458\
349569973054149645599333764733952489019110619164138568149694903593882194771603\
732056066014013555886705335410460274283227963332492921529223106901358480343732\
267867410756111686054211256553087911823001471516747197761793303598975797552254\
550212971278470251928362083289320672939810145443860343471841425416005212747086\
249220059992429682855016225257654619687040998998007632108145684955334955880179\
579671789183774043172110486933096963891859164552392715086121067358346792280223\
643762313460838273889572361314746510419817300130175788363721220323396959891701\
746838069439063805120198220202813872270379735845672810114143393599525343189943\
482715087514627080317240397358651930403565310239262007335059125184851144940123\
715544011814690895191467865696035776442883890445209508723673055913440084693950\
718179144364418885667337194959690834206246870183731636168681921213248882023314\
395052091895936667165639356103823805311550586698312744405048800753265649483283\
552745164001994998458503507885503426698555051728983836552196973508225772654999\
116707153810604112881336985568383958386630192955820153710744217248775494209509\
645434278823518104943111457409365229025847887539707620279930765272746279657573\
878426778588771411522809251164366564308812015195078626784202900266669819849378\
021975378137461719601999982973374146070005236608181184843998718186986670852219\
417009421789980164048107467002379067038277148991200292656599544950382186429685\
540118712286431575929343688013841676438207391094994583181246376296820908832152\
476122587509187928513079219274570881214970484290944875399044365076782578877672\
272659847426827895956074070675840750134268465832471888166910812559367934531115\
344224533551360873338785723255939270349052434143419526887756559656374450522139\
825199622184528601225320102702658841917220660181048265603545557922726226825477\
352467168087207691735350385854608223841209676598873411431735338852014379857467\
176251695846273007126640031701379942387600756994075156221877279367028361339241\
099535950368805107215277393163454516978930125932264063725395171046246676363283\
316482188129781149636084044770911689126111642152761751779950881678826016805038\
280045773717268298861908281435750182107029324469665556087366206250221227733253\
723209398691756813532177904176546164543245467353424446600343856027292692410733\
589026109497364616481562272068595043704162175466220793450218988117821134945161\
946730713526002660100607266833551308991704737801116986178536189572581190466572\
412888455552100136118599496343911676768140248689319994298956078372317217370084\
082835245837424555623233022806415418907194321816013669390091946208477425710548\
984177208681104494704078306052000780970100958683550781114270907105544827904074\
725988105497122078043683852542443521879667486162522913935330294406590631875015\
830114530790252233349229556213660164667554425233028189993369612022383281970496\
365841936267842642033681451409833826956698281757693048806966470167626754998323\
896735722205714028231430834749322768319900677535121141415374162898888376069285\
486909388068367062089924130584521242841359942889649160019601845102577919464174\
519019982922188412953405423119095819748177129003755614147208247268946810413639\
583324858613472387646744607870595192164558219400047862966090229383257821252702\
360351133654509894498289891385949112346311848506100051750173391777113722960873\
358831194148416585248208395891225979349370217726373380932500567180214211218390\
314040261810106180669119552291221846448183555646997792618733677821794838749776\
530561997199061309209502496251911129602314346670516248336912476700915300971540\
974016984353838731316255267613692969673092276882923926143599292935310708099559\
922190116139613930760172071174813469519437207601859290391513814460748134566320\
509251765608801362418938877758686475381865356825188147550475477976367060549069\
805218421862456677383261329876429844401430737065978357779348529909227149390501\
041779103367975084718454546960649811066867768365547363004694284363885598333083\
950648198131952335950839798003839117559340710607873536297805183307595425739795\
340601999223266081876820301374420102576347952682779997271793074510478136981371\
749094844770706982439665770458341141819330776132217759448356656758286754314761\
079675511776017153382575558610039780710421937198589720828518497503362313769113\
529354380904840014635455844657209348943287150376022350687922672655849926270226\
137177884893198801159616475847472546681745162200615671242996190791304597005786\
090450848510970771014574617001421044115165940692179475163867763622764847746372\
906347826550702545136677824258894521772879020399708320312171938591865678445043\
120049758415699108676101411253382572764856484810398303714952031082016409685299\
192117027812089592262638852197017332842458345723926035287296798355022404260086\
080473503631195342356735111309436757658528296013552098016439950828454973571044\
126392046465116564320712889607480887464412651983155233777013906161155543416088\
623217629639480664747395523682787486023751383374672065321028903841983048583907\
110005756904402573820932142371129546817144865136587135828826138492756510989403\
570002923697457776773413279024098384110564089102613473260646350288286743237042\
021441018401744897444256608518977569403950139759060962958855583055234812898293\
704896441577824094510088020046126741144906983343064097119422685078571297893180\
298054950705279552834042377989423776734150378681631414214786450268820018241479\
331565235854540533967531666304413785084256859631979095801354790625727811170116\
101946904729379341542833195079973849776051702573854444481427654811122862593872\
382678375707525717907930477051109457855368277439040738917402340455518302247171\
371028891855175421112645950619740066998888707598721641782110259288993123459154\
693028088265462899967871072516134467750079308110402326406128838717797380066325\
741462374552245769701103412348347708120454063160980954529278167500587856267037\
974235001149226409839981022543921834290599700481502511593772143962515239107923\
436278762584972337168232460674007967843001760198828597214865031689365022753262\
728416717314742736737605172479381684371107698394993918350920239584859496353310\
335892797180630879297187755043973841490475230383452109358970422244664221457420\
492422240447900439602918817691817681258764974284701465928830165741282748336877\
938289172110419020111171874927590989168996641911152513006353968229971712537670\
393210250134651930769805770202538867955904172928006607124308694591814610126825\
653726842645504125785038134369410664960700046578404836156053800535732499103452\
788267521799660018364839664222986524223654882803006016653478590455749337448697\
592461072473917573583380694014881979567122402994209856005930017700864428599299\
689946927475118946313490689348321871249843594929139872074870931429225324343304\
722874318171253107833764625724050836449161430198501624578019435034472803193705\
821796191086430347091020028199115806343864398703164292161728932959437169878168\
334757870312348634835319140733166893289181771652838496305131349505324796224064\
808858663783284794642138565198642673393443403112289334909945426549521151855069\
534262985876527210791329565908861411886048885228138726849896228817314540824065\
261569351567385996847114192317169061662214345257084807959673299693969189361756\
445056367865731508640123426958737121069525786090002792591646298528816447407515\
170051670477228066830225546049044050334998102094604502507228600827113372439342\
615619725423556429196676590047318720702081363576807120988681503870960812908170\
233182250799361910738759833702066188305252312899487144682265010988063004848858\
448224801039986607076651390422153055929310874272472726786898017839531352387284\
177386658386663413434684681598662229106886233499772808621798643175105522679982\
314786517201193096274573518063075522795278797139150520301867057277538538833569\
995053204083136346655700703529540945310254253306153596821450481566721197554934\
185295954876260859566095627329073847608617055523029826723714732075963090182492\
059784167334474326441285532010418556538127648217212526030494996673426627859537\
451960714911257776120915392608432252343564380881455942808502462450974467937209\
672885934452431674735868910102872071030100134217490107630203703453069835355773\
820257733091452858851365489160892893399463089111351962373414304427514296366556\
898116019277565527788630219723701135406967952170305826851531350236857784091099\
218456485075588850930646311829703547904394831912243086765989255354544712380457\
966373648998815660911334036494975664124923103331664754518895209450589677346659\
182722032281506829561233115160925958613389591744675707401296893811639577688161\
629279411088737432930573530180339830735855971751138701976780172454783696792211\
416839660007884869936156311047544914520691476757684153834288085417276446530738\
364645647760802252190197334382447933848242667013719428010973150062591713585472\
143361366222185938852868066881433819567315909802940908643530257242736599791838\
224677785896764409183587802114399733899983694813793334872248967257583295824480\
624207340837683504955750246656083702902969851606129075334615151580481177865243\
874875942033129636623979788929719244389563651509178996167965541950768141589534\
867821891883270221006282904638385412825672009645874216249962709159209773868333\
480390725798301527471985280788067961591586522732036593185595002414609539567233\
709671285283827167365910871009208490658875291755624008106623358051935214658788\
400618102085461020047683993095222705674168453212251055182378562944480329628820\
682715149167499388781653127878716981976008887762743466780433741020606246842571\
651258349998392672617012638054896087674870555496195387755977419995900503814928\
397490097681105700965541828986982093011788640267736775972402293114146189763025\
461668438853712632088221041847065786279789726624090066166544427013126276425838\
476885040576727718911944209317615128409776793731427713621557822161702547482956\
106395171719009683649745933085237722704301960856786442088979130624504958780173\
629407956955272017534331175359874780388571607883122019975361954536224560758098\
340711572883377460042020925746860453024073836900660581691858317730903112803378\
805474728248488403147623774739741692076685817109645550155044067430666394222630\
745209282249127654211407813186047189393049583004126368040398392529334897148396\
922365078518262130941596357130556468908095611141265252573812641445157001855662\
964174095809429467991731088414782527264669411433434182756820100105501979074777\
021801529419333722849656462575996205927752808193249845406380885123123198955539\
094193346096671256423318167191526252575109407811765334229862783997206405807714\
619149904009338147764699224134344397921864961581018960947655571051606053557250\
314198288173236340767817279233210447676622705206220001998100130532983904511456\
117592353914761540981567017149650196855395399707902586128557296840175746918490\
767596255355520989542377881684280856138339090527447836368328828177237218719493\
425840536854740011550653880228824785414418796580297127680885349969388338246632\
497873093250850344867184149360119123292514299873519939003135020160046277040525\
785215125910660083741574849391800291002148146728927181721281302474629477227421\
875659389096340874582065743614003809842544881313966270698131817062871083142307\
343199405854643241270207192663442497976558887773495631050868426095143183954999\
241629329593454840103276332736558753420395122462431862315607641203306840452672\
478311931434793260704175684714703374237507648280367733508581419201452313037200\
668558080262257290160065755045811537704188669569727276794774475844997374565711\
807266766825834587282113890260819347984221517976864690462114308589764015433742\
239130853048956216492374155796609727976687297041615022027821936170757930731680\
068503288692169047194469824910885896443457584950872622418716573215756887282742\
871192541662080799690225305744248271660769888203013702831547811339385261411898\
710985944762711719066840712526747233682787832219785608855442450882041249019157\
034503825687800149329918317979483670908986535875558565716596478040133734067056\
773806371286210086832431639575289284126095809533025841181082792502188159184183\
880047705970540881960622691141796735624271385536390055676396228956795440804547\
784328291584167881341852442506282277965143995637398696774293307307973783704480\
751891255370441608441456535043162427454715958212696183618640451412397970881953\
074121002501777685471347932962946878260957040208143334951950919280601262168232\
359928203481321153091929388195582670259053073687096988121811172237454529361848\
156269803143262249772138246797957886664875494150031367682583631863800889130263\
165944666762876446873050631090400724897158998332436123752521246222613335724725\
704787120128853130097575091395311120200552577721930549300645182168048449358942\
326044204466489082856315517844418064355462670089917821524772232909286787131951\
201934486535171265836980386063818575157108021408125887545322753253757718089050\
451579977710253981316747160440081657082872569728183850055963399074908136365069\
356978389475703313182821958939696762457271662786770647240130068507968834974147\
394907324754467673597852007046561009297334797769201286894784216045460965981784\
014366196433473971098060369116317288895529498488384074957911005386107236202046\
284705335889045894451828587897253993314024444680979497758354639370915945734222\
819980508466827494083330457847885310230909840523077772253431748569651509097318\
768376614212153959235632542914256932163164772859396627674993874227904388114663\
559178831873266106434609206640050366872558189844477855411772089120525840671828\
532667322201590381906715577618596606185209169438653107124913422462216395078780\
118745542822536093016695438834087413383329639150146689682055242220992890804145\
205028501256216292303437962583618589349122854500685880007015076604827356689972\
287609554853207274153753742482736109045045993624635958434062004333879185909681\
413344202071019137381282969208634175155882482664871562115847914271963760223091\
459310983138314453913065082012109666839715691052351823654519896241612595785275\
479448140082446444065137690970981589405370125971502795260764346009238598991857\
383020226402210845259358488358251700793398102063472456957288521495033806005811\
732504977860138196290195683841670564635382651832638922921293251354364622353810\
190166993089875158569291205549921559704522478522589060229922478901909162763053\
723755740844204245743090659854477240376309438303956291738023978112427424349335\
524735287225256801132669617554829941929657930046149036060082862167957867736339\
101557380089129173065372830650667366742059429097992689292224117441128183480003\
104121082192270578392400990564699908712774057025277839422100844917011546657716\
508849419078507490900653441593364904557538638974412266588284992091762901908809\
065772380153852274279071936421847776224554647216583039257560876320449634445297\
707592163163073564610597370284342915893749442740669307872654588979114440476890\
221303199035665286147035415353282281324901629335809926272299705088295844256539\
063765135804301177032749317158214944211807222751545878761354953821151558702193\
778016090044015255138680877287150204257334068507463514550383390057807113482391\
369735812939907097940712303027598893817214199221845113152179074290132579141504\
134003096839198938814795690732851935146136574263739991709236492733563150504886\
322876861586842468115302731070509134802220841166825876214385389422813918016975\
549104523634961427904442456772654297345697833078853812154776004309484530314118\
604067183833770091130086568569448112623497370279956384363302832851050950968617\
069443134018593761989471490456555564948326247021353591675844304515164605096091\
786179198642153596804451969964669642541737874759204681627790362806908588745199\
432583088691633709506039103998017776993997476937012470603297458106219363781394\
834942671930442600855491744522147910850966370807191422521966578898674082767580\
606062984728764706375533417375584131351005100529458927737791631917868028990494\
398533348475673861887017539218175340839781748823906167783196598419127215228165\
355215610092403097657549404970438749670495951250138497752066519968019409812028\
263860194393956630643874461702977841752303608414810635710262217415538500812521\
179313353855200454739423074279089252403170520358341779938689195780637354783809\
449324163976658733827059781915739556616829625035058267847692931713857390222619\
423253765852928152066510919808624059975037175338171518376014294756990940972480\
113432805379345701225245786367665288541252417556138922503207982590578613248981\
477464522837620363516569076887587023371840668350869569843755797580411972591520\
575599524357521518045139086768654617059424289584893715173526480653567962514834\
075630886436753697590212699678940184928129964616474808196350880042656455346824\
285016496410099673611485568979172739576149016743149234311045616424092626565302\
954049789253413441237563653147339351411396746387468054925949427224953103042332\
540607841605970338865692087906078493427339872274924305642050280547036621861439\
656574319551871359499244294516406759366003337253890735365690317110066097979737\
471492354404562624353516541445863515512711916405395590649984608609698719332663\
948109584421716638433683251334937422104110971014442270339542450122805426714027\
628485925032865957268180371839686916526152244886926981737468121698062023073580\
102209005138579167170776670385948811804855248361517142363016571814528039076708\
134196975640002821010720920321865657801559061086770567601695743726501012163828\
248623279534069069834706678242517590944650354793110536087875978681381236689518\
841288779359863854075561758518766570542885008187401353918640036020585073758976\
140040268143701624441890367475090615664201482154356958975769576972206132328225\
933781069341482124680591239357133889971235067615811744623968123441753087078020\
295522550658405711435059942011792564072008817848720377675191531695574205077522\
411801136680378180698096503353597005026724945649880238121420261783029473679921\
672251234845706887386245785616154501298669167046680076773122087814677618654555\
933780274172444797012430160741637171723698094020770888388688094750542137249736\
514127963383155580202031993712278624934512132008228888132849617315583524525198\
284192009923650466171742048131843834612956582178105514668728306012315311102724\
262086040031820624363899168741187177775307649965591029898465607998025584478317\
145419668929252408517446037649077704173112960167675192648555234200439191990812\
017769422872529224024769420996092858496521525177090812563637646124439562699062\
898039593589188995884745731877659086462181747372620238082171825640469030271637\
724057016220496110209769097999479295843181784031877991624944064004460131005993\
631398180884263354466917344015809927351494159044558384044051192184922865984147\
470412238019032377563236029881742360388997512205829579618639914115620676493685\
957838200981014146133319508242852235209372316525422744303963147185399199286743\
265617244240809810659785149893148973095825274740502660457050443682678751029384\
476049133405267541584649246432270713519998086409618756755738293767837125671217\
956049782472441479075550022753200023343497354945539867194891171026464999695393\
064734828454421632905094061101787216292318962616085519993868993182796962648328\
658776265508036518809491512762485581642678557153680255320908842745576924793701\
616588300014771036684308215035682736481826137182112129693765993518711018068533\
311076550890235038701806145735676802355280229994833761068272867755485978732651\
340204699824272439421444093271198281565499862185376172463078958431685664936387\
809330491724145352381693996258739617182286365239997064488503940490664962778931\
375844536339906166926597968608485833282830336329634702762725017388277019396747\
384094345606436736114695402877116506845286869359815597325112622016458371044583\
774308111225903274857995387054052107288971368767458157766343953994386686968524\
388790116273800844189888281442944064359156204348298355165873379557024118465969\
859102979977084790681749110216601966534694527140193524852778848015375718207682\
073223805223445158285295668592195490451209589756432143229628582835402620015097\
204188937558898708801312376923171577393630355194512045309902556005415597878059\
936846593524190175207450889363562766948109048443191780630302167174346829850530\
511432700828021142572220868814167627958973161995240135032582937256852559789137\
683151790830732083522937932662453687404792048848644523779519820450643315983243\
557669989820644321112386678647673874196726919774974282397970239815579639409801\
374537214926673887465564650555683818784929710395915624933901137545529733976217\
742082740057542319887112756860672010854233906293582628508205542370092566757503\
987393137524519657242750075889518077529438244116205560880898075644542954052307\
709016660705427474876971261369392484315830876875025631297107994631234441789891\
003124906678604366692481737623796474226894499400940694109087861058844455112515\
680618154622214616899814863252706382167332929943829436693656152670480828657091\
433280998320134251322608495031375201442866453203245076909668477066870618017911\
258167487907419829129466808062717043421023790596752517228297176360603663331888\
305872638699911482549654178767707215131223943642905674187987255131918394456394\
881505727980566664952020398301526861031728181406087819450633459842684269814578\
021173424177517034731393397117882550260537144759843751287533126542919358618903\
307463334804914452164068368374155576292044917593740838264638342478065321764538\
446950312554068787268577666304472224281103324308540967645309274474663136079310\
623354828744412573378657945595563327991043669378138244126223039548352044150341\
809162743870287862746632848014315571659769183920651341824018081346648852476052\
288012398736813340246192077067005200123404360784909306621833689497250564704221\
362681728530310223724264538379423588472341734773484202794030446955803659275451\
726187207269177404740085698329892984120765059601016742324404769864497093922958\
052744371176006076583672674626470710468145160089498652200586899538989529270803\
993120488178483093042722442829299990892814316147367977160446064084561504744689\
603910505516894416081838863946278273410673573963973962905095284490011663952312\
651684731692863318810393196392554927975024506954311027284048176585272898763240\
412331369249461262677139968826384795347893000627872603316753119643975499537017\
891487262093453388890726046033023927818699716415387500165396448409508917819424\
809011786027795972117940312438593694711557608407928214052363208584781935961799\
225325591282094108024922552625244310104185278173582679413653305421637886432359\
872581410855304070132628813142803043020801740441125612954115193119342604908096\
377365824371182732578714197177339201805208645107525759349001354547171397632478\
507916070758018203312543989661412776120574856514265272020693246696526814474197\
777343380743295266322762725629488949063679131933566440614753140635964608187792\
990040008182193256970010491880267419419788698667197571436535886022379282202184\
836609809944705251334414284615498393165004635850081025963234663982552563303415\
337592307664741284058403657865192779174187873564276064431537692088736913760086\
063372625741528262570016080867526290646109703222560559881592370323299623161641\
758236711298679097629857180915973481184484780975016735892783784445521676229100\
129367154665338436777299662367482402861898996656935447177464439962049455351723\
288740082211807872462734621844940438319908084136977469940314716945568545018952\
571999092550560468728381785578096481369375534515542460486130716157789658088743\
968384126039943156528291345646403369969685857345925959058768869774555844280497\
840585209607708646412695372737294546779705290324508357468678845421710368588033\
589234984596382864661293161757586640457077002687326192265469776833318236418757\
591284923228419417433715031842299180607047548735441174013951867471755138281558\
227461160941120050226301920109153416925132789350658753219195652126451187299093\
777294345077401832943151209173867412137186476971157850125561675324056957575415\
686424590974043669138966161482384726265282156908252277303898258011956633331202\
805429344207275332859895572159518549673661376381810673088831399910014569764308\
931420414579991610673883119685720409325506104398758744185513043397268769354977\
607101517726344106247328370703054940880458131225374959021767764400894193418407\
686460947599816278313372139520730493039786394577939229217710048291198567695741\
815592129018357489847288497015586976246595278171175729489745058327237155903396\
182796013100001167802527937386383457249414784851651467037007773483401097908154\
845169166705504688206510478930267908530095328351627178962121641018354021990312\
000657837094653567231929514828781092518085274779905341942625885140471808193351\
741377790230229763399393762479665542358127955413022742573572675035869704367565\
533784943844548880024644843476258943369337960831028752837441449457587110141285\
931020386233429372969757438839784892730358595386721148291962506219245981421535\
130574363550873702114108545544361318645112467754744190367491892093037337230241\
506095783946692989348413674015161003524604510952679790551271771368702107993462\
828331674718138483824533549126785277823467503411755724734413358862341886781281\
363792304450871123629074934251031942499039449936321984743092894591809006718912\
327331579279083542151425798673222876504931345649806672256601701971011097263022\
775063875991703055341102144419194736065051333651362388939037723805153735882562\
345769406345778900246096423056267406493971545169025861987559288179842986024453\
647880671215566261979625191992957792746375244401776650726118804340485571247625\
582161896409056756531397008956109563020367972844720731515787083194144173364479\
028125359583295120223689534740423238285613238165584420460000181515091726054873\
808944788007056328380969394359468405207835853751421021420836144718320289528516\
108074738417653421938100571540990845239264050779836232398255374668140423333978\
901925909188628123330051969829700374920606670680659087441639970552911129040309\
816931125398388789264120827430135509942090138572264951546473900537452930224022\
613926944963472368013508177173454396568709802473615330644501456035071357921007\
774212751884317811055536072235895976260413365710116135789265806876288184167196\
116956079206458608857727856669592041047703645010173752678126743644820992499682\
542039022486214706706799932593552750442725242617279504810976705462733709711249\
388371842726814517102809818568307075432845247440849587222782476468017060407329\
754227188644792550281901721208738795132289631657125838615067209113601467535761\
590410786861103982435265842820711313771217174235546980422740120211441966789636\
237766954817679664620181899871176525421834527661268360995854578798425583328685\
813083956002397388444305452150365237461529926417729751820712441295837878412016\
455470033361929282608242804110462216445516096420280931452117642835078367977249\
981678832891659500562048746305621803468252083528169875864877042062745203607110\
415698565971340059210950392369796749643147831562002481944535055480123669803519\
373790438947045566995242905654727313488069290548782358035046373664074977006944\
159278899983289305679740593549206783425018234628078873580586516195079285410459\
067075043364190771058972768923326404315034484546984344132735678732898910831343\
471344885516115401571812778973920217875321135406826100286298477821799878812418\
385102021349147956869911971390866771333721122967923266234606231573172090819846\
590821514945540840295756275839515753058905393960283424414171290723368914830649\
967659739921705648218294119872971006638557091022482969485413794877830558416034\
085476004014541657873972720470601002679030186941878800851725292415903440200952\
073664833465626981702306121272192978287092713846956816199056834404408515768937\
116778896126397300340641382455320398823872622361520970897354216733460394933343\
376726854742712790388414136789563224579862943851124042006200635711973020107533\
160199384914455207429150807699654984107165834661160947738079147702909629049769\
850808530655755801043683529288474064702455296346400406687607190526164352148469\
470807580871096254132679489310745819401700537197299901054986805959436183241198\
337930881652829137056631321973365208488767735651897303156256389481366471341955\
996837889402604334383541435684707299995312269955800238178307512131921659728300\
097657529933250781220619866658787095890872196839557770112534330748840652690965\
835295675369366647506368990472521694700109820602754638564608179745837655118486\
651479136617669718807378367862465445315618096458836241608751584654989692706253\
089761406053855823151836556102048004599073536761167270986061997420733968992115\
040628352256734701768040761886832905162866618999848418591948960359386072989709\
198494815088658794355083659316543868285995034586281678031199063205959270715929\
788812167988688376477172684291142635671849243181450203196292980693359670237365\
088670413868688101054050086500025768624835711609987655151957271382747599626022\
821109148125200171488905928947366626269101178112997243801865757161881043987039\
377162759894760494279532530685744727586242337595187316688622007906571477955554\
452888605425189441924898786231784745398845470802091503787574700297198221762459\
967246960153382116681036511229363970719338513513742205030127625610956410209345\
756285486392320765645183863041846283502947627679990541987451632112394472754685\
962091381226434403166267226047544433476003629675780220236104012762754532110557\
824091141192637287247063015896815812910284351017815476673612002768394487474884\
109235026665939231005071123775860125340501824824568620584560897918174382303460\
665906184141987824260078035256023446541404781243598004735256786030834489044907\
292329851228611115246831292458818613551734831017968085048520561757242444913361\
216884681323900714016565011992926565028487286731769237101710999853669150235121\
137233530772098278006226970106212344707085321151950518175594642020930633361727\
239235510787031418540564112299518660814857208773958643675840407773088065585263\
464648703961896404623018065140731396584049210270625783722390609469022939698088\
272845453432395418946334352051383603159948651149464338784620502420242714180245\
792962961957455745758542214401642686534112916097597060806077259192830765849435\
595471619179933925682285346518520362179221600591951906682689654192972348556839\
971422292272389885531667411983400308632653723694418690364082574765186393969233\
803894488143815224732607445805415233424030478790127419547107759111994939101754\
575591332832735447175477238539382608834435832451597288037500591357422583416561\
176474953385426366674308570393302288271478795005375469879296665422358819981679\
618374304955612695915422851935839646178537109667000135234825712592118547479012\
673596638239409266892883583007634423440107768809008545246020910709768696550667\
765725937840110733924713199845122280582654172106426810879564424087931576753702\
356773903946706874261025102081062917034378918680955377403452488735048179477099\
235875354303706877380049074253882493550796903377959752380301425541742984447070\
390411068360156315144754529657035611107488288183542978014231449422404395175970\
718294674937118750289220406391816443639262123138115348042768499190720963914918\
944484424480101635376143499399858545769629865360947286730395578520873540261748\
357607054229697923366085689419228230716548390869781811901482913447499467543414\
335993493762550125689430894975866579205964525074966428673306007771959889697224\
178165953934998385972642556578648094698596271580064478737958423307233195680391\
286170563107716480599815320146916283768831046451814861995575290237471504842226\
743912150141424695389597317368105706922230024205433857666802830227608429432542\
499076693918696452203900316147796299046583790816326141933916194059027005683100\
348856357036246369827288538331767287271369313616886715262177381748074521242407\
681221462492958652218962996168196186067929283343920441905942021811421107020974\
837883964487278814695784256357134227671667813786295115780198556738506120702633\
000666357368065678836273533853726057071652017763864529555338410636133289245329\
371841993614369746307481186006762441587036897059604943197441338441040931363202\
765031181653855127190508702417734366986305720917298060146304441834322392668987\
387532064495134203648296667181219962637490651801885787525479547533121854218372\
738435975594161521941122658196963042840648505056248749448595096022713967407573\
290611856223195205639983673916542189007393053330370018223004576480750364904638\
575624943066759389490173926285282325963429015344654734447575881546634517642481\
333759982626020725181329780042071596333228077977972689239545630688942189358800\
240826886008450795808028425661890622153765098747698711137446822655121172527666\
904782206300071154801656581235177862219348094424807389908161651646912860153964\
447157745088562732886652262894129613873905560930890126236474084461081705185467\
151024040026766600502353117849765208058101641185719198528083410714856797934787\
862197083724302038064910105190124724763612374600059906882096987294430784820851\
529001400786348385373923401008468767187068654580768311149514097286600945440290\
179155701587120159984083675073278300440681104809639483067827192503747898226192\
625305745960667632588715356874600984173200313580515190076855426889516536262419\
303365511134744525802740916451478007166621904503270829295100141224137727432432\
023144049512957736778137611995516361390048299887874806556207852987965363395120\
333179909104383196526667698288906295540689950691658858020840172796476705647274\
591541642373201079671430471558204559076665969787825670612408897753541695437802\
019541320109048563840791948161357605329767022938731194870108770765902438873002\
525244529987550715160969487598528349324018979773686888169717017240884576510192\
452922778455277083455463203346905261030762094707078156717162626495263362542730\
119343048157773069314478060160784960828082135564949427898668784113852798502928\
609504533503826876140308372326354391294608780168183514751298023052320101056062\
579991205101675926128711740533078660813957763485671203160912918284276014230297\
000990688450632777623778725443571953958909636847995771303897992094771817531795\
411424622155350773189358358975450560992307365280594467784822097533951866493241\
665538654540159528623362586257153128414010575848332325549538508892859979236279\
109522649139259085459861289232681543386609015220877912555713354985013534166807\
624499720642980195243526567392974299164002821141438510928316323754415880436196\
531031355654376205104105712689448694801556904904757126498439987910106911587273\
775135732671789548447042577820793457984205431958009909873398059516317436694770\
631162037988616838520146124829110184951315304877674550798693203798941780079041\
125697520547496037775086337425142462079546449096387737635094401561628798008904\
303342542927145329773032382458805375226260288655661569848220514375827233522333\
952033349966956451325871197508377132157318892550527963940722830076557041438220\
645715641254382322721557266871739536381101143677826830527602704287509737477192\
637877180940960330644188861347373878387529425561521964973686901968263326222586\
867650885787933510439435200790059631839453603341165902413840944374487969142318\
886357354491013397019595549886835884993376779033748748093043178833528379230225\
819263232285132978777232506770764301507921961772714174758833980841008771136038\
758744954621434845367318106050142721950099374436385085397725797058836037819817\
670687550077888209799532327285838680722406833056435373087862266393377548025510\
532645343935995935637702069451884826664651269299966568984810055954376696555288\
530413372597869038847556126869714827777280587866870292938406841202814383534633\
889596446705077439827218019067942965049125978331379290851439095425431729533521\
686919567227487745452542394307044103125767852425131810573997277007579743132148\
975615267935180646335232314957384589357681687578456922507420820885646557702705\
805473235609613817634266098506694230233380146172533539747680349440042056369721\
725386912530067862853632388162978504122334659806833806116487155850487508435509\
661729146860449899121598127912095739202858092803485262037901039023415515055166\
572930503712390351935703952835057376911034525101383457031378906179480527735112\
946417301094063045738726595834497273820554880554628502344010787164796961668175\
892449637132361758849398761925356631255695211094449879338894708517363666995638\
442171228010296892968109308151059052557327952471141659727543959602764480457188\
642700734916440260187952324083222333494787389606681102263495695754261521287917\
745187219181244342696941626705122931377147485892348776825546730295197613625873\
490652396615008449387304330745984713949132911840747846910364729238315205454208\
891252065306693654663861504442228576299189622117177804810647803400700728771834\
963572549261611617824991748865596326883151647550284844344559449556566758325750\
652637570671380014012331665951482617294867690205750893904470675133744833723757\
694345442167482452551785129384856350948879236272818125163943874387376268853629\
636018110865267830294237498294167314467609243344224522823676495734743229116251\
513917678457085953847233902735683020189547520217809456887806394544408999860689\
610918024419749610603577403702144665795043112730827722608614147835628560349967\
050679267840621315677225100128693833558919451357888730154571159314821137744151\
282163811113461395355566894760158910287643792086269619266463831050248685396593\
612522787106042904007288715407666959549996674204964784283800083981218489342254\
547033234556031602108723892985808199703430416269983199697650226334341696539761\
548696709331742423698861475086183999017969499880106890068240414602767397322451\
723559111795419986533671809954927797981334407744126748457554004048093973356589\
683063953675313011430855885807551702646884376968409903561756936063141102245316\
545487912481061944729951202620150070468068885415650261393260871906632033658330\
831641139153050897878241649583107514518638355633269421191110758132319909654919\
084801181014058804001591113316610102989675694056905168653993893472166286417014\
704782003691915871302312791472173227097047748290060624181324755841707564296668\
774922952092396973354669630008444466884809138992627538549975549636793352381639\
567836013664430360945551114311751105095696145312236428724177239325883130772466\
639619815293317905610993694528898483442427286951594526566199846624091478650327\
521867272572335704064070679470248539907454291812315004068222573679049047154787\
097023063681303346429554709636434100863396162771371632837295323874285572710950\
710317811922666118629597613554416566538654031341497345712327365809326879521249\
575318799626948494710165519971087063027934637620106363371482683444403551909877\
539215860889892501534821667904283103418787312793887266621510939188136103493646\
902852261386229977320379333166330077144695880828637542222378113319485036022173\
072951102369360353625890731200118538205753729800780745800844680969963272842129\
540748195492706436788325577962842312105778035271756742252854084495121760742161\
153704121462413949591234460344239673295610372329907184106212008113405874803579\
960178267660873984646608590820045426126903938526255574670352239375817677818747\
497091395006486964953773896230548237906566696262007625286860842002073804426324\
865086779397062103425310181401352396993440552842386535127580175408473689632415\
926399660606100292116247308507976439814758865144671330866066143420198154246821\
840003537818703888983699317921167673450674349513605024782911347311491086287499\
913941613443970107234629207618097094335934160843191149740598005472913963652287\
617825243671754917280062945424661512409016843625738968824120558280129188417314\
191112151290571536098760253984366131393758216428497971915233232990336543917026\
358341561996099133151153256109933215499395328849420224545626240566917069439256\
714441654702817420928648452201192696934734438410769386530727329768156735333232\
264258001548389846458719605048893498578546408801044533622288431326787326038476\
005360330125519941377900280801488869291852001226144377777672943429610438016215\
215405102128680634960276234218174082981671199700786765798325063582353984036287\
968243541382661588537501161024240393312777581695116884427436133527371990201504\
910419757342129531535741024164451906862737353280696066236433164900471077585738\
019138562117679213973531292625158333742815184649754292383388499957052795060382\
480727578422155385920643757103525402945451481058171938672291540619583943295249\
574250537554731323548739339500890106172120394326735359731983657770959352917117\
615355603219102682902244176499970547869549231404908483383416065673362278233948\
926621786040146172127102378723373070395136623799182060830145136269998417951455\
006609052761040762468579133169691407397945054334452310141860399647661079525294\
476433842426667647608346537428182649698072156867674593770595300084546004800631\
708868795469791380412501122822849736586997814333653167350156879576828101195854\
087580751473294164468684803962891774786759693269715309927732119901138766020785\
964135168188872767839204115408116346281554572871818344371146510412747941861063\
808025286364388189562782621423499257201108143874359547508532774989611222742940\
228125562668963584093696382852193792988744996432672456542823888337641608521785\
519207719787313111433564944513830327979872471473978623425105654793353064651551\
913004571261754765576407998879684006040489772834436137386079525106701576875651\
841747799821327911674531016475636758645415657039462638779458139675207910896779\
391025690052501529576332714766190704415640917496670791181189967471701372274921\
116676898501174380260205392841971558115118485094424585799036251318488967173649\
801885371624624050522365066705039775419600499871901698619429492741214473378615\
929707752662388721748731190790472756575015622945530834735218041926852794394187\
979644028572426190650481508652874718617841827078712770021597970088604316951717\
854909246645795477309558018698993923116287820975954395132969696322910044165550\
472501521926457022586837259857872216787235093965349139222024836383514486295226\
169714286317254954098980700060601948486530707664346452553507606961043271475631\
049063688887400160134721835562089881157582594400449256211974980818939047234235\
955436489091076613369680707697598890415694969735766418162477596435919606808326\
508280938799543589482499218996674282026344802392518358976948030398296246593539\
954615474754662390975337238263677308780549380559720769723311725861513150953325\
457206797348607962315144748499195910994256695130578651069071036155937475977059\
822487518917953694439858270324009262796518132672879168243863396667931505117272\
300020940447503819742264134447142652447991040223471385324714761582711894346613\
076106609414894419697578407692613204873031882930576011721285204007085297464723\
015251816747509452731133907637642053864782152058061327742721546574634631338239\
877901590194184731596694214024352084442504506552625690528415680248722196152231\
360018868495521064587065128449175480504857370402408939316022681035801214935887\
874874677446710402337903324796585638915642556467705441951983754683285923619901\
801026012893368005020859646513954910490292243593980509745464519439569367716145\
076183045586311241679416996662817933337412530386149311731738424158177881874386\
981858539378620311961063236992659409780074430615449632079661563811946555005524\
639932452746148042081769074847000382260301099469937517372642774167745803238282\
492741403239316173365856647693424817787389184400587366299700794767951831062662\
204216083963660341277472108300255331935689102586306448243093011361713318462296\
769153934688469584001747630399939139329001831759825778700349384260961279545392\
260695358114041807244120531700282344182383832404766626196032111644760128227149\
493703767108975304269354602384678866638130284590682828816851224339626470966104\
367189985533911732143262827063725132362902128992963052381299962164990067393314\
965644459826814031692440035233793285480076235933893328779886443089658785909392\
833046342175862974189615930184678994932739676879291322463530964370760993412946\
844856567492874209764354207781854954976731168450316299720505649483616483695577\
501576898415782385722980846956735671107241135784035900535485011291714551175533\
385786513067223610299181499406636327584070760818974257379612956259144329047926\
017623894903996147935147971301030598368382539474331203834164681983877177562785\
628309807426382011935093873202787541720963843003980638787464075448999624008461\
284255178518644970810504107325543957370106253742228948415140332445667855236459\
650889573641838396879669045547955191695942665513242592763645912781137038884913\
596675140977207655769916612453588381728659859865391322084740241787193078272708\
816960180836997351160653878747264455796725339301803805736979737803897708905056\
013947284124200974872898532733400608174654412964347384149000342788273290647048\
711186372003129928683112195852824252979266091691502967604641658081939194773827\
133230170687762987694063079252821101505075419475069775229401360237135874018815\
151001026859718999564108896920099673701420138227499417125501864221820648496338\
497070699148477304622851501878781100108986419852979550998429338429893875932396\
606577942861745418290569719791272159038553110859823704920521119887544873601763\
181736732376104483953896553768590247925157825559254419117216715547420794853793\
083198406212545740745892818130347628514099359440492988337239290339573199699711\
357259784615139963735406122430628552954419276253963177968879954896713767555534\
462065109439430375764031233224452174766133578687676787311296691226114142848688\
798851024520659830081665710902015231375826053281377289328594805663827152565463\
485091366997501847896044197601874075527755167444150276170425823274509055434201\
983647266089623531857118129117422891282382732790439552678485995680278967804070\
714972386328745449555660126015277430827872501023647092437114699950725865655065\
313026602351484592466309534396719635196150935904627213101349865050891407557747\
290903285030271977474762869047393526500733847235764269712221807426490187426385\
859993672440869459772718703201737723648400541357337629066587290227714967806334\
389514325687981390047147679205771181568272251109541897154481927034121903466532\
936307032196033767036683518140735219751118696523230676308442970672954087749261\
499069869053676005315728210713396178297958456041444272735426771871546561699592\
011317023897363078921661039496552374951139693417906977399177167052929717721874\
446921326109376160557340512332751456569058035369580698019325650974860861951934\
729085877124150497192118036942171512171523245607366211042392178588978918645395\
332267134090933379370138001854799263295923982554829860531141486327732499537586\
586418472675268588304235745592790886546911896265133813804008975384072008428974\
071835536640937046870419469243402225844596979564953142533293936705649240072537\
224291705708143151918989594501949081712974924211754949530554731687378434476828\
108146854202955156804091694411253329672220622995735533233449117840350878329323\
607604522164351014228188751626257963324972885116289673052560522058201713783030\
808695715408501926645993751119740307401189410280633184698735809202712872950579\
741412111993222589161194006018775558746537108954123457378736775279979721625165\
809251795368013309110205650227435468722646391273250723543339065718749975057300\
476947965291214661401812735138282520013616308148265582977469118814385782499790\
721548654805700026437039448671180605831472387222889507337629305770830953679572\
502802859202003972353265154268374876122019390956055054113080700954274045870917\
247675682229177906559978623306723780062859597940357436642402418824737618149532\
428405403518676214545900960192027235022772899009136115235902234004622213012534\
267982357195577199141297140833791846377300744061306301639396932446764941036742\
769254277834177121170620605626338626722644711229303706446067828316263132686151\
637967805747044166019332205894159406472340542426790873392247968077694533256281\
994976216739717428558561709137889922535030293941613553375482722088467371513501\
000696453045568841136045135621261153394357753858235028138547939478491981510178\
078160670833135785931054987073082485786975229923491262729294054349818005599414\
393796955143314972449781615346992749947383752808796774077324100666235777002980\
401522777142004575878473854704006218028984552446733301331822127997381629896091\
549485421940799796921022254024681585204877163866767963576370970316561799081479\
591970191264897535740252676128808469454849584578803927020941132347373631896762\
289075787373638413188600410350053742226627010043401156036750721379603030967330\
077434126779015189686345473747733275831654186345840043848308564982333789203078\
632273979788577164287340282426042077653428779552217082648699009173823195032967\
586595981227633771598782247283002948391851998254784293896061547646537332501551\
247868401869734667705760540291436390138837424759910472681884033282553402342944\
173211801551637340788564243421954470579804462664490269262031381000314069004829\
422445916914516496747390779926814850067123563628347194781117111999663321488732\
671959218888252952356049157577668297096934485629460205592880355445924529526153\
256412917515863502413501643151045276303348995072120431828414753805172076073988\
629270408676619177517429269496631692253537720516012139175431484774193774604634\
117690127130987058029865240385864706787344640653606183508840497226451289552012\
028695377664831472097319350298722219819948068353310921970938831940760760447040\
872282783846675487332866549996700040930194637974424596051493240699629911936382\
212304580517025120748204383068969357006116903121128622799592876502511548335938\
576162503345082879437005233870654414272825795961467268693826210309208583770609\
298251070158820481384336612297718150377265840711993629088846253428348358128089\
909682375065090167220644803873303084398070512241496452549009736858773861235135\
962405577845442370529327081772875483803647757254955728994249412960387906177332\
441076079436775048685856683469847723711620475567166141510595370490681355407022\
223452022598863467630987393388113304770569692430232182285541422652392712366972\
268318282705689435334336678980559767831644236596418186229961413312627603650625\
053150385218222015079327166731205608838455371255868301675989321166173569112532\
156709433075850832397724278396538787856105450639650182724942065075650793947247\
227281891471074477614972443106271558118988063716238983896755401585349022691786\
413483935601617740836155439727934712018592195688484411295818226600561457417222\
604553356433381607621078100733778217867557470888306184034677881709521619513092\
889797986866159088287133060231102298632133552841268038661546811327834548338262\
451223822201255326400003088192553218931410577688537101797689241384660755839254\
368365653348493828763075655560254426936490011393019146159999952853287949740174\
211295352622909234264003129796319589332789203173661669298243605430584931539608\
079360339209137217937887498388389065005924278704896979599865597721214672325633\
868976610437382353707585105502040729305962119770901018976722845604614780341342\
206334189980791314531346431912396055821930386645629460000255708529196141459537\
958663739118611216011763528896172387173486884883927841708533082883350804070756\
852452363931168067383729717866611570828601850690677179417033942584418938349638\
157001281919931259000772997024248348643594353556607798593401572810435673199054\
793914288680346566404720264571922613242217091528697048431003544244383055076242\
813912264037123098868110389479305214476070961111983635027205065720191183388893\
150526655837466822449595793314461450635684242610627127636639587700056982565867\
211813768183871021962783643813736907962971406681089743810375442208043711595929\
390231107446312308667949971103040247844009683841329506519692847325216440588563\
670102667755639407613986499873736070244362196050293888433023008806774755539587\
527835499984772386547357474055501913601450367992752694755163728327655727545037\
928525001821603342523929577964676324642674265580316490230106782135789662406923\
339558587413734772706098087182828987995855103918075848509735520512575845720988\
446376558847896886645328499614292104764124401432575173634425073122635825038417\
290941892546351112975033659991245297687887902641232995189565571976853639337868\
814099837995578539524613055778088769910567775923921121830120087479061329506696\
890940694926351108025728404912107281843719768395644865929690264985155509574506\
947698710037466998045593018772899180155814328100613772722191617532672042651413\
648087257241784314455959674530355351481834093609545716590088409286059103622554\
642748516761062161175029008829598577690198500763052837856979937787721324331079\
175654758785268107098068007056797818994695034340900821413278217438055294497119\
477472570639308528557137470749338971397425031636674124806468298751027657369894\
012478691520505868307912207890512795987117627244923495879911461747802677585994\
714414169387625006938389227322593425943846171957263332343833765789957102972689\
545638395112380638024465303549098610735471492782164191577985382338476907690617\
926574202135248432559244513213270576634278171259475158939236982993958583781375\
889913790496656209804986749028952033127548807864004617371600433633526202520677\
585637063306981981338063328734141389656168344538463088289845064375980183495043\
702124667722140232418049321515376108620508409664642766701292382168865382846943\
837854198955817332851811624052915619576112774937768887501862130062114601309944\
128646754715339893097051649801280762872139905515060480615054778405622717384900\
103276405430158307754297936840600026724852529942558279867668386588406035068071\
582806796812517134071851593715398777355121620207412251095376264887170458456015\
340333799925970609118817227119196041522555533286539551010343599497151909987967\
806707956469480994259083975206289389890295531110228964868048527724680538312163\
250536390086320376619195490398055818738725275973608775110904399962818622070161\
061759288405051862960731559080607559190266917650685333284817225845456006405885\
369060342544301076071908903507888255219515616946117907446621625431715222837854\
226479150375275580478115987439862970607801111812852233107142008784168949391584\
625807546201438389401741544364767449533025326337225142878357424965719053944859\
141087465740562075741619106792211662813003894805224437188515146650781405032752\
694233594486961881463411028990116762194526727455325603363948685826461374658216\
258834766173151422104417986880198782701789608659300629958936001121988623439002\
700614210250342359195921592084764680944840222529739035241535564516604684275551\
287549835982212879959591461809197711638504570372156415328617359303842768401836\
230218599595171189133515977520900381754532103846107485197545217454457352984587\
575885189762154420922575332993444286266772568217967263441410559528387001093773\
481293924713750972803678518453319161867249829452024141798817915522412488813626\
904502101163934429976791372560701118520758035233263580037753129825289020058058\
511259227501745384741040744504862711664673902894413027790604340152695649452459\
807262290922078369601354494628228398960012338855909362918569633961200949278632\
899911104946009603219898985643010447603833997939476726570744737593151651093697\
430115941537592045880987766609900435796635100666978982906580710656612908570238\
492619600752627641737730603740349584431553401535796775737139441352760291983928\
463467329679858783865383398757609394234531836485320707624674403960998367406139\
210100268936493895833116471926908408825590225751919472124606483563165781249890\
069398185539213477193757770044701837008395153335089033560211829308110247248046\
147696771306583324771785980514302661193357084073863416479063885793028503677055\
157185709223664133636615913568572136149331842053628809162289718268318982350316\
567793916482093383370780018430243237182792741308674233712923187971692223199963\
628439981888258787918112407376886754831078447450233252291285830108366717773873\
185024219848575013072625308284655574742684035908248433999899384007633748973752\
886409342680632487291291946306246757257420767729970281250596422199836589213309\
216997320974009093857946096583452062323962064899099099432602344080783220478521\
628176541613788496628482986701347327837901520649735493802622665987996811225564\
789123914767189977782259238026152157034619810755087023644382833077125391102140\
068504829712163628608036754521289484713578085659072160834361397975300793131757\
200599961970345833831659423411701182569702091792008365093564671240562378973557\
386368789400416701466449756375824185546419754231291712842585731379744022269582\
537845757594643015433944402298588318297026558572959941731993946302953944246407\
052082456587534628207691526796281252608508412876668891134920344920472022507085\
663363540292658724478198606630616420003695154437519923785156271262506363668887\
053375035622843727888173011682775406840378499333331449894426940526766721325249\
068536872610979930268350867935847791249551864241691265564943543667408117976809\
720914652346521612461391964588167592503128067842296744355590682836063952779092\
764111406463135043549451990033847478543488763245775866046373752326283040956969\
473532757272182980945028458062420029274756739227556709371773185091088325537000\
352783844521666396984590396001615907325434887089306588131934572023880133062088\
258500196915330343373725015553070874773767669362237294863769773002023216903065\
637854131335915675816725267089559369705060335327989965565890061396975495977786\
262434166219126542246581275458837468466310724355011831584669993896522667491932\
529519676525329988594172318259435155403550647725429893236630763945963422327161\
902691920532124094223503053403044357682065074162909914508145445338598118095594\
376583197776297481827336682383108955420689440859784802771378890434190708469685\
722533276679038292085534221040633442087681555775279397056558736974538406832384\
488533806297047168177620088634031439721224165090980997734275242825724017300928\
405275313131296074547761297565974068515914330568321723055686331396357345242437\
447046353409792795564358787159163859605117114537460290526020354277082551479999\
481365647850994240304111226005390969937258862044148708448535837027729333748723\
805807456424990183657734882406157485844821350676247584004323833384957857076671\
453792481830072257210889169721299324874838189165701227493460790835809503428357\
786315513151093086484882758859056959982405730327724351051102707086736155170967\
409948917952988087150446651190674069663720768472653487720388982095052925397647\
696032275452095611595605947079699082557110079512885617961676672747907371884180\
852815277771163861960557972020701921951491981612242550666578296443988960859617\
666933987787687626707815295339191047497158517871390504590557298857421579793525\
378371653100877635782096969069106050897366596119585845144699914527672500704294\
326262395815437317281987515402136093505399476642711754967718738811706193011465\
695318461645717338133081362896707905546155268439202367942544664845260541407717\
584105987017718475797848183186162274151441179588779876375334717974317914458469\
156798221702968731277353912763601345561512467103429002561602688387358801874510\
071868549266159917497389141359115291948962570529113456100011829435813388344660\
194400183389526509846723067594930451690831358925382713792498781857147506002682\
411364512368922285267048984641104645334817447028325582177667253154276591969655\
328327882062908786364321099530945682443491549535106158381829459952356209246027\
221979218873833628590356836864240136055178883920014506231234217065118593149422\
017714367538070321046531603297925688844303485140319903557005787457399210631435\
931187474514807596226013953449989608674157814795034904355028738005409296589992\
061476602887648685204061248654719061944476410299642699497807729769561892575053\
343375964223023825780422271704838689954511853883084256146330815578176484849489\
504603184760353644077527400519896922037812357682998833275023687179176243652873\
725948246827358831413498064943267270233603841680005340105243447006364192716303\
924670801821237420281292885172131545107975664670267521816662406426840763689829\
457853275683112846321172757001981035557557003576877368716301444079161720805837\
193663788565284687553409266287564409100122715244220693371210305852777579535879\
741956760830435587727398868549024125568097371171127502015086002219041457968851\
072019848815600871510342851884474992337271188081906879455746482972926286607666\
104743279836532896870094307559467567920992681599188960579817970172889120833253\
540977181908073316766098390697658068006467295228514698371794931454807142864675\
705661846283538758040994568639073272517607761781620679871282018784727425836973\
056154924673344173240572643167935639211965646260970507972317369308903711399169\
752283309310492392462121605072817713148264158240384370411473518752728219522856\
092651984655236757552748410066328460094497505202682247432480241999667159382845\
117907490209379113792755012771720869354076966434794364963622414097099181167020\
716722606073769121521556837924632543822440264658975378464996887593924882173117\
314407925494655566684471022248961871825668896632351395981221957516427605756548\
475654376057795725293012002946683697613923935773600006436737197546744667239780\
669594517936750482170099928579478826309914473751306692457499660742743518314125\
607829783123118467063832906155982131012599330449061243161899981886597531072372\
972505598884491536888605673300111319072526002239169530627667027604012971968309\
331452775398116407387359713917653118537784383399750485778705376088869328716757\
776217327846414508844338736274831821858481330715000462338121104345805993080174\
471030250874552227797768981129635719114767084998025343533225403098112871838336\
914133724266950905231447438120044418706246101549853008957264173347696158412347\
556623030714882124870899978621115331596301854699088845969189643150625366256169\
424478153118213759342512747395736179716502304967115177096478487702002930408720\
867396744804356827162652845697205184088610993801904264951121691651032308951767\
549608544820764070343567397997649667360750683122221808555860873016948993524975\
597487658492359405589376716196486086374883948926380549796059987560764284522748\
192595276175504826510442819238479376649363039824148370419222931249657779792038\
805289356226960854513121554269925901125862345216698593779684611274256613797009\
208574794430587862001150031670238974090799744384539346273378859281012372413158\
552226127651848372820101272497173957472364535978959744859447414542979253205428\
888933421687247429096013207163132886862405179635861757380655349776908693768763\
926137786415320741025305037988390336305333967201380860117780505910190469132814\
454568919259206045577347469395604890201311370540922125778648173407892608105971\
914718431918226176703604459115900848995691561548147918983337828486977936738064\
669954915470418125407386330759544842891684254415160397188225888134558138624497\
661389622721748291776073945514909017603156784995518281373006988236533993879367\
348333536862665029315329120124207171561566304844535318459012822831311456058667\
237418654426374882315890633362501287472212847458448752670526011615392715580586\
837485439752188784763588238143441504280093196140118970208359804733093847775312\
102743718249229481197519544867303966161322504233687689424923308073926601706865\
860498669998397739084910624943498978889321857413539273104436565220270550602109\
838090318961852038860753465838204189547308546231850646741725957550274722374238\
075918409195919080787036680927955504169717885635061317634995374853528954837644\
215062227477216927610837933169727233516240482905670927381864948580092906409223\
829530809311794400926192199064405969389718110029363895396375238330141696945163\
782319971497557126090524196486255185408888035322739387313488260183537965413430\
364771927241513423747634892213272002162711645988858736745917273673412780480839\
492126603257911349263415713910320944644345268941606341959538249837126964994903\
455430842656268316169498778304920635217115040690471229335287996329463724154065\
720070173281402259053257550234442817620630959090259037246613541744063875162322\
306092905279853433919574342364850271123429298591388943779741904530998255127465\
800420053524982396597743899905570503760260270075141763825394877122050887941674\
970407520617266565461569524265124344676653790460525149072304852413137373875131\
869934029318812648282858112765316288349361443025051466220223865747862870405195\
156873001505052123237046882825006504178424914147818979226434286213807778481802\
213676653922658990136293616238562309937484784958313598766855623522129521797835\
659329758442703340806754310649989227198932448667341209636685456106736396254061\
024051608392972487264390921564470533067103319098258566886400059644016806514923\
189672654216564513213152868780243563180928046229496009821101035835293034061495\
431777787287158707338646795109188814769410665903174052674576803341927116906009\
365691020511730569827005062065027019555581505848241540947896818643068421419685\
855134089858132937316985728583963616372320088360605436591518890248117347828805\
739977638943894507372327980811358564958226460904903174200848460964397098424136\
135055541130505196847939401405890174268504334171246820256470522937449269501018\
235263077418861469444588812011501305213466684717338611586907686601851522314101\
717319507006749059516542063997131212400959486729153989526624856069866758724418\
244286184789825817326465441670873330606815596543565078379576299432039445527330\
359428035758196506416835085356101900084569180242933432141531559553426370343012\
944039951644126870387598436800572633038272546550359641035977808996613724129735\
301777168740005968894625519510859603226988710877167588258472278466157978636494\
874595284235080376399487017994225928607368371942189090517621838563157366300341\
014025416537832479366958942366421231265633837050484999514119009072475155353779\
994206182687686229639933298368079054168372466551976364772954555216332318711124\
614236786817205437432625366618608314401338106923921536722315778905242576334907\
029234904431900375800086267831115095366378594574423270865789717295551184002110\
773314454681384269491424613960675718157753787922616417849731353538254761652853\
741483013902762412364394535189535149809970565175693475904910488238936557612210\
867216953294183326516727021837305485196841046012388237912715316910462958102441\
018149971734320104977105212537341248721961708537263740165754496534440703549327\
151614512015242051856752061952630557511795916854759150655001974158361398537331\
951386670944702583216783119190626684647793179514160079310989139349006686881119\
808260519583780112632678658976913347257816377436177686014132542314599003025333\
224001761597851634835367874055402817468112092945340115676441149146396943329993\
955372654379812493017602416938576139166038691802045742323498303954892615165270\
831548859795671865439435190885719308656937242143651151203651940743762299815600\
938035256549056039918874573575449074173130676656500690859900219885498980324271\
878163441725743021919420296398625697522894191125785149972689791076632632505852\
434296263320522300429771478518390365053193629401718238193934002689038084634775\
824567044635356659534193351773378442461388202108785328638606055142265527825773\
097858116088347775166457880832523196493469364956014777155764426820073904730580\
920476934680075990202574139761821554381684528894044993356843654635620653808095\
666108042899372872567507673168807683494186702419247528339289053333354301329566\
260046285723074937553037345463993867637156914585011433425858285459082697711092\
476396660302562331140009363458910292394638988376671856132526368495896665930432\
459818836192951280573692918477566659612409815864275333328468557437443589634808\
778640295597656776291330429615196752833868651477784409815302390544185785186262\
306146231723475526562322503060814992687049878563697959077262444772696196914875\
502504612972782574107110618600859132341128199587024222653602316676193764187022\
909994970239581135751217067213430504797595528315837334224064216196122998209838\
493338011888716303021180192051296932905581896812917456209629467217108570849640\
347569639417107072389500980122247196269900977434858005720693806399725552820205\
251642049301436259079699308332611008680780790032127411936785572831983644730690\
884781074801108339842595305652670781842558195340405568307893528959850042379507\
794347838750492397367275409579399853548186345645448240708922176697136472719007\
037474386775924424340331194547348732815592707347087328200643418292665563633529\
846096848483995214836617560359021714992065527046779811075573594546472719141054\
441438955443392892116399773134997025638638146860986773023875050147189092698211\
032172964872473464221328034480571149872596489722804761098513443313984368427488\
476592014679491226020454176758152944058346305530487066754204084974769737344204\
731600312795914435344950892462552915666208320558985508949504007390461957545947\
870295204946311789373565954190595770738412975089813228572379435853209730924125\
758719838146682940156033385868811593422455685245258348781632620548704146562289\
108823891684274248488581338937684504351985279910789321073717260541967665946947\
823178372199161907422134941786222096597890194394286174310220661475020408162125\
556842491053936524014150420915935455444687372572064145665984586264350400083502\
473467232192384008520326025090745086618361444195777570652749474847239238904122\
668652437820258804580394304299668893815710794152781923407847506605663560216583\
547891128629171248866692599673656309386027052279011311605611097675198611795783\
544412957680969967734316360962737078192837742453081532954714571606044427103587\
614106363430404346097786470367923168623962319824123984146876715808786933052205\
071424587976870798956337652684880838130988856414496336021298921609598032921733\
988160061878745799071142636536363499783550133734279004135421979306831510295581\
034972788745578841658365601712153134045456847907642677377261485992776484657876\
505292046175599518553319464894403002798966536768882035642778654680103117364121\
964545437059561629535878624775700699828055856335288572556937630236549267151279\
440659321347344800554357921598013519506954928541804031725761687262416370283566\
857002425203554571041969248153002176741742102053901891262514133828891234993437\
022143089002977085002714895663621937848168221421561458492893850636692963707875\
401047969235427576101272809241848259470536759262893115175791849300046541296361\
891167185490452476933944281112345880727267372388372795098892547818061539767594\
207201569954591573679576931985660009736689165025951008664148051113003198979054\
252002716168742379566747870214952092864608790246875409896611647532550241061913\
872445315753570509254024784259175788312276355396550758212957086111502236687507\
308027268547942703504660131399103192151873435653221440704329166579160304992696\
149032630322086999407859880800672234465774938999173635544167177478460679350205\
320467956267659993620149640841519965968770938075837678762826286457134934598946\
654376141804821234955831755739310770470125173147013679028861678615748388938830\
699861941630111403599887832824198693855650531316035404621496028293754965873155\
319563380941755019872783327594868451475675264968189018040798306056680357634258\
409716559181143102354281633626933916054702599186880067051260037636093500239970\
349985557585698710659787504085362562150170830794558252859386611451881587418744\
959582147633422170131348696963216745390160232087125102597305724386643358733402\
777248656926742341062108028461482247233978531184861995564920001815067989902895\
664802675852894264830072390035918100240824493843399420707672461094609925569665\
008489102821985909302871875751084514464677712309228889030452301595804107193500\
826405259975869699913754108797287941454312956638339347702380173294869056179786\
586108444818698352053220473944199486877703444904865344522282039850591349828532\
880493889477894367784225731226124633918409111189771876460070057792982936535143\
236403915454401495955881761614629149223326425626440400471675962149941088767705\
052193975615350666233673237212561273448176258058267237545710033486274948737735\
127996213643244155328179579921865079326770731143216225188179495758934897639537\
884239799092598718971325460771317823022004952942216393586600222646486955320815\
894202439099313116508365942523891925956200594662335938730739884462298282351879\
430185862492501829332849801184874059491857972523091124428582930118351932644854\
696370643202386939806261939415950018892047164866917348177430209595255881097103\
206486779279094337138311290555733956846151739056739256492027312951478839711657\
711124296226407089296062761557619808844044178481969067762722352754621493631454\
317022741444267946246430687097061115997647131861192633120938029678623629694827\
238250057208333486039040355407085458134191278058878683818668860020520570546297\
431708510229207394141368113295762758761643990097029974342938758257698065102332\
014433434780665152010250705473394688220806782182592748243265028753862273680235\
960231792708175866689452146449014724586664556324803502985666711645063251806263\
012958786424572892650779823104699251555803468889627235212359679099177387984379\
079563032610611378973400722631048205925537376492955717018991808754196045610493\
509999178779879878473946876523274783478942990117524762842980105105617051058982\
927753080993936342687043403172715298393673467333831070752895162323785671845749\
185512699187638724236609604147968135437854090965963056935805398553036953985131\
032291873414728541969571814462745699054330161765011368901704983522837255656795\
629848655399801478319253170680409813539355932269338463780226983164350858372485\
271867980842789388939212834168731854320769457548755371366974148730640161487265\
241732567038702185466985950630067462908058179855585233612057892077825544203793\
881232400224425549797085592382574366676610994614908119174187690096583262765252\
979493214340339822918016668732816159970432634534033191994900329581054079542322\
206451634503887578761511136383768586530279723011128856805498257507983165112690\
587265703391887945832933375442460149539430598619273097462932265359675623492458\
302629960214532752677600558145213742060774258665612010426380448329527811140986\
686426168218217947696157970251010802759226188075075762714879893747111655827127\
912967372512161613641248104283733967515646417859327453518263253388924515536743\
073375164185672889525301296514646303823821059599521085591614845414201484994281\
818240491080627263633034167205895944811540837142891321443151850239813494657174\
197757595619010039830744613274579515734463347713643850561045050896215005378057\
010689040262648171720922096211578474210122284496033966740339977762510952317037\
109859949815470785668699544191904010268279025538434822831153998726599700785013\
619206545847461790568788349235454363832367212720883306712063724512225472398355\
880534427476169164921780697937546131394431252247132504671706760929690488065866\
090151950257171437833287746526040083668722667594770435407821501627696024064440\
410268136471109793598164656506537879938581975228812840366011783012993013465546\
857746728329664617381250817436708786309373188224612721162418952796938057358156\
398160349318271215496791322334231713438670247623654432138707655873199325019107\
225209252810352336895499487871741102107796024940691094291273901741544128673190\
041730984306401064001126918773546573658315030659627769170021606587196000199200\
710973582445924010474630871718446158242869998882181604188000116246310053028581\
767600870059104131110755667668231809590096461708546246716522787893789356640142\
198108877800711550150447019335284402438715066159628422578830361613307108808082\
452188445912366157641924868291883833309466848627084486878123732246837824736186\
779349650158403475202034661284843801248479655959598945897093364277692079687742\
494727394697566468327887433165303682074874867224426605830720158641493961525218\
825831624540199294409121556783295248795821762542788581811559462038511751031535\
625578691062370584620839085948886623756114308518867795649513227875089912018213\
784267843010938924699162244557713058736975737534610095350838795204239494012081\
999369569242230529072743867167414797739332597598948178523509770651973555641150\
130769645521401591479208655679594366516531592983095590269184214910133011762539\
854619871315186221624948999606066994708430453820367821651294979758113725033391\
543438978356778765365988178475495824721512443759228732181084903492596307437574\
433745041114767402962852447020987046098133980637435844867583252728802940947800\
924276834476991701427105190776685617626374457457980717014398630144130812779720\
918418664876345550086325020940074509699162441783928260375915367456962646257012\
866276327875553042275621573935697451945106140933611665329027920416622188107978\
121219434588353652091176734757647339129049593571669016526739417253574005167147\
901747380625258966409641906211631830246941071235553590860884157856412113969139\
150158893248173582292114831737739615710430975513330498734616193846113207884918\
341250141724304594654276098831224145130625483247697951117834627363517875328492\
247868785898819220787478125938405974457028899716769899660125938373513723433144\
465792224066242022888978354990900309300090186656343724155734168242430570994582\
500278842790256492815318398627001416823562911891639456151990315502722599428417\
074861438741107266115265264371586871902727715397990563789993291144334787272399\
958501972790646754321835200096503853137953935518087782267201371203153040786767\
338968871992318418845515515227547564471300996733787149720072361433322465077579\
078536256493500533958325361734617203217205196182283265191946941004243086684406\
813279764244334677313519529631979724794226468581592989992495030192074131825712\
956317157816990263433619079995403453446133290146117664563134933993902772005199\
567323176805624479455487184537212551779289612640092251576419496994008890196457\
798524555460513085126192693840539253717455040649719128467779568843701965252651\
913213256092949623697560205663755288848129457371585999812306600224345774445024\
919432652766780109168886670594244789777216771046849555978437699081183081344165\
519662140672498172672755201190367112223055713550558762711069824733505594532347\
034940356598991449711737447785920203910782539660739736037853213370995474576000\
018677720242166991346346397660615980362320234409635501034315929527365064851387\
161915954179050684179405848261666230359766629608080715658355476482712680551907\
214321261044045069093580381839819377055918817474118312470544181340793841657281\
979555781933732496832861688671377214470298352560390675556339770964342337644870\
376418513562863279620992462133333826036427167370562256453517260060212535121814\
515330174596851072598066272199169828362928767917604916446482940713484997411092\
600945268433038530803688319402288002436599244459648834378711920751339402487892\
050078884468026347939590581027107764007495523224464328274494673028620379764442\
438201971225558928172296826218301535802332995388528899729475204198750751286073\
314277248085991672240239678316694077089877662484323173867153982398675033337294\
080934810149410464915342538207152176582152723221277116830676767251477915241926\
917688092833622952822728146466483286395170136091530030668682490189983814940299\
930850049822214259548931077458162770724600129206302172814110895579911293672826\
378449016138522489006227996114097495684987831187993371370680175291217200425996\
399801079004100617417854597027567233821784555839789271699539041820191705000018\
810216189844373527388648373394811379713434625990046148206453423481436218861440\
797505941045875110787331886765747364181443917607150840921894876837426364958575\
856176756588869710184286606909648986945922879649565339440722865603545641028001\
134592425130954805637544003402075476027797184172677534047458437562307494373968\
481372378806743866081927664521663912766610805778110872289362430593522546619706\
204987794192569629635659574642048566991559449192408163598865199242359884397021\
932066497987658427878627918823133139406882318788386156548834280105712338240612\
486182680203798489035281510025204046347277770199197899256924849857093272256434\
524139819564748957256177827211084459823557000495977531327699487951590001857240\
974334107341625759528239150230756724092388355215406043724203127466143701254064\
121963313914294079929087543138319896658180063830447757722880582074526112015002\
742030717849739047764744375105599197286157261032566898159387743726634514144896\
913862079923714472466446134620630201819734849787278395674368778202122820493324\
823304832077213510218855707149246595192420065118907113901466563270175255721114\
801054684342366196520581504263990081843185183029088820942945711741137069759781\
667167576345414602625026366222337885367652514058641477224021083276779152827000\
622655908147692455359188602795184813883783517565009618167069264245891298690478\
938261932838609184298332120127445985763387358438598744857113966671325344262625\
181123243956375413278906136826801488460163994083040918227243089267550213964140\
377949092614978752083684192499607783850896713652949784757751482922607674566117\
633944234629238720993998097505534176897044755027962552361825226896275186203782\
914608954369828017945270863059498272600500382272109729507847697014128499517173\
228389566727575009831041226448597068856812431145094321961668258321405612883620\
460083061515453951314012412279912776450748487029206711448638641909336994678811\
940812312002398522490057032190302036815471823495535673158808783586137445771416\
545348350322917519943322657098789690181164258647130696784649419184234746629507\
348075024412502824132866598589514998203081688235784798894037694993437535898048\
858369823298960819212090574981461802059298468238534563415687840029403260105457\
687399710078849411306519683614689494118185813529334735037036658575717254296862\
005539070564340241397181397042058412471926014620357368861018086563987408134440\
471945729664582809542549614193898087132774712178334607445470774020900528142801\
393777008618196284696865235552579848852107430596200453321734465861501568667723\
169729907916280222538734760488364319798564476990977914915918449041233159182462\
432109986745875132632675475604777712611263885191520191605583147784171384957827\
428406627795770019021025796542869534684752556069890569586350317720942868723709\
805507551620757891111574142778795598618096471409266073291268874366890059134348\
209125335389956730313012579205992080126568354450618647995743721964533561594437\
724543475176984162816973243999384309402149498324041655222128969584503292015248\
549237178897222355082398519515701377100230546713777148505008450659564923264480\
362643479503136374178559971696969954920828174337109155058296102784909623794419\
303068592822838748923231604283906396577302135427613012289617095147580206236870\
568763646877172800824354922889982521735024269789200429518108419071878192149469\
194152437083908794972744109420707930749152384353599483563466337672480852009700\
659609977653880530589676941289798147239711342393266117043433147266278985999335\
876571862640579308260848478600036143906987355558725038023593153996230250725190\
286407912299841443648896584528171149442149961175838668021037591838469360741844\
309600146836940702366679414016076247166053168456718241388641475926204229455603\
702951127699641981583841318254057056321616476215448913360074175407161899272539\
428273310561932196051138717716832616808372276501519598870119333593716957872888\
471298331299170049771977070459716676946105378103061226388342112402554370281923\
882741563449774957351846570796293834254718031198572835625994296112121972518085\
866918826776029195516428424062434924486398466816158032977390783381559551404244\
833338128074287599851111425864269824244537043674528313986697951766890695997332\
276263037915594107468216869633035124526399604395126468146927738031486304216492\
739043165872437331952863883106111160354183154152636468255210839049929748489776\
135968383596585545527253611397757896519153659300667442444074038855125228821685\
237709207336090350962920540363608514657220149462125112803371448538124198896084\
037731599499534084695695361092404464831306876137888996004351754983725695062039\
284520726817300529437249891004181651121254263739195257674596003104846597864226\
667251569793855152854226607251707854369453676795686500913404286810394640663680\
498090679206880519547689076362934978655037984831657346015448604072722124331812\
653505022340733670916275935983236944707010332305585578960047365593412735338913\
271135700392991448228838250173682482500035374534212971480760146968106645311622\
632322589965453157232791729912299671707642561056804124565742415128144070483417\
222287288677817779697930590518858823042534681278733481432887404321072857403250\
786781782594961700033914855423271482163500904176989799605812343038405678134944\
260842141421855475113680451365014453434703213120880033353207784440368060307086\
690937662104596860014077157983653620105545613042959318078959104746069465599364\
406766593633606799912005996680890207410728416453019081895891809860795665212644\
219495519062068268620919672518942138408872116093849745182714637766405173533495\
872515279614569314730159761078552183725013897098551840489233802645441212971787\
140372906525444207470107601971271177897705888749024715545613760718820559392797\
247104533098885000711237728505982181599327656133866851333964379204574591902999\
798703617238386547041028998965758111064000029029201472396568194896518834257532\
191398134562822616354541972806980403098392925232723584329558614504944476448652\
314791812485538705311330513916334489103263472063589230947538716478701518956467\
161278333419650687279023681912983356944664637970881238643180870571141563510227\
700010121059020788846659531995331680654891377787429021305237984545386674166457\
048080732677136753481212564935898377901801491109400757054365336297668280339391\
260980223640047862541293768348825798538155170699940375438430356275953214051489\
798823968616071376173169850605500803446909196711936417157697120848918107724024\
790322327661862270829757774696852974442533253367270940006711619252753057943038\
377162180983650128031071869567138404113227145446235000994604063633329001152223\
101937716947615843887990095360703767412164074383615970217468427696237401895206\
411676485351403607738789688724950450108798527440305602342914091728896091471510\
855112131602219740712839722901353013743002160454900811431693409345622646894092\
957778004104818086026703039640609815036632835235782506542422197959801132147182\
651221134911217014426966723438252101062227785527586105764900625408352020154455\
534278767983718586691524596966603867505690722805079158999666189678490095160622\
649408671498075675706952993323567925898459933285959477790215841707119071483583\
694471484638314474200019630929028647584217059269124357638091588802320661298528\
884656811527261081158143428191275734618386082754653819897819759094500908213505\
303923937766881250802945902566732257628181708530326227889287284845341191280562\
429986931706384900432633059810141831968038974594577561303701166599961214677454\
674543939631663015941624218406321164154315642651122773692558652991027562501734\
822576689117029329561381318481122130734764373295103341982054221908709815925041\
062180175465193057795400590606522732564615543845735016826678825724083944976604\
551867328939487826192235805176269273375617824538696572193047244544861363869014\
958281430336863806293696034034595179220913315145325822498477339799654414387606\
616719168333608326120111450328770103559999731258941459469593592952565592214675\
855180967042702736458826974164494987410739759306615595880682838314234745891975\
126815155180976542950699629439237507926799151402374762639312882634828973778238\
385185419726277983961711140208574188342958066720281693193178457407538675677524\
216485769129154204033527012455602457891598103164770667699049901393835647012520\
407479153821676971548445098699456240773782753230297820184758298316941156564361\
616667665936473436056269259917336613054499094838882551626559361473032505589156\
499965829410886368419435391806441927548174029600346471283899129228418595710469\
076577483124798820892148926500159336006561279698918040795778546338322109042383\
232289343992750429781287483077837898760944176893892556942525655735265819018400\
898406587943533236302509163658261876868312498764833389032165124572239560134656\
127921017378953806919768283243401420657224583365251373431488783575752382692426\
648722090896948222597543163942968456086213127736084533965112164844347915980400\
582947978657245393487067248193333166695008483457841092553492190774500130204107\
844851187875066430777187661591303965942383089641561235766334385113311943467675\
096146156615510682353024979435444727787911500337314072868087594434863345114940\
403027572503861643101578470598182200243719862105848580548760330287387766534841\
578008661525177184609566775968170529386805376286542151632734159384050239031680\
362409726817352616817862753681928990406195382319436111407364949023088687497350\
880158383458602481567889409552624300443962386909547783079161988397782298917099\
154880811940332606637219753212059625133226812114672315934808693686320662070522\
817100615306762308009753619168573383523760032370570590665240943470011883084973\
649202119276369375886859271010455105811979408274952343850141257694146869672692\
372607393161333297689775736001857767137999163446600306813564687253984968232333\
072673068976276446446657496723785161055648329090850002399994866274074577019242\
844700384870536275738285699289433049949546895838899507241202069879390565016784\
215706292736829943936881038728256462661703705085887457779265516783548802690887\
570442701781832359689245977548920831160235615060569794856758330981218191480161\
093302209898390787665768020865900134567478651593133658796126892316469276864823\
464700276666805313028062552235538679996652247981994979052676991921589000534090\
161031299468523189837132361741508282446490145065397044638904830404551492768169\
970471366571630540844768737505035588089741597758435411264422213840929011711812\
982028397508095893978224289513539013769097868768990865726218090373615963815184\
397573463309017526884739069837839606280690044448805492398040853887236494152161\
242428259153646082384914658232340229714536420243892649542719668013834949824082\
647697513131499011088052950063226959522002207476936203882727462455111552768118\
620495644291034603658991973005748238621072510947866176734910605086302478673182\
351011763796687288156700584301788797023419512424573307914621379225930124456362\
145965597302375473307757584237380688601650972246072480665482922040760421185214\
364722044984508821969316097926683009907406534551728003978453544428716389478925\
733188031297837276776114797408750241860655808901466460986940679983115502353008\
792790997365928173125488284277462223341208278805393691309853360196275419825579\
309924676219036673752342759917960519422584383949153492127861167323418674469775\
238488934160297682331576536568315480074667505098972693949525504195999044972766\
839880311421331290634558797423420040890225197253930944320166295018898475584339\
764342451913728740979468401904894175091691626562111252472012427173917263462816\
815687550592426476418273351647329912310240306382713648842271728515880555343819\
444585469621832758878120707424354573498870500652727268937824140810883598479093\
495410039468386602490466205184180815032415764937697712504484872947694858648246\
672701073488606445634895675228822711518275448732975361917877597330929473256786\
957872512494304723000631425722492422682894301244396203994408908673422107589072\
565072269914728960308966292581005903813438801209498311047712395365888415856913\
478459431074101720906050575985579017335254061514886149841960904390165085220769\
334020967639975966969913328818560185334634322162363431954628281825542345799983\
938331809647654535852337339863792223553977955407854870683895492260555810810274\
856400779840536415921458916062411256914922610903700954225999753685803631555430\
187255767663474264813099699243985263822011123170564409745027467421097796358682\
454718259939066315979337017429734050022637844419300903038515462607996961212991\
553872869254511213809790085202927847657703147540816114738956473948102580430951\
213305277305002190594059022767294940068589808021916023369118302212155158317676\
523906891133745642289955230891490656534875478034317826784642327997368095149742\
343264047255575064627992909652950924809983115746444696280512667097501677407229\
895359875131277004447443931402194440218347737533666646211086592493518644291242\
132071927660218426616031601067152794004238665990237936999589756442050030609284\
731084055451693239297069719533624747518859667069460946095561613867324900280633\
355284099082612219724844744054220548153684852866754055188191278303767537584066\
976621781839323735990710432438450816606716943117255771936929593348117574255150\
860718964157551023073843138856927929962340853404148868381839824936323772331725\
859032781352471663812669672019152359421751704350180932989888541961073760153619\
972979602269992683098017691929819693437564232655784996115781629543930327192552\
825472361451856036033102887108571097018071041314981200417527478901295174266049\
626951559308723735247468515037158498532727642068836935341316395697242284637992\
937639664115419348921531679686239833133663033268506875124839347422543971956572\
278878347356025137686409151133221846969509295428034183966279399062646698087229\
240233056158847758158598727116417975949756997425322682354477437267888179679112\
053099273089594589449155920183541890849465116398475451932096622862074740906352\
930854157502165381529030082729253473893866501778266445445244815924230744595392\
729113401552865871348972844366510033183322675844250018904318149229053723833305\
482173527578514170514143033039451333710963616703813844112741538886982263001471\
923176910584240775370977139364015109567646992805091757675904431469417016710514\
763786604498463595047443927572232442812922359976798579108174133935239508907917\
776793672485720181751740940879108435144997132747374146333998457600096769808686\
310083705661419659832387410493315232002874103039564958683266035563003227784763\
540722249219642800903374775808207870330946175698853555389647236200728568784723\
723978534482464277557866066961274056306332352162904118245916226737960911298903\
955088711588197234020809535435315572888924912595957792961061961698950968629475\
424034062697698871139534823699662194716128456740667234064458694037638392611827\
960841801905876662660326010387153655969105731788563802905099687451382936962616\
281042269675861554759313354719872112228357984134405872262943846768582706778622\
449330588395321518748718080796224731937502167012573865071202901527205402528862\
497515487126153983230910436458100211696571217097964129498210660252607644176646\
603663664860682028460798618915783993045927503267750760200299600969919300878114\
914216900370059883249850265437138018409258737828119546779140471451392817865295\
372713136930349030031542838292742709136869093027845681134508825194113530774775\
985585667175792912713559926199449277687180959287944642926147668591278025919593\
555541044648580064838420721529556742965160360256269158963236845415007152456434\
367568039437856350875063178076801435406735020904591732423690620528488683637920\
586705670178345337420920197719153759611864653646475011549396096603632613410398\
442458287739372858633267659254675943063964809489439771449023379900805547134910\
686361815923340639109276342603925415772121896547208419426742519197875593534268\
371297743896150568831912804924794834668060879975907584083669392819081068468860\
297248744335333355460713387849336948984645272069287223353542951705736391310170\
995931511001513170194200850400143088866137104010110931866130970796339375130420\
125224000711090225161668471128026705925656187246679744844909921440614789172322\
476459492616154478871294868576777940179868056198192700219960285322900669404198\
145925314870097646772863157259358532648471259987470751964535385921290420479218\
529996667383507820829109759312729618137874617847244302955725053916410650923346\
052659025094486732667660303685612499122118468106391896109420300738017354546019\
554345027602546980544048444792204956308502706825234416331363510808339071882862\
042396511835873366128741814938013742525119625778652475115852857851968015951614\
931938495023849475151072145987369516496177189323565947080366795375747250155572\
917240389480760422919144919575711220081175280766106548573921174555891870723717\
633850709848460492132573415866668075754826043275371788430903978113342519217167\
648506742802544652404011584553572565605897316182131429186471762217481825568122\
077725915671466533356279308984496914752073235287931493143561705108268532558275\
582703932824837594364521694710694356699655104729201297704523418618636664597401\
945185810536652153442650483429837907571027340229347614993983318774726052059203\
254979521096598978540500731578449369775077381942642510598230703522180159782578\
873975892664257946080812632422520414053587881903668925743368967815049588539416\
069946564266253355699591089990720413441282890282174897048363262903329428837031\
168120386369494730705676714503399559129749531059743728254530734041869675630017\
320424016452458895140877679777047710990273478335847476997478546004810632398916\
005532990071751908056277695947469812263745090707772401633380322747548596668628\
484404647650613832373609381407896265202099513371114109347136191962979994687831\
892044088362003153969134388699699672818350361107240963177694185787199326197482\
722403008754639127946757052697673559935073895639667288819807456917553294284172\
974277412156668165996887311177487161875902669774814813646376871196563133303254\
236027922021519591268795112136603371964698510663941004899201901829782162195461\
577602801929269460894431343554791738080399982617507423987655034008698146572938\
841759819686769527035145808656496415356271551785438179703839315965285321329532\
764097278392018230262260635963528729945913026105591549587273007880125963626560\
416286280863859502246062210274315688576424851640858086179865080275446019903973\
371089079514495743110556626665533589145763124136400318627320146310100122853294\
412792769923307807212968866309755803153356050797426976518734251708553191058496\
269094053665949346846235572440502817642945126734798802424732334503235736382757\
891761982063106241505113080275194404860499143120989570357244180927910800332684\
955031820810204731894648248079065235793082491425820878850703925336501843468797\
312382007105526211335770119718682180553253139815276698786502654886647055189916\
321636956904370592814347212030302917068410059360500904828583547132654324145160\
728536620402626111404194756301794012995974573914143682254962659187223773499600\
259033164552889524464000259595362682990747179195176972953744872190382842955736\
451578545689710767180072863041643646743193801393854490723542408200663837757423\
535739543432254030567915281494016710248172044968143099924994242521026290723657\
300240676326761705306933748424512254232436710303675544873650425160007988287963\
050552046643685678341419569695798269690454333078413706761593608886410208913197\
143776830984172675646995307428741735461027018622372289982513811276380291370940\
986984513790783254955902595627923988893492064849332072709831047319532504273882\
511173934033809546392049919076894121198936224971799627028766281474245315525286\
864398150310098943250313346681620294343676519324272045410663709249756272521690\
031385678678330107542013604503777361948939931801921271401407617746795400792880\
402501479887359544993418260522568931523014075439002475516222263246046005601590\
426841329529164407464599058987808358204338623868697495389095120584629426934113\
491600948559106230440700469209611941436637040428032977359247546496063370457608\
049161367868931728367603956871678978347934904486833588737401979709134913754111\
120109157661040619927889839368368364017140680895426382180855338025410190877674\
343225578561746386558192371303449088468285186454745118827272837407310514807992\
066563655132781853756450128590538375376788361266608719019221205656743237190256\
648419689985529833104712422798742861476316017343560874682821664707992557250972\
307553488405196741246240275731518979218069343469054068797037678553709103097055\
766485818987780606993601233212335194884600264560055265352465398595812532419439\
628003844138784658055673993317030614937228599592423979936963359653484187564870\
778994996919319038965932570210038844536700476463364160230777342936888928046608\
262671003937777108585628380465445879747475643648997505342009056225728435466319\
637698575062335130606889867502486016307555623475137354320257480201956574956733\
790899995261573752725926686402542960126437562928074960760864622354367671902882\
433230665141064737519239717094583141594924907686675439440165476398906159133086\
474283212774003859385788683399425491498855132009882185234804236060498651118333\
675095229332672688977084767418584400913590180281761853015110514317845605531414\
404994113708064556754069838049935248748831546808278583053989483519767832902155\
550312189323499445904836427987585251944355064206584312792856513293212292711993\
283287988005989851729063468816155087860261463745278786019880142509453499592953\
772120852320071665473134222582554272294849414226970544929233351582977900196040\
075494552829680827719520421552242350116124760596608364995180080739967121678224\
157221352110767074626522780421595828778640663919437548762153845484411016447385\
818239617144900870456115831679242221014020121976271248767848066709164000338993\
379659684296670819829541990868942456847362190044676290342403930872720522669862\
774694828504893276727904050573359026853392876179380961842446777854986957217143\
656294919331007244235225303157935245170336842660893887901610380323125971376077\
984489852410143373783094994133634829511075897013231113577651765862013031733407\
654818119674774376975032452200782232387951314078443567579213590012953873652913\
030258495202194416509285461770714787216493622756135422031063062509568461744862\
528016415624128325697888492182103586457599652984913385655656734028741957783720\
846780633908450203221589947869479260478790150721076809111850910873006535419795\
142146733254393447236071412852347760957320664622033721037371562038588567469851\
762760238520745838227076812071570400305875761151431699329564017269195669154253\
923873020874941659283696244771267865006398514161563261225230676332048423081190\
719016905035849103881190352522368866680020424800550598819615118328676233072020\
095331850596626159631645490215718680623947233501601476757030401041219500304364\
438740202370784688006500516110975735127385023352853001323008612447099197238657\
379816969643852507940458231495895947342433149763362847915688313148239324773425\
763160062457558343838582489772294537880754264908166686953665749586747175949680\
268745595426584466173958262108894467183019214973532655883369185247444981755049\
206688585133911605312511661050648656436735595550631909213276773922355519599608\
524116609433206150070146033895543454946655461282189610117499968010440115282469\
051192060878410688647711231000865194806914564708317746337448932170157519085400\
637986401092769176269938455115273359919197475755024028596435958987439335748437\
145157339251450442814654916662974714086258369937982290742284034289373393852329\
614487116386401901638170725972339802854819180293582090307629273412045563685806\
760431143521964551128517187242339278947933889805276371440620596090622718105268\
747356944627149495550034072429889556545835234151578464989166351109714431529547\
593592979836460988235004458953056713952081521260413822128162848745308109077472\
257146571765159076225876661260502189850558043597892728080261450811129335705587\
203767700529912814991699479491618225228887048070335427708067200383214445390757\
652306939914814238149718865466892446940423175426960232229538955361739456147991\
415469273551152489883629182652824154462636867316387118920812379364640390589961\
835339082140606536693696367043797568308045153292376174440700102716574052919525\
440307169497651909266800356619178123302146793523267226129035661708580412846061\
190510444151158802863187587798866498672543151433447676781457777911343135695068\
859883190158796922463291580910308367845128414008056602243638026911323411895824\
087010179092189566829671090208598871352832740685229262114114845714204064535248\
465102900241594820311113731846975147717403289632684950328746782574901805509544\
773067897742140511131473677297591864289640100360206075104965016285286748284115\
542719863260358169477264732268634876354124261956472630892654626274616469283884\
686746754861937153866428020133388555231787762167535266131218476111485957477443\
159732527890594669490980071003205282469583926521602641191392014298693292549527\
757154082736706387764542545861099988737968081364274169379546437730628271792147\
274584459656312614931172806027982136945957800056790165838558576218468047734302\
413615100200118446135023405144766792692656614182868838439242648255352161006770\
356578442570465700629018546682767518426748528247675966608197050207347054556641\
321561736434143934095758676834248273084855621862581894681316137258948340403330\
933905428932560707369525448286585710258338555724643906760032332733366447993468\
636444262642629657852605782596296975868554469442390379800846897856457775756008\
069191327238097341046083702039274092736587622826371131730451926596759834583244\
160696863364011949090473126050255188303768151865428486570441762936441032566689\
845626306826368627574513457306936642130565331701363684050287619960977088969714\
391302546545149917179573390879021928813882961646195526980249604191986335508300\
660190093306459855400572725386598051161811644460193008650343701280193747591505\
381970181656175025090958908846379006193461335707680127594203485337563974272547\
511846875353257254839768005940036225119023954407021865322692235497812823403989\
001732854877059801538718542706529920031397337630049731128204838655334929756336\
332437553515386845930652885377880666900680200758443043359229542146581552747443\
297025998938110657056669075531200533830003958532281892489451875137376634257176\
154377429728885673283153266304693922926370841300027064525428929634754857839363\
672597670456032630048137560556521240350071224470177907915493306013842395550972\
554954712532444034232861629609696469381108930194392753933931679656741813930016\
281955916377318615179749662797881216140296552798610658713239299634995855038916\
904652829444373536755914182430559668849735108807608007688228969156658406492090\
686289950801254138451548160784607589058010618074904507665189031764513627647301\
239115712713658163362465615036491958997932119367180996594822135376506456383619\
996496812692963508747027970914501886355450280073905133041171858258629143858040\
700749438618337940214801133378486635714315790810944643082296310844628515222296\
861837020350147429075704165531479892017286454167340664417575584589903087120139\
721047239034457339760738967417370174790312264181199876782582662588785300684967\
080605641233869742958367398753755004023578968748185201497180002429188942205604\
102801044562313024230016782795672069193204311603495671596958740538370222343505\
113026905896602618845716099076333004291334030663432500510010866557452778862233\
542896260309134215769226816101012478255153269629012564511577502484643322928489\
618400283222640481829082082065417001064621292327187619605870961278909900244698\
358569509025376589069191764705519104699453469461596854755980624148720657852175\
919290748929521415199336991661327369125504365450059110073238888910912727356492\
343302588384566289572827217397137622632137358392205790854579889937436446166141\
961818579737869109187453011328386016771796522009034587671324565276257096892768\
348618704823579304818664917703225672886914928423001859499295715117386127391801\
161738700570981231377033879801579979428828546174999197348582007491106836738897\
711497159905879715806083619617098047361590607424261411935010064311542567102431\
829029016496064221241723826630100790245452060834236494889560243102018489242053\
036205695508922183672447220935245033391898011143234434623757007526127804490572\
546207372570009327568951481991634368422428940262023696406568884267097947079490\
070268499486434693991185881532166000767638526806977013980895827961978552257745\
685749783232761234682704907711226526730805580222344848845652614852383787065999\
661015941243648711335727248224270992623772780349572539048019393436615928922227\
623763557657725930998347877598150363901287652732307490944496702291493114006402\
387636257614637253870371363423310401565135253836609237958093190334434601740943\
059270328081900920059744730447125634255564843043850282684818700616469357852047\
479656040609047837878632111677404100261953856684188467997359493791589483419597\
060905157868180966435605736640845813959959370625624904118600822610807522589160\
901846577887165408726945166322075522745128097608850337024088921271064097313211\
720560414897525993676942717557056826509844787765744765106201695387658111607942\
440549194104941384295151886490386390577623956129395549682701434145026181032725\
814093330692535228379010547443965753920034581860325094286241699361595073281084\
570926559219850286434048150850947518417426274928652189418624493348446417835861\
230448670164444143565132919715735810631578720996276563927541343478351846431970\
196379952046917465514930488970083506456245112991937800042540247384619176097413\
726985795547781186713021224863343555832105323263331040503665206957245246627007\
365003540083994502892358859462272035694098472534974493920029720597713419359681\
779640197413945838481955758629645202785133438985421835723870530409729294954464\
546748667683672300444119458080804053323848611426148876967819753093343359829341\
775401632543344161518051987391042417139978713254161018079208166059493099763588\
430191415046928050840845452841923434254782580554092901193549458737974335554321\
087660602961309339789201576354731526108794520635935524211277080231877173920916\
545245100136951035249732877795025975115328983637586600199740046174202242191866\
925828124826610062038369588882530450458430870765782963156301770341244493009165\
039982499716323055688040804326469413409554075256098482326693433645899340360236\
846977465843299911085510364809815365818199541117367289574128637886428247163449\
266454218299626129401582310465353095065988195764226466859378330840045548286209\
641341756564791821815369051243146776078347009280028895787370952361195206474721\
121816385085296902505730763705152613841819989471839387461762229627194901730012\
400717954183610293687530675803828455275804668759846768400406522314737244042518\
510333403873318369734810825405691627987434174718583552433280998841442763300897\
735839167655080615446720771451473871965412188857236562231248158424736193567334\
301873091723974783758487876876602154525539985246531026851531298582916321624317\
413095121855239874426513332144688235519510789759165751159308950389217066857438\
459691893211197786387417023302476715107961222594323678337342019579047277051027\
390651038777767683736638141575203791331531188650428748118824933511414962194612\
228684294388843391992969605863280080132021480353439965621081462448835483600175\
202545045597136245679995065498906949310759935168947760124228124315220616351123\
589639646760219149411711901501907512523599471178569212702935333071334066096927\
106533622318678373220602010487197698303599813801535987004889672812044021723829\
959228335498341964579605625029408518825651767031401223065949749252729775996719\
475653599821266930592587259394716824450492901239231774423136236028109935999111\
024698449090378742943224986641957045343408103876759324209522151431826407191949\
836021432793513835214836258817780255890117591686879051661933570651414565947817\
795426573120562734675328744824949573218603654240638515873990670137541234625941\
321206064506433995458582594392358405843244232434888707966277936532146123617280\
779405778588393116883861421789287834527810528441922757617076611475502018444636\
676831405813789776839231179835811812992122905711562158275965329116007083756466\
898990868284805301833352501034148894395487128003915946207248975795253147369147\
761798917857852747048926691851796031194216461940660391698319357171086641601150\
613806039657148492850066660449119802562329015849251261826751548737386264834997\
557135941233645579822451539480336453938485150286985109838871051563728063803249\
257292648097203972597682616847305108974260275882714848462302675531445146355339\
932943710970479322215511999148034879494639332961488084738343550508797297289088\
548528220201538314310691783603025290166842972640940342616091340863711415754254\
787299130671592393633870505688387135867703471688742435623925188268116754189441\
510399741652344267482447897134216969353956515088558383989222512062588001159486\
806890187864127356996433649896996025868192422925115559239729717778141596024610\
854988615498579646868224305081750951781749567741946265118455717256037868269266\
446473996023798588553494885876976960008040276375729905549588684655463422535535\
104795239270717001389727783046226148786754875130458573060723109792251154107176\
223785344813824075277350199128380783712137395495875266514395514796459438792709\
304875035469458309495807676362270310746200700923971473197655634795631581170636\
767532867874153936194994316843023932898757393083021526761506162584649569842000\
225154163909590425421103939045537477889273717727128681160393088059733999106590\
645412154107938406318102091762528572000241271014436378945423424192223818575743\
926405587530212744432762291953649486302705422255611304915188121695483673964173\
096016844205653560027278936135785840203949978707406946321263691099146349825300\
367643664933249506439188800636961006334762199362459803037350886340692901481184\
894989094287278534649456114089678638795616377424565289993348573719224998447817\
451484795757661722826994255022287948883285555278057665399277320041520867060535\
420461812065782674293277859935690043372244139171955220332677409685605889902657\
204236333810924880510872265088624218328015627823797390409353875850941492442930\
227828163203267826384897837089522373283031907889713817850518871083934749534620\
394662600131568207814462309986681126639946126812419255734595072995136144528074\
085741907291756118533039041528257975224291955724365629048517445365922950524397\
792593365918985824693598080840731959391167073333433636707663764306843876320265\
109346521693060462603515170574374391088009666833110748487149967291130839280841\
920679617244145508277756897008646954391351459770004341972978719076934928606457\
199789882967569405454068468684721178213045377269631775055936336031304224279173\
797258434044472149421037022687447147645251701038344039624700374169101145260749\
128244843157110549789943592224985857479616391680723528991120412728634860185854\
315262402175183096862474489333001657139712608965766931033752195350287091462298\
593654405314937289243509751535759192505968413431771420391610296941493352715211\
082189683101330683796832053370302688833884694916133647459100862264007446673339\
460423111289046349067001417044771463473650477506759245375203277885605170868373\
217161229396068932159008121295127891546765266774325857113702517861876398188167\
548600962121478860411562780410012904855545633871576129311782493664196053760282\
396620355260859575497491684118100520656718655045771928738442028692624687744551\
278115928267021997855027671895977411002943362432300817610179266109403652176955\
063602592267050804567471689304724344102503253294145108050722858421153407734981\
626087359142399475709239399594830963364516290410262452274577912451077191624778\
415439306621992274917856135160389543025846863502191661068085765343459373623519\
735551927588393344528694397689666114747584780703279748446379579388049176563901\
208403556908661961481676674897001946264820337827464620272333308903720525618471\
208333869891363667767925999586872910930015366030919508254858147439359481447712\
902719117563017929394450111850104411591482578279877766917707855793559290116247\
548955905031283477640583128721725214637850002265897513504416433255850745063991\
276720914204106574340160211476680224669202270516278549578701817558398052412691\
239353655223593313974478310053576760202468945506308613032419253333927378310270\
059530415743310707980301984776889308378808888664236147559766791428140103358269\
566518218190273498828669091099868895029247393718219278185297195394066454153927\
733351873027692809914001493884001132876300393135696121251738709524165098527227\
754817993647285339587922165421051762867712211738248826521310501338222893365006\
682142673958977333198579838614213031523704961071890108228770948435412653891411\
588613381086252618268868836272465385508789158809574735495720145815374311760599\
109775850493176336853166074845071022072260069477156816992383814838461376909644\
955980557380269623253903545072759508064380485495787328643807687083992284371015\
039586349705750329836517877137557830539195120335246452868779186837890598270574\
950370982674117198432650330843449924661116147377418024273511613501141335316071\
791788590904728163945346294852521445970124431210031400465176744660757304843671\
728176614826213982735871424264770377643873609946152102386313180370532842013255\
899783792435745610882567091307734797695212848598546477631513695237083288479937\
990538285073035559207977804543931205686554938038461750865266482857427413921178\
345447404504685782094351262926534946906934519385642749620111617255960076931253\
658444351915886316028336094949490407726141311011702984567056162653835990936475\
455676211456773352572602953163705671842031148173721209981433257275850692831668\
363571401545224364534867794990140187347028037451798851302443351611493193711982\
024074084591369124242937123763984160878593905775822352853504733575880832725230\
367794384423798848134986738216717399283966127671125380228269591959792295248703\
382067620646238732759097999204295997106212549758036448949082472719333162395178\
202822624484240910660652795084788927933990950261393009360531106868342161773799\
062736243995356182890560841801143313923496297469761282338446335464575536661915\
310302573166383461623059727414831190538448809540564440353038296381170848110226\
168103864986240259491866724360862492456297887679417700735766630217954340910298\
984684711554596405766502573723537222341923822296084725625231992526587164511341\
858047897979987043771949953025163045712731474952165559567553716001411593876406\
469147855711035202264967763374602944598361190209638730109734643105150546356560\
907170639852707884312829257345826211304229314124413178695551973573060514205459\
253482559063045232693677033766662769122740302809479414251216406794668489387608\
594721296965589528710123042546440590059080928569364872212670302953716267891156\
743455057348251626834790864918102207741303364597347212949504439922834128397923\
746874432792385728914289433649751612953998443059847549858769891703868404115115\
753990958770277820684283704458442112629973575633214731843794342086273445968337\
916337228543129470883380334078458998757279835231447850957955287178387827966821\
175554121801852954253723289212268459108050175103462689059477901816060720617833\
890615977934021413457250186763822836644574468888196912770921133469735535327433\
698700200029651958562169951440430453826162092952637711498788981816998216437983\
953790762230011299981991432122372878920666905698540435909671509454676886433705\
462571241429186122334681019116812126422915411309065427680495936862983706668250\
655871861982360214870670898309311764587361769318627970095946680193086302357314\
095395643810257093575670363945317617314336642068106269713567710088746188757712\
921174679802600347094885758772171766704300827901725388120303207478501033354049\
183414243241924259020667145280758322248460670787246654530923808669850256792060\
196192154957979546131353325231508713388679487144097110782126705664638697786580\
745586612158183866373940383860202113551879359364295397711491283360013889703658\
474122310912651973208352837629343016119771480892420506680754924499049814424816\
450229103719528699224266285342990783887983661974252743403849193847466176785150\
080492396016357361063852908393759989093722504128436417873033292437279701915424\
144905515885319474259610062315266596277885781924110133384462486594994961915282\
772194208261537241933628265283362814379024944742023018552650521497857412761934\
997656601260780772891518933356469405139385114781300724863666255036412811529129\
882646525965973629772675246609256956401540737808481391030357704987212684612723\
943056710719543170023543492233787351304580303933244038330737524649433444799913\
144404918514506226881962988223770776366647865541146744959152453972174177804487\
502318746212382580588946910759961725466533906784020371177398752134730479067051\
089857870107294270770972094982387888754250695957603654335326871711425410390256\
166279518118675015761387946913560753018639363349946421185806910844223895297494\
243883085176078220751965902297705318790135811329206919431473497859814526298077\
590129194560402868683098632161214271144526368949411498934245079132153080780414\
820654391925316037279340940023797341544552871903497399879480874234797575652080\
380173514194765070261080273455726972398824461119122349255695414913290835565861\
708454744288628338469850470224045029606393308198378628787467255988543807121775\
383422773001658422023094193345932808313346754189159122402620245416963504937984\
783964005976179066196295881731120192046558280551231881747230154849007223622838\
523451564539400595085407046691994151158994148116657759513102066531834820220481\
946501625435805700098829801701934261438341586266323061920398494294746669464734\
113687121302736981295946770692057792426288745405959365013151037612969183564203\
960894477012159119636653266505666693383661606722898811415055887920493346182661\
158145765159732232057933529306863289858930836990556940194951469872673021423415\
543939559232666508666176546203860821610570235439556155055196981612837439646989\
161834630799260007725589838458093657734712154771705424314904322339318742318105\
881912522131265033447189200668474109388791494915963017817314985561538070742607\
437201994914101088472055047318490263242293222546293378988375233669063231506184\
276474921949898637880098234626687958169608828695641996969371512432915994850349\
923815440917369835144120560740716276793859704834914417227287317886088818491566\
652060277773556519201443023502615010540159256871438708917084234927846846771266\
562847208582373313800256631385902255230669648058067479691847266688226442273975\
473831921901591641501005035818312951680718204316569444782538733330567667782386\
961836929356534712690497452754756492670920029900940651675306866431639985684503\
119727742927230267530726712753334940401775265387839960232850636347397037768854\
829657761876974123464126496275635083594512442578548780795499526071480357469760\
994573805618112762793316697668858309238322405629230679436196884502803323834466\
355288794766535890271849500524852650046140409385046649840648210927290172115570\
658561480381664287184077088551308856138205112539871932841475743566739403911252\
368719131805392357167419995215106341998906774316039056698426147911441994781887\
754768047728610582834153945329246103552483001132526245697923120767125767607119\
267356745580760230977500356993694253910315736570160623314325859803635816676933\
436061545979433093087347541848248817728580683723713414223113044155822146823232\
230974738086328713061087572932652739381792816952371882515073788578512994036324\
058041294346931238292161585586132620108541364459602093906660956483313428686387\
044711203775714400705305972910673141628017079022564091913698327278619403345679\
992451690831044347269093963453995796587262298827672182766109591015580300379932\
071280591180316019237247126995182323954853098391611867834214063716420010733311\
433626392996835750250914131488376128908546921197778328707570404789865136829998\
731713098071140891165902464586138374799462678764640525606322545340111052458869\
876986751418303703452033996373194080600926861910355192929704566988579253144999\
412080442083895742488561451543195281258464842141207282032494565485877918868755\
323051144559557473466141519744157630180928877473316274038372337360635763108145\
022679616709896741056966038869448994103412792440182247271187139788754475514299\
081662627835991111369517156597425343119293427755156327902434149832008263595622\
073780317225923954456102255638382264747261021039688318484700067646863820697967\
582220366223317416023522682167282998604737108223025551130422060685599141765322\
499989227391777803133511154833407360345932303948937924218342064477365491724030\
960864325872759989355918462384292899284574309658874768260769885695308468925526\
682366875937641460440562290616654169715740248441146934988135691668797612674350\
496939763712320379558565574568498352271337423649229419591466444971322315780868\
952478309618448488085945751001502128013007064564377694049198643128932315595073\
018694943590565367528411527096866630619691080733905292483781812722750971278555\
184200632753577019994814572630956116198703901128682581697918038554963635310886\
409407137535326380591060414503549164436596473922254430201758261863640787685544\
392461548913114389346266297897732592059213389970569638904085408431317620061881\
688758891053078393292522450219536385124669840036244853613504980261821246611010\
980431628284829893784786258827463212875664177194906985643193354537958886712881\
416640955832721596687477042866435086212492478849342104155651386938359490590813\
731007274452894958432366166484657364801577225531302283055924337494756713214764\
324452279472213643497030842672541879858383899471978437103284675811055900670545\
902352528459779979014073982450578637880691629215981550229288305651085931872461\
058683602814608797720671088193138517462680166106370583582348307591352129652227\
839816171308504595634722535669148156470953855262292785424274238321963571350948\
332856309049360105575379605840741304255663570948051682952728976828414010492686\
061753457520890489284911353639844658125756902329730717476107617774411016386377\
176321938439627962132518003223195553959423807111809145544038788398009056169014\
616552162679948010775939927474699082881238361177298412274561206336455355041620\
594328522820612519174570617989965615348036612837115662324561068555540370393997\
626008649948614380974596336279636994475713840653052257867479492926519340755092\
265542136113759514136759067744836614401519519139224099281236438702375798268276\
781742183361441733775538426201449316168519989917830651911835386951129271397316\
855412167928175682662215361063252853980344507679029050484288364965470292907852\
083668537807001297156811896483186488398872141762091987575411773334658492292201\
197541371961489354254247350495499034825502425800049562608987764989116014452139\
359791425049297850810080022952896069400584302670075425057066084465071798812527\
659747776106332986245191054975967369929947237419683409420996438809857142222372\
165355272309994113249445793397555825975303535719505110547634856252562320325618\
595562383395147853962659334762555572869284622564822765969918168156602219917465\
550294825782775871898162303833895863129063787260413879918718035928757830057032\
328608063398684642329284827757835405636946014476298884056766067301361873917351\
608873075531503609615447334518933855406022166338551465480645936532900283645010\
008356500646109811047860645126216193114783068506920420414408417515912629572628\
724144968597830415725756841313321122116030273786399036518390144328275658277992\
525429995668961139362762960639889445712422161473896414541055498227846240576628\
256761062111570895462410595369105526483796329029823919230662385020987917190905\
605580215721439633135260138057449615996419511305789492768574040170492039049290\
820107170034821125328710201677433497162419912800679978309919202137714752097928\
269861425543562930845703211871165388762878122714496827599427804062110437367315\
943969914320473666553878044993581896085206692403772635858927791120076353494219\
059965799547484846398014958852383908527120138146389120040275218982452008405957\
486579296529199682068640695503058361454946129446131925945843016598235633798177\
991100041644320753589196973289260246713331503353028192612257620755822475341713\
803441461952765315864369639448945331259574123869108342432991271550647154417035\
492930499971676480029570335693655236977046877009033897957880877085002609379861\
211312718834300091839457664213220414751840301092348405207995327606810215396534\
552730694687355842386884232756883408511184422189315387180496042981831835534945\
059187608201052224372471141289877784890380966305624752592711445510599385104514\
421053555650946891141284207267311804340675227227069535993676130106052552464853\
156141074910331704387356667721705695516263208260046948532591072130884641925103\
826723240412643108333591419517688135592832503986956276741801121631144985987313\
067881092307431847308023308118745705958241989463574027862833582200908334722959\
639316747022421854338192869696481420056521435943918308683028907375308923735994\
578694355480477248805682616724920931237624414648915748651175394647110934374012\
143730401241840773592467589737482514928510134271062526781508339235538832208975\
448779815334979713869779755073481653275460952273919883984847157921913304982187\
800369407500121420973297974632024243151721346758077922540404682229385981544029\
882202384269622550916174371973314966711549870137456264213928545310088065559899\
131366946644026662813220533392773047002617305784730302895000440116453907976703\
341935266569937706539431925636725909120297077912567543596739679448816168771800\
936321153635635149120870077142588238989568055616280659130287495466457930146339\
229874239778737559982702740135224668794674616946120417708820919698861455892786\
379221953672990154208228281627739083123449104303573609810519389362799379365400\
178850041723348114921882212400401491343700156302598245057800165450990585597713\
370020590427839247496350672965388335243548428859565303634013522380847011453704\
016805969109787211014181133511990268365990387125787827365426016328672870225556\
353994801420684753972530880293201274945669755855341239909005293839539063939527\
802348817837675467300943104114477198428158739852845712308588165745995458710497\
253180946366104911337505306578400922965926559228387267201447961263300635805850\
469367272992127039338708924639063921054147583807746471566488886460708060735601\
665847123326384375914614714980932908194923652692268601743864488057497529891027\
349476270224625519283651579950004128009063787810600545050799908344296992088277\
694472955268904705155188545365188600406208318194903740660935386481618576151847\
472163496831357551134629918358117599060333937584373300889852814078179904589735\
006224202740916814627637185772370864964249470982774594972306260266889532881762\
515811259868682531630482226568159901983357535450486638761688566658350133706408\
322223036449141858734958267426446279052638572574968397659703776106226382354008\
353231790093105262030185221688503928698777460244131708953682065301598159596077\
945298272676962461207953104436479878564831165093430679433187020081715268320331\
207283397757189100213397174563092382344686664327829642503382808926678489939248\
110221313465798509030364159957627286079002559688965530389264457450000872892142\
604026891216210360811691106611601144457635243076106872000036932271256873741938\
724215662315829515651850264980384040804207631355553254223204768078367006917986\
381085833710606848259993500299437240957521479654178529480523870851277439668729\
691804718418549585582485930874949208165337916478497020747357989739539835616995\
810423998841780166700007705376503523778101647861162814100154366180827750081287\
920016484314042396312285846467073466134650396923753191528982354317644799897212\
239848582240175107041431273256841060333757837382027706717017779741043132974781\
977096991362386271044210184702981543225897947458807342528180647505126244892470\
920465011944575919585260874555670755546081495888141041658027430993764483367046\
837520815644464909422314071525086088197812453473318438319566637267821987957028\
475437751989823542262310455864968319209727001528248288894932443661683804139483\
610916844309940185571292675653675104641356630922078930667957821651288848904536\
306737410647066008893672736591199547388392314379734242952771211287512841709293\
630972558430204525385402683497299786492905873850535781659985585830136186306231\
175173383451740236624338479344985391083896106668614901218353040335319007991703\
481484899527729055944630668913269072979737641836782766104131974980173413788285\
702014683470269705124357350280631497468238806147514324142810657106811573286224\
471311346451861309434575054138403119569864580698201437559707610402069741059099\
886448573255180506915807321129207972288005816016226271033880411497762669115544\
119922975003995557145128221709740281170043757662718540090065865645037087606024\
784048419481592414121658448427039649853043872352052068111452952822245611014707\
691260001042650513681257925189531618358978360492336897239872791593815839771868\
042836378614372414239664157846334452958608050085721041530908265309278650550241\
247360607155528583666988523817487483447342168918771009181319985113028108519626\
364964649468063125222947409588333606697663622058914212000332177596889777724239\
963444278670293957642352397641608313484145264840206273673899230653049408728919\
548458963827633206761820208497840348900607911561930440907910181963329434430342\
117752864589003360891448492880662964124552236183049689685623445414313623436760\
203550061521957980251256686388501162370768238085430820168281182204050750542179\
751578765820031810627498148043748121604485621866358497392169229236043240168028\
722885771734773038779213866524101040831989789726223671970111419840221309552107\
854869673727108351807596905265787145885126032265559468603289036410785659515825\
969207781535498315475325709984780175551222509421115201329916794075049554399275\
340703312938573419715786834270563274848589614076613035910476867734913344394582\
563423282228644973747965921814926951260198541601512277002281019683114887815640\
910878897394512958667854440596523252430299373531208259109430285090240868615170\
746108431473240168969722461512717067073086661406730103043103192728732576852375\
609149720647181793257318170225144554563130344565176639578863224464659399634069\
460115277714997255131279344476579135563702179194109476642947756892465966339131\
524109395427572576248170632684487259277168916196943642915716696919774481168837\
762436126534785963770275692371838767194905434031227735573456682304866101812901\
073447253846010062966363693941494005287069311196091372132714899822987725128968\
015326689485993304798373493152129917002971393483195027544085787894530728825126\
911752481707231145614802892072472241001753778955868664497533419430468650346177\
510810224060845979003552186452233654478580013766054546522805235911331125882229\
004161458799120252676553190692321078565132931953934954978586474124926664654424\
209203384928100223331237095362907691695541182539741689681332317138266185647969\
232154792179852780804100229643036700222012248580108932532908510982019401961015\
784855651719383389045831059430748265092547570063763973643366717279352797049923\
581642227689434536606057009593542075208410093731308297746516136195799897171928\
033279544863568139492519419171015897038266661359432560860034043835833227883275\
216934093905063633605918126078275549794762989896297954665210800449391332001465\
242834244675883867230563964505797114182840831027531625297648269024310813443958\
955765210929359947803670845528327307537199476600591066454993055526358817568585\
975738823602467372684864707791864254852158996020185545688780832779153239865185\
484912670075387839117683666491600986329407261627903243573962714428909664272432\
477924132640394255588548598264409332347627960596580105920946096948208872451436\
974789200231781731706392031579524662860628982490812318076097692250246202786711\
511732025165019940743429621824750300155239216577896241133717151507090842001075\
091268025060240409613719886472187621888517460821558524511983031057871657159290\
714986101786238803202331938802851908240276190426480723812728231927089529696326\
053306445776339528515923521358728194881782047952343272829928392103557236251137\
546820337018245622173914128466206373530478796005852065491453880821052475873275\
101865657863493887554893790907473095337072117046056750056150448828812267431197\
663030847572856000292210406468263724213283862029903938999729785256869685665538\
111707039853705107829102276728876931887851374843680087020983162316634225616733\
576581659933206220087442607063943765700848442850730804993334275285040767738108\
002893031891158519976293346563998270400094783600443399347106494093503517818321\
945616278815936628944005949534178364732850789971204059161881095864982485883902\
983546945141993316426562184828790532884836443668632939562648389722084357680847\
602507131271604792256993537724477814952086380421736492624002405091269593788647\
626250474856756445501401812138235573295477037353629288827697505503095407376229\
875306657972483371794546946671525231060683883540539055981164594520476318100140\
220482156899400951701323726477436786196862686239195128625750686017284552237487\
079739561785264226176757357370619212956958424342079562243281528360954134650608\
011603750449545762109680365337898854766382419776236758353863601810613727313562\
349099097436098235131439065660344271158018119504420826787152979688231716996728\
658793410278201567701989893808576340143603326837443491453638821963380324994504\
261994427062670328061161572135256541974510842312823424570819230372771903290655\
985434014593987545632005249515108366305973891373627506535409686414117968927514\
989748357319173479425845077087711440273518034645747722802867799983401221505392\
192497070753502221944217542465160362411873698826059676972748052702159000802082\
604465446184186959764536726350407281494032084811864279639738572708829482622891\
254434003066238505583052883170216280890009572250179427581360748588726408109197\
016355890256670046466142850157044236868703789394287688963373469842983081830841\
069277897241023652725232403245012664261254351372272151277201128348859222180925\
477663756121721856215120040210659492442039720892250414563072791206793308038982\
168923080433045615730821065579755050348032601618125104279385909255931059599388\
869179594689511742328677896696764063406210517575018184565603813115687654107308\
357483617481787479972794236053818248638708401679303256699504972497765958757179\
931898480145713775782343064772142323102954052909736511647754617818088638274255\
270350356732827704938195765184554472631959080940545336378115832537600698034033\
055094019849363989626126672505088494255048813032713654510173113439391355102440\
579714365197788731667460760084431000648065255605449597883757617891752464307945\
841935035634605937409778454313029238931530919422788788082882480756465934158570\
250377961443677567306929400613390711734213016302072840496627765270707316569237\
329303221124213313397866088138515989065276394446987040892874465887186578320692\
679310705050505450782522984280284372898529987672769268996266405573438824237367\
754500509713849361796388497968790777854858769433728336737320872177433603896118\
127531952140085031428941429084922787242684094579523395609075794895248657695469\
482371231825100140916210463122002957176463673265046171247317946900270160257695\
433730040561814664810700104175165544949257653152327035818994136928380294702439\
964026035468553495904153770841505610677423656972578588290553495313804341578835\
024401883429712885158015317681200075461579398771947124390424352711055383296098\
465575952427944969074965634523481253343521493542377752591772223494534048680215\
247461979325543308672643670455518348391212711337009436217345474855260035553475\
535540654492626253213348505383474647325636999670550350957176559695289664092835\
453251676696762521240519125500010854746993077264297282149957594771996082057443\
091083488344006329673152795761986483547138762093925579060737747612684142619110\
084835200883358903608163638248309786733626724783615667882315168810932067824660\
674522452339669400324880583524132978148160731610804250086056612669050711598892\
930611474174176722710233454155584685260697325650017585892916123293436668506149\
873836767647072846190124908238061893803190754608026728574068069956849005775227\
692073504553306601398869585174603392730708246448472652424808674027104277826375\
480878913480748826019866823765765757073892776168946064446460196656313892707387\
946005877534324502587410623933152162533252481507152908162924288019523700030017\
008966818043113132124939750304849240651086862506499228183365831413668856693604\
422237401611213984087481949953311817064230559779296464598234996332345377891591\
751951917753839041177207517275705721275131588314322821897845580982087242294154\
456116717088663524494356241892406006673282573946108252425509058013958561938576\
673800527703548513840549874102674062380172511955075312304636297381712423400532\
924493057428561434545963070770232647917394059446265845007458748735400282101871\
508203432772126612351545420713300303929054184602461667398558708047993787326677\
711187108479967519831338826900604404043244900348535501849360903012994504902464\
325012067205053767626861458620832219347970627882186221207975025412590623678704\
041466582814407066492323789585260962259472106322272897995845754302199962270324\
597273677261916134134350301031886907900269608805703372985381912443967132481365\
603779511452096667520563872821631242172518027172360905622272165866252711311468\
801863149906608762011845905430546687269317849595499124145706751579855972580024\
297823563776126081020746316990767563751343699501756703699203269180223487727187\
967601746159209800375988053233034838274869352849739336371328842917243259156987\
937115645098885148103944189865137013385008281431453180510275477641690500881659\
315958067182235296123408229028277474800428623415166511807230697098446333516170\
004344204436470182755531151296738746726606478104473323054122139039631963846085\
591090730432208513513885829132027275383156953540696505074628431369116634931303\
490451748788140697679891261521365014678023718334218619137579552300917261236716\
899176615553554510489773762615251242942183373403329207889941737359302043478792\
768556124069263226349709964726405785661522337895115796397082857379939324367251\
261306579557544751217186222506383253922368890296719169793445480801403786233115\
354504563678356261557546412283436338189682853599818026333706232127592844613304\
540845590801973365657287363379537219156332468417210286009587456227217459624831\
272069341462071047040653512053536853162357090881791015264723906466978293368811\
188086736643102068187062889484594947071577741411179600333817431708292872510642\
217105321593440680321433628414052083571971643955847696473690937269127571328438\
698498451394658778096127787495068535165225492755950141385402953526120903717212\
853302223491544491300718525935375631174165781641208617019247765180125228426751\
989245817332528216463479849472737226002997555509760076680992919482920479430371\
265628520920561757440571358325841935383871469630991697289742700904056798779726\
593260064708096440847319820074608072849764171297091246652454720257382446727024\
462962005705120644242419745751290033536419673309856000686228505643664457038328\
630067476933327516495302563472139118111768657158142504070934724965738506285118\
514335838542406717531070036224691111596906859296896874502764734892878622427089\
236912494706786902846700526820816140692197445305699465993960055664432298590602\
705639361587710829881793941876913978427366846933789810523205476387390869590644\
435600993364818609654951849894514336022444464618228745216403305030886733673615\
574844304621430921057415323122948434911470526784130284062711216051716024251012\
575997582261258202934825722818823336397674726676017781290487454527732153469213\
104210279852562918982788276111711171143880892997254401057479888232101722318750\
354410502516044342072796734873196084597314899587873870219697723150593533587817\
704442773561287176429447957648231899946943194914576768227250126077991430950844\
144186014403848245453194089156250909239903843579781270387471299825410551388406\
994044930738963348962828962313326149999402475074468685068001842427797937425643\
790203093068709684241497779828457454132032576767259736356228133872096281713501\
570145338113674644645330743882815867724296463213649303091488136824400572914165\
944378869055527783075091490261986687601088280912989728195513220113216655994227\
290361549504698278168600031601415625361007402906623809643347970584428694890147\
688790368337823810798338990752137159670074184510565254801248664161065236692669\
626661431800311786263459861180117687937661224041222115668607922459859619620173\
593144601427652513574481942901598699707136674519031353429398276727239574233527\
115036451705839909587106019252423729484549466622225639382774084767504587147879\
284652977650496208617701359460928570489008564877658133191345304715844403510681\
451509518668320624061079053905069430572753363909694818906276305650408368943767\
136189233020670151015667221026675750602723336310089399819168418281419343025477\
248820139043132362774867712281416621272957930763022980032080525359087038900184\
241565603205865752766389914941521956135601860221479124645999675684094621392332\
031201252974774492687168188320589779290222825963645265870927417728969014658057\
587022798093718340858690057494470976858007960264585081156377650570710631573847\
226562077177185102617110867536586235869088174550938219808104054739095743194138\
705664074507752483985000026428356927054497601629787842726016895319169444245430\
731858363861309956005475630053200351856767044684313611868501112818488324029146\
488475031342639635854912979485961813045860378767165601362948694368341375008672\
320325853809352406631123801207686901142009683379200089646990404116727038061696\
210893488967789992349156406457039259151660373400789804419373450184552485023838\
731321685256989650306805237086992702333749712632048607078951477377360202095000\
785503073194853993324777259608113737440029985099780001092515353238832194572633\
790982411314150555551930262981715106046475807084277089572438532739949241857550\
659606272701741945363290508128179508453926009373838787676873371494539903742591\
921162068465194019198191199856935336108429882799109020618335576310433678842868\
467957723608496106067089049931418047474437866904496228176351861632695034861638\
888911403204832257368598752730746247461590344644332871582827353085051287120922\
572156402030040325633718992867398788940974431695105470830808337256632501738891\
046346190116644312486662188180810645336883322869372278516595574461807954048935\
116243218994145266561382013251457401697281644016382731090569529948977201362549\
433123172249232630351176141291373472886776432946562896398833681980165410692815\
367024062021963543720729381752709128448138478695047645816199447127012033683729\
882130443308702916371018904688639751958819780695111112062315163017611285831940\
831646201390431387034435398047814933647547887476863701417237460693186024679063\
743409459144473876883240040821679830438792723125298617176985577082746764060163\
204818855894793613159486000091260193945370596063605641366654012166073211008455\
538736739104382199295810958134175319023852760362027843879163490039262717768584\
096431044057691592767765587737552349820340858347678411924983594969087372623957\
497554442079175573552117112469116310787259266958956505657879818015880680583056\
528807137775220672048307754665765532820944704929720872704870593688447265498119\
522936069190181439814385549841389961695326724351143081470223937324777983287248\
156197766088377509988722212140786688172150782760790757622817561023456937095772\
034181470430855042410933930175543330121898560016030938589678385861440396258310\
014892959770030421338821037466640303533674063015528106035409931399139517238217\
544672311318003751123278693310630212443684843793032151966716680048409919523354\
731087132861636609338613636258272797838313897990491185829348140433232296217057\
385474282729357716812915515469535038211111235570190439043870512566891219114482\
712737503771579447698441418386384137898185314843215317314773956547711581507487\
905548306841691797012332188564624345137072851155226640691321871083110213679420\
406849545454531307469283504404342828114447173488504620229922383047487312122676\
309547240190304827765670644329617188181526693667397829424679092855069504297184\
436187230051428704427885505294589086860358609551286305022298062687819096951859\
426608382510654966024417907304816702136630170768546085178466189439064508554626\
008757789883990949760187124552476048455804375281895609195659797095041794944737\
364267840894529277797107310092894366789567324878611943048371437200348978165213\
040271221833705793949184378357580993815218460122612223283528858004060601137126\
739185499213460385325035557630310252990346842642344707177615764564801632789345\
022446581403637342544430367873065434903586706563598640711215536675503977778345\
022284982879888323274029154432784331439226229093642671386163460696837272390612\
883446560361829907201168369563541321312998699736941305774353008324193943515719\
139617702943359452874672051600400070489490933315677836251887761864349980106455\
717929134394415253331744836843323331735952432744054054021070263346522695616809\
224403296167368398582023605846731536952981052626078496139998176196838463304687\
828775093047489452848112539297086751600306510528911047604011648133556281181558\
903026798268588848069332831948466469472812127229787732951189093348246611800892\
657542785143804110246179350159183282993384258505884106207026861330954578792161\
022813339088638948775967997187619783130400862030491368638997393117080754954680\
365838943518498383324223860883484370038763021068304851335435093483508705596213\
529603102826121790277132247938179505172069092211809591162138773046208733921715\
436882146287776709757397339225523946971629639329269659090936888658047131496066\
535238231790245713821038453467253328267909353581314373516597128658555136724769\
431733837788411565883515157419186677440339085985079342452629938912749845989773\
720989915235080872311730007142348285660513028413241530473434406826470713520628\
267182642002482953273271360294741190171341570643057619244463391576904057302475\
226291904172110888183130339728543576253825329716008743151735709813009808939657\
294121305158398773482785413582696757079956249726807948709839855106331994954672\
289112869335939073156817424597550074450169586351339994925257154739154688428670\
569217571296883391790540210922844635480749535243361949069569919248049309837059\
169310917467857667501979661808664158937478499774761097871975834360900634836111\
711488175007956260697940990626181533764963600509750475505974072791980679618363\
615643748099179575092773236441433797783311077485541354033379932451710389769786\
984830233167419057124396632546708188037295270055049875032523073647665520679356\
574913461883180521472380386525494106295004430635238900094098944240713463751305\
257486382796131647494611268055229200272521455502673501781759580826760371811491\
460561672431037316680134103705596961285561860075087969483946651816938139138273\
620878359814258884501799618318394977188398532682562447563449973407368475498654\
765651878892132344722123173501819417774194529519410067905071315033651371753999\
928484210257119772228524613931509644061431006761420861032673101638639315586184\
503514176447574507178277522134949204651756870269282304879837219174640405128361\
191848773619458516141158415398906576446650871047648844278587032349559863693188\
941017156242344908874306552879869038754848938323593141389440843500850651121690\
348785716775259986035511123382694401130899792343995388754370247395327222746771\
543220552549470818367137861854509555262013313265619876843218629790504079532262\
597191331593703217463782244870053700784670222156911777938719782999817609354968\
281773706029919003002086220508700351944353990792883859490668719550306387636074\
542677498347162232402768052512362058612567599361968814644782046867248449894999\
671403366289297768770416017251691122679878458222967369598618177579976416082814\
848352163172663054751069937428963606439746223581356250322113795799805640861155\
706865652268034661462904852741850148734460978376891996407141818396237535914393\
984980897074752510504990809209241284064964796865663513851183902671630584351319\
546938581591418550337130903153206288849023533156614898880874597171086842089350\
806196925866225766932868451621341566930720520174011716014597306937841554792581\
674954887036074496898616887293553371733419591898706213836070209608170430559730\
658604812657523747365375472164765199336148759924998314294814778061905890383092\
942975920481309087391383270086934091762068168910764818079639640852154261260277\
590485911584288270984727641575909306958020003424763172131415604323169070452615\
317986787596127969355703288676409701420020940936540729787431888772480359359724\
555518411168604912134649937818077991116896326718013710713932101400121205312965\
952978826849055372511442662503767147003642472505978273580748774071115192766266\
280495398932121499857364047879148747558426619691683375456825847716550348470796\
143836964916741563690155854420493850990185346254243121505990327313015235453787\
293626782222617237495485704521866196368677463313504226546683875010240694240320\
514213898797511247242086381123733084737741098572339445180470382171704691156513\
147728241068229251940510086419628370653019815446441732026222878856197979606283\
992701701346063456057483490558499093045900494906709243323134388598023112304249\
011756955881779211335334420070575534117590735770314646068620019564736559063702\
839489867828853129770454145195638282872972199193930234969372306238390729886733\
133969137405374600653891930303640337627623012123392604522632930543540036487895\
836375949361868319101757776714366785920195456272724854700854348347666552921391\
355760849299539416441409108014359250409265709568581561608376143331567159565117\
372101336040128554584225072327660636397443106180698876730137779819775235103280\
819040895852670293068489877573475698355466096194553686265087735707807144032120\
995297373695787041908637290723078917501269108767701388195383464752951083875331\
708807903165150714585694529345642288537338441304509772696466705820637969232870\
485352908722475974808074237288787423682928041899223207720929289683089835563617\
899915671687780393426269976280354299198922459831284561403496898519394997891302\
407056577964195199723620612180570735058036446713027845088657100203685099550273\
553450824096373224125999460893339829770686557267662875623854434773776160015307\
516486806020829510902662491499189167104537026553062948844848504866548231668680\
617874010767542109761678202125800415815029789623425437590977082547797411857932\
984247895371341457312624028550325717274089210525033772135447980589852676766563\
993455234331423830198683925272124993736565045051521067338837710426622608037040\
520167012379868952138292049205818460093365612008328521447503412842487788423252\
537119155510577018958175552967749610616249555530125256917500186752340967071384\
429543651045256428974690167204191442089277738665121957238776127804213038124946\
839977572377624334727654632551683707162192611011801822763029655724264245150168\
701169247154587909111366741247011622883569451709478695825601744040839828720951\
075356033068739448437699811218789116031179795684809559662657293869527967029675\
072299790951279351534349035698700605353768106109373975992772589637769667142566\
827244768238051357877353368145338503490500019492099035537848424623348402142453\
366223361223118631798762672644564614501427104866510109624954980995968027814258\
771915912217142033137726366131879700118732824283392586881588210757639932523143\
653428647443024018506609522923601978361692845896818504197154174526630281195401\
486336044411304223833359809442182559715229677337715983160905182150192803659981\
506425364408498559999281370509902617364316605572582181050493763762081630216416\
641226370923162256418284904795778731662960970081523042346798635089787177761176\
250746675916126843469110839919203977650738097704659453240074564025502609058533\
986738461537479822382742287785405318754851456316660633464125353596508527729674\
385948014455058372396166777103032805479868291796817368811198653968541959439964\
630534456082104275061678505386558973216410948944300134452283747096341653408830\
639764086590511325069767914392979573316620531560160145085885744387911534667792\
065010813274601169891530167486005654572609876494435573770565728492989947678921\
260233141674717201370380857392709405178593824129541652694893806096006056629914\
041758290900775676642819657558234335898676984561183888014253585326647492439035\
253945173403492784958070155503994564602093499135238711254966043121169854693845\
752192054472698615514785037722276249896386117545651673955333767137491306528719\
924152137661738398681955776818588134628522029107789096264537631422304999401489\
192640310838571882115488654240158857718554681796373782024596996495492011410956\
082475113742988378923929120018004384417017003824459513205083495948479863702495\
991464993847885842394647030930004263448389533845881108924954713869961172661719\
702124158884883115109697710475827252093315054675118414474039179450601864783461\
226956503281737724140991498342776055238051865424658111335539949619657309481637\
950591020224255721190020378245734750757151307748365902809251932950338495009566\
892797947219577993294568607425058917855950330415933004949078101976511574901357\
715516013812373598140973702848522923397305089424230612547607804250837717175839\
500879913093265696397478192589181166815825117292115949032206502576543447526872\
292924698632680011722998386604498625713730799547891494977300122077995128955658\
333286687771143678286252012044880408216604661399168080350683214480997771105174\
491056305176172238457848136660105610937355664861421427626609338779250891068010\
103624706190040296571990158652520706407017464829658647932638430246796706897464\
530032675650351431446167474067876431603071294391971921919741666031430408536055\
743560394531310934022584125368228715773324979758472182293851386770867245561516\
821107504866044254913220879988106949750662097632861853828892669081568702124625\
168889800532383723738187105893250424833801064572524367953187729783214470189892\
151958720334448428420906753438501287755819439476683940196203293841013762792102\
575922257210934592835819366250347778586107175020819818790871571848647641066298\
315059830852020389403367781857853324982887285015825629283510711943064600821933\
775351524201184237754719836424197807507618173522335767850308998216402618493117\
499496968241913453495723753076056038423538131921738871346039305942943293789451\
384207973908291242927687248990868863444123744966688059191588212474345858853332\
778450970335262951031820189881850906344581236042810277140615342654461374611522\
378760014403493430951280197514652530351691623201464028039614059474152103671990\
376767088316419700518149280444307247881379845782704157604056644023477034325190\
668096503054154886169563924611756030150861630081661452357070084466533690534214\
872384091278315106808114987831114179785955698042475978236843381806355149194291\
701984051310703998485491251951252076270366373599485284038798149618078956190047\
978570913020978694612123565664824609447948085611294556340724330907312928355464\
794871066872603808681090064629416385971384338429000241975534232564123986615808\
333839249018632175982168087065152987448001783685339125242470581259973518497582\
726654587104393079473519714762255471011661844998283397642442611495752242231781\
533364182498990810110497503387775261732375304961775211661788115220318588156336\
580602979761981680245312860529648362972543241279303587933577588613062274051609\
684842843403811447982323796123389226799659614628914240144358837539270490335035\
127443306102616879205262870951616359851145727518782622803722047375342687242226\
969034846145175637516408753487831692879618414025469617980276461526202130048820\
380596949049526961616583961957096908932914558322376286284486557680861814634323\
147377778938765089655950708328237775182395477084939286577775402265696295721945\
786660258891540385465854902157684745890678558832259816938927889174804327781339\
314759960157707830503138489715420094234455428199605805347404950925992675671823\
854621735649217709193708599734560857534648716514307310120161092162413813092731\
431597069378347403550972552348128415090756684285562964500329161611166478685234\
412512204660535064725364460057222219114203379544180507797502645754885090795604\
346264614255298588447262551516550028671297010083403980303119073955002941166722\
970425656056279999143826657040377524091207588691742090894856693872155238484799\
481357940347563043904709437477070817251127189676987352526464300382848700055866\
381664304412067393157645887184838714640468179093953741721434786474545772185800\
928871298431264313327269799339000492460633261456495931208985007149194268634678\
533115828711535861784486548688244642205856336789968656028137785461011964281388\
661451995925294274871999575026487258981375284746429776252439865250185211461790\
441046599129542074820271226547178218754069734476122567334678108312420634304517\
714765486542107960335948307010472574906946193927298598009497681157987413401500\
817248155827045515074239925366628501483555419293581026557476450001358702254412\
863024701594973621595247995074032293928625688001669138404520680383970355085344\
949925172758607350879784813764167410587641850568764310527407593455199774214582\
526265134880615017298699169865400606750969606935405219387125009276067447478030\
546465587520768220049927306157572310491909207920345168462507923211888273028062\
534730472118723094302605980728006329857166376108968408648204660016788461744444\
064634558216614484955320099127662574152271078553775290925953162541806219742463\
663632508486640527805017421936877678295651703836084434516108813947340252412757\
315581862768846897251476784003514514230069312863082279824041282049405706593844\
844675148406899360624548211403568326659653683895161180779829978142771472102066\
101053488608189495143287677862787549595612717775424785059888793586060222539389\
355514126152349970562883322004620078000092911941387090805569575543036292874744\
236735851878326908496041650094146850439599989838833693191221926892578927721406\
138426585143656812929389116897342816820261484788060642525645198758049609055611\
982760293758778809465128447195180204502814222141833219411910150418794166567982\
360958456069051622491281329962707153669700097349375172540028636959062245825102\
609248641726512039225700824699449509716292549770657948041269809121272113881708\
207410583620016308650727244882068190534888517808577919705423954008792446942006\
138571151038303470545669738231558661477038338559816724330339477766818564061004\
808263456022741246158743169047993820614347668113634560039220425482560351410660\
116451867735746546730943929634210783485112631153638722470336319541436082780347\
080963459008692989768374904775995333645198728296250307125208174578899832656461\
552282348255483903976071195553395200103600010393689798696779918879378724126025\
040075830884629718760694107068418682006326952674051757996159996151959259318440\
040434378991252035904633487126288905484071531981053369043462095958168239437345\
441147137134358865448446780197573500585747191384446285914139054881819164792704\
328997998160976912909283904595386042509268673090946990583351026640040937112471\
863040127847268295917442362192538325409492000622805030455160756254998865562599\
747347119636084016150095754192688696920531717046168569440286873951907921638708\
780711989011543701643609293637187344369840872253159077163655615151501147302677\
717539853864844177143060022061606323452666538285564392807342046353702283265458\
141220367012408160988430477868649382432546655916503594112160184860953852913012\
967584433725394463039635527688732379705740933570492598388611320407738308139624\
844829160107244022166890104299039713490232937397169965009450723278207746470923\
477133370279078270458289423608101118403266176768470068230587402314597540006454\
539166453547925199819860456774376925105362588416500594213506583042403497011544\
166432304286535621645968020961269031195100145614564951069311876875614079462300\
522939671610517383300574568833032434204389841358147943277187107250415472225561\
015484406018978550722472306546069858238365448909013143798027407518860236237611\
869656856295254888569866351017404373394237802205978808457612846445614848414351\
553525639805010652399432490100918903203172091794481747560615112467775793525118\
463971716027813812276694368420774005576515214660795410078446166360335066362387\
801875094288092549025234054940609621142275656855333019396289525984328748749645\
682531308763778871721057479010109217611390228077088839624464780622312913314005\
467578583512148074501467218569936324512291012980551451314319739365216544022176\
988472016001607271903512637118249256159036884519006525533363172925473913301916\
238418326366586344251637885085823811454054362317539100584233525364754763102960\
546435696514190941950937076573591878139785601338687296232259557369660457898927\
453721872948626373351639688909558389489880610805445829518396708430142443740865\
359288950132342736897876018330986543712774938443104502517529176106431988691199\
882373769123855793546782372856803628439516110237660434684324605773363753265357\
758236462682256763568498824264461631862312648676424470612200873592608027476197\
453296159857576748141250205631621881443958285863459487669410048025175087503912\
851356138175453240155507366280775398758510809715235836061499238245990891178233\
100682142830548275187646728118273663879579887903457714580701009749474933787668\
175489977171660085249488339371810283408049434148716183220316890238556665712770\
195308361404057981580088844403648074947837829530849575629921919615644540495145\
931611599794388662247307082001973007531772417740277296873818085791825760272244\
913385841448940080092879307794228440353028447323025319629026010948849294264402\
939185640313593456322437665918437804788059015112399352501241402283437486755501\
798459022699633631221186797526503360996308218918941063897971319472249915681748\
709765203340481751038456272197825651027823708557861318056340149783101895450614\
870874013310108954534575603084812281743393639315319565333292593088417806923285\
729135190909042111835089720291883162529773746864007982455441015557243083875116\
328761104004658539600855776505593420496114354259133657209141530360878497923054\
372389827383522192295013552133607231993791467225220881164245899726478584164980\
091641127697309445105418236598735806717543458745826702951438739288236551810345\
574768373224678927442396270891662970549643950902124994283459705250318934203887\
357167128074854086641462920416944718693356924088348678253371841121120380392999\
982120701924731086649266198163610381091494152035844867836059917263168295414769\
177036431303596049823317179014556416156412238392211004294043277254689395892518\
401218857612135563149140049315735825561848722462101556926425458778588044852952\
128874636904124836118750156882258990921077751592427845154131057454568876763161\
285037642053721334185947605560055882087694036937871632860326963737915061437174\
676800178188468036841324539049759714464685203348092201851125559425835072667357\
233992004980387205936398948148227936576431963324236681309272498654493599106752\
031017526602936128972700816319091964499917736245878054952427774055048691298239\
739253522934529609632605377234583537590696187413561307937652194626892360439843\
618116956363996997754566947663441884986037568287743855874738417937199537270494\
500786076671453630432627023722038492218014488476014145689519800776797639513495\
701112745547712499973113909165207266268828500468864624345805764149006467560618\
316551256684653509179993565573573371084285124766949495315947463948803417251293\
020718300479519393090455159649713625050466528224754102805057670262125787633834\
388525054999899661299022109983155995682709867014673452094805620710129481869178\
576076135468708812836745837263737424451892454917209665056954936660000380272304\
198016911828601072781515439233226124177106741443277044001688216734860333358470\
018780398092015423720997610696565680448839437152291058489310643655421909644812\
723146561056991720408023514287142680648798525093952070765582596406054017310103\
513105676935623130798829040645390664736822794153542683232676500652624200005172\
014333659893130011586605003444580666318173142928176611453291925952913826477213\
990055067914542193508659080470110294749809174375067278985989763605392940686842\
388263977880763072530824744315381556976806201313107553114401636046947616776291\
207074723270104074221020519103259730345891656049128701997188739025529427115561\
921830965506185620541949202523833575041763301188018942065180842113803230233352\
821968715447792286350419825239656720056697515011145137393665205450031908794574\
649639001575919965109830517767549827753391735050047485068259315956216242170132\
390973477077997787941789791387762789511112728732818680953390584081065475010664\
527591388321921995282005483957240896442923642203640573931522625644344334302807\
729628009015377345604106479382021704599346748596615877109309094204953171332549\
565126666159660679605044231454508517804819254663981867518356670006945481436651\
498572951287527520387107694285785454963568059995145528927061143532920989164574\
071181854119255449036124174645493901818030448420065318727478324317591134682753\
934692483195451383157284012714841821705905078290760325944083109248371114627831\
363434402819401743529391700618674918873156421105328297924473449251670190407079\
465012459085536668196307742699891485901385678378121783851535582510528905629773\
382408067635517786033142353903927179301083665663247268251050312003330143534977\
091421341284222991803962825802013146257375622436061605171834587523964419474422\
343593863311696949363227852184581636655406771134251966159550022857806307752256\
979473783343484280094836395492423180358023418904915475676782988465270434672842\
443522612135821056702405100971061555301112967741162027471769015374018546744222\
874909987594112280935686565444027270815201171736085035520262266590965341405611\
426886213663184230549560883514246420573037343125827438314141184648744353240253\
928244049147049937414811878901608991573683323439909535339290433257251598405123\
860627778580053970752849356276075866673582580395282135255749236904681852060454\
500021160107688758802282374236428703416835829895018974701580391905573819155817\
367225694545924034556738069068870155801979885162158199960368022897970968239258\
482664005736402445028649216797147477271730788375426999411450510442338257046016\
579967853637334090694570551028432918926506787937768209442711548822328947941851\
761538868780602085061134052798380736702275492983209819536576194011970737059692\
911774410877645108701123443845432596425632343052874339462867144051074703663855\
156089619179329374825190114189029672499973102305616153367382965580674588351540\
480009630332961782328389051106828041332111594581314738770159459793943311282513\
423573009401991477713355898401036132352834553107206718163100217561327235061052\
004129112685903658703575176343578914822752632375513164020684373458495862217314\
320132042094249869573219565618209123809999385091597026946615727154119930430002\
227450881944150848868201739767651979158370420819030917718702852806746856548703\
419534891443158104843416575461575461924923049106037594743553166075623516903034\
919397600635176588874803542133231945119912600225670185592923250524731143049720\
365356694406878260237809103922096213881614180056307309151674322859845927037909\
368574637439985721863989889302018783720339631341798759057477256457579251408423\
750658081632828932656422353622503144050770759902824037839484354962626044962478\
139651918676246184935601186674310983267614884914353292685576871094509838231843\
926612174531833537650224502619072700728720420583443598372812321013786092613199\
020531003529953932375355980990084122404940361890666805849654990079748877637171\
192259289999425735700032456531234364593003273559531122718494031532358196610363\
244463341842133920501435403807270753776112281306457811545005799991361252143353\
552697590205553887870076226356525918627439300325944258241948337758589948507474\
615221183861839693477934324127406141342228990351435270618336596202090541998330\
219525266411585600939993339910827693830834262693626577775114053563537338457489\
964754277582906616918179832918551904926754703716337865861310012318250682500406\
847129438939810081004739866867238586665678889603802379495325104049404868994484\
972609086475343873486175547251826962111181473217097994999728115599550040672953\
979266523774768416165093596512044575615467180917868257439095517796519661847249\
753451629032957448226689862840283598918749801473963364117889197243567160519944\
582852903827673702384750204193967904692251683747823082090869049825642175807124\
269550819929714889441433122969798857248087325596505539668372461230513205461413\
943444464627850518660259722090378223872854557472620651451399287182887452634493\
880636189445677451071840086960985997517721118955172967358418571733902911969841\
208879340885800637169923803908837841585637585888179194849341006311247768897004\
700666192199227639921259408801556590651363627531751724048051601591172376651467\
044511325746232912167895169749403162869470980180088524797888543270207615226251\
464167895544652950776975408924661461235700425830803368863554027650494497042810\
369708734360337472632970272926984143064904574166015719923383329033215508011662\
008772226764459791103740468924044391517032168081194517554254786894176360711859\
238114761025902383054251976962191014977849818337557929027802331820372776911906\
680180818996347087768991644428485693042387687017398522581157974454172790353310\
071227774705541610238823899148731173887735155234128887112690550142922845961474\
431090647943403112717855807259685844937433517583693797555838686583179798174327\
352400466985542507156628668622597691945373862020172642629314878666513062595011\
575958224292350090895608850209261962214642380803723806139568672644192421734420\
804992247335876157406294331152540195120300831586441224681755329644744283748176\
295084274016748423210300499417614878463379325649980107855829163743522792826996\
587501008887764395376458296305230696315808995292898316848095025187980764531407\
849121400743297271682085644978739206918915028168372730469296744052612796239894\
647758191213722897488312829044631198959336562218151546483780753128301360382333\
588739911350658314399661061455770208412816393253541042590277700646859232926731\
386637169461663585773894745622402525854748247269302548581710639277809252291191\
940545968713481782894410085893806673111599211302818934939890210044053367586317\
838576556279942147141288436304525690691410108324629690855754625455608370482164\
612816775389536349546009852721316845543469108829836900017737556869771740176147\
965930141153811051659262034006279748605894549675718961260349127981577420330643\
390081749685500533640208611920082822536367048602482333142263684785598514236740\
552729571369649086722244860502395205136202101575359037011771880789364026249299\
413397615364253889036748178260676988606967058129577029823146129458076775615923\
042567485778213300350634321591773982483093955980327058416361469477970633815474\
509857574007946386582736840071122517947786981176855103416655395204112929991412\
551019945667249876014100701337691330847856958408470424591821497122244826192233\
076970869446666377928696315205450935051861824019115083602645286283134305979776\
573675422025609996964009368251545384939191343104487491396201577096256594500503\
568362093493591976115636804692226582599502222163149416100755568940491379113741\
458422959025268670177790253839648488031849465051826041686085958274749267133805\
905914633183869196813081322360374082814495334720765228993837543676348097468714\
853077669799472213800502339672002391085410840940482814925021186252802921778999\
264362303744394983641231004838374958583687614666625104526665921579296834492150\
919983874130529610123648281938187669475671492308527857159904255919822423895780\
394095856262547101448202255588887430954771788704783109133103472725642706142257\
704750673234147737587320676375277994514771971214387830615190644245259192707474\
158766057945531268066510288156234873253460633466048176887237872881437497815394\
976306557018119546799903783288199796507812220835725932859958142373973365128842\
417977727964871083121252329603778349276540116181465531349182449617651377162778\
019819132481279219253478714851539852062233652931124638747489285270389657139884\
861801936410303606645357477656050419495348887180330649231231696542079988957742\
660455803678510830483469067166238098458560554594530116708754219705285605859248\
526454539768261744315801114074445455411205934892914934748800217271592912564347\
068093456885167014361551179738254645563927793472681087470619212613031997969016\
597018473021636928220504978917727846282816987790661960826199694233622670431218\
789420549136173678480546198513072999151838757879839511747648478608611260295929\
710340415222063812620804552757700268451542671978166213125453761424426100690285\
294953943686930627472757316852203241878421147996067815607058302206201092926790\
079895058064170348200578661884192804230903355505614664247883334099022602255988\
660682817966047224478055871193407244018658685099979121258507053357338552719119\
535228202774002264816755987201200741322125883092950014483100456077350471787069\
711950634879320500400995999238666177023151132733887588138102235187440709262590\
376387463163327388051732157305109195912370127361811061324392247753195676385208\
766488435471496761831387523293166053563833801507783481499591122911230251881078\
470331534566847789459204769036355853958066369750797064475146672373948550460760\
466126448595893402274072614635406784022477103907125667245803096339727447434034\
414798754912422993920852976779861989089917781692621395572827684521755256277819\
380082844394286609087083147596122447859135892770355853252281827571831786898911\
333868295494486508694868603668625245101225701871454599833693477417909388136421\
823021389050968469171560803567523289242700277040986254762117169834426664552975\
313555930976222393131371855539900276700311830479592833968271705616637260568974\
542500050840200913983211422936070052561311176570023194118884894445012441346851\
761648466977005842037569749095099880152380843214384259888691226186236741879618\
820593659368826518559458394945604867540798960763807933000727588340054291298781\
522961511667464074552822421867007764753560094133452646667122830019343204220169\
326160998368978989958732299394352059807969530297120206953645122910803214085704\
382969424062600788882930541564241939180483673126087117564231310965972861155990\
468967896171009950134023147871908869918685608791732445981827523199293846765142\
655796083861195205488650421979426289610463137362342327077082607420005472973044\
591027368680150715089358471351062124652006282422295540207730190522295344902810\
186751801864116641139845602025950824152026394920225150351048775641781473639359\
130016925954650671649326845756124864304944206279742718595373686610478671348806\
556128197878938700745607411983040309030210956017314164689509959331081945559431\
475119154432483221374998300687071913199167659752686064818977849002475752718907\
246003296655391156804619921732359010810881166507273449606535570769395883874242\
629019408468775355786476720878383206604992000175393690432260043035142309727656\
327489476968847764262876766312140717562982799220896077824783713731300525183815\
255013084288263924567220486529121638809972633133200064910194232635241084523053\
148766204866344834632787120149843376536655541479533789491468530703859640499764\
669046223934512782337250047842570148424334742535177749578004481735427671013279\
544324938898736759160507892611113883378792477583353286431387461060090067093865\
094703536205015997249836726492639133743076158020207898881150545883061583231575\
084112096818891969053824044277374022341952326577986323967612351580915176593249\
124218254753104228110043063989720943940223589126488022578862207712302002052120\
922414706132055483593764059676898410661601237182960272304252004682354255574216\
630192965134844323730497268422721890104075714560008669613465516772423775241406\
007591954324465879658645875082888464163641849400941951184433061840191773192544\
182849431626826083803925964540581964813236977352798799914185273083460034848329\
914709633667466353980008273809496674300662979317856150629911243450686096864528\
840444298051159191582185841122589264034516720987120958492865723890195964709992\
840982812935815714953103932913523949864750308964437023363825800400565335460589\
596266209148642983380611185596194030000246945347281789057273387302411376892334\
457363548253438276801776764333778597035642680810012659325259798424568020207055\
604003138917573204746894339622391056281059822016367663118171225072992470730968\
074423991140074147525021708170165120894230418495350298761444391239951311759006\
334582058029448035856527349402795088861754597259302099779805065182257678134833\
526650965740469464150514593088209613165800041726310773713124588406625351526268\
884357495120461602069517686120006165573767669802858540181609698173909855288673\
538653085326296005934750249943616034944407366782904478465722798306024107802172\
956559166970103224924145618858015765394742183245951013238846779085368090691843\
924802451074537023683544694734904057905944142144276699612013186917159041412806\
804990384517295243516219063328083900567163609641582262376055852617423278672641\
401315748416892212638839708389058285170513335477828866507320194315780893239555\
565467212267078337227459801375584891665998217166811284110364086782652101174911\
872163152362911211280091446954618777734358409648312779021071052772806736802947\
763272675432542850036843257901302970961728287197658511348154445825372325953372\
583435046180740207463340783606528425019016272179127808583400589586773307037688\
702993021802682152477639024202255159123010212528022979425625732641268354910631\
918474088408543712566813994760682116208548342212958130663620313833425324184702\
225661407817767438199980433952363750673669209230879794296047182731130090879529\
794233587779041837375858138305571830651765479503543338180566534553122571918518\
990282432105810434655694241846713720865768066008184684961659807962021967136112\
527483616033932692970134780885276850162251904765735648116599428545404244797518\
651930660872574204342714294133980210348380118338660500685239133864362108666574\
356924016241695678593362500536617596663719653532850091139485733013452348068922\
003688104318869893567473186602463819551713194660012542280951911307365236570866\
871573701915315866669221758968381449010917815148062524181730525357487882145233\
536344188047418239278732173704253525308674845828947211538629200826336544139306\
928899109166132536046705260193102234860971066317407469341695180718196846455487\
902373013500807052954731008261905787893340223138852874482277467529296638892702\
518847002571909692789895786390595835250854160599584917555726613094291487667686\
856792832566147114268733827173291665911170396591807067987663681054125748744424\
370268383273688544044017378111162612551268206262969021602363222228729796144916\
186914948407997280887640213225249371217580044459945825396655737892341251903126\
249797762742156307767436717250864229685715549591532221703475046877999295870450\
327695279093850582767506687900087022895164919055354689265966688274286969830566\
164148971208529670981455055009661560177754691954745903525771294491024979429387\
691307920840902940395156886105033759839492008393352396592668614679501915893551\
997850694238792634073775456268983814754765937761447661439121220076885532885072\
678002769489167970265143016920858107695730921866180195535416032639831622141311\
522476471536690733198721969112511650346320474202764038352474861026783558337714\
230712673155439459273978542575401015426846405677607087097156174691175462989001\
685158151387459342843261845993345550462569608030539999563991213625838569719477\
715990264755500429627364908867123718676108576674564207287139697214977838910110\
287676869805341082140922348325463114600067234648637881499183682737279781851204\
721034601817964821694306824852810508097489360480667319091828279531785868403899\
707257037634364698121155562876799096241408121955414913515168058742580974804452\
620855158598461894932259925510410985575043811743788515760775977674683257615062\
204162327767606792462950947567940998318487620183555933986653354399974537493412\
565074694129813682961989599158330994016043666185682621426734110991718684536591\
728790396171210047912712681564455203944920311342991762901325504966836927679175\
413971640216112965831012155719608255101961950678953085459759467350799818441467\
574571073920761424366237856465654809723888962491284334380144531891128006034854\
973889829150807349968076880208698291695673213530122545589008055681307550461671\
257857296912976633572157624923984816938143217003413957838993223053804431470011\
309044073812515097020531671269752779438461465241774368283193177724336690236452\
301783463906213195236599197241220731482351888651356549767357147645157304827275\
236683089470390197228344662223571101668380247706320629323246438057139464242863\
749984638086610247125067400790282006599596275235032108644754531733985719758377\
225344262354825440068056799538360110410487194360013579680684189365500399060261\
095870421450512508287003378644508355959553695038573571335167713865836077499607\
877172602973375805346392917786097618886984536704592214873411827430581516799773\
866167636567461680578182268688348846318143207267352258115769155465165752638079\
378304260121372341366369670275087828795183023740917518758040651260498427338131\
282503981256075867284305681419691645593146025658148496315196937855500801822487\
369571161158777538380657736706681799743516289092770621895935989623193377287379\
070669453909878897254437479183377450427724162696698706292435979345022664736723\
833379619436668523254148783394921099085416307225108451512184464954038814638247\
220722097875962498377583389759047942899263815768472870712707880193065451655994\
794205679235550689834260544625080862896828336731429850122165764029057973460007\
242399774795180828419406246335392494452246940853452775420674398714737226709714\
711714838865369438119392184198023297121409111879345147500083479757981629038757\
103310479129681518922379220663255885506206826239701607037188542113572188411540\
468388893881707267119102239975534762467727801628463387838821486977837971171615\
188591527595024461298122192475883293518095314315422282871388796091663058466826\
304184775369339633928547395820301610623274991869297901005913157797276574226626\
048697047090680314722964023305358885426242484532569894672449925153615648025133\
629158668852464919136141141182564351109331219826477412458449478123947291107957\
295639198027830571760535979252647839921736802702834381417841249605967136267318\
307469401647924261068633583442890092684708526739908130948494318993617889816366\
003621226611388060176644343825790277552348511497644606762914852280101061540694\
350835768393872850319704918447533824414730632107282187939406067084221979284600\
595651413592260101060570308451062983758349702711625893865328961901643786746823\
551966434940247521615220236332791603139692346645585139175950719725645145950150\
831190615596066126060757144803040436031592407484901055467375287041142720529982\
333510509743860764905249147054617433823891869558709381511732791446905700849361\
842796750117676345828668701946688734004307168019215217013963858058025013210081\
558384872863137450386127175294947167560060384116888322555014663272754688548698\
891201506400471226877687550767553303088994129141994967793135647596258441852048\
106140668548342309832850560107297884923160574057519795751399722830755201455326\
021747522151051803502569183808203227324502479890324047405788124831968372762275\
323828310748780560608611983280930640991337731007885008011034381774828314307438\
564795848848769309673742722538076363930329452693365047585000570115809435059209\
259208319148619104362767116808567051504905556707452259099479408331977240642905\
732158570452633172424108522215644406754301077838361071025419732753176297827376\
737447396995640645788490835871425018934920703110633156344080878555374160653072\
432217851860933906329053033268797494981728686745573981689257417875887682502688\
298630324689992791632794324359827718748189265765344587582996187228994705222681\
317575676605606912474407671331024293218645433065886627815376776148368542513957\
621609292912976456692502128738505882368328752346152389868283125727879027566271\
262798125879764405999534007462665822307914568781934880948288720913919746360787\
692764020202894749374721509871871371394042746925494890656244268312983419673501\
640515846693626826778708592435911597236818805997709082484510587765148999189599\
634402022913549555096586624328647039512118690873764959114427347194551532670244\
357365610755326692822026283289963129189908869315515150941823894788497878836970\
723623103872987846543739493232598039760091159273086865287515910824251155146138\
887694459882374362647170994604844753229704494978593542341957042395672494414695\
035210727078359788002087060623047951834262828889852927201194053632143616345770\
958135492345647752641132334460843157467167194758187489876685242355432807438951\
980438913234018694549799950276987549025321588940446734774912527677306077402523\
283607935356381701040821955379167451836567493235550060186948590315452858472227\
064497961797425213338331153966992612104656925741680026984413757829873103992882\
510551986860661024004321763194116843700107928132590182236296364192124448554535\
493023474512220814597552594557124961891891015256151715320750092291947212688880\
930171928457412069958599749875256057728970999456706532519701145880970427977435\
089587068441468423990461658991763255485077995782705781468594222780994410918675\
102834910623789494688170856778693210834087244120647807780304508700065328617560\
079589864745550371675952023817005343550916840314388101104119547927090206912181\
277966703850518207628787055050645475280926709615054199258657997110513904963274\
523763577961123001792096382105507054442628869373005035890501627021553572046555\
050415729850446991153812207786779887432918312898372218782748126787588552636242\
541860781107850433546381527233232756668843596795799369132634350783188699134373\
007284125262527525498413297329312193348541992966852550836062003935254461608087\
548380497283253579846858024806905315395102155544568485976863063015917230393241\
405654394886317080679789322368330862744196482628932920493300574084085956563949\
990325295418884081020023668452795531798993075417157774688768158634299255517215\
824318936748032025068449882926577644806500003497842041730004334037377358012276\
836331070791576521818815604048599605126084663676625533664454689499154223924843\
756933329629895522758209241315880115162379118109613235242953737722376561123399\
079497563328166820771430425668283219919639223667070640593763961619930531595561\
513646336643093800941104072506527547423878125092404880139311683363021648491809\
875734100694403553333327288489980450901973448546071712868111262178274348462262\
124693341648635186115374699512337964859245868347873427128215043856956525720196\
401151802363418700556149056208629205310488199194538771776840705400978525716211\
162405270163524093852752057245550635821385288773145550878099793390312212227396\
059655478436167508490351782926134112521744380348405327304419151902693948292180\
650337712030672231336751669244826166155712667992441632144869135480246255319175\
439307271386418037083912960013586482384500290681333504188667986407036036065349\
439251215465809710153484182567180429873773631412621487309431034934095771612537\
183104130268762692054779552009653075774303861796564304564773630643981534429413\
645213039524569319254041925904171387733602413057096095097303472858368882190888\
346004347457902786531050104182709751542951020984779164690456765059356965690402\
730527144920643118871460528760650945803199256005017769468906958967493130449233\
036425933518239568473759968987964258924927372279286239656581465271113263754502\
236231043804755958846350536548296973328221388918578378056280545081230995837585\
456101796426882039526500392743024382182573700006085296232173897190671305550136\
508385189990997109434351472872732400383866204852613443406608410655659822521102\
978033596393527361038192632245678626435604529889981687970788315985024631628892\
174242668277901013862019908897146173841559696723325822988156263262829036816132\
458039953978458314317304013342733211748156850633346311686244989548240736185258\
448741672466655998414594260540615112428015786199720807629759694071417919161222\
652868428116662873451391112643917259279589331815451038387820240812033278669556\
774090929857116851317915781887637126077649912404825751106963269876120755156855\
322699143985204755622888894269902379467218379406266297266919570417419168140529\
367398113100673057011600396944541530180364657632267288434681163603151475952487\
322241528774291562002842577003730659006179128930584650884533513003559420307590\
732344120953071857518433980239644581764428964677441711836144297167728981494099\
185905500546469753620494618084504512721147689710025057144015871915645085130666\
351104210081600943508722987376471626095141858963163673468350717231285968626224\
882599630565373040846727697288530764822305085112422224754211516217645240351405\
654101621800761867008558100659996914552360138389994089070383075675840227402592\
064025021747329003822832531901254657239233168537929812221608618227419110288495\
987259963896810523988053738699922183513199528241152765837837325189738454448363\
032314316504954758701844634378017291062135198021196031000131374565786415224511\
125786706500732964191951482591745585473284073740907207380391919683134313146470\
058613547434923952461610989196355050915045094406893505299697648919139264737689\
617746557807881143720402861426161740591242936746754468958643857128813119958254\
660418608337393882831851870738522583855742417191230525083637048447109162643110\
456618612085193906695437802274240863682878486757685133725347196075214831094200\
253846684722869988645904926969954502499299496141379291807246601300288405357576\
431576522623131845644320264834405636707120376178196797331887464255344352680447\
945099153412181589441899335215502268006883010730796920572254595946807339823927\
416702885467028755386481813566481375441375006977571278965502192104201402868846\
743603076183612561643876198292320258645129318715920608274605232557248913208025\
128917455848419853408098126890512145567867227751604593630772591827842148186791\
500617631002541050347974341686934936760718560704529379553258265165757470481095\
985486590519147135349981738054479571483234645137882983342270787946142168808536\
577379178139222710406231425928786147333526292935461453894901335202820958462502\
139374432633814317090105458241272264227427160776335493356339613806710458495200\
262545199332296582706046759273723112027320502656226232811310591265492945327819\
748510691270251955825913783216135039137876576531853642277233647002836063232488\
585208903977899841850766585294410368655899164751799553241417719168870243495211\
432654554565921187817133924887007260904529564576670198530036311333137125234850\
042171217681090205835011563897125810269211154337343407910915184579897470280858\
624901242275517574772699746763635686710230288971825617843375199041806536795453\
847589435624985146087421408098323210442503373188070157055927911090113858764682\
730685594531042174240059494516131216953708355002758743832903204613117864195068\
992748804549346121646198704067222148210133705598047310310630451104497944867925\
270204259589241496650523707754430365477945320184679324603477688762647455284824\
578935785589368575697179838368787894155050852363518024379368579452930503700549\
651034446558514764660315735389084759784461366660185378396927402560309468883663\
061680733634486303611541529326968515382828037015616582262341266852273334918513\
551781828164439481024907585768288447839814287713141896822573050586231430203629\
035969341371907819335820208953544742678406288466410755310344331872272425526521\
416003470375998581548871762051574581625667893698312321055104069088588647429004\
747130776527610226143491500007041162434890075895132337719523994732125971887264\
508935541086963699393115450179575787019701217328601023530436116024039050672398\
173334840759881957648964921062459081205889036464795842186124106307489575984574\
916893175269717943677374646385645949035869696739471744578065979912016283483587\
296063477049872322791797016546723636236787304579737014913008569988970826710352\
438750997080813792432596154586434818191106733807172006367279952542345015747586\
221493545851873557518419275232748279144832892825907903230580105531063279511731\
372265826015194779287281686299016681171243049097710834524455041631585459407084\
205038686761876244106597063948470744067733712758041791689137699136600006001627\
002876336003813882849483201039328557160795265536301476827507136943893835387090\
536001815946355691117834870070195359776937243404198209029528086946055927191934\
652159176967591317478369989769158150944959740897079875575486382958678535082115\
045324907474940579365153110975706473415993154473138292253253194824006327508361\
531734693734714926126297546178961467135371375649661350805564648111031557292205\
955156137713722396733633682978132048512690664703486271364400055699221905534603\
416865648074378626506430028356753473300473365339111490674097655059569012714281\
942815156505244092410826792938061360249997019773531342240307748564115915149951\
250998252473488809790764782271278307598753033427664907384701186064590102331506\
814956274446724510814981380913859198967699243079089155520115415898179180670057\
808297208481838005549912480691842794458134702330033642137952968180001865020052\
081535783769739458393466512510950534638111040038738412126751273346831943493848\
042937344597845728318864384433157118759619330157636322639225312909063396092237\
525682677064219093558597739448298876201411847196562101880518954811423555802052\
518440914465408625034859116807405831569811044876137423688035120676045872616716\
148105686826161616982010548065228121105734658440577580715953677481632223185662\
421618574540017371698981191023460280722092770419631628077199369086373552578055\
801093653282733589881756222530980046492039739644360404311970702241302234788768\
124731606227182004371064931911287177793258345371547251288220928039254782516458\
900880784236083987393398544242618285971670635650178219750295802843694728987631\
280301353676064456327645834392466239051888530904524969399119347772089033130349\
872059100466727158349611101113775731052896107614559088558500389224393697475539\
271948752649090382899352275233790702498376843400777113562391599597743761956155\
560761138767371911724469353026132096184092750763252968687961754552049097654457\
199280680041833156936373146759225697836174753104128692044470190298078686974462\
460031738193973290314643627558595642548028994026057114206675339757670184896380\
073410645335470831972909966499129025541602688648458087114586170741187615827546\
358850046997076099702246385817738523351936378971471722421371765094925515677540\
485665518494349579228253569630983360343206241231819613917820339195324424003212\
435311518369814671627040676688543444295070492525502627582895300044071194316870\
793563102983518581271496513259284811316633950896071967131785414651582024360826\
533687781944928219688763056534576624823983161085805738232350664821274021002916\
743830772425940494359842440956766956745245765042610994953323973041449186597046\
721327887968948400216942252692449268555459799036746049238301902505310564332566\
613898962846373965367586493432899989216248947585499915806419670744738273186696\
150868917097350374513376438957839737266860700519346959323547052179583181494563\
238630933958651839867612979876392430954662734397795390560657967383349611779674\
706145164174721493364084327098690485289807894120594299142405924705620541103859\
370586767639024499232996911796499970186397951565433557875582345747515509021359\
301348389966327719860237071701483202211441308931827580048887402068096051373554\
693159942438950936119181590282044962662312989209287009667988976653274052051572\
338037530775639039827057614401042309708212129302509360133091158235222247415890\
476869352991033970599067661371231704043195921611778603902843346689046174701412\
997877787444029368588492972527147832225888315533758536205060009768862079696392\
485170396670312993656582498533784217843848529478305496117102155420097290278457\
425054112371016029295480493436375358488188393581233294779019195015931879728935\
607916993792612780427156725661734869628352423641050301466585977100747547060441\
318719847319277627480121452446989696769734247035216128895032810042175918768355\
949342090198107984224380879045260483125578020509295413952488986724590484827631\
773415040593522190401150674699398631339591997937332237602698407074613296126224\
109897382514901786314501633354101012943063954259396930492611669960370474523032\
000065652202972689707928157603346267003836298913341455311129864749724361365716\
663207444288218122055484110945173576180718862102988439359285780827092523829509\
517647198190967961067357590286654222040255637762502410452439317065546330384175\
820837498082686433895150541976594474413005730122897241693860930103674402180784\
682059270083773367900560981263946086355594340265034185594884123277473796934929\
570425341095835031902392187474806321615197859530591192264726418857645218914224\
192677901282477514795689125422147951881907398118141364599945201695643031175397\
721294071162864633896564419394700638243913850590480377756473912651297101867614\
199975939788432133581961717153710436991436105180514326767559714443562986284919\
732275881116492735799984742514134810165618131166515851295315376328321315244246\
978003989127619776496004785342535844048140646558493335271564997357451935108417\
510207317798852744830514778453152785484883619847210600076019015625407294102789\
683958864374993528355086645376500030812206714739338602643259608130026999134470\
648438277057621233622050312916898302663348459842294095984543965244010737584541\
090681111797262347534934780584773271683296324508039689872612826725451044873777\
907774649075154570040985826558544437162915742224537891857630551975201352658181\
505441378546996895452842498648309042305497114376389900199494042504545921377375\
189424418482972440408457809906175449394358072323073962954670876858610920981140\
724773313262189275884372477786370011950384821842681586051576791228611098354668\
789673407989442147462988022042635229446325715045593439952519306542992820740010\
116589656886067015917846089306328393659223877222506426299252864483582720786165\
943411091272743090684775217455128697233814671656665979526051164151462753847237\
851166422272685917630721509784368339141925380478915474623410621202412537822410\
152713983736758711854692281437395582410368977584820162186381397500495689844188\
282991186979160165431380137213274247590180379388130371790678817329124378088911\
620516125919807493883025527317883237412507242120260799942958189497954969102985\
460172577910311188563417309898223291400454919832504420686211111662196259138337\
221169851648798556874688166102281833674823121295508087039360437117872373951780\
026792548511140893957441719173589210780181256396692704933857892649747972572857\
622280959676196248786737247365752333144382883180132752401220705370836000486555\
757582461554572848470327177667147847965195920524637682479080976329022296542125\
923495861167194911039514856476166202015442963299544880283288652132379850163649\
996411772297346837604920666538872139285534642346134882364413537061703167291858\
680827217587300720954647215428056956966711277646449874240059136892993148408589\
729702673752506750273058282955691499361587938917664339259325033513758227100793\
471361329069543690472234531266277048278157961902065782948031528532291091434536\
942665922295791600869985318420088091913385635949218260947200905576850735748489\
239165004402188263970872718564429961007144894941112854307591864116907178699668\
270455288847334655387360115771180299679006803296769792904953008852127412452587\
070908504036870765282954344241232974815719149479549605892669606184125177081069\
256783489324848717779778227255232137071324723142822348184575648966932658918805\
473168720071718300709128338626948305532049259295272326919645996376845114105458\
562367623017653692831162418976130630153849509469615343193299944129676563846515\
863858130437791348634412519887994292923291087846212840509850200257559772840021\
742626596132862176732077747291130196640848030961810611735316523648880346961029\
404518878046547426394203453653157847284718159864677626881632077245333063362364\
595034741367095997741189932064962276794656053868626780523808913393890014610739\
423631060209896706131837170346397886315404132432579143460486195259149346782022\
287643084013454230295041866708597920807801883530917434390987656898911763197893\
013366261481236575727721701709481842755098872468906091072311730424817058331318\
119958649463053658009240893131469075505173701842401347928482831657659974885235\
911347756875806009635881025571278850860241261801442108818456408138172802798082\
798625251148874390494809904098898858854360411347137594605207289071809968655700\
798463490677241848891380669625321387919664419122255953231342449812438359569011\
031992909191529670399478979414541414570450748458946211432478692733920771738871\
579371854209609668572091488952658987365562376358550369224037517552089145499155\
160545739690818884602103686762913132006240861486243330196259492908145364044982\
802844088581668460117832750312065492447207937200383964140334575091784406735173\
169661999210570511884054082254119186510394462224790161754082086062176739940110\
511949086505096752594288027204603654931507173539095030037987509055780124715580\
367449841806842085199640347429528241030756634719865731322495238347829430168639\
027221645744452817909218715022421301535902134582033920212176838908070849972863\
555013606173578607199395999695402310543016347173502080817828754454716138379312\
450132281749238331308995963879630625803141428156045829520708791223972720960106\
454104378205708303399132890745935915720897839554023509462459426743787912490903\
645813397316963999299382880335046110187258505924690204749615543574961583063422\
509210811256881521263271185293196048385799703271813129814746520151466157520736\
638292946137455411358044675268872972518473482656223139630401519984695264004531\
703718338529778643367350530539892678099459296999424361982550473990289805752981\
176164528037831738118915371359615083343353133457927085077379289114126650007833\
107993063846454567040578812140446141082296067244200788811516184539814687209398\
089611800775379233230579665766833691434250907662856926488013384871544767311413\
229310535616588452424422217414784304670369421244324976698813470875245012188726\
007437290283281690224342400557965430586247428931415788879421782797352545246743\
162210545303698069115525347121265795891513076851330492106831131489756573056369\
484806879045261846251755188594192239244130299809558757826363788311598236196570\
094676235441886380380288642747181785616740723075698042639490277455592307641704\
022446174222056907470112229341180458293132549469627785945609544495985887819617\
175695089433020895283287568702240947547596571470053096399077156591830225251372\
513829618949806232311381592230453676315286337841921568908685684307282692430688\
931454195028683422434170781946914101108284582551902575627544411229795346837606\
432518905662139135580568379909013802134126524729448376280376076070013600144192\
576175912919271713714568927256135103614558064816823111778416754425056029192022\
195522095136032387876750995394569849860908706887734996408610991225338014918640\
697924171361923894944304326080165688703709953195309059651318661179369565762292\
156272982653563771668726597572691153436270171114577143787442150756071882114248\
063450476014970872697646431752368183521306195903972631238686803501283949222495\
164371773291941424403370557405909955335435011288326825552001677786235202517582\
819919978078441433057025495763774029086649204630912960956039654046714716532314\
374419356627083113859587340000948217773953598623750615825106860292713102273002\
651632592930620463537532139817854627239958471962499264716515840914090967487315\
950557741073893243895752358575853866556977050237545548985139778818748444592251\
868708337616493795988757165858028586705849304230848728053424297579575726265068\
128232867746173494548252977500933965387038156043917150500791324220656324267586\
602111432625085516970789681645267282789855517149517533379240193885193585710949\
473236082442631359688763438228014915019739068398409593405538454341644695551030\
808655400315516377378055289239998971661548351767414994984024321007221817511587\
846397668478225799766793165244498989664255873225000443224095099062269578810056\
981500559087025458949907846156556574016130338893953506831391083136083888171134\
129790726732582195574151708048555854791089335244637307043410037138102137485998\
896710237669677994425955173956755902853189610971321373219454004811164410223729\
660587480485643758521076875561962196180283323584919101418558944754928226394850\
116432450551303142253540947648103470476534064324805053580791740301460453232500\
965246110539057698642859009113785367304574505163032205467023963515870707765105\
035048163330772937298396948699959802940169758717010515492569280938576832183313\
524323865964865909194524725510642777791565279446594354534908973229215092260731\
023526492009531112154451395152978423194268148779702498499560069707543481465717\
311836841691705829006952905549081637761077483318959211127270893509575969677628\
726648666050583357354623728708819741513214855941035653919517095824887566174690\
810621437000475849990209176566468663799129366283788293895832090560694148256296\
247921793262314618512203349290828093669520402749577050174435770193630282323834\
012856640224107322888650312225149909335679906771219522483942937585470165278867\
335700432564652554574475299097487659903693783326054288549062613540380795047094\
996892148140308999816649020874036864442624515488680997256226203311039192054547\
659099096561433651427715978268198031703216851923747464985457843750712426009558\
418573249688007345515864431170391837381791908022004242707429748443875056541706\
876783031548135925091160206240251503321391747586701145714835929632846586084635\
006479579414188637129494642054656430646843295944590669920250562142433183035627\
250014708303427341348145768708889475820504355010484127920419286703564055682595\
581519505149943183219805391770941606145834816429147057694183211829847573986586\
121682320956345573494989507990287789574966444551011705692012230516082579737788\
562646477465133302944384775664089543492003768859720798375526348916206062154210\
446410308374682931821352719922256323679841317754397674822063902926522389932987\
176213377013422300279004503414569243725163307025662874859724440958778111901998\
898328040933734356936980510092204891805938464118247025147923915233545685833750\
686929345358724731886717440644891236333162811545850107379601338554542743071583\
742207403544134839233808280799200940695881230274784756727348174139842024409695\
404422640411710657267293105957084760263359511483948742754282806373765254037432\
077191912995412898540818612863787416572190223206578462989984503463579727562453\
759158459399357960715015908084323080232539473584481310662677756721302083766928\
147483146176429883322268284080426438746489844432056706772895077096548827169122\
722182036408316321391808126424944639043112684994019059090445503320149502214814\
341894309951774479173959162650143457021681042842056467693241380175810537091296\
688663495041474394450584080655652217865297392007598903149978264521896586152321\
636132782335828195860673858063199130373198335011779903218410518713088675338907\
849660060044911819877139160999107655849693597056685543467291110998760889843596\
374127340439449823195789879457199559156752012234466666890680192741074012801749\
030735307584051365250137485146928206638342742429891913797074949374352559419424\
875328474481547976498558479196554901968916336171438066535968610506149619936235\
496989705955400249040029035772059539676720261991976689256333017292054041260069\
516545095093284331311860197997628407012082173818338859846110688910293079616664\
845173763878483879263249506904884132361208625433887993870337001023054093642161\
143664081988435308078635219246040499630952384291637369814294843092848873411713\
392091143155887816791883438696327225115416753318016637815871055768098955826723\
650400468143662714267914272359826044713285228901569281033321048249990615053675\
524718123671819579993052744544821882390126323098023701236578967932310624946960\
536817259410364451798391947046990805182087296374493156799700745595296854082890\
521176671068226173153481066432761092346037761883894304212198233511984281461636\
455008354404329187040938865770096620366513401243589284077210190616485994411145\
914295941079786941441877944407023683867201630404480802716348673565008688787534\
658943333503313665283427058354287541307227330900133996227991136915149848301609\
900328094194733968851568582029600922769976952411318608843921864408341985923081\
387950824079044467629550680512061452964796387052469050593377947109876994322350\
611094957913098718431801247032900086507825150043408941402095928198401936008038\
646802332881179953708497130876898812913064602677602879619841409854629768333515\
516870190092742133872695781950733372779250115488070907108822642873884916345158\
617576177099026645804587267229313931040742606905698199870205446938057447131209\
706182062489346632808558633464486415746815764594638910822472280851699458546437\
183552663865117178492447636224646972706350067200539606066787505568896073373836\
560021780301981002978396262609905912689297450317329530321991707693535829824879\
290631925357982806483677157202344580052109075644005858569929372472604729539213\
361422609090180920178738471467472170470493499990322209968807258664097817681170\
877102197071226705384187773544356080630973454715057603831512868690870007406011\
521489745810028081621576357342071677464974057797174221434379079652810412582456\
717610046622956623817632399594802245583239842182283758833057616411596777182726\
188690587954020828130719686386058454995686305199036388761354220651482852350586\
507155101011794437529531053926632424876839340229338703281140045713628933296487\
504738227861932474950582015401431254588512890735918204513639558358960627029679\
682419705455873735081979559554702152369095290413331216257970974510334179057175\
609866985706575361640032188498648891319409461749904635421034008097114753565110\
835503789349248619441787957691123607141617120881563605254346375912424811831132\
399491210807351593127640807754952127668723161861379743182721408379465602718306\
840230250087383120543756852545274750973880055227050299570339053441922929129424\
404862783346654397841613892627967483927468055791193813416366644264950641187754\
491255184993359430079631928426086356663200975302320767474917000938349138634901\
302694554652536589714288321460473549720563867243104136685136320601110081125454\
076566048280768741423860531297524726559428380439557859703225375263464855710471\
187833002907749749202376638546770139081617888312840412318768739820304336152394\
065333594377513395623408145994325429227894416907471939267581953862051033156834\
694408804599886497071144151975188686550076723477573637488069004917102795676630\
619503770324700971136524613750712945222611566152415309550423045941665911189027\
448766506657231949800902686930891367438566449186620279289016550384634541029427\
729742428985675406406658357116202543325537488176388310002840820732081300455844\
892846790563991470127799884380821895071748297637845840491208177355016559266579\
298449202544481528612735303524013793670532661196672355485724121365268220385693\
102936044297808630938398565010748639099252124448844738666400363206205113869223\
632235056952183718942200278251532745820883589747413993783334287267784123924342\
134704042797805520983699053305376435184634792515572054875611719733487173870787\
823672669262583178348164926524399027060819509621757147149508782219913768436892\
197643030870405812462139933188264283294474864726148613389585459205507733373263\
920730109057305690560803860164486194177012324729123264958747928936622441995858\
780161017830639882187100855557224735340209970003430249004418711072053341975145\
186355097248642886349616848006043498748418300995560905611989418949489915710242\
653812549119620620055555597107277584331723991147113829893154570239976702085721\
925964979129247499390185402597796602476168933719129022355368045877086647208557\
662606157590678602498524846985947837979848023865049604258378225711432212230930\
354242262039770745512116356215228960349393740796994040956958714022009102230113\
632551353698049401634425096778081422315049408392514652975835123707121227473568\
187615728515953463415441145008673603054162798613397137384182794863383318770911\
338752321800796373280795310100516725420609113596628564120975428666494982321623\
709250312022306081230689482539709812733526874407048578317730293233473845169241\
460572072689503301920627513820272151178681367294440419047983297365599955418010\
777909102151610485694225419382240544373348045897124740300651881138729465599338\
303802284210699423786464757835970812644243282581767816289320307745522970974976\
845458770859568812294601964990509944707501112707510325957035542748718245613075\
024461081196682927505888353617787342875316205157859032811376942648185741647844\
473758720614826792979123870937291103434681922070602631708219413925575864298429\
363744370449781345847444362677577768006628505773687976941588776731186124074141\
288495577473610809160246666983914905391892316844819160094945033368149947154102\
655225067112027066337892141874666042363975026281840667128130059574549627573945\
597556106536502030012912285410469678260776358419519756728874701295575830029412\
600632140028216374007336543998552214338516496357289624745336255010401865794330\
930820786661943887994801209129612756706221189578379684262073779389618567451193\
039045483788481513056436856089800493804476717812794895142531775890212719918951\
299877488324175482988729782857003680483913865043647332509006069237330585083628\
117661779163975515414356528385618603474535231286431832988579723553217052853837\
726570811504719294614078257350370311203248856409521153435673576716088337780502\
597932779884616416303965521796007931491153546108874350621762399648178758615303\
563224594255932303285860224267842879632489199614077689849971303094077260510559\
126428497593441058358306156638599702346249427442988562636686490756637224971502\
871569488959806993018886479982548284422887820604569874238489249503054037842826\
746276892429165434942449787126060482695473684710960699767133559371440857536547\
824228172912625768859172896763857943098169093874421958429493810989962945972951\
030160366792835963221597063345661546885267646328765769582290335086456992215881\
586954279110954039754399102426459522635677292718841167991588397724481930932909\
449682877760624456423162824063254211886384061568744013012394998524966657413949\
443022898022292222543459759552849604060711080919680762370039813525342498779435\
251793517615223876154586399406266022558729870435616073920524840265063344018389\
423214078919080515357598558229096994677016053359290870217733740699315485645586\
756108954352797415179127405615431563987979486117547192478771532131075198327863\
872104784410509162681382191960914571877604558071049383665171439211124589526714\
522682043502820791376729254780580256308168156415357777323020122392131311551927\
083982800315399393067865289659525365085352880840987165748362628241348684231869\
370225343924342740460486935124923726489726174429511803333459329826417808096578\
194094357452312930156152251670683614677787094483804879007184434501541552817721\
042259118967011496523022042231243851568786406580021505434905602699429934364321\
739597900960680536455764836326572653050357729501083932012898517852262531446382\
073771830248229880788884963351716675470846057508017577593231555904524767024826\
159316034697232962916716656603039945277985433034701527444250834236033493712959\
604474056109789333048432964559214098990437071540404419998611060412380124540693\
334384657766439563205478624045547794542391306784251493170806029277657168862636\
329346003282190026446538945364831291423585614687156411959056126558884611465970\
126569961478996039565194861309360264394216418147735638757243107374727544271760\
384165584925097428656586695570653291147467976485733595517813648897694329142352\
937202869680865301426193591696090686679116195731195387190056841193138678877864\
601774571305953702131969643529650494713557059383562573553032321940188498985792\
024545862941976080689121567758374989466659726768604898170270590030446362869705\
240027739119601539307441331561774500434866965884359005347234467457684739032364\
983151751289395333554157168097845945301779879785793353936372824294547497804361\
591703885850782836311749458758043664445544308301811936642675792475429494810033\
057711332278976621854116590187387775936435217970422848583016165880842388381796\
007756541191063177462408916425237633620822463726790583324681543455984151834141\
139325112960524504407990529155637386711540277595442004397812461684528714802943\
476490949635752791915848564272200842819921291948544133144581114546445058299539\
252487317633884048156409314161512878312773824930237221408063227009674421908923\
828249057915176386347489025292444448161677071137156439082352832025072215704292\
687815783417385277880565643199943596190651867207550506828621570748469284322719\
621434695871671322376259547308644605535455608440074208795833729849587456902238\
356083441497632809668337610105441461949808310795225841008815828890433138647925\
535512978830858584756419354184091256313928623921025611439122360022515743211433\
256724099664815372098991565136609743456127588384157224269388646529169114575773\
969496011301014384492976355546968477210734974876244743822668772543281260798946\
017694654723617211389026567011096282981170935047990022846571055363326811052273\
724891524734932557628042271568984377633276140316915290404506635652979924015884\
213019895609045175712048540842365763585429335164235693295723876519034136577645\
825475007816722244977332010243251313411380274877241496159587533044293578378605\
739220495426791645860586092072420788863708013634364440900305048634700122923949\
759902357966082230271803613671724639365665284463535162275533901659865043105180\
650541606844201025930510837376742054235666380360383258538232893553122685589129\
301176421151525865445551571351646653065278920649363178153367060495282491987487\
336479797105734058932858171175649409689334432205265479913883844876701728254002\
407256029204377306891316457810906158736427215625932205858344861012774569957995\
836954462321256125415264125242871324801309690008108302990672571330649711488297\
937111467819596530305431430002569656447589217601953373434807942008011157727938\
826961692591029516796012885870297808211908871170074532940363286494639854192882\
596805599923878023788547448105999731465659856562091912569965734785528893369785\
157043311331068247636247210349657943902163292724539302092924533953317041580999\
539085451356813683692778795417489454962933585548176213696404471399990844644946\
245849857257405556558900762050798561220216472776214602851354069794845385394700\
439232175870507615695369675618012185116622789999951230373174590831451894591046\
006083140728486052872702292369517158232604200236286106322004779343408684233331\
407952505169502660475701758815752084573473077867648229108323654977851914646487\
852602756279809730696740089702539855225642849846589212485558087295698692761761\
166395146125876004380845519973058419253698587933985378963648625029212451764889\
749326118174175233796381201978677113317410296726178640645248297827206166853235\
221196673419629758818655365588516182065160059111696363430359432629363657513414\
717116485516793893024075920960225284353773958817227705164814909248054911149635\
845381490617041679873397662159824403732129126632344079007359216114637202395029\
883198485686903861702413580539637845725321895953253576795529936697163258697303\
761926797757336980891148039091138175601582927812296122490220356715396201462904\
264112712414889533336359866707454406240537512156982460376765980117368855296648\
464448862565465513624566898209573021957320103525430033657618728451855083847436\
921714933692508388027358324749786433790310448649532348626985912876770561908893\
416289064350633963785045973149617208179727224444869721130429972945942661312388\
435245688724268355138509373908638440109710934920285819341802945557859068424211\
966625619999299391667122620087974723267935636373533195546912641751067436719127\
870504023219086271471092543721810854278715392524798307266064737856060227950504\
422430787073535659165598733756798937586846065746790280416802862337704519493323\
191445087322613096565427695059744074561593375154193615745297694777325199173379\
568003846805555557058668717601698458502901371496423454538859058672750200560609\
874142004666381060054500638289331567465645243882849231505389582285125396310823\
139728355021870019838831033459296982006586372318560537371726958154830650764432\
440970630609858298019679127350924647458626769164070532178875536989121304415293\
678590565698906986672885091869225650438088651645227918298625711348523790308609\
668381169941099550534378800841317000855193564538657713199033365185154349077070\
891950609483985720157745067742399896465777858060894818377231098971556663907717\
556690013212582387310536564801925437965770660328244973429703313853491158341160\
881983094413500496007253473018893719736821463497180728460606346766700473476928\
335234762728082452749611922140976872504729619889808861183916154514435792552036\
996238602589537236344414967840930925058836926937853240123014756793413113659717\
143239212025241582314640118557861091297937491544843868290993345035459364951929\
232133387326013241463513074802935754353740756336910672172887154030423160348161\
393705797791789898779508512952688697576419169082627012957506118597997081321320\
596828977661323446940121139493911588637896639179378431873729977232651305602014\
945453903635819192257090146417295112109769035203630698789463291648586300311307\
946192931489851661934021900154834138108523907303089271539300507980103630131643\
234810914979442743631281280490813285749445033350848748382451900158888292388391\
807015105429951804108697317726441544498585193733422338011764091421342132930916\
139592607932206677357032487546355995721316997259336210393227427646238542698437\
747857708340263606661016349225835468096926576533156913377315746441230355781371\
809332845219674897362855002383923999180411394746439655097443326268609501571285\
353671889639247571735015427074092605412108891025031048276081187430554161264088\
154826034393318365865202038020329635317471973798360548843838631599057948721522\
192243713390467188933317302194544184954634578666713533158154897662474355049696\
222010430885661271158147690214261405368036815085457048333135150968808333346210\
292734334433913048642775895053070745549081765025511503922809101762614928856080\
849779368322984166663550828596303394348923765213422832719852649315388730523046\
229994963649726701187589701727270218932291048514539092568890284689646941233568\
160142053434361791341672296599438076784709184142653173837313110301087419755302\
652724174636929691021126477281796823798083004972303622860186989254739480073913\
427763989592101943919183950068431697816424094297948049710568496607562330968687\
044003993808054962572667091577098006729399970179519237946922796588043197382355\
947105243263179321548934519581752259372496078578697304837304514264109173171824\
071691989743002977362320978961692656941174985702971628973795396444094726493116\
747017380500503306752077332017907307852253951517741216044576398203937148402381\
303796446366909524779315330242101911895697281575677788738285334236843515400582\
710834197638699883425422645911350153055690591096239968610135892017926343370456\
790509135870462201821596305787906910628461837597561214092029468934889066889562\
462547078698526972791237670618111418018311560104693524379310018153658268548132\
192059152280662798619510997423020027660177643739553490054560254291136854559088\
040668509487951309542841648840367065716847338952651928325640890999055185448941\
555523504625315341591981479835065584719085560417464882109649252790518767806589\
923787208114339013628686235872266834426819235280586170383256647757888257712601\
799091132601253833397376458158986042192327953718974389998286995099219057156739\
853545951680027797453977198177594677910041545672303349958945055396794452473677\
623492562683729376996280165871569371053613138025301258523498816799774077489348\
531440744095193990210582589907351082766408182759594870958880267572266796754262\
122144776802874826678281311711670775690991449395435594461922677416503928531091\
528063323097720274542603958039695917456616491027475704182722740026658762608557\
703420357102058745364686459828281539928050632399111691290143059647127668314078\
434810706405735335493173503198960269893868444002235498680101992179827701590461\
226484320669075895769632545982034036416326296879583205405284774986125507420936\
781945258709963900544872575644893511873017158499358695077588689058861212087075\
602600163983135267396616706871124302156184850128380405427131402924048345050016\
178358655382908753436052520775485734293883716817045058509925846220379528398071\
972280536461954487712858932328564816911309513975261551811881417984693599537542\
660690424375794855767993071198918118341630338012854035004571290031674538416681\
992619196370639746810378799931269628032584056147787578926276904398338753361294\
312770667119951152192941755983178398816415508828789342742707032852577643720966\
958952977893408907204746624164324858984106494947017811666813491531031150585070\
492749362833495437097575301482734631839222561225192965726085176642729103671627\
837803999090131973494645737218358992601898383908708532906317719241707432410139\
493372552621950651127753501495107067013709490160300886350465288861206287721849\
504286310648472164494582820827327828018496399887687918369551813694569232330773\
029388368631790380285645382200417345698012369398716105330666275554128489766441\
571394699205725148604395466010752236236280890346739958775803956170221945258454\
721341158480609483812209167569223401344955139843367113193761750318404494183087\
993355788477783359962117535750040012278582473525166063132807779586488574841994\
542235747203307703142002866950803057374278943947805373114725582531036067049738\
628763805569584679026828070374541404402427894320001398800813679502933220917857\
225828378590838206350343055688914675293253465657549836225775813905695430548492\
498072170829648201280957025916655447250739034663483226743089250369699303474349\
384068927642071475847179670388849374641658162668826850647541225931882170311978\
750937423202158769593094532622011780913193559186471235789320518629217193979056\
408285631966649339783336499046964175014865004005640466038674059302508426538550\
696814395902300102254793663906766270104019691978624200125748944504744695474063\
398661361808669794059163738377024872728625596540673663335424013036335885965328\
648523485095919775587066487830160309591230330290620790393114285955372634948544\
010890537543295797738014064102800330496510100482874453978680863749839017088709\
182879341970020176743240578869472812347307988287046285956096829608077311680493\
178352975777797472396480606689802581246509834491672594697381385954675706418900\
599304571192705182920114853052476309731753593104880947484738875827502551008647\
939220930330622685800516599429110156738665999276843805167273595352862369027383\
195991632711196475169558294558380417892853277200993493274394777871921511166661\
429337671115403665257770082409238411028311473906444019167972986260856526453244\
769006074395601099379454570990503983403209169239327110509601431150592528558781\
603536148990178041537352843357648065539980668460990518929083351647730494299716\
997139653787102962545329341040482155398081919882113554672183582907019809776150\
345416322678696328485422590968034439155640474129395793467427558762291739400517\
864668323474889894146166271095814689140465994843992242700530572938974599482448\
455721537485089580674393941922285747578680400926962199545773730680813751649226\
375148277086166679683022451783022955012837672765355584283313633989465004163448\
830019808737880468800394749364751600770598324911962964952671851371030098777448\
044027057205966945859045682495256418318945891119194373261618358985265334610365\
851138936455057045447784864690879355315430961876929984134703794129558704340183\
191913691107759822538242936111229067685964742389673786764781486681670441742691\
944314567328046761375366236140845200009180910406285626377965450705892771512233\
860431289594896161791718837129330139183102881275567803591437007805071695873491\
729984794286153601458728707371942858457111000154533828082562842387206904435753\
739565623019069535881153752457582016857845236361279587990330549477150654866992\
473801562622674347311127453241100448511961347788776385284789142020109775674213\
531571482528219803312599297970082077534431299267959609582863893062387500899888\
970686588665610650366234809062519631255708322380439861447351681712673614073083\
181690407420811190630409885584155316317398388318532794670245227027330407307570\
280513138278908951605434254099628485260948371415220314828149154541584795041457\
953861906423508942671281975741134227470709943715126305171577393890228001426291\
163251345158497767003091790790276181626682208402205935574198531446418292164326\
869337100832798669655489678856939574436968489198669077692422140302478324541487\
043361753039010591986699085865021789866230864992091304938318941116949647605628\
300710090999319582484485196025135251236263651699714990972900047702484306854734\
878963291388418848803897830993514275010856403113138489648799181879976765586452\
400898837032700248350934748971441945139478564589890465978918902434687375808151\
944740163766910967327425082477896863564545875893346851021241532950301478536874\
517993773664097963040768437015039972095550955972275698623993877046726104438408\
320486315956406757514370676673334101889365596028251969823431922088825751734735\
223729654618914519466517982454171062756944907789507328664865271799392915779577\
854673734279290087527224828982904902557172488306818603016526340863230047839622\
015561308291358559995145630174434891568917737432019207548903295077964977930084\
891474099879694191379725031178601606876506281883867839945413073344923582986132\
342413645504087687908519044773975241825916585329601146198861419803862660744803\
637562066764130734311695892427457474973705870491756929247554194550422396791117\
940952182995698474664765574510957483153652336841245802900329621680204461471074\
172117781068704858855467185015997185191722239179239837541740513843801676915361\
996897523673648213755409011619997953744280528031677108404307646592979604318151\
314400742583339579456563317071334175048448492077008362369387800338788217415695\
169075628965432188179770081025597722815199808783607473585626214201387766856713\
625529217656984330961315211066176726834915383199208602740106048253525725480425\
993692521962089456645839546399434369783190395772637836315908143297141391632939\
498082219974945322918199839691140728217076122884981587518795031310155031444749\
598181294306328027747119487609670065817360145923234263502508153933133734054431\
923484871474044681596517379308475535266821445108543612229841514053392657943072\
593274694076352101660411865394742659948259998323782716352782900628001544466084\
658158508005568245634226328831905076453954114023709787753090268899152003320282\
540677715961189786319132648070229696732969982447843229087178990722827171398225\
387912168260123696887506339861253374690243764347544460538263628809194564120134\
207799571248987262805302359922766732919311628617410904799380430279232957541273\
308114850338911381583270819150275011727275321276545713664928371826146943736613\
817226166501426557837664971766795781625623798172008599396611430216132613604759\
784844494594271854302941740728789795615343296354652164730073014459778406630205\
274079442578851410214879275344280211915463823740038743656131300339547671518127\
940214727537985509316481736519988345458749078384090268753078647692615470937927\
863329807850567266859498725419292706863613290989633264958883827638006153045463\
297184133396917194643259837611699339926461219366938840791321369067991337369626\
634222371485391156313246081260764573613057103570869475873766288851663681507299\
804157823183458628052550517541301394651684476953456996939117698361008375911105\
776512470865324160700893626490082598122142678697682439839876928277404075304292\
536148397981533635756939806968012686375996614081682328467901352628915420769232\
499629621593829075218416855341754973683948651957517219788214869717376440107464\
161503135319034799537360992553465644725061231909929073353934989760616887492431\
975840466530506669673630436522311239009074754084194653483602690627894676013944\
592119995175788980924788246157411295586647949451349448099793598120357455341210\
641881689034522134975058926019911004710180463986461220140375501623106156607494\
404975365639246672831441119812574766297030788185827588845807062571837394358760\
173465824571624684189245045498174510053671832068275052208784045989628423173632\
339561486709170407141185928256489092854422294865057123005334961746934862570866\
679414769309745144155651136999741422859235203026482433687279929867006752255258\
455079751072662097950352756738867341402343274887142609245969964915844328043814\
815868048556690052044635700895615975828232826281246204180656147765738488285792\
558272099168593435087828185564031983341979293478783539294760626224294293853117\
148502955895855798344260268392788124722563165279901843387629353835340600811269\
258153163714660597557194682807738937722612382281017090166118839651737412393431\
881059818114024464861679374475301362203086570690743306169123030506890386802800\
505758320225687482678303175802804948191633459175026895065240772229131379754192\
688399041200448691007719886695734636645795655177342178635120349981822497140364\
469364781893254111521780350997636488246752780122960146709650935740575521397974\
070761147112199998404878273017998928094846260942123285383137385043919632687412\
957519332964360708813756863608408785578824895086735748833136718203867251885535\
072125317433542567500786178132777808282038626128109369860176452787695181762932\
455743348363823085877087834736811560835535985694589247637989007906962498376404\
078061964037219587090256569471683500702258187432246710106540177896460253573490\
653173642137504152637663428536393045946690701902799492579336922936920715462543\
945065817111821526214516702968585376819590558866252372332473055182354773667205\
276093036191003013259152812292908683657954614660175861698026299278567459494992\
620231796416901845935337998548864347771783737053974417743645656750862132713098\
065423001847840575234339721214397915801870588168155214930215745848051671040437\
012257135971866334234264078560233238291349728468260282540494716643924235176572\
275725282677704318186687861782216549729218312663972761599252975601372011810907\
856781712346124197088242215759447436195811123790723658698766034139711538277367\
504732862529836852272090974053612065837823619815693433490902139496352319962542\
190439548884507744738944228682606184875178614841182634732413928346309769895595\
806268009581690693335000886401088372301265850328443440650570779261033935500880\
402605216626118958357431589791384461270343672903561071111954456797678714505377\
320703061110869621460319779115438249501915747873430701864436988501180972023794\
255044741613662616418809748023902952537532865399598797682311354469075175053539\
557598715838106977798022332693822151648363940328288642623656132136874589481421\
588990896763745674038937920339438749621018776716732010880369005152779070642458\
770997723820923070859227472478085156657246617538594764560033605406154183025994\
392723062583627590269774589706487290983965424664403076510458390290611019924547\
678416418113122040537762084118520332471951282799267232881710562641752353346146\
576710018237018799079654253367194117962297146634997449427234147851491183203581\
131276612020325223136298634748111915374323425484720593766197677537441334169568\
687178286293323673233412712021721355486944148025054875954899074545669198844112\
924292240311803962279377457113689040370215606565835607897003831733846700838130\
953211729806753791958080409003940964344478857506340365255769237764120923017502\
114300981982241079140123294244199672717014447981771465753531445509834473651445\
225396571285284682369676552499683270898000241306476762941710946951528037242177\
019663226582819407649909594991538999730631183655442635979966329396011212646536\
555925976263081625841804239457981457459880858362460837562466984899759051048054\
325923858199802188656243673914874728550564068175971251396551208636063222844109\
090000595400190715259321540736677248520388968303977449672576390775939125721036\
251766982892894725711512828242830697720309546087917995645120938991130515783408\
142502983891342222125332595526887249228413138029438834145588012864353651425155\
390352372988395710747396579426467830297444913864361004576670960111871475691096\
834276219267910636611972016705695981797095685496741484354407711808094735830425\
330552631250685716905726093210614163768585619541089676312953105168494598134971\
773329189649830388357263870393887856683793383441770592828854377954418103813785\
963594134435125706221867621069132017472905014299231955525729369662652899029862\
732766053370734178991634990972534673685074471372447399507998417916576908025902\
599890584380923121209089310137048559812153407353995536173722141723838612400174\
070406966106601921316977340210172751596458662827987857670324520831771691609762\
284443498500166921526356863448766674173477848518121404925340201374683134908725\
602901837276374792170000424573093026837329380935360182294545659627788337100011\
462813499366714552300605600518218646328064335531404136338903309650217536760559\
297519192927526555606990287184510650052551268343783677699655138606653154927272\
204967111731601689093537514881693507870931846393328723693736846691331964376102\
292272031772376254817608491840255569804989831503705172881350519742230481426165\
903690703521381191418820190452977176603305466076332105296823009007456336604732\
435208781540558125024035826130440604565333020484326169659662367722548577407285\
978897069138545074675191097405953986749973325968793193399474294679342154242728\
357691894049156769368666578811741350667746960780890062584845731377482551373770\
055656887874195371501614924522142822116366350897056975082436155683933743998396\
598570683164063084218876145098692339113855220689720512804765894753536452205427\
703266848880729069862698876665865949334791073172891078165462274813985994139270\
397096874829979452920037093571117075263036949345717881199126476038001800780034\
556572895122429116812657109805263290354563744972392261807390592690745226599058\
303623013470938571541747877905104004277278877245636125819794454338631160564911\
842070976809233606560570385428820681549667622110602319956396727475064453009231\
473603013190742024274189607037695956137212843674195126967613286324085901718452\
692614000433508149150562714939387151493530815901879639791788913542090823738781\
651202923267776867887231395755860707396363920728460715790207370809382452857488\
575488858226020269442865867292059409109372877722637598249804258323186889942379\
909803791755534998123368340079876512502869979371998652046378900174769336885511\
740292763114384569240104862224478685150342789681177548129053931109035353662560\
925124765457730025742888615165368321827143242845056320884390567687055203765366\
910122882456950054477833359352691107642754421133221365196871128924814102028316\
387999241396903890860274552562726214294317421494950500167847453929554841894934\
959481750426726385804801304610156955328430707828582319891081484352805257605472\
583717087298815696705171305424662129317938203344686369551925744582482291490100\
220747295155950600400052227546991766508597937702509595214644738202080509132286\
105478288873477613891211686074683510004433332929200757881794910392988653847096\
329003160372594560822104410095791125083503533440569887060652965492140885618944\
283916514027412388866293308426887864423179169885977022847396888649042606388613\
678584409234567411064496646804864106626040336851626969566627550412731999792391\
524621927660961681045043299254837103128167274419472092343488903548703920883628\
921943222838741462475795499518466274122774542708939473832831141825130395479042\
200656409978426041843753885043378702661724116868909443902515236553731896070011\
622930404380782071597383885153806485485186461744217824470749435314107584550072\
532126427492461723569933752604967072706749444185033913380744633164942749843240\
655833219045318921224165451470831531941886134445152749810548226655510268538842\
218109989665803420600960589969107991321115042239790345661581266317176672844157\
448032912092948595934994056722182222014756518177767632849309892596368768590283\
656858656229926405514678981087097121986270060301421457359261223814016245276316\
601323754743161863308390792481754612817835195973449916280915524700741943876232\
232432970843297267560756094254455609406407600967297470258555708332902754931390\
007825674993278681577890343534313926628712054130880555735969857246335501598030\
566451148614509532957179557396124112539356038386080727323635755029431780586307\
399306150442087034478173511610753901469952441018224321389349471981085979164477\
038902232829040622050678147702709297394938041020088923332588656134084852645277\
993830801639353105983978974948929834755624520061146013718655917618509980994394\
322624016547553531556740806066654257145644679912939371969180445247465421052725\
895062885832869873593153901987176494295761593932911404995209837853362883056736\
260497289349440081509835623006225186526768455451314827474940669181266586627066\
769951944815047080913268532230581417963184933598953667977659488314465472038182\
407357201130868342205075582882721885475766529498586025261231204738801278886387\
296866324639042117328580016691184074046439497469347443138134348473286880732361\
931292817972421119595211995230489982877794183382577905150987776199194384937970\
822438156756229073261102419627563593251530456528280571806228423956126605693896\
278225529871148049338040579910557893516902032604079203092752111217435348655322\
208937637999216365829815428711188106511875702596227549873160622334353805045736\
721049942536795398354824251578491197773442587971603267701048617330026923757017\
915423512832377529297841220432101087616618982204895162618716551987450276307065\
409056465589967047544163534567582189960999465362260263415218018807399377174224\
346984368201198946369931522789567626633487314170375758763364612656589680510981\
576958328972367359947829889992881549220788435423222257099685845514520507221763\
285212941142201250946667071266869888673590764120865914394376875498085036309999\
650413254836552020535390655626785513830886184880343052186576447017173780215573\
666612036244900149895990176017432072034122060809256461629232313258812879833411\
204712197453977562446097387777316924666023639050025851512757551363631449104293\
082051489687505600933541110583007254946352232128338821841605738017161377221339\
224635005016952826476239318562534556403166173788865876001428028456612118028418\
579071010688593253304933532088786309702398448005282318192849038080743245302493\
344136526759760362631113922713430725132502844388843140089842630779913787280329\
103812454460686568431816384484971414088366528576982295530444390060042155703435\
514100753027542600622184566214401179755601391780189471559139009320459968624086\
667863842836090480106106115378109289952556856273134048638533054461184042265616\
064805127832476933765516503540655706568191706907249259678014690641765776838952\
379371398206561425566714764946600242924278734423113176526032940945324334931025\
135055088862656543172372068699729016953617950781780191786212593629011400692722\
890668808044396875572534514598318115826800271709170755983870219577361693049264\
342909401193456950409367176616458402612059465553298587955264508046055499398670\
412735183266569212380110094145073927307518252009251220442823518930692090457983\
982130196398608738287001021428660946408362330084983274765414863511597725723178\
123948588301182069880234279050111669310236917775722341903744611553702238421178\
199560294064277179482350352422005200555527622106399187464981458632578068913918\
822529186897618540275140191139795766601855538459907578814848184134060789327990\
265061473469547133790344254592667695714908240026311347418020417298570672925692\
647506267369021325584853587392873043249613054765938742020811822174145068758068\
763691710606172295810661061065158557390137826282708905848627311763149481873341\
203193450187683245659107138420760121422588449685325655819201236820097961668587\
975462829630613380609216323183985913700468614377051483263340576984343748898628\
315244833880754268854797051542394981974731250884464040750660963822564695134529\
027487024221814706437100175336853196095527429331246817698882259500485926536206\
003852659771316611228862523056668687428491377631849982490368002530160688071051\
502026908095489529617389682957474508138339368332060776604368690907233186037566\
802184234913096820396937939570671778898409897710942272964640012681426473880904\
385118719675404670854015417681611315101327434696111845225559141914881136587940\
257496460669374725485350194931178547153468862133952602512952192884518731033925\
710906932162529521069330595222143055348030602372602539406741529836969050335161\
314368025953647248635859727824249169272144983031694676114416914387366232000785\
451007326551519568844032721768230625598231787803720587596125527369053805716361\
306660263175000535257566951734228260581111272622370966588219132605631185469543\
082219935797788236093099910943231829305983433176591700605302415517765854917418\
389094782018057603490495824892336047217198109319597025760790114655035768964598\
586376014642043972536570723472311060138328719149678036612496836892677166557518\
131289880707523423507146604817993911946062211154582978086659278953975219681561\
656456631667287144988301698659066569725922562558579074057021390362476123102126\
924509921764183577515921451019995123060880834542668793628528654878063273405588\
469987474758128256998735281523074084445192887814444518863516027197448065727916\
014137563292778527447271803536608562406858755818733090090236110976433986740084\
146011392294968049968370653026756094585184763964356441193740676447690384434545\
317970589582344579083107403512810969952971991290673101375590674008816399586998\
196107724239388151446448884635347172325288059699883225528488293513795810754881\
557609805794746451620929133548081713273924293256238726566395132266321037442635\
176760200173028512118453744725037587276233575409009963281955961065925566574874\
551797466363356973197772779849578635120593069572272461831471774849494048670031\
096650773829507637726163831276965564592724492028488935941375055597888874150362\
391705619457098925948215193477081954705213487608554111880347328819874439357099\
297764709116939498649126284101808487984100889712195932951368838152728524465975\
141880953577054731609398608169048295348204704861660357579885691256961085315217\
655275578747732261350111802524375009527809041568164221741515129568728636660999\
776191069274406976186539744121933744260624600215640094669654390126285204657042\
336467007641185262147143355916137038067671357322405387037635000620606412323695\
812714820065698464417006095168919496915110751625612013247209266862802591770503\
822587187655824189491581758959603184247822964169399411798831559965460241030801\
883191685188756922974135541077023343447115235116376382074632014972947545739231\
337435942693269729921583186606892766441321201514569152937889161301337350035239\
499976334994016358453538443236539893828609456681172994152826163333311150342979\
669899134063570223834539175278954671832073393793698506153862115950528227069767\
213627249228423152067121358852131256133028860067110895645458898842126751110754\
924619555758783364917664562239059550971666128146847556188686980138377216305889\
286401560757462576640674429648849543403378741683392471412088260256956861388504\
488934951935368843991324401451078050295331783331290305422450986198205534383891\
438241346883448270019658544792903815173326166100835183780806709058556568271222\
107612845559961483001786643012861843025307172761821643372444562012036755262150\
816944611747303202601120700159909377744254182270806308609549246436967243209215\
408908492635188088492372466729105352361234104680809424820282137394525556646571\
245555836409237372283379481018807991097340021444319581232285193314634397798921\
757001130645301689970312597362572627184649453376441198711786271534145255957029\
297654556296576757929336030025107084602780884333682181935262523619232395969240\
642464031991465364561364009565864177542550600713633641961945951034105605494407\
694285687056204293003788445004414460836400239650075953188314479098123112153245\
285006749322754397389066806017991488522329808497088525960470835950170769812045\
907822304054742030300883249513785079726018324018219539369099317070694399644721\
277457763485207475093038788360028556304806801898305347117848204407864416113071\
653832117219835302470987630818316826316280602334284076851892139432116658689481\
740610229066996265877618950427793082160849523063640413847868567343630997207449\
517204133370416804731411356708914159878409029963204644475034223195292096125287\
976125784660137397872104808190690930442398206402436605173599724477168467767100\
927419319561000496692804328968174955623921337646363988991374486633837142332027\
946860260326140078198469542982334451184602833967439726537011241353097953616509\
862410341100300001523340074421276544831036049691441268885149929989013340786718\
811948712092175289995850215556776342075690924443151381471665483108137430814144\
366179907130318351957678203937998606796910822745915419212336644555101683548616\
237524564553505989743392975343949596123973346717073020112091319994646201850226\
427549256670020217334762070093277350951521085414633381183618738044007303317232\
078987369245271601260874723671102658276907511079265942160029793192528255165327\
924549834412302585774059901677700200057754177113132213680600837989002507271363\
667992799856621834272792726714759040366149946547579913894447343262103020159221\
840328459212843708281478666451172138211333463079054779013045164531612860536068\
162091362414394451312143510158973032715122418255743677060275026653474350469620\
062354332408062619222245125899084863923590798231718436501045379337304859315910\
093111552353613415453467093961006360450398721089014483225521947253590296512235\
246644766753720179262563628201731125125527354344514548432752545443830008600982\
484098671437876987112448925801686486616318431224210564450064254828157834571042\
780963779134605020313076928987974263519784213002429886384000667946571892562878\
643454312300665309061067413511941253630358886750469436145834767723708823654431\
047386210963538685633190328704314564502942864898953288098423756792730508090691\
923091744686421759040016149776377882779161955212446180460038397911608824274054\
741361574919924239860275896765533548127830032552067324010944119589193548967766\
695744835629855616833814727050142635764934103185698006213385036973396952054325\
421368286477114908979275162138304477654433609600880216247413892778623333500082\
875083887848389767404145821565473008764727275087323129314509591570593343860340\
739237600716337090307816102132332462695523637994193560349036577210094150355624\
980524744562967991416260965413451125215481107772255487372339948564190710732816\
028966943375277988177621045623196333024749655376037012615110978438616493831726\
197519163010604138940250734817268825143048272999222621232779244480732580977169\
117775353773950668669410617900096368107331871165702984716714528877658635237230\
130855372206314254679466862522231258322893675269756842542118922515334401065642\
290904059800148967716509616741167575687907523344192316579732422932045196046664\
705131467934579599407262960174167515918598132686435400786781653869174449207544\
116437976720584509040121562354758351202324406751297083658763468666664016697202\
063002678843202513232945014938600784541695259110726198560083539378637321835195\
032013248573195826378030766598700430881907117232115385879022996192709588754881\
335175502105278830732795131688717322822325356949651255557071429159297083661533\
753646306894883783439342729669262935212427900720569983956718873200206723530479\
861079596286236661636951527215328922144029573922660186229336265891799049611052\
729390131139233969817966798459226884931698043875435533801335270215273709611322\
305146642280270578551172293639950608278084647064903243337834376589552654213558\
660045184956370468290856120434060453696472922006660778707691755749761589597802\
011232721630718702936199704635651676808607099231760964602589122846012434043117\
250978764055707025078339954567001083475740361408295341037250548748789184324644\
982988445522639460396723869481980526629686051725117907765468222604493890367965\
160525559608215940572177211820187878142930287389729886435441041278368566860713\
055303015082137518001936797604118096715996215307597152822500290394297887804365\
299138633547310185900184415002856913837947165081946781732547933423712628653963\
350821724456638578020809077027993373795496956884781429681058722018765604664127\
057941128864315787596986766665302235318523496115770619446026278109829279386575\
783420944823344941835473776568153582434343262629602968534156576487668571208281\
915943126972424396004660402760861479099232539709512037544072327015224357150230\
928387276044354701565264498145352966573390256379881142465752592282750580745792\
782349271364085172325201856928129705779693304201537480117589915394219384948626\
984583998636935259168999817036286203029037059711030029950237155596807710517172\
433914443796486694650249392970537595441878112279292772117120885537010973389022\
740658206350230960073354070033780085491824587862057151496216845714921435301359\
422524644069443319492089413308138055674130414658438232115462767961571607347307\
442215061037365504405071104820737330747426168189392577333366641657287251321173\
704936554199505396173133271126608379110470995702458706559973429006497942770734\
487469303096115835583611269392121274370999984233235643412804536034554672149906\
806160560385218853984466739478282984601737845067214689784426012852606804625408\
217896064708982671281396049759921843214052314863892930589565724658912106939281\
768129871464157437221363313176834025328464789183170480720545080457841167408314\
203626469118933393122417444822990356434208233859374223359767520571586448959759\
375933571169330295030136479195762691871252510592414183976823164353732408639806\
480929952344832521300072776949534833186484119774726348263202565639416774138343\
198844247033059477096702434851662958560166320497069130644698340434291346517451\
556178726354144504364060594657367605522492483319648434216030023678122441639530\
795837897233395510285994338449439064000214013762015168734761750073162302822026\
833997446415364347330024350857929657241968831162878378755939457928855888668999\
087821917657265530845572426942902170559820314619160087865654228376195877522197\
131716072860090193356777905624291525418498765059771689590091565530153862985025\
545280044023051767530248004678237788840871691436290170363672519107252000207799\
148336363586430588815575287068958365541175001354822997143486452301862549524713\
133326465511634939181106062591732892573956334424196385225946703886011183423338\
617688935138735229449686413820394316220529239476963107425586926808008659215983\
981029807861740258569310019300023805021098970430813211435036264208494372067458\
844072463273198270189978036974279455664116494897323117540949763024223374828354\
071133350380411955510716273540438548200280201729332885184897867710486062447867\
786457195241277114798861760957912393039072550281273069666664490056717238013085\
132478259111463572884181753423258694143860287435310651801142426660990627699346\
255300759989797419932769920042196082994120979559678865374902594392478515937835\
129941752064125295880583615092917212058431987678104044725793312708216110673700\
665123255837155943073045416447978843345915870079037344776411135776867364073315\
089582257763976667143671698965185801386399307919132804733757296422958855811364\
460376766718946643765728702373821456930624870952551151328826551272416591882958\
080995765117433256905163515166544695579648053191105841656202282198619894276636\
978676103901793822790418889409244533037651314719137914532118503176163954163632\
283988573524770228077521402125133071942530149195794528711655989135286282344265\
282634727745844894069124377602610472053683766787673901754250267142275806306998\
943429149622887735406493358585305453386526047587486323917846481006824158752204\
950129694262214982214186984769451240784052531428920896536710948551639459747526\
176927676189136150234991280633757718425366618730355321937817742161910245559987\
715307211608925986236081672988926227319908186262018766277270303616720361981167\
790633171998025222693145122707448528141990096700432663717553277670975024724580\
899153175803120477724228627629934434442659020304979110644847433449621811373620\
197120600775362931436494266520115468333908212312571941075576626952115826643156\
290852730354490763369895396326188699143269854400259323343982254569386780481872\
881380017998161619248268165013246587438420859282464899019101076892553772870596\
600044779965907570098081103708992873284235283815111036435994218106648935287468\
499627832875841358000116668795442198309218630154553440861605831361179968617811\
260858880668963329237170514449169540149548437873045462332837611498211441711840\
473134767292793189950618905096676990822496252903460956351303506400894034517786\
246220119036141645522143945896747622634529793834120520838529853201638135161755\
642971773622027998466496589800098992467361408321065619391664079446729663746483\
438269032550092872970213406889561836566740914093732527990731399007861058657583\
929086267161128925173400029028748192007526808104638477617257491108626114888771\
902954171042407852591625200605704431440051966010458571648674922134105528785846\
810722195591380884793739144890233872994711473708862649884943354420813787092594\
308933933500103162890738319055642444104457870888621699413923963901800759530859\
415898877192396687262182835806355393843382910641090499616819949505473718675942\
057889418633040647160297021942543357737978751264775080563454629914795441581663\
119913419238050013844452816611133681111202695077870764626776798901769946289302\
784134743562942347472397391595957482899392805353757261378306685613759134012840\
275158743241264615843321646097007972855073796588222943806745457141902433350220\
476240600419184995211879468361244982352186145253189518137647819846161817147307\
247363357026702997646571801713066682503038721238648171821252791303516493296159\
446365572510792173485788044076694367026039516647866095307754016367138274056182\
146084079270485496562623577929064011886813148245184444728536987386758129215146\
302347146805603817783897953595849497480090064224023529637592889971924484425869\
973232986922321965574350808755860943610557819171377203071336336734811423403406\
699434768678574264286804741030714934078949728424522031799650385796766846425367\
811299368770587632868481893170598215641355163485630181508309737906951621393448\
709387699103962993251234584160271888004020541453916371076868768527828546612276\
600710530948418659008037221793491001969797260552251157764853276649746624500746\
460832049179111099123331487352187681386308880203083958368237678663031236144324\
407052083048493946199068611379604026511024402286928888583005313202069554321330\
578631757305028968480060976287112313748655459230090706257277392641404596254908\
918920861463709856893422370499315144188674434921548024280506912217291309303816\
372683735095590003072491034783062244181090309077971386630318738991871230155023\
818472864471682363669386243173220606509119076668738486659397431802090687198276\
261575913284893415909966582594705354441914775892990241461500790766741578959920\
560563811871284535882662305863251616955415078830150102858804987328261537591838\
399678593576531630272163401404677156212494182289483310952720603168186996889154\
350473492012654426566931242242655308953802474645211724879987599659896421608519\
943909730416755676063215224286918021943989216004809277276937708422844323907668\
481480888840249612734939008631346416660279006960142187199511965424353209116832\
225797609423202479816361114950767071671047442075088793744342927372560401132538\
046528050127116590961593779691727777678296957514879191072700452868235754351275\
270601479860383523400641621722701983334794326443022638133498456922365727092710\
365159370561441780230631207937343716551229631535016785401389356120198797878846\
546812610085871986041699262086161788770960471302348096454338627279235674915963\
790236760035873795144820773058544169973392574032240346803169425156454994351709\
735541418311997954563481926229342821168234812778421643454960528472255918604749\
121363267588660945960763933446643637510172241237199324703058490080426424261259\
117302691706374469906387762515481498975373555379395706767586507892053004090558\
597894519483979279912119091725727600677485812667952096007642254671899986502437\
417545518932099121010521190483600432974767088210321867294264999751628656612651\
975137188321452128091397864868273964057045634354356141316553980966592793552291\
051854193630836280401051250855145281748426376145487342991773150419771909397596\
786693692597681899452708102183094065062600817052655457001297716586941924755712\
219545400650827529059099323602615115895973655925428190805991215121240771190306\
676633449131567829207478967514083553851466312714218330928309794939300459229219\
064749277886033571757292688647034736554248274860733083187798498176809738911067\
826959433785182413370805302619555962380439595524796664531434971108277182353987\
774844392085035713842059183332832812838131889470585041030779563581579776486871\
646478998934469868234953371852879690887261579094492686019174884344025499388641\
152773273959676334347413083766971550825637839230366013439228561150634961744215\
171319815316391261133415009990404601243195160350227811412367784047948014323991\
534331834236549687919722863562980547143425137698218901104268648381000395531625\
204693261965598216046438868385686546702893911832049287796051797568782418198807\
418203852748584005378031817498113782926350564650514366420363126858422033556379\
099310835933421994240844663261993538798339559365759493024504454000511549014075\
175198094054707836530605076363509500772859405481445913181771560258580169204177\
064047189286079512117961996055648522072598328201631474695033519647416485000579\
398752534637041875608085967785889458699356182612419827309696380753781700945922\
714057433221142048349019971244905943875719445158773085830391091308935340462962\
951936183002747167591970047786667494144128832586647828327670422048211716045516\
368766664113356016812001920740668019002264198796301059257193665743425351619322\
217154840904738428084678910968343371357600617144851381637263051500864158427006\
524709025221723345925017236263742740510190145659023457315910640903702195281562\
261987162969841258561461254953209480680602365148914138823284014245593937113578\
468019637319556119223433837069627032364916838313842908075127611351678941937970\
151137246242907524649660370951114733508823318965605827050328946973804025831926\
679968258380009153067928274489736750614407669877635318786909864161560236804153\
260807965746055121389811075613427491276073417006394213392942184265133724689603\
073311725970130714943870800637499993321596779767819844248581234814053866431637\
490611558484106600581318788249636091191440918814595812947667309486803907426401\
982947233361664634483758526379141205768763360931157010047238493947961555181258\
992801011534634632648546498988174495287936460240262216143739826588499195287079\
186453769314145254814875126531700275173844120305681525774822135812672840157682\
813160759175493706378920075904348571146930789636573385323022248969258887138550\
285761349891230513555358341197721295129069292195339998713258258816042148042571\
114727337141951911751478231687415145142297127901620464789097658651035220463433\
708273985268591841533985480993407146479680852019321654220731881564046052961532\
314953120761745504717847046415174093956604407578972497934793211182096332040508\
910893339337719016210430564999692531776696919838979252756033290999162255031968\
386531945217852257912779785600546723893979065930289066865087611972879667870343\
672435353888426948033877604706207132719743881116989314578712307278183624244429\
484625619767120286144380124570163133641125707392432876432486986145809165933671\
384553291522979421236760450980891658396379578731817945996602006221823930288450\
349964128676598368484418454421492174794708837811687456519675062369921736246162\
806851337813166112335868508849001057871055751841206491115725235919870821231201\
041737032791090343399755089542700540006714656104935986506487565602468527692971\
507938914360949390145064904325954582812065246236036801347680302185963831468079\
069071180828705390156879862310288105625072811427023809236026605613599980329272\
444104725583772744983492094839328952636085980940412535330541457158097707455474\
889724085008817583415410318499373490870459024213344114901545438059761308544718\
131397066616424897300040098956510094763182907259060518027087696071998105303581\
932455274732910387972852561306730702380021399905397595892833168451020658394097\
279489880468001042748649234307677804464726565984279368155320704388429805771273\
783570923154068339331207094873495868176016822994804411319875794187893549645552\
525808610570606362503610156431170162410909519538817229943763834292553621640087\
644974313518016097612197915781650066262904318245138482007906149638652283724361\
978053079809078708756113892863963997364436825897533130111294603819877958030888\
315408027116400586733824477746304381165317965305423898869465209175749065564624\
287537840854205736804423922272029714582575642083558099892708071781175812891650\
110094026730520210548221388151631925949399360626919577529255421477115200644865\
264316339123250834642028223092139393995228136347011962016500773633187521146194\
169309381275764562310062847531343116743833818334276509292850532087719586469488\
801313653173691166745712996634780893153551010841835529043411034848564442787097\
595112585214503555051873231636334774336174066516554399322401003323816842349516\
162573801229514208989413847842510755981629442321002425149685887861257068325924\
460491180230243440700092357585077331564823907571026146139215727350786460759859\
920923617052600507893008229826941250052516398450510040717040423642091546854888\
399176189054590444022090454309829507518440852039865410528643109345178015575195\
258789016741844276059760679858511659677196057826462983679064978999267253879697\
731829314070889457940875801492021679106908203570351545619589919562444105211198\
665786502728047317634845891947190762734190745931170607888418220327340864445534\
267176841737640454882028636946535163390387736710215920547761496541513899718794\
654250413901576158638676468677363372396132327659290113397726120469820977318098\
432026028300219823452509979545314002910873255019323001173133226468959795169549\
520689749244916572784722418473354455604537075892926879700297675048224325770644\
785577407311871837476572648090836490186384895268782838714973784508997959465201\
340959401137453745729942052487391412069978687442327353036922587305270183030040\
165928218999674450192698416737013773209430134630983029622394358685967853742644\
563082275727844011927191731454111170448127130992158924280538031634822035274117\
408326030164033204253986897529835153840884625224479704931913616593335962469170\
854876795495467597238573143254166671319300429076010486011105516819221411676333\
667870078900451384326937372568962902913668242053283694727321942740731894043315\
397153034494806139444212918357677253964744714566048312071451809735757701365627\
697395884941857090801078803247075250693532180408725613034981689328337586472830\
756162696343630016459675859817569579093915440940821564171602843443002656971122\
002153099834184316627643060894313801994719822609096058925511713171191627236080\
308499850404365344256235881257258874805712044807705845825821267862804664659343\
847839682357424349495508124167322772485626401752018317423556110467452445695754\
572040643990458100778689976490744724259642043010559274123669443437158547270033\
896292330244325487228219286673694972167688398142072785816798167850239189167740\
993366634489117262632225530535604998442071193738148417828392167746344124536402\
652845935696222373926599461919337887752570095520999339137300788919443733712637\
491420439248671119196935252547876670768071941487321598595000724836125211440225\
333513095898926825304964487546973717736491691423691729293943744029629623384263\
529627905778410712310295976408253660399638454256995067408646644850321845955496\
262977083906134111932913776595484759545086045576339530116193671257695506155971\
056661404610813006755765455061809328271160602337186300561865536248236057333446\
940199017838050326874099831242635394720724644102747023309738869120031187756734\
801405323721431246639743403939798474690695501646426680453527475672189262062596\
320846995614586942249669523381559273909137526802455516481821044328065134710940\
492093712764199217869219703331318164979434379647583818549691472526461855149816\
321946428019548127669672070129949056166136015179895844106668865789452563507648\
929993072799970566887072406070966543768404998848941033640955044394876847960391\
481935113576898290761815681670369032121613091112827812688314870073221841660902\
032968159975784049101012533620692259084555234754762410896966999903977933376536\
328961060640788977028008185666516541608700981943399702298568962156495387333075\
977401220354199093592379625913433902285116577802900677294008451221169277509714\
722164375163005641745405950171627526948274574177546611322631398700748777969916\
125309642167720464237290990552906913130484753286630573742621605113049833073349\
755490275953336563637404074202201739742512025524530626386480857215566250925538\
595007248790366379923528792784869899006076555218282788367586340826601313374333\
983670542142989182289316072672571006076782590384311534321920653889108636484742\
055325849089814378063263787671722041194671726447377476299633057989806124167971\
368297296717551378824498793759871954887825693243471684170366766166149310491911\
527434554093554837893285719188927494448464342921761141341960554482075927219182\
457898735390422648457732650318450342018144777508832663467542730590802966224514\
632673469299122878702245505191331704884885132898218367339434706599406264062456\
485950647190169339720113394503912719392560859106246445314932887538148141390039\
653253630242757915829662444777135023958421027154995243710464790351058493119874\
731447776949889629415550687188965429768074804377315540579188342811901412762554\
142623527999033144285918240468411919780940372324115080496932665463321460090922\
198928613407664811254918439133057339690252249164178178606549359202073256821605\
469392524604932511076169864310478853514695590825342915976151595338491040889440\
693883439393539025908904257126155696956195417662736063239336688647137526657471\
395612326799318300404061598832552891641794042086564709427891770790266108719827\
394486581339923470047656294995697279277203287986387361767110259827517411535213\
623378416449657761454352598006934385690157425303487157183671302340162876060857\
381048990125771001455428455069127360024871958607755221992852090076526991344410\
745629760327825658923797159838114439910825521695067211930435022012721359273733\
183921288498247400383865329882012154601923203484192512798791222213459936587034\
439392078861833784434633163615781204825093050045901249212018413246915658718637\
249568782473904825495034506394822573214666491908174584645300825825344255314167\
785936155647277108957416843397969937665516828544933656635067081806563418774180\
835918564785714342500294411827406385110754221511333258962468161266338250434172\
774880106730377817453579412908747333385371637220201073859074069613501062694292\
091109394169140927204106514126828166683694613676714153245550037535248412645642\
284475815325429754332005218398435669602336254593448428043221979402280008702967\
435428030557367853791050671289919912625354297502381246175174272724881590229374\
614015548175709258388627266075848537330580579229849818898462478176826874354708\
722495061967562125751510782871544501047321131354422206859917824248508002761612\
604089175696310720474588605178848439454701595919607829243351309920559200595232\
162457197223957435818872696376510290074746954717900771709934455680587920213300\
480534918611453254529001581185780449324840409162452770006594701497975020061818\
465790439831194733031049965703693936017902661929494463239822645180673413677865\
944400149176355265518491871413154464845407144822117354019075886257022495810323\
490460739636196069332953190000516094425243229819025917325245735198156893969152\
201569233800071185986925567566906352843569581574468589915688131772405457272827\
962397627135084258700379763061548626605945354963504040064613296211212333187808\
612008907262150449282968411800562804194141788973485212413146133979449472311765\
237492894572169238020466332473552478710084640523217819886956975032052421928015\
975617313502900820533483811255752291463300089571138881724194679967975197972124\
680189124339026894007981236093106958542794397971147632154927688364600854698627\
144989410226513481939525671922167943148677578863516875691790958298525725673001\
041983755034575275640733481589258326324979182090495413400898365227393573319996\
387782954512525856644115174414211010040092114559748280319839150905202607808631\
157280527870998711669075934595973941947729845591125392525873361538363553713732\
168717748935768670080477748073805527051940855583853294802545964490514624212299\
542636365282670920198439923468521168093766945903004685657336048035778697905614\
307800949199183372131801525646271046541682650379987742514283413650044275778691\
645508709028078769415039172734173500656689649395636275305175083511932040662901\
792868043518344932042184333671515809591873207201376306937239914280258016439839\
021464687910884964654407778122518017282031847025238930849099675558371806582947\
415317814410912267760473054751968181579303401105997401213828246103722531891551\
203738816923844289093703188969823601695908143507925356652699637888622620155688\
253855220004925351452414519491004203894859200693593146857763742624765598291866\
193537137393046418433242346247966043677818921898553040781799848304115576617345\
311779503465104509695296894241431175544919516270943491130685368820145777596774\
811509864562405724219924722475783328946337589655697447600105251076200531216864\
629960824935554217778297247649585884606034790464946079945016231888801766282042\
316638341549599895280926348886791839005751804428640546732488195362565193386340\
651620022938413020821103525782998603387662245367346059482200577972623167181999\
620430945346769319565588822470401272086035574188861549701132663233077293655321\
923158461114196151743931273909184082939531096775106980695159739694018422211159\
232691303375644756686258639987200650415500143469546872287690060448017563413437\
977661658852157585331538110067637176223760870647433356996335114301920328238017\
464487272314320036433185434843386369403590373458194556853453733923854669974171\
797537808346830456480010751599166795707095722702096516521889969505489811719679\
252807108078566478323309992717588985017622168832804218300109909896773663412887\
618047665746184055454595221582854470106958778733558406679832352206037757795487\
810643171016783232503308140729224101946923395386397309412807357525501455666619\
679576100838862832236803196045751867440561610709724086345380711568778404737683\
999928105928734925549656990896386533599564697305946396288145172081625049603137\
347072108525234094085059603711817202901645558935478944792438489872223379395931\
268867046260317865280049812590830036154794659034815302867579414687012449743079\
596558823473124297523257466388239879801320709122605871206461290327150456066447\
463354832263326757463069784892693277882747124071843085884765873775671453664593\
863271158668920666843254842933388874195533467512688766560585540533823762400186\
171418904794798572548340809922696649852193307747758272447977182891096851529161\
145743879205702187542327810377391704218868842719914589557799845443235510106523\
318986376061548574323436623254922129327291729272042768940471286153706414053313\
737014701391881677628463562586092800602838492252077507440286154211950250975577\
280779689551216951773368695041113879585314884166242368788082024923235346837322\
517148915381214156836900972812936180825573263010237408318452068548412975927033\
394249548075992234387892278542796480544433777751317996025595388517760832547850\
805545808780350279313395412161059927428152245118280716255819390227552225329676\
540374800885080306892243628785040036013320736048011095203415848784837334925083\
890233539506836413558499736277549760162220148434055514910886019058721149788592\
542554099270058601524228208562991747101850840222366169272464694874533022165044\
455048443375541426656317233434952557849412894057377508293755822868457903277143\
319223857166281536313513433692762296033484136690966676648362055080844072677714\
877651398170914448574919892525989801552347616989207547647353928818653320139906\
820351830447271260454275200270733795901008999360274250059109047259090972547503\
779969815203478612491037163187019379657387381425409869067786778717673685982778\
773653673715545077126769662909250921323166858377997251604178791978740245762654\
257482763721973295840112863435753200708747335099517218203054030742149655060256\
782885065436707572466444686032149008100043866181500942739734981592664438628638\
699123252085487061860943628476351330369799342477141524521606369156124022686502\
748462307167931670327438753363658030599697540125384558146196115509088311479484\
498615188316841750387309099617101444661992395429293403453093853712233062086917\
811625577144567990160821018146785487808920531471622028490465452688522358507149\
103637720780121729039094703138013325463967180109532682488164774987181155458732\
491794883332242876540645043067404549991201660172564716946379423325635191238459\
508919380783722510290283740275890748602588906950181348598186746672071766066552\
522055149945098840492607482100250456845299702102916986193970430707097190456701\
764357738320032085202494842994709963040225763161270912544938771293413113815152\
694805460095785153738504905993055870709447007633562793894189532083748304377642\
591953991566745216536343406242319325593088863667843233523031931355035232876149\
191009328576093884653182074292152903857972301930666347104971492763725080908403\
098766945224806562080947792882149895224335681793778215261204790300485183107148\
455800420864241166869351815031736958774231315696367951387832550394967423064800\
308661430968274995273515855688835945223676142863903285568163614459865679500575\
799016942928718536663064656573129877397564285773898568002715988069795725876242\
280199025217677323651638460422262882874686661234876708108158298662564498526570\
634963782990572342067368577133041955811972893464178456774827763084383411224764\
599746259781365431166790703497829034192054800980010198662324060305987947040383\
451693430338275379352516386628236916262456069776847958281880145422582791188378\
983853090635512975954912362811146769483849619487403552799283977774111668444234\
269363377020257935010115466777880274185625421631213540832407178110312098164527\
765971399140120018563144572350746198638536125873656025916094773174547535369595\
676426252125972370312353597614589530830915852060752953552369109580489584313143\
512645672395732767884834693819220669410920334862060557423961804700406874219514\
282512855443658024196790148790124994770631523640422901551404832464518288750488\
322061790584239844072737935651561631233901833130645309007395816713536798883871\
364700902231025982775455746955131558828910990855656909595084838168404190656824\
967475829816797377689291577446564708685914403096326120074752662564900783367783\
634040119579985665840212323719167027285616193266284523752901588812359157302039\
939429879609119699508140819995724730417911521929932052354583527486134770673460\
952876803937542065352937189206574106578222248171945394870251932812055589550871\
379951197899674094572520836260624816937934510485816016242269363983343974375554\
861686388790850685904763372814145338805254805801762011292954959557993168992092\
009766424437431866322885613239980019217651022115346333099410813027393405176358\
440266424942627405855275492271958687598576452286370627730245228240657698932763\
894911609339988339608923588112704644612950833634300737212526020814769887287466\
496440853779033497589477408436271341881093693645788871363895277068878868726544\
073763950007562641334921587392247172026180664859464183861755203032490155488384\
178010972973473598560997943389767218381935997915243451297159128010961458236893\
570136658996951501073832631173056454338571749893929179092638294754922924888476\
446194700309925121344793960019935714804299364383897690499510731985023871741769\
867083795042607610490207577735473394944750730572515245909603008957757763013630\
022251504988405822089975122476512846465893132645787000263257308079665539010648\
081488139484239776622571471195172112653264210658441843509342003224903619958565\
561631719742545235477051289744852536269248134330322683223509948210036837782214\
391120532342100881681841625187371640539716917714108928752760251021223124879226\
917641712986232021572793140801173420346941853438120295100178401266019141450785\
143906627364168061409319565981983793869655037340502195468646759116855959581325\
599993624951561265919484746605576181692891101497767703747796064164844883705628\
335296514496661965557399818947234596334229315326180349894608461360536805677335\
224662301262732658102949100491394595891079498520304795408914391763673019477887\
375241513533168677325430584658570647181125377364808636951798178575963510140648\
766179299365790942016651575909633234502225859799917113010949635838093724420887\
722424855954556946174061554738362550554939227848958670294787546540963306433248\
779755950636094033341155613062655629978166463481913234880094706387519071110016\
099455480945250160140861814290817074096771787958176046633674094157304730912683\
842854487054189028068875415323275835948610858235441231661049832532512888478722\
870218681373339134248553314017251695021783146592406848731452611953848669345825\
109352796836536175910464960933194663953832273441312480520083812703049320475118\
407876207136276174985463385446136386517673744234998343852676364584286605375272\
212704436786536827519991972435654424549224016913661976829764475169010693696056\
505670959077747537698769302525461015180574502732344313501511890930410816928134\
619380812461630148245375399051141334719559211410205117543469024016173643586627\
975679932976067099975226972029156208185870025037730717264992399132180472619736\
607930979856993973283837998998264304174425660303032579555003002054775924151610\
849659389069384324824868092303273031815632583813321339540519736320346147915721\
350215830083774920193605194363360082415820246174901158088719209443876160023458\
836676239836863924535454525826367416658447238717694092391767204176117265420099\
613274597778303173096462292476422528495274344011542114096045603800171621564284\
119524376125683497299174785163289655050351722729154375088196783180849736836794\
167920211588342906514847302417024897399393390944655792363825488836157427165417\
588259487566559083319894181113192014007777193715658379307397646048894473805654\
843494617517415829254550164952377598573522919888841614415808114271898053775154\
427947358132759465376327902457721155201072835603772309104197907973572059467029\
690307836223016323058435996965756095073690130867933027615860998331917015019040\
367936640701541491769365242034162425293828281642879971798761975598386887326512\
701821186613040449659938086150375483466141283790479999265896228788826042205989\
243679535386600257902383920191880583266469002432341135135430953078067882574058\
884623859857551771620543595016348495848308763116166920354038938327325402918034\
082123041567045709162304186424505901528961116199670654052103296037920596879655\
456738908864914851097812559705656804500964828211877965322569396821549904255529\
576559616742379035801453713103217164203529527310488257252652884180665726476489\
661402428294876797518559061178766864854275413085445266041699722991304370514531\
717426183798909530708989274807867772587588942951969692145061165099714589959198\
676508391101790197137640280127278945023517851934914176615489753900149313434077\
851452178992566069186036480239029162210732499695781305860083587731403437952226\
938081292295300304236859060873273923419212214640790371666143763358748515689030\
258905257022938632473971135960910078854973534108070517332983197944735918658338\
087380320394131394751686481611823208172304258045480737883958514744374342600827\
446852144633493227587906399796447460791069825647480126264476557736645994492424\
355872444881670981833007930924148263876226844296959564514863008880184897778477\
497501543301884384984431485648085943723324110058475582483181305282881980693622\
132622333012710478782275087811027258535261898698512361781198605962049885917327\
514166557954608180758447431446881940736001501171856708162770009612834162795972\
925451921100909284553760887787706573680887174723864950436667351774761974786356\
126336360449472468266729114368138740421537321767574912759662638319268387675477\
080467523752372722326015284174160042532435623061685525493028003881389062268415\
508580791521235157748310510170047452531259598070770906917224334589585555926242\
115591066264608412616968157243719840324386096615451381401349033832738941000982\
962388271502833269060534155821925800182460713897262968162646619596554095398246\
042066963569807934902236888996477714036772176078713018115139627001248840370398\
167009196121264582778291039388185288662898756149629953755262246209067729535773\
067199268273210948697353537976703383833956148927414854566434968997639581453431\
889720197362620176835465343421695369785014480008580365319920244544464542350489\
282799744319458480145790104615208710195488680954787559718413963015858520503731\
895734634681562869049912107513035682225649143790142753534054967757360123499360\
479755463473666609871318101959500586063842493995946992319569169179783632924206\
005743818490956779640698862137897658167077400480203655302064586324480978647596\
557537814693945867762111029025200991265328952841519685864144806298718341011307\
903135804025021406793551979116021140703843310037195331163274836777579586424596\
563615243571683325951981801403552176384751109265493039003572498469022762169542\
737314285750838775859435227007860025111672862641192989444207968682069003177042\
554596184614244007744781789234526826345253708859317527748929143328419199254407\
048225216722174231796135399669558818542319411396307065492614222839891208511003\
675303789441885615591045391780037095875281729141429864532538483317031238319242\
758155431905235050914596310567768178228149160915914495191787588621761049443299\
845116941438318823317690904423985321781410795034178871201789390815741160027626\
428396603542315453617697642855229651395469744240336020165179765677593117072059\
333345542476936712734520193509695272659752725883595344796042986250830284906949\
039321762861276527819940344990069549435203231752308392535461603236874005859305\
651599374775468270109926408197296434819476613636209296888981634521315963461707\
848241756205210013257306397016930894851248824769731419261831080239198935176042\
027379654748301874048897835458695832373133994488881045500484827735973891980282\
537918769694305937604477724928690171820739988624535089705108473173852756575961\
060885588392320798897964423855307169302777400106015430803223928220832627177929\
549131216653099033085501192476188433249682055454061919405434275510858482222636\
279007124329637365803318922901744421129119890218239326343833315688825178482105\
577377853865628559319785563548836940289000114875655241819766665067268737225680\
520207254903717820626762655249668609015760174812960057659001763473257827410098\
502698409557969629013637365913778750640992364935090608031139773865453174723673\
503866151289006500119109228179854515868321748550461907062557842078899336853613\
386105351931962833054099148672280987311850546794538755098662398592601696255478\
205536997294386586065310762971651508881083613439116123636406932028144061841470\
261826133354660536716537944838083368053868686406027998957583627472079666287325\
776375229213823270969083512807616713112608313447287315709205858388559856237348\
486930384877922342725626121419376796399467552941731375712544883186791407589460\
993195568143319343267389473512665177867791580572855290607707484812034318152100\
341728507924466287581131114372999312216541556949894469561245501278167516494677\
622711210410781266695084448287132732261713878206618551907287934286778218816565\
849245612902237022675831969778854833429234203453001768054862912347734737465317\
815786187892500340531927219867171241732925547599561156406920370501861210250763\
667860823677685871206599098079646154098601759841475255245295212435464019078452\
978086257831974634214030344525908551830924595537735776275531236969314497675015\
287100476286102193614062305729711081278909437716083200483539775288094627994073\
651853472885173438301702985111942430111940135778432190195514310348164870493795\
806217822824663687792562574235465537640694303052910526864112720398538081950293\
015921741298576493491777501373707410372977800713562408366723229798631777065935\
263618776037513769080144393738884948118668790468572942594973517670653080705787\
399234196192104568969535708215591292876325146495332731314060603810462681278640\
325653710518949008452063300480156474064933357731904969694645162480948853442688\
321002179038918114947835818122423749312427005356620297645086866425559894009866\
409859661919132196430746434379104751923339425315925122207277674972939728591974\
421490019659705359458302936359166846471684243807892618924310311527374772393536\
144407004739985227850203710769323351017018693914658717505636276888985591524814\
254880809662505398185126541540614896042232227239144118308591997398254662289413\
796101637115531698677861020188236964771677780138076676477235604299783466423159\
940496199832894858224606429664052213052619880170022159248900177356658694356594\
299670577150090799055738514657597271490945800705973249645471722474117288191124\
811958236664143782399250655517926894966055703027198998774888778598336293421469\
740699811263888242463390804254773430248095271975845642438050429496446219372647\
954592818464221213351543261543931088865707439845713305244717600556523718040332\
775064247055723494284213731779911890587169454023447694792420753456661973378908\
598222158584187584577923280220574342415909723123135597985800294336156750365185\
378676190180263323374006335290975822699027245295105442695593323744629981965537\
222120480153648418224373599599416125198574902085254929203989192526658217312275\
829707119616058814132273219102727403363769524732263399241946466043212944273840\
526575888517506856367558457411012605660723468050083663603265770324279676346879\
878292189470654007289328804970938442368245719357212309671603448912702261140064\
370128543470862741436051258847087045361398617339628227867127521478730274615742\
571872795298874385515636816167332220916926605703117321318192151805558315147032\
191631517098082286000984308993882134133620235595538215725528862247313520795135\
977135258452928055982977545807382751188140469914761439295846310226693255437670\
908852352550477904947678607655210255375101125653390504153046963288320085909395\
583842891657746532462101494597561152897571981386756901688567967367942232357462\
946825295416249090520546941937674834062365283597972352294834142506368816752399\
269009780681113529433416688059900714358330779433948323840121341182245415698269\
944653580879465999142499955462651852924201201662380689298799984377290813001915\
872994007221776876720939072318041280392720536557427937184390898293737360027950\
347090789442802389957852953885256632990742846082731524682085519474367386856423\
407477306835255895100989106676953461854001691772992373802341713458599327831726\
480839501445743687463907967637336009516708383751496298471180186893120869702188\
404721614249839039613566884668694356001289252567370774955367344341177425773079\
830166609899665462339508685131432905018406110483979890139666252037094612543152\
150496745873800325855715519901229398746825126688918275427040869187088643686799\
385803867611073920091087883636292009687443088390472747977849650199538411181362\
932121063273341284852876921411027484240166884085847447780204904265825811565073\
517217623543136243342034550717697855535397909198994440700629161715622551590329\
765016759916406295588246938337821383852247473157890561627858138269116007985233\
504477276529202586031195243174520361243140219181006126474035269739451521769726\
957742687761631381176870586751531196591737162932864904164374041708167554544045\
903865560860865580767038651149594497707741822040320718802535957120183648415646\
696098712731973658835159116198280468721397638360237771279637647636196438056888\
232810708976108782265592610058103180960282921222555599516673305540932743808555\
764412762346126440776255188068459991421069304805755970799103499580826196678834\
103212400531096796418291079914841476298290560596499837556435607913404096803734\
243621404073306548077754417717658484331052224747183940925402926472262104092277\
900759316209604404443412403786353927482812009859199937940423951601271185061439\
664986427628184405839792757352664114397187089807933506718428019505624833772455\
328895833036077728144379946863523913416540163618022442404027253117413427124976\
117446874815749998121140667687440573709165282914403607856614870854803620024176\
792783552048390392896125808712532605570506186861069318799127686009907560451375\
534361546501266300235007669009237158174393357733375124334348669004856915782795\
272691498852216477406351000757655672528151785783873575858953697903340286190574\
070771623732174578514395424994811828805613959666501399799511430628610859993806\
426324419665249067810136856760165953387961226478429024474796666010217428608829\
652009036740328244081602373467272800211499445374575487416703463664454389318791\
296457713804301425802040081169152716615148638403203209303679490381673696703941\
369849414515776363923709277823549613716779281057672538637333059198312085172644\
417147139695686174983323279966052016695067508906489838239252084283399467730701\
777418519928441094410066111797119062357161856542637408415624773788881395333170\
092828310706930378369955228447461139775720634483083976373714200144871472095094\
712801019697144746150240435655763228985885342740272245562666554382686039624733\
743701201055854677012529014021900662026788198855277666364234691793799103890592\
961244409616884442558289178999933746928108576919071833643945224878966940526088\
929023067881429721528933502176153068548164553616120252059485036326297669083751\
681620531793601630657832813245008305995999240983784823139409687083927522314142\
149376532919682741794866805785671620624387758916463975663950472158506107636215\
026682560966353144637012567933476021683812807194822847983566208961642506121189\
260998261130307792118145071218031559627195957336424333245329034970307596880972\
216344006023137291624378912597291619749967949643004869920405902296188404627723\
220613519803136166645536841684920726686670178266694801914343361703350468223222\
809450618064619707010317476942431256667044769884399323154545322460740942075483\
472806071154704650118363584282386313514851591818664662965287028213488359996433\
480915058321314514648162796130311932704648564054706155932624166474257744486249\
235013238429818664454941125890897288149716880922589336394942719353565320998803\
723364684801871215256181803103644828532549768263263559256661601027480383471226\
002540963154903669740355475273680572132724102486592599251619305567657725098631\
606537661941682631509606451710252914737768574926283947868130075943486472074191\
706766184437511934467421435353258586100755879733067741625583692563099908566442\
273562813625750947649568743113722439600948030498132084324439428640128377582947\
839830258921124834633847071988881451361013306893250804365583394180291719894772\
933812862857305776180969706371679630872602990017846605480127659165057180529853\
119418793436145766828383922105237389360811288649678077547526380115182585097735\
529415041652910059162538195464195047377448415360810282454097559577671303349242\
789724809122883807806013056004725819852650735190147043451422977024385148527276\
433145959062006024829797400393428144796879598838615484379610116483551552913038\
327754739742103271117924495644539816326860806984607099815714592504509548665302\
360844503204660021376724236520174406784668489442082075937571590505755423158055\
331183324146774361793410612206373801292118984509955477699774491053074366068274\
440541938263002780842561328316790094222186576545326428755351096649248408547760\
907105767828597993858636135375672765575959421379896027092429948962686564402782\
239791800699534675666987829015850826724005738993431160850163903586478443567285\
311354457892446373598676816682187933036676859780484184321498727376974206654447\
818250215348870521379106431949748286006170695849482940308324220300067298307060\
591823414969782013727101395613444857730611454486646004630119676754224602151747\
152758193675262224338105026482446140835161257300945051325585708361501388268438\
731008527553863735900858634732466626188351571285445831876975005185588496745310\
003119754460911787348107771062174071632366388116123683722002601197278440490499\
750040969178110143713062807320930309851318475478227841947991945817202946073153\
225428105714370794433982018677312606028853559313579228560597909915084457746042\
861329220750549651799244683533853484117665563770368432325909729755810576203965\
501386807907715504336250069355351812045146936468417781168462230153071153572799\
379331288793187256163315403060805879831630445170728103569049846173892850143049\
174245711166582327868613453354994379320125379605464223954204248887118521372950\
161975773881302270829656399278893736219761288622185521885193574576217178242016\
173795803131271346027762952590871529077888611350535046604197192826106934381966\
666369071333751590986692753599598236143808756727732340750088972101311915785912\
782094059335648533850779584640298932824353052803802831980661245564276437954348\
503357359921364717058622969553093480730339616440096443182878765654402458611203\
846427365038073785215350070287038688757241617875413492540636284832407560618763\
427919625370049613626916793520040331850379813141999501035515231469331486320427\
938101475199145625013548829793444799796867642701879115099087272666402572231216\
005834423952902574908198111029463838722951181269443737439212144741476269788109\
626224483520542480263798087813624743865435348686241905272930799063281918605465\
743962859787688981860472966256431455718536500705912048770136590406404963620049\
080616705508923138746853444860874491468607966301415044554495884011841929369595\
951313539999639756897048114927079008584667768722296624103847630293668548426259\
753791590730356974937284626762247943136488392852099680650056488124689464216134\
975327005619860931354409088326239832438291172845298187198320514144771717492003\
258147261219376370549638386042882239639462693547596330394211219670126338583313\
363717169811137386531642695461727449828697813873175311154687997645536173966950\
172941066985039785964430288556708165652764450541645461021653799188436075968296\
448479975481013047347161369156967063560438181651410614779981959214454209440353\
614322305403095439022229427648228075463575580940625007586606887556176918516552\
218065684623374768930007487029975085865168364442324405869976693931629120118497\
261378377047712906950086867727051405749963505124081514059023238661763087179533\
842111752548998410665784200859521567093163310455253843778194180865621627474176\
228169793114902728555692266703103903926461330460636660479156217837428024558504\
160749995207306654572062182249059298286947527454905458561590406342127486635504\
886264818946314695008287466074926637286875296815802841059583406797978130500052\
331832556918230497987923818904990866487002350538621280422178843015794014361958\
196102072246687064363529710299625074276728060911365165648949427590510184701347\
901703092829669112252973117043980290073175067281971846395720817785714335201803\
620366875116125630840304484858552936950029903706817239735828227842005948626472\
359420593404703762549576229520433112560458635509115771429958273390670433233508\
817856596411626014955674105689671387681610529904809336893444111766610545509929\
997619075724784453394086823774909025470846399110977795339870599432190386998992\
124726523457917247039568957011623574409316218156309978772924042126973370685251\
972562439241435418572349893727256904115439756646325116361203348626800772712954\
180649791264598128158597747663551082851004381213188413180304363850809412157563\
543946144928504715823718249775420479456187165037258570284528556193357815650396\
271708111188528462060190042442870985736929744759280847727884150437709305481957\
465477109059717735406333081518587422375830518209901020769425765960761424508116\
934921508853571556281339266416697391255966979845366511345083524763939760394351\
261493735510735566112069149037001129172210622040135320438583255929768643730970\
990038280211141282962703209671801800513811698866878283863385099524700449493566\
984367822548317385919761433288790341031716754336938341473784870860678642874165\
442071121723763061931997582507995340312310498755162520825447514252727784108742\
441507641924525635221923334202818205421237336013924839006265722830423804328433\
768238606772432299846128979860104662419289771431728230262015659769515375341171\
129773925934045640017997757831514576041184988195418704444936501934160671449011\
447054371745918616431813746035731865187829549242792106876326380493693975351300\
217952409649088720594323157648097952430891175754322885665317906518162488003123\
773826833917732935783330546560263633870181177857091165097881418974500615759190\
910207339390608426294299979140715872111783220182646081709792568369561547907798\
475101144047294725954796242307799373440110972545740090392465550079666305885693\
274350497805052042760117215524197488881269262507183253228580959924164060300050\
182377478427756276537469932221372867709556494437396354394096485209103007169760\
770730236839317491764224691506515587141547698283522980978797858205364477259503\
015562846450461467060120523351163750166830466887878511706022548756577502551757\
645521367871990492753686822391005222872463418269143827362556646382927985719972\
039883033234621213889750050980032069707428456117469383874382969685696734110422\
401039654699980195043187735925644839412064382893154584459013256106226405376733\
064349218249919958632205433701543387643262420051323378645328325276741664925401\
981598022140166201281341713313642686851593419602934349307022827955764677132268\
058934354111126797705923023669450009237327237252007238182416305869500147750076\
526379882427543522939120667147402568197998593162448537831285182546487728679723\
528009936908648317950147548178870588750204464225957071055544336020708366346975\
789533876983207558916082631450216098904245233107018770074327686774871420268306\
865291849323843817307090542327757998397560697702070501388250881466964896838447\
175713264920613141143975378755807321982006755960960802987789010246500575958984\
438225229653127097205855551835049587419692123234047840813061442001081205740692\
258648143502885263558885415792999708655771503468759913653443614253066007877505\
074467450661831684055149999717599435825442726961912406841612488952800643891999\
561591286430510593884699899047361918969398925780693976558998501486036095503315\
742412005889692425916827961703409147736850072684822704097001060144769397887118\
534928010082017239096754900812536845323026074712775061121889191381126265941323\
277312466373324188678445086939582436762223856223772552215413057339639183197070\
596322664600183969343968238349421079602012755004905478476251219099888838072184\
059218898708922576505972138567811826473470283282922954928459113971094485956590\
403785427982598806926553212849368453760473794733346009098547017339794287085692\
247893660087690487558780254932540510771845206596692255629812456883712052885815\
126596181139718688071635638197889434431554092530003618587141037846248957995966\
666035392102861568090284581370107803426653988134231640146498190371529193399958\
377152981048865369103498653329304619738662751199185431528722893499273683157425\
519208992966696208143106830717793104311831992537381857034099296444768930891072\
429507066600633093368549719113622947824683507381644243616632937114495503872071\
627084436040296538291047431089452407980432308122252831482847432110287414759580\
236606782821114705778065449391657145438798993002297319061231592933243176565647\
646256544920603269089315214684791519977651996943196418325783614949231804694301\
710465680663335109632866370950838669874399684775612372112261747509864086341339\
490205334926026795936795929801084950461085620942736605072566725965870143893630\
761968376657630130183463654484187797717291363869680486296063670919343841219498\
272874154235808008672768237003036931022519635133883072268478358311776225581750\
318923222762491365096195272306270411663292436155581358009644259788911724622937\
701814971210835522704834748617951792631095390682632198293398117954893480521640\
333685121922742766524469884863753281854916008253134410959356881096691427004403\
909208405533871459176467069501111553381493340553471428406483277194758685686499\
140916653806502716895664077885872100469923210068533098499966757116474518715538\
272320005471989022580243909021888938705373553220284375461034308227980886161088\
992116529548126337472348445797737062362174934481008781036176053813161289271990\
129064479225949148240191557763719544670646858054263013445180281831623081315799\
955173891654378468806677980436909203889668233919948818578306957792148722164674\
366124866942850495656255797702357374271651737323190882506309103506108037227263\
195040368151768586677131198358892644391784364714922635081654576764288056615209\
395851651806704705829514340412788485275243757886023662390193661953602564575146\
783825677513337330029987172154146959945814957171547541529200738346370825554955\
763447185198102129057236976758087364579705117695300918324190912492279881870355\
600281843735632843118100963767552786772090142183534958808991827503517294910817\
388339236214637018777362441804038535358273353228717779791264086530359021359459\
308086127103155164996332597922311085873894293410892108597901550997934467942873\
444936193912220109824665836447313507004868956859263412538060630734263790449157\
502118623270621588554191388499334125025975888525930904872013423361606303681223\
039080946318877359095099663767362302153734249720790275483692555507514166535126\
316952678518808095673928395411681621116992848693307364775743839736274791672322\
060296366166272034982683158222362976830692417519448205649422117890590132028316\
339722545999075394583378169661651461304351897800646126950919368226935593407823\
861276598430285606703888639143791790665613479719361099134145502438443967424800\
511178424551466014120662478454820509942418089501937344541970731169906334939493\
797989298409599550524412235222407814511578870276032040928176190441495447428064\
753993909252619356777351810222642789701661654367399121543950339203739088483751\
775139551900028260298564668305870989941890985507334934048862058601901864060610\
034500022793468873185100020392728379758150108291795187848955036112265170782408\
985710338425961302606756045724078675660667210620831068837858567440895171967990\
979958963811665426176720511323550043042664823516838293661324012305772953818363\
083298988062365263461943233687424907249040693993391998560702401086761418196505\
817719918804963894001625910211901141979758050213923140307749899983954162483159\
443721029803517818481067324859738816345103170269117320743619657831346476025699\
475438491739069474398707451278640155813287482614169274304443041956611447334894\
197072990806066734997951761928700575639850931924452097421525014761719701313676\
443765347541095727806697181442217272782813098522867932599057675115261181911642\
090002596532805382367896859387233164893727227318232525777166453367830443215317\
032729291545220887226311879465010207360037005680877555837568900866695257499695\
875752918410576361873359798785439743945438535099802046016485934688945792178871\
208743511319243337334782919519552881809119642249125465594689755890036469896582\
872434726924115322657465275908013805482438908902562574482946479458965218643286\
328946674838615315273239932824579525396941522338972242176730530702754356443506\
458795739459382143740437512886656482825103234855779950116796257409907092927705\
899933928769616369642158888887414670864894618555184301409098206664383836637150\
637826951214249715993558621828306170282817142828284535703202108842020432716088\
312081947357315082707171236700962041296470811566222557852135131386888290567513\
346636171792799676072202754236688060360684670878935487712904637114614935467967\
088073367652313731597389420415075146079741570206689224557147918705736859486243\
594686534159909917074792398352336883472743939174665984551720055049440597097526\
507515238784931426374496867172470605691909120074398450922299375299861158919999\
471466091681731791598928348610271074823173736407420200522367566371486331183912\
603657816326829727106455108152784661172545774371557040625839314817272387471726\
901462560749811527588934320750918261777662012367940736590269839194371106424601\
176674204092607591528474394452193707455089517732672576225327721720399231808152\
953385399179344996289107757739989674328925846806221567236000777168247008135207\
962885651146588627206294041093458224614771949478555291650659979178693375138351\
483534772950942726503489767971476453245607205608233851417462792044978428810953\
371581248311617245511078369589003141408567021393379361168512042288452825279507\
897726005415646169704620006459003121210151643709823600819536840652863222165938\
140350929830309533198181899932345265985726387937217638613574120765184004598169\
895442942358717707550168619495553177824684394936158576588097823657725186653279\
786819217749836358277931414864351971193597470668425131029278047157342486580367\
269062662386078172651426316167741127263005186198620076379863959641756017109153\
273520295876084652416047134168681017872272747765370252897011686922548131605507\
702513592774561423528663498399938614230017002886648423363299195719654801417376\
880130617870975767663059311783525043582241255928967780209650234380377156132501\
661690712865337989412363893576768565193470994986275233458395829208213444108024\
710044214142166450100415993281432115728659487337213269518011006146154424561444\
214450380344164560482388281105580158581535990699637828791946615345991220961334\
447693235054355779444166893671842541471874098757563696952195307174931300099995\
419632288537183075189636216387637163334708887976864504427911740207454116492847\
692132168754704714664241787156854084188407768559362151571805733366280121963874\
148779238022966910790747342056961968097964515762706701709636361889374514933969\
154254665549463885191400949659082943719102152851102041787171166659133437030313\
645987584308009117448205088342885986214858302927472590427839643282572149629404\
292454770067740104123158996777636595913147349076156317019591708308039604948950\
482401369677268470244952186116787157961086681761269386752358795892027992129903\
820762642061215535747467783045765999779719940814334274558642435579354139572329\
258729481802055125480931747079867765410509911702234501518052078543159872886786\
711209539450870233207168506893649977029190448743073295293294069299547538654470\
560981343179428803324767377961125672938404287542424751575612404888379801113021\
582290108425618368440089321045829924731253596540597707025673667523603894902571\
074251804540739237518651509949935557587909898477143158000465735156155120918263\
897708313677252030972945305362591839482816378986598583919898444876331968757731\
266037718389793635830831290041084526769666019021872527261380270477903293816098\
593834297654718294201757986102829122415178593727601385133432050367045610761671\
830745291451389744612498640641848362150681768433943206410846570546007843445232\
730057496387211251374490823506734158645952315007668436983648067617727852329495\
772441354050925982807151699548302017411616569824645728178782082837518722176666\
239121993594254924716795281213690122800152766760154344715872496243653085139962\
709730323964243522769072091201614660833794170603145741954914449164003001438906\
002107411587182912804591091113998002910096546707548120700391446628108551237473\
923604919957519967724752596713416510277679509045814839322928954948111876553021\
858299497585415334212911979798640823460339004570276263453200714436277052822942\
426963903803142220722694518159394771187619039786219920671512110590106729784332\
883410777545944952548569093824875138853005456498764488766469746242641554844917\
845856499706631404754018763074882408428066562025780022419964744371361830433468\
187894913197891191661481120045942597610264855147887636257999798502656039444166\
802325606041267400615616685302131013365431738493141537202425750847603389530378\
778501486839813084990453311581724771935836564654905135347631182321655313810235\
479391288135873367721153126231187135079746753136645266338123129187421779540461\
315331014271783926008218553618556962668969210420410924271976955905282793117038\
426209643429116993449713753425974380125485142954263720835069119336795130523985\
731638204146752975465084586405232127726544745898843448224403588681456428724658\
072026300294114224485673447209521892201904276164154082311467746215482084329215\
057187629557067278981272070582553318227655202263470195363629266042212834034971\
685182761257809549770403891747188631121927743703769800915473579870060847077062\
138779385896821756662119424879599697531434069321420704167061165914173883559409\
129048368128735238787460434998028111383900711987326137117040203862331441649884\
070999827324110291398533254785276196543626892342371786046074948404027777043946\
822880735330063089877293690250614379921163542554700180662446115908540601453332\
461825382799559912883170972275201931420567148796370848427919806728207238919094\
713062946218394672340047518501809310875744995893703827615983647172764653074324\
336089377073604511371802629738480058171282594445085886065394783192143322576914\
433843534585512108623034910633667494819516801098819062209723698879928316994340\
528941142146337851894127645036223645799813559216791222811201550768329316778320\
214718035853733065209605023585699936985457730947647478803217069638541385729052\
404008630280802195314711962618516883668720351704337914810087946592232548922892\
705218473094004897202081261083191436918640965981522430693453127232172369088466\
284729524865362705467644029070681650654371427037744298744535451952883817241577\
752186427880922114941612024812913918619949387567508639120325366925727900788494\
391096099299397658909471006790788375348542523240148528893401098765570894769710\
699271804938081922530510102203037346854493997199404778175376132372925650732387\
720562077342815585973121475510164604813391667693181032985424678685475414817962\
545857882101316669658302623954959927085362463440261202325943963718772016703895\
385471541973481637911477879143511902502242878268450177078558506169056822658814\
203606103905095504534442719735346457281684700765437784657200219170024474189745\
729234755008561176022968837635174967462180449535857098209951267555419932644812\
295263104276745534450473351946112809628065570203038603833114535844115342708314\
565335456163280400463232040921013547992107681653951832219956362516559370210346\
223026292309489484333029311611675488324848472693154290215652473876325176292324\
430421687653964927807529990480344368003692184067959930380625139900009890119892\
293115096919209440045262090380471009356954349352250213393564590210310153092444\
849956216480438086313640956992620148287682878082610851594222734292071286393008\
925893005307911830960568318149821412334083119157787542688073125041060633269468\
156713844160644428029595036947238592288580105725822154948939216988066291556811\
786917670000996735653840511415406830177167540335094639852834588790229322592532\
854786545614265161363992250148888736859365665849819145073596712870594556254395\
370081383260343697880364917190591540582762169070964124880661457975370903175184\
247425938864899732338162642893304949678408433859926596731341104392279111199885\
274106420522243025675012340608139559187050655038636862873255586264300594991630\
434343775022311841078999127632824853215785043236057765708688875011634475874908\
424306479323115856842464186520644686547475735310434938240225413014930540061829\
449225721290168585446352619086966643017651115925132496065266893536052088650482\
155533455958856956030090016353365956818623941043200681481665040155109692753713\
599456620323112453675668125815179034325364914580310364076563625234252428815113\
821783619779843964899079743831897130689734975044393177389868088018008345104995\
951803171366880155640743180758108849697914507837203821481830642421055227802160\
981893236098539073757995988187989634635419246898709344210192341488146381766924\
818541089872694151366787979071775669295140429719170257533528596026782079832811\
119713688617039524557770525897398722265532246443974913889935503670487903718468\
372195366326581058609478109171317889262293177712331007427037462488489445889139\
466442417645617275440262006597823521207407447810925192024191202807871647224541\
095005447627237857457565132153650485841436497359920860878104036455584418435692\
512755755321084826436470233789369828073456904421757855282102481090340022593615\
124192920794937636436690886449670683501187028649019066259916312473472953494580\
389293584014205534593298526160881885436532747917856980953748180400823072267055\
477476186835466156718139432185424857039291427890045556660334033923332479455920\
792173909890971892553976538612846297078054496393519873195331720948737552598593\
663916396059333190300898997752555129399653525798716291424670497775967287627887\
102576375761763227615209474461085366370210360067357372467792763622891291030069\
166816514471932291169138551372251913496087990801993407734527363167886009356240\
667131963738437387005803565231638122425253033027680780860338508571348391077960\
652890511669852676556955611105735398525160960899774294248879026695418933335176\
909595704464927485439518690931440582234661387765851990292448642023232848331965\
393261686640172946187332229086135607844987913920711818075346867421802604023125\
082144517656326846072785179749664513679629498116671175830306498084409411846145\
281776524336670000953182645540558960972192579291771443816999857316024719716672\
534175102701131435030686016417928189276408672660759169484663430177926358936031\
563036474998362090926370829294456946662011012059627498567952562561970464078137\
952737788146501684863139214268582805442271621295933187283810863676786016684030\
157128655967535721228648393436796766210684034649373801597044157071477265162713\
914787655638980907937663805866199199901822897202885660517317850121968879296215\
146598694456786191858335337397374350481562208406408606803372453953615159848263\
147370325114630885211151498319461621058093238948372923581766359297390213847230\
127569372016804608102941767274230278854140907185674894597717606461265491919894\
491972713223131534038062445097753996438911104724240665384835883694549643739312\
540098408224473400945126557841708292613378131971601547650156825612509884137883\
860743937738820426786121094679479153067748755954236159812914821707130696703764\
362456541850983615870490483626180490521538999299855175927100901408120330446671\
761667552690051095859507150657086461706341881750751501193467738850563998523621\
234906210688417842739588342372218362010512381139385743636323556773570713247654\
139767616246657526935315759854014978304778164407365198285200593041409674852948\
245784393445366092670835851375060708399683562668157208714866996322423282734582\
353711960898123033523824413531679026978463943007548866708447690304943604098788\
911830753314258601423941051421205831676872877125450091752508234528894179970734\
432503970007088355086279170826873524090553827829916212419011322681573093383887\
187562680415636877292211958205353730834172765402416418862663218245265695304501\
479838665812916457619831389308395602706244095085273941553826389403961820977996\
227806613926949002342845620149812557877027475110841742338073595017756245763990\
905835381663455446342903885132532825382734812934694294845974052854960783033356\
805495392336104213121476211751270160942911030771077441130075681675999085484874\
967037624594498938983524246658812400742513691115502248106451606886656176753928\
876450685206379527502244755294931746870202241471973935964862394927813544895886\
017421727934026035356306696006800825555200595555398435314093981452597604623660\
389446894680730902183796998707756640861231757853840819369883924959753300289026\
824246069513315613609437290539274664969942305474715992980631993535881316426731\
253486404503947568956731912512264460534812683700410191698475600738490293874800\
849488500504509797102262119231615842403029381817434973765569987279825753418546\
545768418184344473071140824214816001290889767716097760217800494516267909366708\
693541109090364042858031020670646918798197024416362217944488851222927641491714\
650326688748688211003945915488618852659830935960988100451377836304356653835404\
977537959466805323215945960895629517736442494421769619828902345017902138106384\
710111834702483096298351894986449017963741505521533611349080710683759124734966\
872477467588988654839730816687091438537405073127032317599797426386126336229477\
751509508178808533651019674979896966605141814540663792929395871601096152616547\
066401966123787596419917272079648713674603429153891650767952997177080562130022\
640970577456226542419467809579399708463862396193199470530645336221954767804837\
143030805689497509284061098070682068732844121505673118697855470705924057790876\
303608261757349078722860536797615580696330641536446201288344562146309552562915\
423596648773125359792347925714631247581198379550901139559577510200132979915599\
370675999170064776817533939692601364822159795720348453874181712824956781208777\
805498490634514408211719896722530817770320751103793434931426790802125865416754\
414706424345648461850293243997820291478340611442019620079990868357747960846779\
510333854037231818012014722847446289228566104126346624225160246801489821008926\
104592144217639710035597962149433145729344928906508827028023064408940129342569\
812380407025061332252967809355465925249503773400285936317983332086076756968116\
572369773034903620407723787130351090929991555576442630183246379895027020330009\
748767574110905928487692610764950706296849291585055089307010128547901878912067\
225797976595479574920451516564571181394231456769585902482170485986898141962352\
505437956207724618970626678416971062181374372875867095345376077081669296988934\
764661770456073956361544951068774129484689289571917459481618255365787617694961\
371677307572302544107370053741383011457555403649695156693591464546031593375216\
856844958881044286735297029489421054303391369375219273282524027765075985268010\
400487697102896633657342114985704339560756711363684267995822762671856864728186\
585254875507242854306885434039570320194093134185279899425580266941427962383878\
481543143748993411943044677185093119900460571845857750613286745351640948154395\
566975686856014500910268025448194419000130822464933817101976598013103573163383\
932790374563111083094005739478642293910190771712140638189830558554116238325253\
381121727204054564171741116538752947931566429151939354241807551760893237822231\
124167271148360930946425082462427581984809899289530288158952299794707514944344\
978855300299050013694798146366531448062845386900752738374287974624474102868235\
422500470208955001871873925878348242972265773600672005552256725971635073297413\
977505074677977604397112005842934271728975368513899764369621005886942029115233\
684290995818949495477027024842258282936876634818976275218170616689399009849902\
148084909889711528644534143936282375702223359700260260213601825705012367405994\
638185971272294422029800514037175183814308378952882175276634947773284559951941\
878368051117668070494020785530807242168691970217355439559482427467979080236589\
415889315058652741317440827651227570548485749046882836471336757301975630109753\
757623263654868293462199787612629437529303223824543202484971782839715624171206\
087527571588787612235669208614129300079516333251209758440475014189359093007975\
025200025788494221017288808372821651961690208220897775471176862894764175785236\
243190807515322140209356415963049992370837689162683383352676253758725103082947\
918108306740903250862022870373698131481809950119344168123012766293715148658676\
455780096619232715323786149035352138434813163544561058181323441179185576901064\
039741191840098581364592586288339432416038450734366191511618245279317378097565\
848659995590436907944213535654221192243603081922188005424500451509071076123919\
586952892493129209124040599283949934469437872767213629157357368038818233703566\
938989364420182566480154695968545544012486841552676876048507529085539319998953\
052081439686891838114013832849617466552819557895028629656736321177481491712751\
422802186918839344260406388821137536194936293636659881818030123139498070941281\
737552016832573921414641893837690332926951941375099729289202206761021126833654\
319502572415720281021205066804259071428714925995574502826431148257557431324943\
644143208160849939945839959726780540854020086101183959523239802130720508109802\
429007463190908632492168622978374435127132063861279512698632960890074118143999\
793276660047557236569574726033125070046460622894048954902860567903373760822821\
186806442331003727773026444636842045139125754980790708066910528339848060175534\
431014129080777638364860667567889260147886891464344861881289902336431892600821\
632691394884359129064330226882273288598515827482161278799255966547302710776939\
969257400109521090071124534657088029944088518726887736956862109047527695896315\
306046700933346859283363331630153113976692479166148583355776016568602002227022\
535965005015064642234746735640659539520214078171964667121768198742024312110265\
050448262640183638627402183442600116986880312897893613160448156743813430517546\
463273189861865261939481906566315081894342832632300479375739758284820947173850\
801441327256757759278034927004010950567636151483361826356898723592527179832507\
797696306187314968670235998761693993920929993250882037356240309121860105078565\
119182040642999297147560276821139923708025307738419621557883409207208941982267\
616044986691023043614206341463811491179250637744210403865434674043025696638534\
995170006646029436881588489754442124561919755729023073796551379037890059945389\
106934438618371598047220561108175180602435634298918447916097023904113030434095\
461338931143379992373611578913500437184252353415573124820637641931405109294726\
670465413743871682665098877783310300704914377662323300995320086142875762149289\
065789444374592380101258360814867537639104432462142792422007790320391782095645\
609097650982684578704644877204648562055069840499232514333262893997250253762150\
689928052717149075197434192905900240218707582994366136153898243571822217741919\
426976329030748675757885254424923004824451735235205384588747374807898877820952\
010607447040734132616696212487082877307842188905373307348783407705216323501076\
122250472124995229877211279348483257953365378424788644552261099651428123010391\
584513228883366482337595299805102259457152212557620198719933158231631971035087\
273909859256819177135559586581096176209312514032393240535848319450705524098447\
744474921867613792531095254791431661760987962614559923664690616255938523690623\
672854027689800309031232746947231074354640657073243236469530813878480971068343\
750663979746352287442465062666380833754942735926896981325660421513170945100573\
180353874286504606675596223142308591909333304620101663424018685017020019317186\
128933297573544522000913190787491378371825819362806574974343204703661992948402\
856398908158603967493673902378360216320079690195625172172365732891929170505312\
280154677647756330112248056016709163996285440237622251084900588119010393236311\
462740262696972362944862859844839286537770619941935188833188241529000943774764\
495576652763513410290068652907648565995003759058123870319979046955785911656912\
374743233756576472699902466915820624200653478344411672496816624297513491568693\
423771497798783410378992197870626560768724632203604905033626499188447942786028\
944327947027869236950895867079022247866491049990457410815860671711576108311348\
388361878392964122706016318483793635469934603963693736388334447199990005966566\
440858094306150109768024487517076973835412118099280339302696299076824738816827\
432306084100024506532802999392955026153731896399757077758830983224731331723499\
681463999059274422489742916875100353332981678999199316118542603696869148852677\
261404178466932232104308974601267264902552110820819028793200486540707125549848\
104295910184473142368255007745512669478823237979128813179185312597794341759349\
544498188025282728855612744136802174695514388102830576485734824170627731609859\
761642876317909223097099502901732176280716318804592787846012548002402969907035\
711958554219184943739119621104520881695912789821826236485042191727631103564441\
705292699952331443128860926821381271951824309091779000409859471549536677455372\
314130693600681522414820675353558549965131493406881353506096763355921973169604\
535478697757311094297767617476500838504743277140837529676356204609221251932961\
048461682100225955498534004435883275669894018197297929310147276899396918145646\
276898710653100360810481306986046839164817008420336812790918714644364118867839\
123658205882090555037167133553428055399217044802056042335073193693958157244048\
711966882576158482139367599544837422119310887102055224017978861012243903259023\
438679882055338664830490759698331625437277901349512211545424493722867490216364\
520343502486996867016098628961931347551972204445048261399737842182843302154921\
298191458458038248631050663268791195331868263881142760845302791855386110597691\
528175194514253613716355443988211837392902049129526088333152490718340753466592\
479036734292468233151432809937102917951449546803717371920488581737859259978325\
087093041102620956597074204216420836942037582046557440456398911927184964261692\
882573031108372252269795581515851855731551381135829558765142686373165043305319\
096392543507972545447965788416472472868752539891297415924800246296776694276171\
029778063382383136073775319708022454315328248054694714881805177185176604268157\
335426505882754888453522491847522800942778367276043636921341804396247859926963\
048870713438747482599072004709846877412671346468159527046515989151771168050558\
094350262209792568275325040776233816141837189582643744440426155118036568526355\
672256382637346947034996200977936738165010551025169477005835600031933053788495\
042634432616876033752533738582239961380935184149884970832829432931294722936376\
508513177658084034753263538992511335593801094243334731767014842584871953149923\
837138484852183858190746393604290799319782699150329444454981642396203286858259\
699767330164816864697925381267660562747540197635242518496349541719000845645681\
915721726880147168111114056224286560276054615961806697143556442055553600256868\
322503818952131147123817366303598698673536040123656891944194967930435495841657\
016638877101493416661440450681585324002259250792913962625735105857242573249056\
682255056165851725022710176526207657622020420979706329438092322768298037259161\
866294717800389769056075844709596836951594016217666562376669593093150146283029\
549940067250686497226866904794987940462381400729763392524478040485042405332716\
910171511691812649620462660098410091065138039539974124118381576620688461908062\
204248082186175216620506628066215216648420126201258228255870641624956830075792\
692469379389507959790595025795807062824124443796687076909735947038179256598824\
883758520783350209872306635143948760423251326231402550026955144773303627623754\
077748987916158363890813187227485784822956792516537247890639060024985192095422\
237611219735139280360979184793835510117363561794456610077229011815048777839244\
911761357828338088138175017776738884517240748380828057725109646672058763513874\
765730009580728016414669582247492869182086019109645215274872532670494304049610\
102533331888990714954210215976789559845781295443127386544206021207061004034846\
516075097689210174764277001796038965764682448370712833394394670185568584488509\
028645309553255854308485278520932661730141001105434893355299270619587364341675\
744846151274900273437135875188073448876036263438432202906480641797268835009452\
715831457167523245731779394794329134642212610492539247617902914477048833330801\
840869041299863126135836961050997666824075796540295926052084029296069708485761\
654275545853768694567037165901455885799517310161725281620646549739218604900614\
615986019541964124870439466900031151715498686966826339136855071635886250616730\
041339885526351217775322497134855776386699215567716154091780614372706790850625\
500868366646371000679593228619869870846878294630002753129699515471014687534754\
753032238338959739626386937855203387700565958668735943793330211837533977910805\
961275570723377623404659433213060590359441730339482062393163162213081141248026\
261524041677630580642342098709889527328813076210891991797407016004477874797360\
769162322539082739696331668230033679242205001724062812280769611082483903914292\
042943107276350845747041551995848788433685567569946890582849666454833059688542\
257379373352272424520822357839706402246304257244411286206969290560377141358481\
590530568536015256915130181788045129526891244583096870791410914619654174693947\
259307724678996925230171156404738382935300104906790584808453310619031364150670\
630569012413861342471542485613559746725046775068933760345886833807864278489637\
860724052926895680284919077102841703833518286912209389017232233389810064786497\
054093953332106041931774040457932902932728710120100474236201938684615263055015\
949715238949682340280167961058203525295319995325288481254719124842370715312631\
227483911408169632494707997404714408955376303635874754404262124424820868188468\
571204094002349028233431971663558487826227518808781206134453607580582235576765\
792671732350767842912036002139667981110735792595275138643541765198189323911046\
511048086362360214890152253928110215980099553853544219501920244692290047384028\
971124823193545492351845349490557230118358172065321799729691905650046795530195\
361832263166751048373218332948169084144032480405571322811322831236124235989567\
014582322883323197199154042600310809291856551274460835922175466672528254274145\
776544254701808929006088035091457527314429090581860787475652560265449467007141\
938328109367245696018324280134138864955104156010798513631967745969048136110858\
485656419758947349966867440328100807308405949020097957580120110586558934035820\
058087091295275383537866930069034107589795851504161720026149494446095116938939\
040119746838981455606498390073667648396966233555393217582934675458842135834538\
235242636712536556823557472999350864640255780890736681467715595535154534059934\
301346844056023591033538178720857328807659448402146102158644961310068542822853\
673350256061393086785174311160563723694207448831880400438987279848774169080098\
756515735543027032797026158198873112510211812455996944453166442315126391763976\
906881761329470848335010357583426565790130568486921938014671627854830080665954\
193821007152033000523246526228006423451686395094020507468822856005379542334634\
894901259448695299311782746075661756275807281364771118792479765112365460294884\
778628813361699775680514029532917641062557343571548505417229370859682768659636\
614767309709390554747846184080010329047055966523059174667815619964382537785488\
514271507425699185887099082195470623432237376919480678032672291550958290477267\
928812698685305629301511024903795721066213098718896757787230933223205582167636\
524490275270741322952006830232122139333302166917008495408477637368427958646190\
684528144478563563758004323565934589227338988702670367772781214906948940842830\
478334783504537008611965963736020384048498356638562235489045539824968278929017\
714086020405750419751044531440359396354428494665773923193228920465490371498951\
768425543173125966334885849038797399271814133909668014990292540572038509751210\
875040153513499782924326409937922237872315022004149961763554376811630904261374\
095395754335466491398095210263520451929419999642852677979297085281560309723158\
905651502377071812721603046587740210898266456289060127048865980507541136401676\
624708478952367367947119978301352309718328638410187686086767455505695063036764\
925952639670491429569170843362550456486488549352954482476120118389269553621722\
864460743915176877697041796635491058535711807557199345523289122407967769995845\
958537962276794135978386948667939600661663956950048950516112575936524805463462\
415216180971088617853100428645002090954763517586486318445926626475735709357172\
395619399722271857286374206064538969315264671636021971322355626106673991454090\
110490112216291311347349371461889665786062582571982704757167090952659150136089\
646265290340932329321633192116614506503380933278285478565259912443838864103444\
688431628517035393771535219941059842583039151231240556308152051327668525924122\
712714745398949249407366131689171337109080836214788410618743196598874850710599\
973707106468358715175428365787027833286827071053533971285474319712254952332527\
760815684841404188650340035314276459158890610901432563667629854607870433656521\
623457395324618199863686958229488520885853076153860944420742120449481534426081\
619547643558038277323493117928290576071416350218698780907933395578414440652828\
832891399474510447818486004642416899573811157363797242428976101262402469120772\
289063629723414737887387177611896598032700668717015023378914877358979427900727\
763732036058328262245478743145517789147171632080825748623509036753555433048473\
475385171304096250440087200554591873740901355379632242361743033736817603997816\
239755710362613765586614215757480226585342582126600069920262149846027219989907\
715091766273495801807033448649319127349206767824754055118326968085207410818885\
545122267720555027526230305239155344619305226271942206369958865709503837256649\
376146465550242011453695835362791826609090852473772012321841390552354600086634\
683589774478177745976551801937769172864493254636244837489964322742074019405694\
196889813413804312884665899688601527038652126033453747784329788137769753090697\
495118344086961628731627057807967894915137512919134537444236184820709581559759\
257977115410042684054665967733597098249089162234645257461941992871083810668959\
074501013952949527635283618291314934996835802037814199394330580201328644396132\
184228597153642287845252496902177655933175692484197104582990040647310377765185\
951198519010750640056260563794431667872418141474830369906595052455450153769394\
058512443115558790639380782222203148461717145695303478765381649696609849484615\
491200141404952507607609180995601724678781618785884080788938609564550492613680\
730831107519920326849882128518944862015955821972454722208371880909442255909671\
151358117427443409562157668114988182599800520168414667614503581302696565438610\
357758764368901537009941531667977732584964061275193289616974392673270244205910\
417913493283960741134140011454677444404028553750898857284047488601852694395776\
769300792193787192328034423535255050871965196764257730995601804235723951022011\
539343299247750752736986693098962247915414273960230338971748564277993065937059\
745997432711256181612247359776791173368299523334351328004610561695584613957482\
437621652094065668124886999584536438369213675881470212442149098207443086139839\
942292278496031758327883226715456433964973524446545237564022627682476361315651\
298365317034190401279257134726255008493280574300398955625039010202176977279328\
196513559124886100294601268915282347300027446358454768926126399311121942830286\
066800347145273579768911066085361282331714796511013522595645373548108193046725\
092117460328972062543182327524339623679313525571350302176697971246670394191496\
635251546182877515489298165561997377910799246238963626431787433524308047936777\
360679813496308357189157224398573750209400043652296742016709547713572147797862\
793069211684293930302649157211440379374536454054000863458216584356594589307461\
988806780792796235339440450166319756473378911623593515379150296844723917062874\
296137800098978865322356528009415546575200420039203296948372618557849107111353\
297494439477692507551166064803890584360680950731202346434050576866362029860742\
491752020537945215271699326776617740888046550292061781162988127904782923615410\
523671761218492096039701137523808293226099419297674356184146347698219978511649\
536648941005893498520357228855366557323569143329215629444462832256076924011752\
843104886131706894963358244514744836363546385143362836237752774508454581744059\
007134878630901967726578774303547191071458090008877884646419960578155745539330\
966356402110645298702473502186975590449621672117914261370877902377362230995678\
969428491951847774283945977332386989219344660014397863942039191684137052117594\
222560669062295972049936400636361958283825484529417197230244408874705631977676\
227178711638634523300283370257022245997239442710646764522845146329764301135263\
937401363478592269382757711720118337470732060994349194206596919774768237690575\
207468894320748232208579085433305352030648951578977238382145225599136712200512\
316868917256319233882895899829823474829718315454664976221650057105535684930478\
301249417488075707163053390765673922536822236880356347462852306831114756425306\
600240932505294620094075331217741692521258093640132059993828457608057473060352\
317806168055604742893779947447009287343781222851634049696321081753789464788294\
883968059788329031771707398370301046776074873869681155647938525949073302572582\
976681735408980542135325407719547485638149075493051432310835203429004927261418\
373505689583621295190732277919493578803133411124197770735146238180259324826300\
073268555032221473274339987865156543788143492514761556307755806665457550120090\
908148673608401357317448471734144456455107117193619284391817926961691211609993\
608410473835421901227409189051930220088047530666988282256836503580363043463399\
535233942643755147387110173817212140417456295432421310232141783798822530295682\
328853490548341624971821032590575319750917669466332173082782217312196504917917\
675696766083320929719422195843257914104440991652811868890100340474017931074662\
996900392862286889512323848030676368857554251808550629372659693044681258467096\
783092442976590195432905048554660267336050532161062369360467870070745229521617\
275958113418294712690405609268692562326445121174033939696006624668669980962381\
214211876404201946111346329111130116395578927978495652480453454955699010806732\
190519312274272709864184565320892925923456478002395336977788191273549591916442\
315882467671946307859847413588072820573786627335202147816644706021280940260101\
723848240585926484962801596386881005536751478529396439171682668313307860662296\
639563112939815196333189014395200781086039194264058082653188828346510387971031\
809021646313957302910841168951175350845037744952992286489244190805027691938041\
094137278255167064635566611533300051038461310345715973496549682222324097302305\
116993184783097608419155791547839948824293434337037584061688528661540266958522\
466236358064584791887136128850944379004677241409965188226315499945660325746519\
462258310942024038986628457842847140781287814135745551670903300530827113726938\
253221857076407876727850775110867064508988253990910509844108692449171827295021\
520841275274230169915486120275327348999013776866072343378513602085835757724332\
042463624821832936887918154274524152079703603089976811108653267166289455063462\
036480829546073745956095950102752065278555951332018126731364673703929033705753\
725540898947564154701589893245053531107560697519137368545719325507363704664959\
633609467545805286268737821728874086801331267478506491427091674557064995201754\
342581427023935042046440718736086624858498328097453275789662760613379375243007\
316126432420650108305949128931475289431655000189295392811869448436883723972708\
089529388420018292540663203786677110740633523989815061705566802029541989918738\
281909912906360247213304396712568063599519579459406712892151844564647926218283\
373525459111959519674859040982496246883016461160584726795770776349777216652742\
736009763113252410716599983593167200199414023861293018342917726203588298663408\
094849558452492799488007680419068862893767814984089246813703652336956650831272\
964271507848145249860394095463529393346557747954515909937475115254688670520442\
226788303417666124667686781236817128936096246629633078901359364952618476983422\
341037057603564882085348653194612941611756412710606428473042792776404625868484\
805380663947875049520501317604035386725142500725451725050266526421138218797436\
601572747985420408203899290479949447123572596203503245165098492153479582455567\
669794348480246480587662807517672387704264669726837386240299395512517400116513\
517973043312915340887748126806550829479382102534088301681783219215123211332235\
458576760205658672702924495758833372881756089843619485887790194628556382270923\
545476232241964007665688146572740932142755978290442103589848305223806760901710\
445751702601392376613071855081819256812645423777798909921811597952377210875959\
979250816182349310148165160287827015826210192689480665746851295673426744100736\
332214888067569126838967719376479320203403463606412842729730671793794634521783\
197580912153762121621956480590332064144759283254011113449070558995020002440958\
828283325542538755128058094535027367405930408076560079762462184201062063665374\
941024254721056196877401766044230373360654818945879220149335518660934181379093\
197712376606836755743572364924649266472991103075857041930661925312726873826864\
272025606622114989424404959212907507815600611322859071206390763602974190925343\
654842382770146718899872196782529161832688527363165678015025059652156484802361\
252764251939701677731970491220442375592944309417855769307875038328121944623959\
603458045768359132800014241640307890720354830808041353838585374895451630245646\
532182679178700249919237655711763660561386119081649948184939311630880228434039\
366022845606401778561501479180768538269105201075830375502762263770425025556448\
408632705211512288198755125242524904656717742852478974221394651613302360346774\
007680597598943921144530079675827425567474237935765301947940629504074299594807\
748724483843783802374164098862218132031241344597062126890295854393630516767762\
539542455161991859175036177135207948411057508560503437703236603582660769429033\
620526132061823992952543695460293771212367945390150582212697423045102142936453\
643892382900055635587103727771427408442734533244349655934632305886205232878840\
271426231571426970887257845320538094357279852597030886934492617903033094845061\
537332123210170442704555441886529964664430827598464409614249280924482226713644\
866396683580521521465233889021455212809486987462084765898815345055657902717597\
869914650739736104679923509474184546705009517965551434913170709799266512969868\
023125143457333159931391599836054265305107468900219860786305888922719348015305\
219419970643740936561827423144303793840805993568815464222099391636038979218779\
718549794156617775489490375272002635105468811607413616507389555088647973398702\
872305648652274550669549808913523970923029970626605281349504449898555220801980\
875088818474714947008894794032159104729241903673822696404702139652603453731105\
287842350819334126071854991306296021802345397625468521983952612608168698477026\
558245771296857615829477665395261551580374988554942336040236621866865169372095\
596024109049548442841901460036326269520659937549446533308332274617610689857296\
414186054045927515916548211993619249006070078151100733758930887687132763942779\
605191661602022918657663051658587734236555474635534188874175810610408444507492\
509473372227438092816145965000701867170680511172769780358311373706436523490155\
720580143108315346990883711237263487161225772803623471334355507648801184736469\
402262503240630815163326403428078253658781764830590820233158012733690425291279\
839176780228498385931582502957468760344300025501604191957900913091674940051229\
856538094144179409689012830006170331306142791383851836563079496936007922489003\
680020506503362756299271053731812634037008160731410541521094479491617197922495\
794502152686286461484382713994636512652602290209828775535956846846709359244283\
293661086067713410530401921573858419859750180722409834432940144807330145825314\
824984976303501563444014343908249380579703257114812403538781597212299128826721\
600439035216763408938370406599943698238355310291885992113425962999637743820465\
430885472692251729891878791026095885698606264887577579620107822543084155123670\
140893172084820979690208616921543642442978691758411260594578575882137348044828\
764278784960451125010303767262629898072220651195782615262415624027023106144929\
280541138655035126734235949153151830896376777075501408086035362019469509335824\
630438099602790037049905046995226623597771233852912259092032819231804170807744\
857171783446390004363587277130462643017548266467824546860731345014315634965498\
467281199230795394441671704620411941362106359425999085492364941634440204660949\
093029791082381038572962652041937231500241149658530813880907677452100137455681\
475540695545817338719886284640059302026105604909466120504102792931597412000926\
189392060427644879176582057104248089004620411534665771192004391770639062134407\
815416681698893552776017060045809360235236580863607674522717031098205894710338\
692120707808383657777944750706365286694090473701704596162414366118792591670585\
864855601498310918121392414119131483386614457012694474625949601633787271511479\
584847285168909800083042266467493778448519561671558658178604191474567893685264\
121205297693575154392321149566343464346382340993484376205328443237547746329321\
404992589835053246207115107507824279803663068568869906758435554112165845755658\
660614277639946986555833231289679007115491318595654240201613419509487218111049\
002440218685680089651960593644919114723662048830159392811298729557669087937334\
331607965393883407761738973627393035761373371428706564229818251191397256604912\
523782272996075367643017990532649742348839232799125470738789284501465030358489\
895716698584379026692483990972097737158916174382642779675127110446764442910457\
978962989152723660573604599419536553811256636149413649042109327164347072433589\
840124373484414511897400844922270506885405360577986037523181083984837130112920\
991969359486979407665075344960657050345146135223958268518109807506384944188502\
220717597515352343573757143543600112109577373972808234737912750873889420434404\
537649928793415667267215727694141466109547797130668473460456021027814867953919\
428913200777311283387612777291957842750777987884938136781459586985262096436978\
208532257808142350804128688965072184088078670538905186174337656607014723629354\
027427011079284474228388508595854326965469828040869839204465175852915937458800\
645129133127138206633557462828409494811663180777188090502482124063899817072948\
607205662491022290993030996806472626627226303736349545312867292903294265240308\
253539531443315849395042600085037620646223769647869225672839816744527735193961\
214465080498737766108609480477676072683774484860004509069468585171095582504029\
931597585392385403484435794541706224625351401056151561599833930500753430689097\
926566183923470411369322059838650730182357832880849384253957732796410175253718\
032327707541602234947288868371304723755243486404025199191470474628247308032397\
369002389741408782574431770801553092555990884356913544091689056409281232356131\
253052457109765227451006680921525910214967709480031252024451794154151768184300\
338652869372228124665346126608417950576932259198982604734679544284197116767172\
822527724622458176485546333692167548581922262041225464588074228899784789776078\
990997341133727114722657483465237674937644994173359730717270664098058678014819\
939921462741666591530359561214450604826149019076576428863313987730386825780953\
674892182793107876672697335618493968482610561817319906698044657110936254139416\
010949460907889736255484021210847395607375741874325590374151843496577165563154\
413643783862025323555202741910705097043488215846803926962959400787941753134780\
698522056636390531091611518548043707056691616162907339399348493809129762112714\
463858223106666857503996846418084226266027760290869130748134451285185777887830\
078736424228279445627575162886116756290312604028561081755798427275427860213148\
117325462133817289851194860327944927968928097098234406294594968820801680677343\
022997558263647425049440790803332461280721402363842082365371459373116423482064\
536326657477245905555335665348196828050689471147080873701113945911406974235796\
569506366413780164962348250242438135836590334816492986605923403136202788301243\
645166900025838496314623797413014699967384551483530106331457031418921442562044\
269160382383883546738386265796628521117102370700966824078370906403282053052566\
381702807794128398723817789273230751767388294122499170343355724889639043588911\
570879216373005706965441605182222232270375928619920647850287442628056160949211\
582636663881211931481565658479655475081251943879362786775169529328223429116291\
144844011342182396960897591035205947798400763716594600402891401771685994869436\
160416234079759004198543403745583519800657425534982653595177171117788143937402\
138694730732906288705992801810765223753003927355711161061853122774981360008522\
140620043832857999500291734387267138032322465850485514067573556324854092293984\
065927358471074481558666349149742785203354260794372600870122742323585451649046\
540250919764674529017180303657472253101613385762677570090533324571583244951690\
030794156466717959338700830118807203224860677597215153847893578712806750501246\
761219251641421559658774870720724353721304418804231324383175675181356612217783\
104866132321881462586360586246391059051992525882025560987901564822016536082428\
731748250961992654018392586634236982117739350356939899285287933937758537550351\
947010810582553413177565794232481015734584877989946474351866531985892144713802\
775176443416762009980998573951909897910734587675025398662652273727202300251688\
078229650949268606252546309308681351818315394544280587539034686284892891942932\
676471078506964693347729819206119374444526420448865537664818159220837182955802\
375829784800641633244139083066567780774877554855902360461904745880286777310508\
299954116499726626690834324688539510401249950432389363288748311845935551967968\
767043927351472585059485483491525091634375117627710246249223067442559118783037\
104846884919825210472991671153986456354064105282472243327031273591900441342499\
539908025423980754034932356128252659309980679576927567020028103138538044670158\
461652262254396782859379190067495635589551922087398212298209066947530721400537\
127754345092901833827076925898989482658775419902651453128757518961688344484040\
322035895775294067448986968104640412203420254782202418475596249191421728864929\
199863197608190823843656498707931748240291295352901697231451012062332321825099\
415283208559465276514352238591624818178784465856018527541012799797418640863984\
227617090770020767361878969626394825414816077873871256464725292439162983641551\
415536365218309013176705703914529003915830742147003565613881457121463566565397\
676552121479500358186696925110704971639315949390439036426348341095215377846390\
999226561226087568632152189134848880370672813138753461095221931354223483524920\
645154187957079560352408852606079988069857005519609592479169961404014677397628\
087158249127715740221769768407403607877174357257365407957175682815394703072165\
349785516078874859817714615008709229951572437987187992512228137958668715077942\
289489287269785049262937334124371621939268855056272005858755988750377683173875\
304561391989254499550723331579880151199347676808404645718367263856300727884301\
906271245955959539225865676696471269585160849947762544568795551454343363825779\
023706948730827707028843365439484528376284820088521302016056968973050978700505\
102796482718582816618031608140970537050788427726276292373115204691853799219217\
121327895150411021002283583650092302910648202467204847593809193027196177327110\
948962436628924090779213237418504352139785702947843020248220931594476972491812\
756049086263229243374640798317977929376643984485561316751374494668657187798365\
620722274720948983209671055811680105646683194902894115256854736681139598403588\
462040772214873030358701674314398372561161119666299913698859742421773974394593\
824753956722204507762885736234908701892630286089213905114575208465218070824713\
812005903049663813744049980183247471772939663878576007255850963941827265000189\
795275512617375390950046378667703864106874538600828320137826420048767662163766\
600273853434507058694495014399922636808523416687350537691153256601524725523870\
608538800226157810099558217066024565744561724436159212840580134419452071729260\
260605716303147347074873337913114540751668406762085802509168174216051841944679\
893267500486268141229060260842137755598938251601438444880485872909636016417462\
426266066226476899534676841183439430484775663858098291346720157657641216058691\
543723459391337235387899903198734155232137812076979784209620270063665373564960\
045066398782455186839590231136748229798303542840039416349028764066200524398146\
309420312887739791067908578422060680707147378252773546696909953952844381826708\
947260877514295756681694820243511990512458842779473663858565526229588428872984\
322311210297324867514489711487767937572535324175208922759789648278472965063601\
094366720462028984405278105615321342661385660202985510730913317372932955149093\
182255007223522128710443214897239162890354559815923288632786379019301675434636\
408343089802133955131160403695717350787140571506567542213550062510208882838347\
060204042003319971530178464868724954916459818467108500226937792857232737372479\
002394268213188871516576608602520027581953568033945824978773475534967286952517\
375528226804121625892830010409373367294547381237352799723819167144096052970921\
721109786408881503694137101874222684786404418408415472806472612547625448769637\
144722913628660812221171460144228966847447095772480486558210028198147008575551\
101834000607288567293830278272303509333563138017638470540800917119676646691617\
366382300645250077069992473504097557105295459163127252876876242573925093434466\
130989125915634258716927127278218207075064909008694770676044287443685973184597\
593217777025811709403009934440170670644154694685307936032381514975496018673500\
881811875156875691200301228405983063307677986201626697157437940475456029773582\
192676160243978690041489332366079860943267095259356126009627303151557100034094\
894812724437604958140730065015252929824485840076866174475092634696768737249039\
432213346789243635107664195829634650073487364977934067008041468908938399016803\
684489918291314089585729067146953576998048569895227873513166314431027320561898\
762365296338829800736997768756197443386096633619410411347408300845029636229198\
908377589667406730823873445916316223188255614173521712142430401967368323188875\
709578687914385962998218455144917111117697300760390304681313944421483406900521\
546153780559211115108420545223821363742237367433279747826475783689134203212696\
182786722475448593325086829938894030833786952714824708849391340967791810297285\
639470896893408401149549213120799004803775260607809585866827392380682395784800\
001236118045837658062399613196265669083653784175935385870401165751506069719340\
147680012599144110771070131134758644483618282649462773662198523482596727106616\
353286229605491452828229027275584841672370461079627201785172634497182473282938\
935719032733585805367718046689031582851407022079811722497961152958986854943044\
185913398316588414551521840428484872397865819651146120853778111317317842200536\
245800375202360978652593940533363911309025117335810945990319576667351428832762\
878688607846386630677721460111798142276940688225328793723968002864515736042108\
149427348613714809281563945215143523508978890339817147470330471909526426479550\
571643036754978555317976331407591604091988500493023801403871526524751628685504\
280470353244311486017716128153381006624260389394493669674662062971515200431376\
211552586109353132258263849230639773167621112609968586877860783551690603236901\
628167376099532501913777842127411928162913475686125639514379299781589958744842\
788464947961872900139699500804992492683466874590352406135950786349364993535996\
630555033528887707961000181987514180558136194541180135312176595253227016701859\
317895141228937781012471412102038409624350649728032595072997710839859432401147\
148246038600505786210355864764592283029226917837532710120417455018477981096084\
551747003235682135861201871845359821261993112369183627564077996954334111589327\
941492626324774724378951867465836411876231062452322138455840563918640938820366\
840053970206734103169596414722128519527007082168711616262421497677744462208180\
634784212866352802035838766642110077912230613512437260534415914619124817276152\
710635703320905195423202407065886174759349543226875174216371069072863059529838\
901990128739380447176278028571738429809324133550753351424734175567475798370039\
681960316401296241435084648147836242491174995361404714057068427715098101376888\
618760510943321121405470066723893176800485654018221104234220790025891516497352\
469153599967213600051888454870309552447223794317627310218633914393271490646542\
280768630953575314292974100037683127385399481904553104587536509139941767742778\
824806373020621717759017564851904396220005353373255662791929645184395799172004\
212749806771071485670468507412546901902611144714526544040881991489952879903170\
124312258220709330519203749754129067957172421245799082431642649088579312027395\
170150158245669207586407244320728770729994740640600513662827050903555623623883\
024716732410451312728120732775770033601497233139423494662682880954951089650758\
708767753300497024054661659338165628345270682108659415332246053315408179899887\
428113970896951920425016553599490371223658115109605741793231145152760559830617\
312631936139949054551694199607013335368096375861063313501554674248518419997804\
539856164650546355025524866743336774064661049379369322953470335394009659956014\
108719525659393722651947273820121953271986399657105863660998465801968841269424\
261148273093569630691202046838801926090901827841703869677582931842040360920942\
233993516648188622549512756278037165414951749140811302394345902267851858532952\
034557531281046304137077183921968771942575363382953009223697553278850169446538\
661242093253782771998668053456772730960553694447450740965109997182923684607669\
703751003209690756027291654226623938420818513679109102585886234596706758898577\
171289653052481506560041809353614906447145895455337479449064401840630602430902\
792846568730755101486042686275753386238748847432517024076915622629029951455556\
726708292160930123115305628701562534321356200741754099685600732106774399295761\
246165156491629701240625588193124203060312407098820049318065677630636767508200\
828448699958442707631889809773837546824239923993666895891382120015886942647729\
598119544386006862268474707120221525046875939835233759080062675895896203520382\
712825555469213072041991690896339481366560944655539249111618768535434997812552\
704996008057223522545372441418344850594810485861328788058767639540764114678971\
659103658671069752088431542540855004121305249043208205891013308023441795851634\
511143228482197276175551583764780338105386434428363995499842033647804954819897\
276675814576588585146820795583230884942498267722281132821284529180194232062452\
873689551818175557931412773687952140348332005535335531477024272283878546101293\
067546606174170645297636559267504644825219028669854227197484879229961407552935\
080191026836159962710369297329437863300827040582282705340114196354412116235485\
937869642536168647328863065666492775786950517590619228943456293381048589971369\
173661544377036828258428118191652942206384342281986471056635357554798005561841\
983909608215303607558204723154840707405184884100512353478997209139011334924560\
375508472595751739032323078399063937587051521637658533167062737908025255979272\
746286584525241013072215165163430927746753608066516422029228999569046457971667\
791429793125190172046747084591495684856589425942299860007779205824073773182859\
009404340887078249006953985397237895909515148271536531506321507028384651845106\
238940046307934664336008418116675194843812104057113821116618164312273300720882\
938648078463831019003641766447867010628241935443008999436617835146014109919164\
467631258348520229192106207219827815390342421857864341266682117160531896947408\
807765543035145003147943011900573190625928861231196124751058159270730122286677\
385634940260417708599545123291120447283088815846582308563460329148497598834563\
101729299424456254695256301632070097921376402678928121359866492080868240986429\
107910027632462890716352185312807095835392186778980155729324507553527515692815\
438721670352609728479706423983654645071253043407812657854899563390563632975653\
401885478373434794847725066335230315934603263206123716552365475084973750457229\
210705534732647493262631406839631362381041315619582769814104334189113621458818\
697139220946590118581935000342375777345489884697199377398052918662935509182626\
768490326931943490864371132727806834939599941954842769305824587824123892514414\
991236338899074890160915387516072613731523687000774990126734439960043289758669\
903006147022442423149416618798579538942771708411760263744973534099955211104153\
384400047125005820841699230421579473049164147842341391222595950167230482056751\
515479476259149291583423953095142500254991329001338826155113873700228223086517\
912007321576336825255942253567885041392849025381033318765562975114892164892699\
490302717369641747564699758556083586464695369359461642026956743231689870869438\
905032520227936673756747272144977259756404368407604322199026989103508151526074\
018089218153351525251078000951877499011543275877475044732439665436102178720722\
686466225407296077146218596457543959291932787870076047028928291777339816878418\
305721271616453410779365100648935526886641316889237854041011099424814094933382\
657249764060757028447018245688168635821060636653417409399891261908477984158163\
915723566483151899668367458036198012884160541441908258326631073627850444461406\
426563226476649751738963869178380876707315145042708662618222657540464715666424\
417324466781531144666222120121420207769782038861947727054775762533660601557927\
261184817499834373361680352136360662549850259024974104791348342884176524544066\
970190290920094085351944602119484921243114766025895908941622089316409924030898\
670325219966973502256374874759269904652174476643868203853923954216635908125892\
894941521032530396415251729434308618818756372859712048384731757705978501318207\
904167225417400027867893191370887096124881743139145302031889502126626911125221\
632458530545666312385490798805482007162878736983059576772167104970692176088410\
174204647783771830443099674698331377710579677941697259310673965635669993855829\
683252669450427922867330657151382203797018481655712473322809313390936759999227\
637715316062594628820005830580708215928190451020201914840688973752219903613940\
635890267922672586061887261026325564037438245361493611806083303572113649237045\
565008887961130642776128540315364388436736109474665886481106747106983210576854\
038194035410491478988599842347005140795197906416029502508346840451076973969037\
112073956391723420109953653297981523588926573512555421507525160227359503694399\
149396697546247247313426327225824084325210229395125619469371877080575356824771\
607714156328851727129710853103824054091713170600726790340122364742441753361172\
669424843916135667525827645536105863827054109337148755392652809918303647121432\
508365067049675274038427714785197962459079823401008395426593228265700913354636\
464893561014697115325176757490960605344251949148238486861649793884844825428449\
235826025349661452863873976797875087778832984311142630348823248749628718185306\
751506046218809352874193478789539892891862347693904055939040225117233043570126\
699292405313936567860789248310370785502330715935388091683619818177201083315811\
707680710773425291811104578299105263539667930123291403598561474105726880201217\
167959862862616143093600227511308725780849462398956843152736880671746357805990\
272793464542611438845194448010540240436264666125727191750512676829914929750276\
080034715391695219495970684518843976624530139215732630696081907155613533776667\
716265559760321623140296104038294779790894180590427568054061655616412099662214\
065859950298890530711782680638475460820839699117281905364467590534472357548290\
345425852787237906411694278691612799540040077113246395339559007577921803302990\
942053014689178475352508154768344943806656510515443835089448777757984818878326\
314298403174931052078341045745636996715976409839759525611243377765222006416235\
900650814581848172780042494010851366523005786448455049223390450291623925275495\
713754168858956940180510944082650746324797234449533552484227511416435521241296\
302949986207363371195028735928505229802599800812201835193606901035431164367548\
181045062068843455570820216732521578828819674546527516891058531307396499296650\
641973379213351955647373076043600562625925374975142099671378021577906250983267\
694420084798022650879829764663795273985884600323661687449776748264576800734821\
568009991932718492427045093294544164283074989902966466632015147218051600065115\
624229588507905698473212178183695423699650821075440993365467137995160586245213\
584504081829490884788153364786296598053946685498415405348369633181387290080103\
876866590540066623931559400375108347332375536973313708353105396337091884562890\
698608147853832099257226045168598289876704008183985815664661953110039404686595\
200342937127723765556343290602729167444195489365709048462235930232435812352008\
948400631600516064445762557487199186886651506972662829102709422049534160504947\
647532654061061622656658344674270158137859793335285912813329968145715006138354\
456268072039975922533926066967613947743013728269162874649956190941564620602040\
113691768224951488957791651005138902466756932992967707780017625588481502926468\
497330331935984585315572915199867628182376374157998369080984957440009475082748\
387865318201925530168853604642226670745798093482642528305351221974223503311891\
424097854927787806611484538120227671430800069516252177597134682982223665060590\
952394714271335401267348156128343708311245981255347969670947997245452945907905\
747603307546910723318631919110144287344003998941238785281385427740511085562670\
662593077115891059924653255998565145538139235141423256996565312880005232703781\
682138246348084178804439653545191361218921215673762421457547579185847890929455\
117904162145395286350780315649191605418757653094782427805166155994111875895415\
816488605336362246946027442210771129747536754320681558689828812245476513231381\
380936697094022584253256966200944231923358214815166638981712905235337097927071\
474261017723000940863569231131889872258656585192317259757039030929915610271077\
266542791362390316505319463273651721822353841814023327092317577863057205132533\
295601581753862387635243686561364162430859024354765084449651910542031722852689\
332750744096934462987597864295876166033073476268727819394638363854874721138850\
747038948216936678706735352710050865363338616943562348656003950914261603867885\
093211883880287939599482814074983248858860110571613643708471262149492990831137\
685672428932951415291753467039329179733632102524924484096529745356610545307797\
550457916742652615864995998543798875083759374069084496577175447475256324522056\
177761006732215775631209165334605932695407485204435480550594529115415490710125\
135772642212253370329962478896114057869759953998457680317275736097409629380683\
639799716006913955987470648728092089815698035971302530298714904331949410141405\
349529965113832473103229886600519454636419982981078892657714554184081181359537\
107119234911003573001906219170973506578500143326704268362931233618758489151066\
613493323937321192983689740468679487774976837801207131266677695261427320101819\
343876430460967978089202782432489336329832569392638828850609972442105952501108\
269838062762156884048832672088924184872083128693430325213535408818847656047144\
740143909018874178217722148123451915546120615195702785193780556881591512912134\
024529924474182079710626821990485194283096143541498269718275145372285164901867\
641162813348394391412109035083589417500920602433288383694386491817957532092069\
127293161859409040128962847322956397689422910802536340166098318537582538850265\
708796168046510797576888309160604501021520734150151108329854497873231413160786\
440944153729329857170920670260451042498252165817693318716449080244566214401807\
913570944034737866032398008070880507312777783730782767300462014585448558172972\
280588059770859728634432338414283469213278966726493088613267387879964527148254\
179413293080114987483384690071942249626474306480394341814540791419810697007380\
096683488578151109325312470657305707074819164553772666912866439979547978075350\
698914918235930392948830766808081197990541291040219347339636231271483880722384\
986219792007088829086134857267999208031653573894182739785820895561792805361589\
914485092063336089251082661365042552837669783274705400862878493896209633644360\
725469349503262928524769013105217272174702709425380526502441243602171560756953\
618080367409190329289442077709635121946861143028429138424366751481624944265331\
706172695102146393851097010824679191721046365432585005158616252245796554343630\
121161361946508234947215856757305304359063637280178531649496118527328575697753\
924993158553351687410895122046330114619886146438973406801573523492284646664185\
729435946067224457120410637850269079814839627061333217391347079138071701353337\
093993305105208337050532991405932997456801787033309829099500618824079769934141\
796622509877069204869575576948004037624886125934580626424050762136143942898959\
750411631701804038397362384120500440277724004956710930849013042803141722567018\
738705954127894284946005053818855870140244616765546414073910890072796683127121\
292984030737547943063373060864552518576550034753955396650360353007103000048029\
081811012498158644703229893977707398124397785187128882116260077414565687856544\
741529985410536844450533952199828150171515672587986241603520490127114726803942\
199578705733606130999935912837281148527337756366678540489562821794391709434904\
897763231117347472688016769898333700198853698615792098066676668792729594796067\
728749538942906722866492152394739811079711946124043229372242095531489233545463\
680785691059617256974570170234254788090314587362442485375508496858795536594673\
476452943942912623895307330828496253605737110957022957191562745935756565348996\
719440284539993435282936128854924617908642576422385441599109583166355124359049\
459949290245634005188180736858640156275999777897483493130834698226203355504568\
652922636153470398219418612062236039532760734521650908296333461263840127793829\
368779062272785163517365791121504135533873448401211605465477751412309375411243\
182865432058409012172543793960312708908899131381630863773497685728917682817638\
862406119524873376558530041631763414998153792684174956123227259025574501255594\
234621701483067020963955836270460224542940497642972068007433379364280984763198\
315269841104248722111200326212132644295671300927888113267328299184358961463134\
511528884645597837869860803130271249674810548413578162771726573182174296870451\
027800400643325353827209714722321188622860997117480279261483972284973823773915\
148595808111718473808647437866142355912856795422117856878910280754370452463286\
868021608662244655248088588254531018620664091872555077547698537805422823789237\
734679140055669152672867692595400639965478584695076819079653013814600155645387\
618075980279351897487140374090721045971411057881723551968222603619653945119404\
448104598553514052820331186645644230813962516658277512760620268521354755920603\
434390956790677086568583220158206683260233421683411607087561527799627739674968\
545847982939207766734900571228139134349043939707237587874901956393142589523763\
580797096318554542899930876324610660302087829977130811305109549344022525231972\
126131731524389023438592550172563029667245415176552025320467737235921421687337\
617187792328375061778837036489111752743337037313400041184617094844588946108610\
819069174476580454670086327851778684508841206706259143932612863326005088848752\
896744286116311736920850400763190295746102998221014033943548708348454900544722\
070419001977118563614418021617722653238455126718214483433197851757912901011045\
790157561939108690407896182489371046701987556150332444218634996569450783463617\
105620740584136652743075447418220556477734880932498870346016769113175357958469\
935964740572793620047530033782157741645440472702861757136042937685595397716299\
671520589255339363769904981329715177933501509372256010356987835680625694936028\
567137089389078400029548292037639465799938235764040485038190983223151816292030\
458243585963011493142788819268454512438765518589105421558262526306175579165243\
214730507946289857760336569512122037604948418161569889377642970734732100765563\
656152412746380340993564513751807281677473746237940323392854706211252242821083\
476330192358679012468252301859376660661265102967414798905455248641827208706208\
805561613966548151366419594903967906352082866309605592399289240713217478091119\
654891312200146243828818432111772072182368450145517988892929659872977171155415\
066879810587477098209832383588847790590165302999399065243910657631280113402814\
706045717628575021116427509590137624167974648449613550994713194356331610508346\
897056367634566139022145387015528835984909135095023250157700094761919118337228\
528574057591383369712384048808971613996611190504798225058215003409882507046143\
764355145911023267730059730327183105358220781625509293347586470145924621347697\
557587771083950652071465096726855762562564109595434316320822550502254614020391\
523902964930943134850191426127806262092064335868198116045674844440730500781862\
341216366642851874047351286787627649973320747825178438694392018442229959355159\
243637599695509435235971227293829065031208654407205839774669850301177582427644\
867992569379664495960564130450391139878172792857615831702172347516750023310143\
454430073021459660356478251402177384143342425938786233433208553275932079473996\
014694653438954969200918979548941630715222451742710789132269644661549550608395\
876264313818105579740475254309574489486549004610861390266685295551948038234861\
906441659975542181955267809308848923918588568867042722897838871422549118024153\
596032164896816054550989798412012322275466571843063559047200188564187971583836\
005231712281843780014377453183206822799635876218495960564349929448168075897601\
978619956352418551473182338301368756542754046522005739855947097117575303169091\
953176255152986368919933746337211917692197881996164084568819774471980989478392\
661327548981651196693432265290955287689207266056811086006514851015960506931051\
865443863454219983211357829718881667134748700528172399215792762333460063772406\
971011279887577420454258603949298521561216646257088209115081609616083019533042\
587782364708642690727322787642169286017957339895001004304499891646595369066349\
329324621703145153707806858010626209801345324132665407089793859416503683355092\
282810628774839912588071105348150438989203708543208619546998447552595619411465\
320701427036957415385280900961308272265317814716938333385397737392242264166727\
716552804083291621736265387648209712992723900996373374977744887037740894265331\
688248625454103923736307725919024299862503457112770311786972288417245677359942\
265964760685611622307453717690308904538226392453956497910971774994558653500694\
333808297247286702448879503253169487051297378222778533403590138502830772081080\
939600603624176258228269947185606644765436611909441958190578192614613514536773\
342623316249471913035202967996072011929038176077734209116910967703232362838601\
518188734773694473824335191829090330172434538533479388093094458856820252448733\
324707220548143256307127795231769649694590582346556163999474540834328688002111\
120420062418334385950397611100466557342762277475797864741143070386897578863660\
311481918717114589881983381647782044493944331896945534018454654420845912558361\
498277290112158478117603112634907068484741265458291585310167260842711354876960\
843248771612461481665903500773488779729072854106999091381969174792639089999710\
687610635903047670934024083095511622703176029220922741449437019226688500782328\
369101820449745986163109137270446425806179166817597153671296320313210290018054\
659748698296952016719489366547417870108972398017185340142440516197971113442772\
636294685771002007031825271750220131119238433396987941574971714306083085014457\
963576437544200383418021194872761880502326597006860653663097359430266112672783\
314564890555825982903056660175201742254840953498205696283730476978142548617132\
952347872575333433380149413194553899324293684067401639006881758130349903513140\
297349057176753938978158193054985906836064872334160649121315417936583997985627\
468699440004852032714782229899418263223230655153397909158634025013332563097621\
563971259662141524383335362461641263643379507220698336205974956564913701138470\
565273508899610575804594847959679829976129013975720116601955230186780711196520\
743525868664364144655948568064194932541219864243312785664049439795422756486681\
551438674955373926256893770967199342572101217403779846308081918936024091871108\
190165420630923276838805515008125921753710174239291022695326516031639851613949\
979382864073877476272366436363654651817938261548568009313823788633925657975604\
841571836946890281129858058089754787269621205755788156193638085601880960283784\
229840947454523776879061888388664250521445767355080454442744587679232547928132\
957679329879120736699183489703182346539411614061659871254330101267809781713009\
172610507018372240890463760163497105213224305183063262415263414692790795855435\
043880885278934817310759506162700258396861415253393184808057030990697464158314\
713440902417998391887550204580088196306140028652283018027846997162620555709546\
498625180415733151531711197147049654473769422005091260755461933051105840089510\
749351146314920341161917359745405729026470424295601903161141350427121283256360\
937509763658940368050483739746732996129278270611800995224665671128206425280733\
868251178982686839907127103476198638535252195466611144280390541539518506842452\
483369459268358587044021337688703560618222928464187751465746130666372360469183\
798654282259694050885404686518180948274304897316739522688549586519346136886600\
163325791287257983135420333708221324422076386111641289099235724279799644533257\
192375285227981736761298154570416803153065108084110233406614859561962876021835\
752503615852691979219075628946529499367982288397044070157958885491221422135541\
632039613198476558638707260371740466635090045335314888761396735440373116131878\
822560751709585802038587120204826650932757091465011306095026665954296580686604\
266264333307544515299490772401217796065037337769071716680539118874811363717159\
649323674407920719539016429314189098276016108842091082976974057871768714730741\
607963470448001749246019611334972404239832260687582632018339911511952304163941\
770266758603881689915983787862519133675195266897205614337443591887474940756025\
902650554398709566332204252107976186927340082537202452488449695730357652213645\
291343114455215086689700210356693313478793410482581121928364865841245247671404\
814513120177506820232133064538563850270748613158606249447861501393851949638298\
478698173597481684272915278421975633356068124530702622753185144286261715738090\
717544990178242804429967998707175641657334174302229366858520678613416730207150\
982503803437550061025903889954970897117839038448791211591678221276170132496072\
554534523629477992371348344692359185344511664012698832821908635402052462017967\
913336232818028663223395391754310522937361233374774756374110881847743566292836\
425799090433138201989362131163972792106108564176247041937677953705005960054147\
055497613004625559797754723383850159713544236109172392314548284184722493385445\
201370028142901288144424341488355130081070517754628131315370571512625712660782\
562426657358040589108637887468366996831851473535197432797416692997558159410929\
135743378854245722133801929118853571468542212643291718352075133811637874814135\
268875684766947615697662171629324494957227032083687762595453947666301191678051\
567541128895110977701704548401858120495655043072858055924590356280598389785606\
748947393065467311517796843382411788281774689217623366290003213558276626060730\
650069487395627618179050068616527151231949441440832212826320758599948489134661\
419359344521034374083422042880259058978591748912523550559422388566306879165396\
661930862079576343122887751337222447518173626942547533070185977951843304634597\
585082723477293511738165005316730168176596869228271083009052949691836792364758\
357890442591068859124055969778713323195012677122272364440209508529667675969687\
962596836028630054331263505901213960982317158670491854185599227435363592634928\
455164151242561201147392917330695137406973647065038917074033026609997461368493\
685470359646992538149964668044994586768517151315852480912455895169797583158189\
322018020081382535554742658648716691155756155456494587108760456195200016476860\
870326069327610659466308299622688949404495934258333312513020391530469712181714\
712519774162315392154502266809945550593401655426835724286650629535816944377227\
610619807806016941972440991945288072894822480882629693655989375798592728867227\
551777753774012732614034627225361116680018454566663032815152647916146344601113\
123830292611167036324831782628490155104711058518751855908165153122489278458009\
887538401128647087888942483989525546121793117660308205120964622878301983952051\
450398580294446744016111033639080211893041103604705606317194274779604635313055\
632407042037233965850497883218916184155850850223508370155377709698984451612414\
885597905749079474215079059105496658706447238077103079113128364747118941040501\
639747745918697956683342713845634184425292762007792145938785409651589555045699\
677411519178745227027441408350708425327888499453763588419544384765439569749307\
965166490081421980588694836222175990283458914231789019038071793762553266368383\
991549963724619790865391084399544143127171231202377306790931757841899587684545\
425358336402122393640741400538006932310132122221655782444865401978493351696515\
868187701541771240752280959912779158544555309494434211364399081649219868928029\
962221542755946568582569965377249381809158967383907829364858246351933298953297\
000684425762346061905541398973012097932210030428757563051604079631823388485396\
177165172031410847419154442277563520714095031733442615560172139698690170169157\
371564730754175777583403820783591234998583023311482998745271440497062259982941\
914422409411913291436432821725647543562727024863396746239965535933227041378526\
321633567643089229534662303464251055184065683393054043383268436604069212976524\
636522960884084945001896293668175321317318228011792003616807964625708181503403\
332970148221493649642133881719614945377657462033747096779033031471436572872102\
068951628690490868833735076581428202302497726966547505345408902454999341447011\
177817871809161792406596148842548646496499391657661189344447198510441744623108\
566776303938533661889610651599091358028939745262257509388292354288525662514105\
527235873032029978171056730228377126308409217988646707467638033551171858614067\
386549567660656675017451885165626049194810923454376995254730906604814544612640\
724601185816758648795288320041788058245309406942901022626095117867024578295857\
244410436010164751814024682626313351892550111519863944411358912040493394294743\
541229967316832744901415394723989694553909841452383469187923818900918331847091\
816333374143475316278518138711897715164044058050048676045252658288260586063739\
196116047455962499601992139549805084152128153599618457038562490050401573409113\
970632456586876916873162409886306472216709643857117012450288308485699530976502\
492635550621631228762876224438532129111553533577571735640682865588122018750995\
195796953809700542168262373124286135606717672078987866673259201321703522676132\
860669237311669177416542441243339705805692141833365816948636052494528355896041\
726161076497866792475964699227318418627600093051232026057029669652336975487919\
553569039036740863497817926790666286068162407872974485844583299663800147494878\
975619368425041486975208052597291416737764373379343890138005699127980170897516\
399669347959685734949110892548279040879012124915530564738681901145902535222230\
414932550874966764338157327789319613982011522962698294451388654162882068617922\
806886209118669396504821900764026602645890128200534720302560254598601036924444\
747137106703098967397991257755696276167582817405140705461132351071754059171657\
435038743775444192770893750242171485831034125713040633975164502325655365565643\
031744991146511800512547312820078347972403335900953838906215221362888849089578\
352516409893026844962158782409326347378585876729627779842973150393346997126957\
518406786935923344861401968782963343539102797462314803518446953815636926155457\
006296394126027218799758338968307925106377955597920469697481636434113884150087\
176511629773595955352071235397908934710968065790232506713343273440535310911395\
427822179573943313441900248145835808042212028580293532074859223309355591809412\
908133892367352157305424701184165898380171513360385099913260855371293811427646\
455302355045256318697665083294227171998846762949493270325402715373948238255445\
181774574830383203253627026667516113720785478200186705253448080559883929725991\
404109912107814011081074941487888315734927187811401535982126118491068361114546\
602787619281527789755666830216901129569197539795192182710072763143941812761784\
929406290626659909151956068438693218843959637317495467947802214108838252629384\
035537659799512223074573701009666477274896991737601877609874126285888285806193\
185887914169163694243733584960090671690248614460094202870555269030957340487019\
994839241746313432492820040725533002536589655788626517166898112571698536804855\
739431615070539878841169716303087864823915831910097443752352041225452093598097\
394651688375842244185712336829245612862930289114664990058730165397582357124819\
412390486474480728412872511034989118771133292935454401310667898062122705988039\
387635997492946565517452481083169701305953311301269132900589085967842985162204\
564106781828046547282870219617251547029510715267773640804632068397947038914113\
124101870824726835454179291912089155292855894396300716156364068791811741931580\
852523076873258971713557634483389984293919074681011555273900895612570420744568\
782199523112735810879499165976169231320063156105595668984851799907159417585257\
329412452398057965420159621877756635420361735525713466690322291715720686727327\
371480788329658136475469874004126621646343535949594645095665781876126798221958\
853059859844544707719995502040134772483918683346229466518924504060226473441956\
733711662522338068748252455255790867816551155485044610133886369022283009812675\
217797273399592048958709647030791733869515341852281490543611234983421775907350\
214543068500448514995996267061354790473157256167380947973741641836129715945801\
745353283620882660193425547234012428633822082119336578361977812161188146827961\
726270278916472460258320035717238243317742237879120126425470602778717566001205\
061290645414688237379132898172908502995003161366772257908668689414323830278807\
908826321557467755867712951527593110343238729061353236548993077311285901039188\
871492788088714031413868457276948294579106237287942152550820116397018609867403\
420057920162841968450772918210895960585161379249331468950855979090260324900700\
770713748266525580679345347016993943872007786624044855826351340346665050319180\
942808904424237217748128163890920747612912441768738604656854330928746159337603\
660371449674101159052465656159451242034352329319167526233922236574381023764030\
103014409377125899231475328534447338072618060644240913486755358125183268651341\
286487670522718098911713169409867302841694512847671017278186549908123062434011\
647307492940689438748256642882160530626331234422664748384366042593052774175620\
906926372482243729734288846038943173171263471223288280802249597866257804758051\
912417206568775626822894892787046968082633157792246273933683350530106296343391\
968821330536516787334931910131261720771803776866200626338585254437922312511979\
803534914827400162663947154748812724901836147051870904635381768498250355377962\
400890240917254014350926476686579720134974622224978945153420758550977645829773\
623278517075621413765652061310228243965036698458887506940312236050103493182221\
346792854303739906553039476258294315180649496911675320091407718029805176169121\
494029120996582338691369758332084132114040681657768490226468161243950346447438\
963491506005428915874712109153107760389310132086303553695871593795347445239902\
867775467475485118515369563086448375640374753385152093967948481783335446098880\
869813961198926463635182120689209842560911700181448957306602637444676502355260\
537182431462529662510996408193917256002776995373391697541912790664207238048787\
328254785425527610486320534554445330483471467142437292385931959604984390036253\
122486235562092032039560493654924123978757463056436755464429505184074722015396\
449289088830443962335240276719443184395303803289651493723149039123380865199259\
340165404937082998810847959342993520665517643486646178795398403410211427389325\
317657282841322391806060277556924679192692460547360142639993357238062908636404\
410078117354667621894711998158160257255755263846855167323250027271533787354762\
926461725488046890276135402605204506766415236057861749816196919898089143664583\
801768644643834848704980076041578984284697022158852281619176348543098958323097\
809279471885761728145481051061405987766002816667402126572682565268353770885572\
843292594148365327489933643930444168509682051992408850678521826656094097015498\
706112019542435042066190019556222965624421955629685175128671385568957631493897\
506739563479440381535791097630471241923178059135140999075322314124528171886877\
966338754489533319487473731890089888810172064608877985327595633295632885997269\
388163841780625661680024092741669196988565409729720293269643759378444892954763\
422653956505865717144252785141915459370548578323972190998691906947322613707480\
855194886802487172422558093340520781913892658055718946499790605291253592900988\
397311412663776470317072942600589246665272070391090084758730122684510099904843\
429200082222051891126244344037893499359883710038189075265969889972997068871046\
658385518494570608707767807486864640347601736913705598730906650848301270153953\
545090526567238545953924466137981888898812708500895993607150764860838156928220\
274941220213532964732301216593346662567480787951767412545925443024452615175353\
072054893631646190531208415497870210728551072316569852795781806797907755304922\
053084719305717761579018512752686080519284658352749188754812836800899414072508\
490129985400162364635082431893508651096580099398431248323228627811525999663291\
345912531873335591722590337419040013529752133468031215474324059806770576228214\
670893682985190060323727755872831665491973917747577273945460320384923627306887\
063458897816293526226121272084137591306995400800546462263718211379030244725343\
436486898503992762777353011801967415201160884097914440776703174262913576133154\
133292683367292002368918610507117814824051716719614621434496171986225335719451\
943328394913318952594655012229230829162260799972396639361224182649144768432003\
129485270188116166193867395118765957312589763255956674357420827104821516160493\
732670931964981761658531877772258925173246088773626923880839118827976439289879\
844612989096034957022539279533573777077190505101261450634943792841552746376189\
416153391937263024150026061096204015223709226118561386635739472665838768766214\
011286154548689314937735255146087970198577851408711457923460459637407078864883\
430083405171470582958626348571254049833510022850029889884519129556117100333883\
647177305117873602117608478300736979128654419543493023983892283809842149523152\
545448911242516804995015777326897323967285381119871136613507585041227831595889\
912685138574322464961939767719102244755506101258319297289487446384421428362987\
184633295926754353362394559721932775356346675811688769968193462091011529057892\
637255569598486683605441691327046277409854239842376398988633136532357647010992\
244448080144268581285884682152209486713180171626718297399560161405507670398234\
433456232279142507986588765896092063240472914781476583735284319783760595328886\
495304100214478668646948215042293670750968170775833736091518707920545312957779\
811281659049448454625041039824135346207123275424143004324055417742710350089401\
759626860338703477394291923963029873573034652317952420353081716393885627090479\
687474880311749610596692904387063214654675537645234429847228671467307868982825\
512383165963953542505869659911235240294828687721375860522421794298373093372633\
588394427816675334383108529409774719193200004710600452961265380574660035611793\
941243687642357026255517621244754026916530679475408226122175989738335056932286\
023315490709696847881072846947892879319513313604626110429954012594660224673522\
642669730939198406764144470295400061013791029302938140480296281255898682037739\
743977427663238585899174587747041961040447926818558534874948662208650816969107\
089572402767960493628345062234650969534871579014019350813068016098065749827762\
939243828157769721564886329246606060497164410065227424340588633268511307440100\
912497958900166517886389868662060258507907454956777432843288351792406297963228\
171436218015445198005806306995390598653006590090013606315038678876419368521090\
415961108785561158663539089123071513536531517473967158024380509160349390853627\
770803193796644353658467050199781654025639489044478737507738899848294524862153\
299045419592695008877186594529005043013408006877994511032285235110794457552691\
006755521529991773544601535854079539724802365235653936886116477689302582901705\
237189753656618903501291580512204186124408533469527757136566052173937288035184\
924193871109374455057776389425409038225294321682834847102089842819995472860181\
970113544663197861151593288797308828378860343063363010349569845954649655231944\
216306330308494643332406979972685314626867854241471528449136305306842003305101\
061586116662949552549205054204266596482794542818409919792619155530022670242915\
793205858282914076520759297874607628581847575866774648021436374553326489309890\
435198125241144410008311716238272928682937355411245517267239341527103826615086\
623858185835893798264317145008149021255916009975806060689703475681315453521941\
108382437047117276798907679584560043513235447572672460178448344436304963001973\
579470584511748317768211785110295532693370913133786442509240046733594557496620\
988895160358252021810517029902299468123143371581841340582440166866014849322813\
824288962208324231072503690014065418774274954402962518983969408812563661068423\
621493682268133780920660988288341216305846809937309836828267829200258903183637\
802920330966688322843224828349071800541609019510521678608123404244258176263412\
667914270111946382807756536060530163519391562264911065533179597726448006605230\
734125405847398550227128887783911146231405758056560787111700436882365284290127\
202814857007954918792035163073029780296518616939305316672020243372902593820935\
355667382243485289532457377836577934382054273097035972439974437299795954477296\
269423751696698014769896374365826265898884691860224917955026218123135865438753\
165047520169930316358973797927099333878857073168738470423570190429116606186877\
200990341460688129578587453980805094136301876436355908517977301718413890733823\
808462903515638006237642946099349318289163604998394973573016317210002570336871\
364216065998852787695081319874500635876523571784120020113620342605203120264329\
198246352042428105285579907221538535941796059684598109319028056799030277043120\
706300055875236763481929092047520458023637241897294989765210348871622165080209\
923286939074847018089520341938265067000279050223029274284370861336755211084540\
483425195612886305507514437492261096766486566688306552151214250227895911235162\
809627985394537679133525344768394281671530842422011556463698068919376145402889\
804934503530498692095375682502985876906673451874612770954278442358697692711523\
111178166671037526708574959488250382990182666451930801897880505965442516155172\
641688785809784437337265751532410981781299671688214583863508577919972328048929\
690024361036434803862858412416122761858574548714977879706818666523244770848834\
519119156679947420276393849295255481461521502447389186187469960975263003738915\
768527094510854448084647775661797688443473246359637730176123434316039011810078\
088258637724855207488832469157251166037876770167640520453729173288939213709956\
142810573790890991084211616233464776162000465523555020124446697195994621536336\
209686830738202908994560601161085826272947873045710605958429051725917545935406\
543871500731140209970043600007042685462675591699197786231256505563063665579352\
460399665181755443804189066392796984611458403825742066136759797769527612683082\
041550873920151676482792765594141968951895143036082955615031921437271718953662\
231949540450227021053044470155191783110874331096267627522313525732925638392558\
987978777365529996855760242152868037427423868229861972573815115913671861802136\
680065755428216770618815254975133566628432730080659018298949866838242299852201\
163445461155261116677598805056045085838012203853595791248356593735936596493971\
558043680143855832734898091392700137456359549826496014234200022997323436732577\
713087881165086255554060930567040142031181505234278550502432576784712171819898\
617212461262896739178588338787087873523026488203154854015546723655798811199427\
499816566117156126192390618397692948544646811401992357059478213344612960951305\
451011944165540778690954169080198345903918482723580327767340901139165540331629\
513819441133364698086988491644229759748826617691272389307598207367535260464122\
481916478375861584781005257695518148424843678143293305235273846624893355945246\
680947975199119113744357382606859765980817822607094797287299520916236301541090\
033779745293709892630237092239911863958011328893423147935159310091178847668497\
400759402525336565099575628125065500220416711859492144219601735742116220871403\
676108009204961490245271136537694894338073806567428523504813314404082294050364\
122324719000399268477796256806253442052281218151629048989124539185489700357672\
394430610595955616969323780374899224231898920084267987618103908071146994711853\
074318822458992432226802852012928639274948008663574224749801310740973626385836\
847182111529169733580653903005660493205333256761320380790133217342971930083551\
892491502786232727603406787935529225816290735245123851186987288841870070534016\
823119025760158090868498493934847986805207044196960516917339383658664786840307\
993722872569792306089539590974182526798106817041172912543194746817580510531791\
548275970895737494315379132914144427200320234517210500258344468189380558911117\
557841352455109190212832520593874883029144202238299736930523533382366090000211\
614368989237416382484211102805519912436010219373630171271583033900477954148989\
307856156493057752257183312592470291875816672638382846257649260776455535291619\
335656101628026906214351086646263778906315530102619713789135727618587306819076\
699005600568174234534633248579145000147463592771090195150365631474216792300865\
052611371972386064932133045640994870723001418651896213145066727418820429045754\
590496631152609374101346973651903924095962206442960553425188401082461939455914\
025879240797695779726480553847922933875195412463546797839041917412864054050905\
033881505018189034520516211093600357247421758709761726038844430314207158724356\
768358188497984785523575097842308293869044858630795716521556881489514820750343\
578661987602313272041510820034449100083119591039814997088701169285850753978159\
238940416149203603065491373830996889131771852610901284045261591513970561216080\
829126797840617122436483367894827226329377063724254916797447108289571783233770\
478292420038636072270293241517018983779780057658102591407250441194031868432994\
814455518503355960086385452915667754974441614215801625811437975018737888729640\
639117102646283050482472141736225594762518677963925291755077436135861480444571\
043951266867145645385595923446344546936254541679695928155621485645982478957256\
818083830801596489092449269361195169914893791916489932777691888317945477959853\
433632397544048235757143954346691778096426794448491931105346639469720402956281\
030347568450334051626715435890932971113722187131097270416625346434222986146499\
887604412998346844500695681654330026316815682084605534651926534196296119241000\
961984293313690283842948081135419147253547933839039601690421890135025426202064\
342263405052048931078958250441453345148622240191506641747894950346958350090888\
076512121311485035323118127802730597970423197357343122341407410405917704175243\
289516948786105601826493242621808364353109779785315874021501703115845634982230\
614043065092810759470912328173870228201265316504455039044142789872075026620984\
516380075526248327147933550374215565198878807987235699280248222582020217724872\
114721881102174184946777493701716246406662254815288309049897205640047908548890\
183757008199465064475834283241908772602621854194630593172602452639327839179775\
969583952216563200816335561110623514655031139353533792144928802778036528224347\
089697583256619515248346990772691694399238358754358347380455192329593707693769\
262683196677189094654812136661032597005227685278497882730825853665594982240968\
023425347593929090165314740529431950573132938448551996877643279197434688236931\
480143571960507548101177015410373765102540678515542127292653538362917675175449\
375212594039599263230435827889667976255552373389499842157826806839676056804481\
427961264917421826845317401429709750612657977109954476079031460385913578171824\
593146788462295503368992415332185767040816108423537325396192070625857874117102\
245034398052926949887591530534790767738981776184024762437591043662438216730528\
903475301509918793928327520847697001288867758701370720352611183235708806146194\
507235535287102060020323543715665214396878768278175166338877269995565599201673\
7044937511544187847889462382367671003975372583012900429426985





*** End of this LibraryBlog Digital Book "Catalan's Constant to 1,500,000 Places" ***

Copyright 2023 LibraryBlog. All rights reserved.



Home