Calculating Sophomore's dream

Posted on Jul 15, 2020

Sophomore's dream is a mathematical constant defined by

$$ S = \sum_{n = 1}^{\infty} n^{-n}. $$

This constant converges to 1.291285997…

I hold the (unaccredited) world record for computing the most decimal digits of $S$. As of September 2017, I have computed 1,000,000 decimal digits of $S$, thereby dwarfing my previous world record of 200,000 decimal digits (2013).

Here is a frequency table:

digit01234
# of occurences10019410029510003799783100162
digit56789
# of occurences99949100054999379985599734

The constant is called Sophomore's dream because early students of mathematics, when first exposed to the constant, are dismayed at the fact that there is neither an easy algorithm to compute it nor any closed form, despite its pleasant and straightforward definition. In fact, it is one of the most difficult to compute commonly known mathematical constants.

I want to share how I computed so many digits and what are some pitfalls.

First of all, I compute the individual terms. This is easier said than done. Importantly, it is not possible to use builtin integer types (at least not those of any of my preferred programming languages) because they lack precision. Think of $712583^{712583}$: This number is too large to be expressed precisely by int. Even the largest unsigned integers currently implemented in orthodox C++, uint64_t, cannot hold these large values. float and others fail equally (and they should not be used here regardless). Therefore, I used GMP to achieve arbitrary precision.

I then calculated the inverse of all the terms, i. e. $n^n$ instead of $n^{-n}$. I did this using a custom pow() function.

However, it is of course not possible to calculate all the terms since there are infinitely many. I had to figure out how many terms I had to calculate to get at least 1,000,000 decimal digits. In other words, I had to find the solution to the equation

$$ \log_{10}\left(x^x\right) = 1\,000\,000. $$

The solution is $x = 189481.28$ terms. To be safe, I "rounded" that up to $x = 190500$, which should actually give me 1,005,820 digits – again, to be safe. This calculation is allowed since the constant converges rapidly.

Thereafter, I created a custom GMP implementation of long division to divide 1 by the inverse terms, trivially giving me the actual terms $n^{-n}$ with a specified precision.

Then, I added all the terms that I computed.

By the way: Depending on the number of terms, it may be prudent to use my p-add application to add the individual fractions (i.e. $\frac{1}{n^n}$). I used this method when I calculated 200,000 decimal digits. You repeat until you are left with just one very large fraction that is then expressed numerically using long division. You essentially exponentiate, add the fractions and divide. However, using this method is not a good idea for a much larger number of decimal digits since it quickly requires prohibitive amounts of continuous random access memory. You then have to refer to the above methodology (i.e. exponentiate, divide, add).

Sounds easy? Well, it sort of is. However, this easy process involves developing many highly performant, multi-threaded C++ tools. Most important, however, is the time and space constraint: I estimate that my computation took me, all in all, about 240 hours and more than 300 GiB of disk space. On the other hand, using the exponentiate, divide, add methodology does not require immense amounts of memory. It is a nice project for the time off and I therefore highly encourage you to surpass my world record.

Sophomore’s dream

1.2912859970626635404072825905956005414986193682745223173100024451369445387652
344555588170411294297089849950709248154305484104874192848641975791635559479136
964969741568780207997291779482730090256492305507209666381284670120536857459787
030012778941292882535517702223833753193457492599677796483008495491110669649755
010519757429116210970215616695328976892427890058093908147880940367993055895352
006337161104650946386068088649986065310218534124791597373052710686824652246770
336860469870234201965831431339687388172956893553685179852142066626416543806122
456994096635604388523996938130448401015323385569895478992261465970681807533429
122890910049951364103584723741679660994037428872280908239472403012423375069665
874314768350298347009659693019807122059415474239188849548892043147840373896935
928327449373018601817579524681909135596506205768427008907326547137233834847185
623248044173423385652705113744822086069838116970644789631554803110868684680780
701057034230000954776628299270222642661822130291609344850492556799951212817650
810621807347685511270748919272166418829000073661836619726956875357964537813752
368262924072016883803114377731169700570209840832713356288686139825144381773396
056102686412630030444950726162664321715587396760894773088895724898615284050000
155296035032440974819869210012443220069028601518246829601057748838598102734841
779975734833759195391367869837228773715173860878571470713505911315393764559553
095781059729006547262752703845464216158323519167095607182303127359544257483060
002114793048472725985087623999642752266583543791167033846556991047981798047455
540426103739159479695765160888206416493969211344494791271029086573498298932807
275845786815023663962109586685496438573762391282952734504684254393468184361635
866794759563645741362797273886309250588012734190809715959336889530104112281507
467687300374311291529715134767911018574315282097575382292145904842033570478448
979864059438249338088571394059384690093952563308043540038873457246102124002307
318810134479247903365370464085740478551338903205974628936922300528489011122431
453379900509636432465610732900372027801309632307204162628580392317749427029987
464666676127147975835115571279293933668732391296398234085163878218857067423073
039648341065644439368553269107184047977961168859132893640165904148189186422711
676821142528280199033870792648508409284530630251005733969702648312287898252869
438647212523837626705767464807820212418811330444148305200062699497297109266153
317914502440348688776040292144103646843905171787850713804725036319401107508974
708975911968905925153128279343729842972374642015476818062472505459269523492841
597321193733066997281656314337624651823729855827745941164098152169134298127189
744371623005131547024774215985807511738138843405135801636602093564236446048105
206095416598955703149754131744788722525381093299421402959912946063051225582399
760299450706172183900398635046397016919101534216754121756558573108947525464969
268466277342789051339460044342050565192134960102286326299835612956532073582873
746679929636628231992419330348486295743546481228055485933733207442704193220330
597650044340863751733120599796301923571840895835457375615516722835325793168385
944590851142902592096931954891498661314751457872363768412344498470673585979092
557349868747962752474034377644472774065391783506120862599689794286023465125396
915704193922070244178062703510194529880978944807580292748085084747995428453577
645679377260730463160836599844539570447931230110994450315765526045627312699072
357847096512969117673978377549172876056437600810466600038958419890097973839320
278849519881265395724621968136823081726185780695282049152954499622658361778283
981713314881061657360331922405442363910866134987363549044863659941425869882045
270467648156221870147019422958472743377255394046387480200112794549010893173027
368799314207648353709145804266174601620579455093041261400536789135075076060378
642156280362042895743930844378021310971078824973131729095010007541598017395317
141141214924644139052731135543327344705759294874332903640571061445411747513575
674271423350830650642709194209628764257878778258156919544645502704684673175042
835663531797514014785483373867230062601771610639961856489163926649352805269011
531794718895665330597027900966693223049450839853053603456760801976064894362449
863855378774443939026467192229743679446969693438920181669211540823669230900901
995582687591625284924886994529356353721760594401414696056144840281936308478374
279898173466212156673048306722926489464646898839398052015056929484451407890883
138957373617360105017307576986320005245895362136746871490830164808919234295402
351932525769757744538637389149225803125592446733325086115985917343825063253525
495643068678896305390764593680863330656914765017796479068698231109621761143359
000820215931053067277683361383304201290155448571630340173878886816674831746973
018748104030659641588470407887205008557541992404365158402802086106776429848474
054682968859594858626766097291178710665949496850703187607001022132896288842464
838732125916939353352831266180744814347739536159493899281102033340390396268277
732018972470306723376029114443877588018889718836572811481221686952831606665978
335870970435389190041271567619871346243782990361277081767040119396779458733411
268089559394406011175843395787017327686009058968522415471706526064351586088012
001271538833676974025401606012485164097715512229016135016736400047651791303711
008323977077402849107682758304784541552921463093167665735651925147237463725710
902861730181821261853841321297881769659459223699186355323704861846491452184440
651833207539692371383060059003122998448184409257909824416081691487247096113593
433515456802368710900099701637034897838485965700771771684242874340139113394675
994542188704918676604612012915012753588288287041787872983405377020639053723517
244008492694267294684627534065140528050230364943205450516276633591498713219286
018793181273275370163288426696256285960702385109552770708387811210250437428430
497874254898421502043091424618367819975938681781382603618827027039709449287283
126688152544259738217723795189116769765373453008207005398043277770572660709083
878390604278899192096413487057128636045393639366248199783321904558638261706779
550681290312022165946874777072421830630818102422612048586686504579184007330618
108573753789880161379883831903107619496064616158978896129647008799247380307072
623629458398418737057384666364105286241939275881798155541621613582267138104114
485386131732188269635430235521690899550880830014398210188439063065332417734943
711859455321510398422211701815920482139535808712181388472306259158558658443927
419390944408882331401802214075748803930606147835660389373031613029984373792967
303522993214327683002812635443452093669747602358651497512889391203411759808556
549748329129798280795331279311349530059194012387556864582921679636080416758412
803079464483522765405851446578831435819996536450634705192338819634030066395985
332176686719860874077374753455509358261169195736083008411937007650026231119926
726212594034005933751900316285012974544232278859875279211062483709347600140551
971998383867176672415452436054927232728419713440886197108504249829904195565461
705225285238609675297509836295419701163573761418952453429124407452775845140991
309600539819838041984147848176992806060242774640244079860759235855143325867018
481972183057272078355211196968248021236503177593665849374298467924740810532838
184822426880895215986590313178154390697504499747601067261539528773229933753432
011982613035030486614109552216991356530479270987396488439148418853062772421339
880541816626957522543735300473521716408100880686829150827361718850152564742662
547281024997810615493920567099382283185172550458508044734258973868508229104900
251127408054127035827584374265697511425868606476852545210468556079445041418261
821672988128548280928033232579952791399640942090495424205708018167853229069529
063126160714459250191791950115453991577143007420628684498649457680065236615599
790982610600329025069943983094633313772644393339182970851975997433136328245172
626840924165299928765299996099842668292048849806298510153490922038193640550194
380171297775220552307433727006396996078498156998299910773400063040122898559514
258133826625751028907180458026781958048723946817141727273202704732187305882214
725555940773077704854822867862721270055583159660830838530086224070936426416752
789186390930583218166622519513518349056426241061870265982426005068409451399513
008763531890784671127178296870059938712544938385556252057803980414141108717164
960493939074609067865750702654195399165501216813982307565270161537222283872431
420919958835458059153656390754220488024890441514109905337598679964222249713318
483001785183250308358074270807215664496340794147581451829294883752701367183659
885154796295437347801812151414090752384018584799001948264021000803983593386153
482116400231263925781963907517751766896013090727313940521350186115065266568637
613483931780386539657093554493544100530117758058067814346176963042544368917219
320189031892383253064854146411096097456037508878558418171917298364101433286210
927960066166086278782732539812755991536671301010056722124053898966836996902470
974414453281138857577732721360990584080270677559638101284994990141127067483956
183830564748388387609539546982661273407486476813615035728262139799854370975698
833578380032669918252674050220954278070841931714126973012100064829223158540881
957972330301558018315472624291652979520595302126349807983421348782643004304954
851829738567547082044187077209008038863193952841055892147489306498703024660136
688518969947357079066625985737960954919700684044959074636467550203038085521046
540256239090684057956883309463909847924714396731219949726474086652535844705681
772995141825305245880037206158183505942953800607381825217628730787634602004380
268525580474184621938631298557470322426733994522761613238300722592473530801886
756353097155526188128828324613384750757489513892234121455312763108321160870162
174854132444746264404644749762164281637416075793345307318176083755297527388484
660772812418380263403370577155725740070413495013864878073531040963882641715860
757589778288000678842053792638714651941079763642506898461055201756978856845525
434584529685580142228563937910092785143536846179928374330579385040208775969915
999532008613085145730417075534312384834860624231789580845398588248811740637438
090137179489339596794717559724173961281470890498405740458686954884519248127604
780127209415942407132033187241031608757047689367095969212803387315374252202303
390897562948285995001563471760499833813656757814658132947230520733289520412296
098851904771931077581924918039197448460719411206317757545527460256370949598248
711791072081940313699347265946577492021366158502730149308091654941120685747429
655628829178859994406679604781786478221309720157530559073921511397334897630915
664269025091976208973575134410363502587541214521907926497817904519658631806084
394898150828172328984402367075112396541528504860423985834425385090984899790147
378940496599809489988769405400055185475011606655668219566589046759648421690762
223478005388826226358805512987488806834510279708880600006443890761977005043100
224626793246162390869793480405204664992314770741472753625394541716328879705023
072424978857470242387360872629511945395215049809151913153524149849137686152239
837978629361936681955799414832530931820858106182011428301984620212848526515300
194336659796791625176296476743037075956675073970491604462199645356767022068663
693808540036742650356368880267798678062871787410216478326914995833544371717639
164734084791522011006038851266606276262694878324041788032868619640355312261617
087524045651813817674367779177877026830969857219451556564715175614165570742624
617311509295775768092061460573761130398093480624945341513616019919908310627178
099767870506505767184295565877052946431171742558955993940986226150445595521935
864409779460023933606569300211577667005801167022651696074062280790811372203410
180858125035809489910430089993966092838378249275158587391583010800579527785644
121266830354776311817327010939188206525101391912828602654289752038005734263719
186913389898562610216416026933252667626277023332053354204200761115105479837059
562531927615756763246636241497933003781042267551406224168079699327244655207108
270768456556099601942918877913443512160060749044201914399439953013120764288353
943997800497935755234758351184732319602351349946067919284076541776598971623907
024945962843880224312124075033019391938094676550767043222124615443678717140997
166391797433060279656710312940765725696896810684819573735855740784689158578219
896152293483218694225828464360406440468333542427552724357562432409508412573464
466198144664261978918777282879192686153707955517582723822191353581652764667131
120042093044975859721194522371583083542347164496373220295813703002094269397530
099319069280789456935671701257803110007120690967798508391185748131948244236724
713727094070427685008842540757361912013491388405848523913045576001445572724758
210904242126862448298212547118853782774957694765578036063380397197016602253090
552528165509499462685798506965532359806942878095472378419576049337999950763994
009543457580756630030102045714948151216208001238370301179470845880950859175445
351559382143209072767580433858789397169449978904466839378594078707026995095413
148097839224558855219800476563069306111533438980435958748361646307518627742082
342051641973231676174283652029745467680885530385076452804553632161938829700432
250223041139177622100398153121035805162101559931169976694536440227101455594448
333120533650725970666967325078151965762521465215099486191761546249239234145831
264937137904906198722476804305688534147838902629687344100298314325020673803267
977583780057519219813599271631327635363153432758942055497632281969369975897044
754977325919347288863141023625551136506663989825851817991620503067511217277011
646208607677883164657853312587991769565653636997280964280718433507027981548904
981056787469839413976973278619851090121640096587691922951721580123798562272898
026015623111061065387701805263353467443333035394265034823994092477038310510314
256570735058769912940254717010152018616103887758467930397552302684733655045697
068669972443799282179923224718851995959712559851735212272729135613927037052280
541728616933156852283766515413703642354982446499958637477799905104915859343707
323766217344928694529828880961718678391947878713627486158017579871461563511351
301452082147817340438797957822622096732503964000783310666613903111882930189037
506988208504212729754103601848536144827815086712826993787106213827391173897988
270179266761147226287416434884095052778369153612815523753234974891123861613019
424351440266785540743510591057689607469516916587154545956197252320586319435752
032462420849147065550758876487131525680108404910408297622746509227594539178708
738265706421202754033029551488691886951337700736074017738910425198170664886728
238154236886417313386832375368529583376407519618078570002061775459153079969708
161059899114759149481805868577174698545940277791569130376612469238060761867567
844059215376481673008853659467963672033733199389752768422765587128546302350357
641854667204777974743660168239525429901708564438761064069119088936500024703076
541076635657987623330124839772909359613043819710003112710146908701669221884897
692596295761892465872837049226799116772400112108996273345808601351515920867454
048407063067310020507321824766662327777568098518808334517490151430686637265346
346886973207763704124795756304336539319124270411022541205498468590242176685805
746902637407740068904539733666749829081307902389977763625390280352589740314043
592159200587322760381172042353160471667722603803123945608559543999306612226584
257369642991164062529464921282392759567322508573771760775462612898270636121873
281072072385205795419608414545985812374686497775963613379381120451633224469843
159209449080405847120161004509698065594760204963801758125274234575828604891461
262946026353758690450124994503760664732770245973115096366083070644328609161156
892901276070632063245716908453533597868223544990620335210786736070641343804145
671117257690879447526848938470406994860020043935207365308425035061776939346827
876916451625904946248021749142567639698151370881287979431493024347840018917224
586568459760759708435990614132341449472748748845832853557929932458732609144216
015796576690090876382727716318313930307950556782558037228876837085120496141226
507665721768206590202880996842620697815020877452320952097964448161278741625604
039684945574728839050962822065393019200955237809502834594072772451874991193604
243117191055209709488246892858851336073979783330427344780771777450556331575801
060335405838124961975213677087517310123266424956287940452725955697054754153736
209601262644819461288699826955264998675840043886059576013004704044626446989772
286605029333138334175095613285252377226833135736788771954960723659028749804843
024938210230927968655941460786749994801778810554714955211338551921380389287504
768763780236648601164568845420859174877929695678259996429726084716856131840388
806874366033686648126492032561675892773974398450009034497006233667312242111602
386127100093986581734776611634565746736832830366748048289814805671042967509575
981784940604198202648218485380395861855088532173791787278964603842246213278911
658294106916012655821127255595445746054731092272690792597928235723302316559622
673402022530958822656523519651082429370504504320560212820860427045667147230205
026415248957540514931190867305606468661636630554755864404694016810974451619505
032446393817979527094788527782338923204658928264506031248895586354965843408812
246274442442073835441500098345895129453478146587540640485280877099601504897888
321257435097930259199045093267663378990459069857499598786066486583315074543754
159279560991900245455408164413826702932917994152561830912440187356933957112825
274397108074961361094844049940764964544226531897948806764541988635258825586787
433907991550343606306452002756201900905472998966508606426979917496936335420392
218131154945179610710829038132377262812600162562005451029170276216990108523204
862674588937870386534512906170807979136486023138096473726852142668303721213924
013077177024479401930351581946772087678066992614459012838160598262410402565374
925330680520772206609241172997156468305645298808242365018490711277471146389556
301158543705537199969106319923978961290170080709602749665377150812125864590812
336929231974914349124370205612965249297506111511398507507839224351431132607652
779137836041815030876159863607072588129107813469850664772764849108505642196841
067418560177751572131373989323281591101816491949990976714862794929762410737502
647988118429548965829843527028832294098305077874993249259253248009536778300152
500218882185718547090425744593325443612400244952427629293503987386147252410649
913351545831818335906065902673810589138113996298136712170130325313047207096268
892571728261587055366793971517201613224930343563988106245957294270609917081063
293369178261668537357039250952377803704842536421683326223138267172702619403465
505212880972704373600134179478748185953611419238705698014530744993698412834735
652647784321071170236724536313075620903233244269040918499756742549584938954048
733626015144307934476230439250218732000536747618897950842911991009128606740704
990404126592961793583493402321264257443237384551225051384891384418615216775664
274443459819802564082653979826055351631197017068854062284592948844893229972356
827503510877935301461869659597386181067993959762150693729495205655876752193799
229710130024612891578358014618876746904058208787841423888660171584783207950877
344317247598953725603261663951381498484487029943255317690920184609374331260460
900408870995891879250644800897537419661569156529770940687708436199233717658510
571327694245710124272206432535286597100900942697751878125960842214507306736364
097968463542102684133386099634617709569673895304246927374306799881190948065486
100366929056706645116929387897518875546835169319526087223272493928011609899363
798566387058573521237657652452866974003658852104523331175496295472290940687745
832190319289620030524886213213319630838903434768420976291777075316019437036261
764055616096992120192909201438282408720537677559077209578068130540400209159008
566559540381771564166023071113657171421806618017435444907759924248430340013329
937377689407906844036336862759467631433184907653843916580954673533946048659979
682467664138395195890757283285151276671461108847281787903717556110463200164860
562475154205691812454640957432056706594501946301157559840087248722971489779919
433127277241509707190842058377290355062422871169581541167412875539923496633797
893982080628849432563557927353058986187905207546053982983406146241726556297430
070016099531452918997719022067740700978689281594787237219888154955693876143620
699173874028115209589394153018129766278782333049970279994746095968804137634058
775615742026530594779484647525271764536896008762792880207568895656613355026204
420683094710957848769257733121964944079626772625647883153618099795534032396458
043647903798982671317817535800005303876809664449166879407967991274875323846064
121738536527640187014554913915635753242022830354120690349825109001899290115968
332074993182353414386725612776186483406911574543703500039983281893583666176987
971290768873362806457323133511511363647068830222207618433364854667152109643933
078307493863980540838485939204257294165981244195972197489175669870936625405776
973007867927764608860408893753766629688823487295728697706751918369086727919709
977014668748462261904098072711447053266464327306406144720936763934769066372300
176748230088414499226897807452651619441514689210590156992216592897114223891236
620328758563351281554306871114896756388648929623943038019117372357380988031255
036675991667633550042074286814841250584568924593089390305098182803182250563720
946497447711363049064174302475112927938146359805833925279085963740683114361718
466914795145151179506596817472362893472480817446725628899995956328765921727351
708747613679697773489697191415089963278861236611395820827215303666461140596740
425400807122703804246129295405192167183469021636427164623178220743067068812323
697961263821817302279744479052049516826302504081903278919285663363236481294427
993898998811462062378910290688850581346960887426977110302741324582346487588753
029673993030492353629789816800521753514710435510489509947880647603584725264439
189183556231777689261785245702710450605889418745549878085092489644297675542886
288815033888276403174514925594209772292141614810029994856190117594556003937500
504827661775366792448510946584082727578572895676693185329508844068357739966010
054644856155955242689258901467984163377383453425681155587853731628756268043348
254640652702211959525534052370495659242056903170761598398808520452416650704831
447048627625950636310771433661518833853611035386602565732263576938058053602009
993980039292961767493714974032572179811663029176910844262419559258994145696537
957984863417743640580739378496858562264936281705592254897066027331644881368932
174736486863728909360529024224171314277306924496965576564677792810126772234470
710369984154188455465884160960011980772551033538726775444748774302461472446607
695759768004911080703353392193850815337589490031494528885890947904581867777996
663256904601651118452632979161072240935562007511139517818354458111563804150237
195842207666333166652645236609585621927475738940330381264836732558165699511754
806240315990650369163834257914677866844618489235134740777676351902668599814495
080118585499690958016893417018727055280741448299706755779447902887136141347627
856062512299314316359819267837231927162887825856471558083738504729805034330660
276109389957344235444890838170583510720500467726105386147051543080485936893133
669964962433698355923934871847610861948967219021896713726433344735271507644463
273752067693911098872287964487250714745249788539064287881767025871310601741310
420657186093619426074963322733202836273507036718034006322090233390164587162554
352742825986325706275216084906567886917794134384244598420994745507417898120481
884477441448966020682180134823848755550598644386026084888701479098870546004800
059915438649679621652425555906864319733401989350264660210524771661992083868821
617195033667518496833900621255777397042899807552609013830400174017910901439099
286687886693227629700940295806382509798209830278905677944985282362357610425175
679316281415470270939249169934080065193082505513854140429975093376811507528676
099914853777799016294595885149043337378279024381711219102382031532786714913753
809253838936449268403997210734741143867682469699856249463773223360361083567697
740951243025480075090251215511118080315387408212297155485327711048877475541727
863210810419457976737553816688909758954344535357729874402177044575724126768799
363809459031324583547230172958536849069658811793084542070003274296391432782143
265868285313148457917911033621433464372071462478165140777575047414246258462743
183055802705026649493834971006848114291482252988039932255735014358947373712105
494260812330441964771687073875249867932279916668014683691291739817589239664326
597071754612976540470397812450710994339098401386119384549756505588482752993041
477611758904746445923375483880339673648986420784068627411214318376552462162725
334542416263395712711728137093928147712713696968116427982543627583983694952665
196446628208204293226606113499663069874433911688383068673424888937384455023296
717350919727367598470685828451537036495811081074445870616692269765147742965550
891249311319143974925657930995317228613561338516121351008390871825178225980926
737704212797429868811473352454778306267612918250961080991177839935415579621638
344618537738246086679936777297192752338228237437661089440227676567385396544958
976612717195112112710729912442139320926400528838819254212799479537340355928497
554418957780282157890260933326842226381885429155641766825412610491189583036332
087251704748576458828230494030670269939513486299563869408887703624819637227644
859124684093036959993808779109217317068045976987217106172413491301503019427434
302795189612876006780178647954355418175584369712423413373745994313952438690508
926408697360612654073399155208485571886828572982562048405491080961344985048741
754613958220459261280631329435375059663711246457977197285380809038579860848774
060855681884026512030260680763920073343620296268941859899029082838627315944904
454008956096564322534566849722505477477529548902238622880482187795584079227213
778017768886612049442773896579790434764840812378398008056117760591198322353678
611639373925109775119784160346936078710212149139760254897312556684002879329678
498156133171874289503515280873381775796326888169512248162225317883340912351110
533963104023572729768006554355720744065240223702089310222742977498435077200879
567369547297614757397604428475691831624855132142574857657133884259834273396198
421808491516324447928893793946509633272500235638308740933183065341325283304147
348185099129968158912605976177853855653448091483910017408360946660898000838628
916768435844585731847673479514554881247125198209756093817249598879744127823311
271975710757371277973251745521758268988008383644809600723585843030180117906134
887639434796392958739348028218905111925365130748965672874605742936357221588227
318693100114729061496856806858695285910937267008226592984080423375377505882743
767127467113093008004219323186410538358653512583755542740481169200439848941800
481287994999563697970144215709032021339375508218740677716553728498787465899658
077360410795032536286223863821578765196679860151757331421097997260397739371778
455763893099711761036484480392588796835626139448273834409842087623716865189414
937846613106652051634577876927218926581156292503626255817726672584070869123302
363638982143456010157440742550248756120583937623618591979228046550545661823598
479148728362142422242603621812379810196554606390358986676203146901044330649511
808158500297255143606370999908658341255191710297219544292976470087720539309185
939710901433114758456935395564206427542152630962498972601825065388091877026609
982569301895004853733892277299407743673682575590844262640357635487894785783054
290136431002568431794700710295092136618718307178021552725020664106896371752022
300409133802769248159165074576661959920350184172925942705597369249572554277653
902325695383018512050050976197132189014205176548032578163965812455241449061722
125875815095697409623177752001559994696636919646307826665833484730149855860400
267999704449424437964908444333374750853391869782915822658137199770629671460263
970314861633937395535869544089859556633441086019483991187096782943087723743536
919810475079041675982859988044857598634359283579116769743085149970573584015627
647019941462316180702472342907656608742066367841026380333279545652881327309049
512565623466027590622763917018614009000229634941598209470989139794078700394656
540859084621753187570283886847638324135641974458877059610060560427184080231321
037214048745960398363973373737089421825262345617406735301864281297438077338630
734093455955967939105779003543573566738161855945148199986599866869093981729866
530419406796565690048558858494211982327741971795137247953498849705237585583794
838415804493369985952281971499383699413402726302871923527728512206888763066458
360821111933195847589652094934320525795654513837386955509218563177418470792993
904939037295717712623822675003506614841751575186648619067601837706758564841532
163616145850218212270640791568414956194655740929137644987852665083367761232027
547314837126929405124192018647758063337200929236355726186127907132159456163691
030028477540521133592779816676710265581615610953768224227937963561410283803376
142597724332043416943553984896354845954583837376186934861921489645640683957498
799176516154745807871683738578478707371961052256572093248826899595728811916510
515567722842328460852851930104831803364800636409871790890744502622797100749583
911280177810139448470086819425600996906236591094379997367408585065060642129059
595795461365896531358205184616075943331536052978851038455448774921557905396592
480497738023548156457975470562272043745261363528603798134830029916879357663678
643188109934387420208184865514857497241766707469547159672180338057272782811967
040508115305443786702177442804842637007847190747822151523302144026195749596092
194418049956911700779514281750038656501100228007773161530484757857085170988663
779712239407087253439384381971697658256187633200053552867973072933278104606898
819631913683843390397888097182917086188587922044923334898821156877412723579701
135956200633158663595013888524265295953563907460059285834615470466830277445762
854983334282003149613621172276933784013512695367520714093832290075004176023556
284250476541103719761270928488252041313811535974104439180010845220903044201171
693435960261585821734462081948390168352582293290748648206473801732472959285038
099481587368024393443632203450747711255619856561561110590986950839501077884550
487691615989507490714853117074809389830927456393254401622461302790097198323060
904088494591439177382937131314289993997136491143703968613787873541540098187471
361053192183219433975734253000021992498520372764139838949906402496706229507380
386733959267852914407317074576335591288424335734032412537332136784817240687762
059166589536632103023598093835560428946466470416671467696004711880897036970514
548158591433954258917510213678487531808552165540564536374474486104622102237786
079320465811715195087257546246948690005826595578383850504262780857978976674940
949770649794123714238225145557499827601925721240243454652163216015153333695318
400510174631384327619532985358956062892175701052288088957575999986124517048041
014326675688852069491266441782842945214423546333745844682987299434493957392714
194127140370492291072789230156169186416353200330233469856493628682988036694488
671202316364270323438339101182835399887221896642471980954388705053705266272023
931969252547005340999839564781489966955533715135219734925424222283988639017211
588321815555694614601245776477879014888166327749635483597541673171056412970576
991295367075973131912300826649210311354480247724039319349988272616606465195794
835380856431080962687724525950803078788844584880529853155826825304958816395513
266591839745712253743570931631214895184515704515650205649614809974341355956506
886705599446985091065126161506701057062845041158788957204666673580212861004354
840439457907808114284472362650361319795327379106784852371541083959193634225954
301927180468816751139481516447932655077081597908372140206761029643181031785134
386196012677137683080712242162345390591882063449155897771918020966428523126646
179259624674440017616516323457781968841242483560050727860018481751334398677418
459924012638871488837589237118311601307452852475550888378739430665165711566231
307751433749951465124033611142861464852632401842735279685792574694147679477850
607790872856220296751220712505530605241934713176748154708567101702357871636659
580279346697964000308589078710362008784332212316561427679139265107723057009909
284352224096822453507984856729583087474950647592616370406439838356866212247354
502439048000031641567959440217487610256932707713610008155433226521028921496757
708515161828428096234961763699725920053453835960313390671025255998160007792915
856483753651909793118758341455482857062069574509513368963931764002558176707090
935035452945136164324072919442021807301130006420318101642551467630396525594861
865548941942434092139921432168223636089394141809552172783354921252146193773401
623617015061209940870982424815550944719883872224838803190022187409614043403658
078395544563406831053625265734394197343937721812042916486640471156491269691131
670073409750413862201127864669783308358944375661263366263765824989644944579768
105322538900137393903519053966329813173271404045045617506110187668259161385274
401668400632513633735006956222832446228128344987793352665967859813757912137750
136399515206486105204719494050465045641369916746099979199223307414718000960533
716085961421372053015913743991440699204773010226063300462094585422236592643326
912436947194559381346276602021025818304276052489415676789189437365397023194053
167376411068650840177117831015444801746723293212561904070612710984098637025164
158565141898666456243678773790632273393946384660786461589669297546166192645839
377840374523120243442910925540773783043065744338156452094138709716960037039051
363386655458603069848842051206157542022335553350811786885632920207746589797331
983218146612469462570517293440811513538744875949866696895698485010345004224340
454389730691723403493467028624316335606310926107069291016897045579160640082308
426425512984495073703061332706934714703685976012511780577030836547733413289044
201170638234679742756042810427430423173609986654977631278087986420707713571913
633292266923971294758938160521479587020322261207094486233760413437978307484704
652255078083900080148853611320429242425036525514440679071169118004787127137765
129729430132524667179785799790782808013933446607511796916072499590438962129457
206969555797956093056185922022483588963857323451875471462860370897987937319242
777660585364820144927880185978336288548324234892248075275099440502267521736341
227680545484316819028648520427781631266114648854555537810662105728993441101474
209018786389504758050168407609867095494310226561031633192105262503191858657701
876107972830738017083991097934684211506122286952212390430649912186475310632828
839441681763713666846032017762836475190380641010837245470062442768009261898118
628599689379616452694914495250296648814389105693608506094726449989029050963202
915808665447814501336072962236545075669601663958730545386931184207260827814771
944629505115802138989558204382274240595843764422626729882902449832620839750965
729699706630115303059310547278188635958683771483814274688132816662686564518010
843520101363393441972782750277503429144793044752697807797754149516836908917178
200509877224057072383723544920898419194819249594295949797851934177605083545491
527243591433551497479779216953916419623913089003060159833280688505168298142984
203049011311486039528518802508170866134065142656831229613368424557306313979288
446883730533297935212236786187602979376056358963620965559975034109122390355581
469375861822527025055673164933605473047383104950557622598556862471992657888489
293079189036474462445999383976281281972957216163553152191101239175535123076028
675764752423179159284058858603905316724229624939745277092135663979610548418120
776115121134336347197179381838536151655992577267202983021770399660155914884551
716082569792079506150326999354551802440372427513709197761215361428056925482693
160339923887712623580841952482119788105349254975866549795598798221004924207474
635103812115085426302427642497325608741328668088829860317797577035742594380456
937174021597682542498463432814484391984665596771348576300042397657229888968163
426376809942115802891258606613089563122524492573229124267890121531406670279093
892795167954627172178353798369354200314422199000565502148040245372796259849933
707238148128924104493974407599420339028972879392864177278381037031580206885084
532356639256947482109599175525246116724228514538436265850961988201537506996894
806913180667517093000644270970427808245238048815468874596821695844752559758666
826614960889354824844395969474890272981085907662126425163723215077163002296453
654258295861936535354124145249285590088438500447483661945054833380674550694967
393857459313730101586328332551534780228920072566318182773373644791989166258158
642831839273332145654096449065107321091101783001022653078824377157088086819657
315251036373327690419470634932340065484034928218811808740159161426566040366487
146931890624744539911319651064692460031556264307526588403487190614800366928360
106757646762885714025415921923073806723260362243523707474646782515527457239844
662144417721799178123142007298288584076381532693635897502068446227992614415703
721360947717490925118641918289374273639535165656813854024043660482728132296083
476575330663178264314486721120457252552696226752479733120289978132539449549255
371342728673915393581480697004628642578849690952263001161536994984088984519089
217079437850188448888162965970235616302526686528806891146741529439447451484736
470555960006934074712380329619961819218850917970778998060355495822686221941927
511242367881059653442128680050101629270342685185999650190258096329229903650806
703307018521022207754879123181024922493598319273318420353458053855651438801667
443212332451963178085160850881771827570601136924792920811664868276765831506821
392767959474671730051143983364303808717685556035898121788098532469486251413754
083872609771301467206364790227308356142504264466062321318736882738213406108766
190755949370464350822288647614496026196026657013104990978397169866768991292247
565741306206516246803573986210394793095924996549656578634349848341510632548486
916670961016666977166076693879467009698982355540328991941955093131508388378476
447948461704635468498990230320906490509545479150235421486345782603729938067043
786019327447581544313455299976062289588907754204077943184465235849139557183360
555903289012929726306169561057326007632939159193186804901216118574526415442392
592724986583586861153629017973829673109224933134649194520550507642359105663787
121108379708046304685845842304277392138687206224841830937713678904952148686537
046385060229221207978211926534466829764246370775834004064083564504661882387325
205990661044131796988308536160040206960063254216540252221345918301876531292711
149889552910608170402520088184626644818368113841110088890598980819618924274749
647153622054271399271130459505102087138633324540464099011477441539793049603855
924718337496944974819002197455124739593624102603096000332529938959435481325953
807485297527405504929748505765150616151150686227554173347757418092011452485255
184945826159323308764903123761624267105450969128093787371551473505855869376991
899911467380382847416110952559464530540454091475763167946104621076496435136278
358849648293478417571584279478197565997060304713883421610223396841955122437736
734112554932933630844972606182242985670570591464769647408066708364642543255981
065201765785552635760385156849603332384608243020923944285289721461420273284824
613156707577851923283228875597974088899699169692730662829080495310385907026743
432347325746194438965772449201814666803856392754913482987907123281645848742706
677248577400001355990483953394909587747764351837553153669897521186865273190857
845274602531476910122866039979345374523698926479796738691426410289409480787738
621069355852971458302585423566393597966816801318840162114749469286502627923506
243440234172164611503812681097298783761319445212889420683423967377559194158488
994740487368569592150921389397986687347072209489152331822878302543355355546331
137107776357207161216770166380373922140394141833284959528406325132713835110430
436688419657915983270164806058883576892491323879526394947390350172729740472566
161035093541511757705388992476177559231590036497503873880723364265434768722542
253413827943348288436246016477330411559314809895354219321254146069800796357537
149436804113349791014401015031969886780494976079800508677058795482850966735078
709038435483145821054680964753167426008592725383180967454484578025596928828737
620158178996002550908499390706926378303574857282551125267317543265458844804895
368423938870941523345760348192317009851219783724040024351855905088417800733544
737750708722332055669843928292960181289325965136741520629410137367703797150849
369794465208508378229804473424312858088406439315301632892755915965138854302319
891499022632671525089068812200022030966093317837271859881049411190746318399449
718476912096088775755196440816383823942706287530705490298830455041122090262411
577981576656349435033854287853932622414320688128148580179947875902854804366008
269016009911758535986308969580070924026262294605029976526902767450513354602065
902392769807009610674426030626532898451838742546096682205430586137575056408921
135406310778910433654856104966940379152790980446866664165751051810621031641151
304901133339588911069913769680407478677741286410932247339305299273401769850490
201956270684482662667190702519880779759134805352632078903313029627815783586335
791410073723042589374214766998644792310393739308538235004058688606849929560435
764471128900930138931805508636363173373071638257177689255054234628044530496053
233327091482064536505586545648791708642524291820616350555656654631515347578562
953430413079609144123151333056980899748178004989568187678172793402982625889808
894191497525367187724450116362212429198096747863113009994858322408820125801338
342990149567252184895339861606557891468107890480009647957075420611313180313830
145694750498175032937357281437502303149556829721445283621994097603598066274069
292813815309287820510261755332014617980259670378617236330538802774332115655596
460885906542480866717600280680655613326763254913713609037352176778381136771463
906719768542829652576698322276721837257526048408776182813341398658665752228612
101939352986024253848617839324348635128477485210032569569822401817756492736779
053247282626569658719054596144773292599771607389271159579722681960735134838085
662706106207200938607903873682696596427901684211048552070261824724247218371012
193262524941787845438591628161595587459694075020326997303672445981995060759509
936715289795176055208219555931969151056712601919912385564870034065294259004471
482011367861263245502101556505118266858459378168148646986737473348673222899674
563743260799314358760674245448549902002654950981601419281722297385036638817837
803874355539001868212260251564576955861802393601124948253995401954684540839477
659469671428106389078662803425359530826005895729438139313069085269798700202581
971297238940079878484438891957227430311336612073592691050754347397895389690849
162800861091581876503633119611074405106215245527797324397242437895462958978391
131518748497763934979375005836835388297029455762763863241617243734443605699872
032189593607352681121361625289630193963238997875136562514243821253106575899826
042984981806721362153198837944187316743667845731707851265631690100485739493849
533630025128147249762999631765547422079784490860095960791666865725193651188279
544651618381318188170419296687130771369348499608664401599116298384827879208067
719175007794656504977901935237504827065151194073430057906283844092853260844685
651825032552961346066236127563628160553132262423547883283674781484868988513791
922241272632792009539198413921711944063685374233227217954188959670204527773926
828594574567650580745412011061605456825516071114859370882311147630116914188990
494531339687082274833004700791222361400776335049788126120208752603019918516171
802006202787023113524374696789314893771611972893626350483483655455841154537552
193682156243090194593919483452797474449938934380075419097143298890489487541508
278382679939655284952240647772253182111880630878625067620299285575182149110874
898408770443205477610744980406974084431406017366967349106572321349145113765612
226608060571506007473328578281600454904316614241391819106518316689700304685741
229487182367134348728032512619024376145310610716077854256022565698314078200916
506306520470248531762190823430373932202159726302791514699855379403015092708673
520843458120673471347557142001195574708182918019706780844553209266739577338786
909721349830066986422543702186159840126951015140936456015138282142552826880562
416813366556842311677915489394859359941485802480299889778922612092562101923462
079947887207088770241155389858914671973781691537759047499817048124389280058028
527344748372497358338220037859416383850048652010649249572740289721140509467967
076538188285840730294291143747202725319619764645573039292532000758684658184261
741781545743123713070935665434006968662469675281062935665481206956336746210729
928290747761582307612143493444382607295636630044373359526746532841339220081262
451372371808880258992909781712086250691384250040337662969419641473060637932257
077790323005702279908426191252700730339657337461853513861740655031723411393285
467616880632957825275458302249582323381051707909753966509683360108347138207056
724890171781880777224786354904200768047090920775747231695834716046647427001226
149406169541656288921561870025236636239930747915082256138859919570162666354278
247711774166449157077937029112587885752711813368426388339644953538141175527977
887083064637208069567288692657650362605684788907847734644182852244543751556907
456024093525450567093607296362454059658646995172122810485493338696184030824337
301284570959050382307852492518882213525295371266935566915191562433298091798452
723510484664660222834327623707335287664843726053669190326624959585824476236733
889157740966685299084094747190308372379622321575808143414391296463616467758646
227670241885499070882081904530695547976930438031352119485497022384001216857355
535797347428143741037712941963080345202490645566821955654715459030944517021800
568452309747494213079351153376991482680172126393721607623234195000766184214968
608913358655998654900385958952193268240207291748406956385719841024041975262193
322659637058541443773068267232534542750533124895680755569107906702455483554360
289807270118696513424370765737653095555250252727437513789548696568952917204864
464521138328400331559045651355781820090913596407687156438013895267666959560138
215529021043742903416862500200082651515971378481445196854886356183488359818579
784350471909080892257878055985670964599029821289395200446166107233802041006130
239961605537626022958250761451986015718650895929891479341458150399366014590300
711077861732686299565895955411264031351228437727822241446199737506406743832128
494232748551147302903761911491990375738655947564930942382647985242265289326553
010545424252906801202759853054595569917248464913365442447958015011854976996524
255837316233789657851536706577467405869638476662599741309228977484167668639448
657189807314399055018679846534302505221732221687079175125728620063961121684906
199299220874763126863936683285380952091303946953062925289053892614684037927571
605029149239252034430588630620461252390660340299211268051918498895227177947599
764815812315053998365288125407438850547748460913231534279902878540553520436590
198344835706071153376803263598473878016772452385599937862338056747262983267408
255421974756661191193854077367228255799565739350206443453826155226010072041465
859613418531899134664297659126886925111262229560299318574364529233143666544386
360105170175514573950165854594331023303865527897728779150862209950118905578944
090857967236689310325854336892251864740981780745857383015881278671917535847219
661799894842114397721086661888980147778598692677720011076212645223260757294885
844909503572501985501565138692602747427463998548847892923084859363842662201797
134045886453576490418572314161840224245794006937686116576029247304315858876047
459098044137076694099270774106270468037071979966462424834360646161653486300186
037323980310712061490907553645926616835653263837719703790664403098384469812426
007078325950496538581505214191532695658101796725069343907491161597371908664254
570259105755307336808048823129443749984190422112175535476494276319180762953952
881266083703743476815225293059945361391417041195400727357895787239518835170731
640848154611105570386006609534691249296423634560964207952674674020639904383170
732730409454122510153736402271694269663805855888105812528330827162060246028706
067951188222396883731929057043148900808894505772400698739639523753646458200352
290219229686413919603323918932063095997034587689701519356332709486431261975267
405919198803834626328933428521247858985232040948981883430194272211437090781748
601583829393620995877441323998197311175948713569736163906468400675562525656828
955512753829801090646299919691824591606772909244851211574398542986878412941910
822655988495497605078385771235626692532984972402675593637355028580291393594819
163699697819987648564375553830937117034978400071776894292520180394889385171319
390687981739448700610631154984628683068929153678147619414626016929501471341198
239231410502591186056949842869516294003848110215495481970261154804487912220125
781823967073196435547213885083925815321570412336798862929901866545596042750464
614578820280091961671756667841728877094941734582618184592428792347085523135795
401844283423414401096286144791363085876285636278304937952058742912585092716561
558763776114550303444530547691525196836375218577094652975463759464337249426851
586676480491092103648169431393063271339343379500961577250873617699232912494188
538012983501412597312534005195002441640463986507778295649551452952145850855342
554649045552035540728690334432725598253554397495299455577226672464236521060198
563012239615979489294941344728638744594652743749611860846598894396779289193825
705159458999148450045097851681562328141199310370504218494142669039656469810989
300281553989106996345955629352516602379418412275672710905105097508785328159997
691596231293846740743315951685773416405593159989264049112869610758930964181737
388607082089240699044311377913488961118477137277098788700232489311840865216641
037494659024501661959819546713585316050123852844444079078562448110271913349031
203005590077325836646628241838026455847499735586149954402047961922952480064668
321082371349812465005403368408684611094195577007656635166858400409682971050179
211127306346247561858662377933875201367968622048873505911040008509424406617136
536471929863655818742550796542556172112621947885183368116741115158835196092286
162781858769962566426508562668284237463738345633212270061316181675494611958035
826872333607002683318325452048383763435481339884788209267581367927645043291379
782652409190307834130485547879012956277246767816372778963648335715627328267644
377151273107476866613516243085854070662464583440109583387924350649235666698232
052362560640090985349592806891192003097943392110536237391349833481254157500649
558596484863835619916413934112090313239508427063198064870195301886024905115798
118019536771495220673158876638201354486383876304769560375818984016556546410897
263671862239128404723756637083596769807293554382127678971664751486674937636939
979222140668354386861597278214199996137088858268436027405955781070202565905203
427905245188750320556423367366961650603013883910006330228375519996809344407094
806086733673006035153582919787446037719096021663421016108533257461346557984889
239827260239654923779822814397691495548243578962916487867291130770269309956590
148984617852764459764606587666489342390527405178273925292620323467509996300049
074324705872887731779105992605642899200831780239468505604888111694933315055114
686641245694865008433462426496850537652693668053426385738022607414744785508440
988138249075654368599312171901899984308933416754069466211845628625711576586922
758455356230442753001466702759298867954774857924975727213474847670410423666048
100063700880077364213738698988762417294043635652456407856497658344740333985864
991330215011151681572592681266546878543294723743684355319552564006123023476610
224810246246173896582750902434031886514275621521938295099731730300967297805946
160844687237602543121428264529501246238471981316179520546578417820483639055954
041241014083534981495045330326226057249894784039972255763682184286622572175230
538095191278192218659172607416918705701069900524872613717406817651268940439398
655932320120049419044693898370531482867179784721656123832550527382452729780603
246316702702627160779234977421734449477384024114398612039912810621881140628490
504718100247242695778728997619889865626646953574031147470672823987871083911187
122994051380318406650391575331809280269241318026286645602015353775124456388807
231737760406654661504406187253679661636375071483719618572551687205870671218521
504675397399890196521748043019301038666582733988519891632496766325114550192777
758851487071428328178995018666910456832490429267925684174167520663085737108270
130049812848462957074380188187451125498265921060077965016803720645103530298241
746775725241004345034485341958345468111993546879438015589694651271738916591749
860025286418330114466185506417437572787821434457886967910287645739115917282121
960729008230654603416544587542347847482498614753422189063913751219784188506850
574376638784761576179924181375141292487492129015276809623981253215264879532014
932352738934586424836466701152533240107799803921551901254915952706485618315554
771643447412841501565662850707871248548851569043898363182321069635899742861568
373441975450387550440421344337223311053036768600291709993663098116116733618998
877802784910122870844416572396422916037041766651557654776149095951049022543717
435697671676725807241899430907889089618957499729419205872826235467542655414319
177060108378496259017248853199977365444189944068278998846342019814917403232527
785284483038082441140045193193661452631425022652565977681526190867922419810787
197141480219993173202227383319651234553852192043114706078681774870982534590966
631432635210466365700116330572459816543293509913432944022544384471777569792288
373391141231442135093046151113912763643596514243828228756355252811167548233208
443691288093133237671702844710061764158286317210865256776902255354992689256531
875187322128571828180535030394861291496960505128769991644841445506720057612781
351036724393198479526281848394190210241133091402381641668196716373015940869710
278122771794554817879884729462884826536981850340842457973178562590697707317106
532546082829029654264763312174789831022112485386441920595600208400069078796441
464333180176501339801883697891807498242929887499356390230334933654233196352448
552779519707791113837396927821617834043007188046676321773978928556717258257022
827933317499405680643406710696607687863920718285944392697847062932824780994608
945348998766783371271227293414678488595236594456538701554098663331117862572368
858204378218301120969637459191132916257597818839536719062195478071335580303523
346439249485131245919213869070734473683000659750482797659735516435675678536871
550162627905441359756051629106171142380736833804314460872554906081513479492561
694439538059429226295355867825421296168053465358696435967137111410687133972404
806100067297396715434999257626330830368007487240851285385740183789287860576567
550567699249505648630637205509627999888151809980862991057261583555435559600176
904836636355379581090695165918598412019770907709559033486231968007913939505595
650019255266309068819230706321359457141796314706514716683454508802403514623994
073771844338768999830031516878972111869681208599270057829823114855697331246386
623469476454182321769534266355048404062096769426615181969229199349755371044193
445215186286037918419292117546826305341264037458376583367734717767127999048469
133790727794010170092224032196264069846392753583743262138638124111601724684851
414893000110153411634271022171133013004725007667289334930456782377660790597928
108420627602561597423931539472907641243648853477957864490145637711888879771462
876631308386221793365896589007950370357019075352431399777701423211349419822542
077093043047890293178551518383692024616840817568867205713343178845918912868120
127250043420313478551080359510476004884205170869020921310532343785784810382888
033787931912353456377866228325964608040058026841129511423929239273071684678876
662253626634713974159611368936714020432524407569140457439211426905569500217836
054709902398382959218872592354755818854567728287938372800264966030772018835383
665798211924411700135915343041242891574414757059916678106800198390766307611902
373442086918775329737774955827522382457361045646594350341941986462151760021704
975889437409062205748252836919541250977291676498771766218528134938764069452730
692930630191544340713836506644876294409315745434307224920641449127234918306027
652386352024602653960152313052044309489837353708664910560722017574154296032346
013106336541419256929862291205757419856958066501504119077826301583666776877251
287663652868009161622865974959792954395103572344469139445249147880888862610696
293849246211477131257266813547051631597972561795631740974782106674233883353304
704287875375330897273685845007698609192321668486733075441699931178828630756380
462786503452231203115764973843655321215885769252805055792325445657979109083308
952194386217156105901367437152189868339847663621994007895834708461019395155403
064380569282647738931093180223564489068083755574788833605231973093018461838133
138280360352223501118497637122478413656556518282429274531020524863842940312857
612175431019150680094405744900323984591329043132111801581585055852745454401502
676696110302849566238394365199134595233370509869160057318872761761238885633373
735927925496297305198808814121085708222053268451057831868385281673800824855200
335757721778415700803608051831546544790627360208567942154070942228225562186135
115175396757960411695795399970254175036704605065412265844927581336491431483445
674989352868396156388526234774438007803938087013184578887938253107829213724800
500894781328270153917420206744117656542971895229211291325203272313058154159670
137108108603502336446161271728333431882035499301120967416547936651334236681464
853349608058656101417355804013074732444090507346838980482065336263720589923664
699399441931745635792651175430515947063775415649646265474134341799262980893293
684224075181830300381562898989241505661407513770318220764296083468373337113454
291163866847535716050673364307940051043708603991493325200743493157341238015675
672085816000630827589761057626282465508254152537176576298756932722036891564895
670872976108012484387997530078091329790977746715588391367509096403464097269762
547191578346354971327908491068623624463490945834878850173058344765936111209465
504293934395717043272874346282281286039552716018741060419787881436281023823612
205869651591687162116432970311013511334579623465530844233430755689284864472569
078517006187619833401896181467475118002147797646083918976867513119426031555070
273132107122562364939439131195201081182552281982251446130027968504218985983279
491595493182142533397514360660426645889642168415255832815664483617699846684781
910174753544123935568306523654529338957116298883321296703930129556264155678355
869978473658389081261124070752913099169160633184532538546615424176836101053897
750744032634377066275119608368773343321933715703459636542023352009558634523682
633383671974944664172779356975407644400024020618589221629316650912870369131211
121157960603839092545220317763396112509614392427115387364110592251404960151195
684543125805739777086718372753483240097929886111951511181525475621247006507703
963109629245500075673942912956129392206635844084464247473957757960372098681973
375985650308352266095870271591603912137701803373507880126876694136666307820057
548659108728368859704365695578132842021786790480882114894854056112878033183525
618328402609677119558289868125340258055849041641267012758517781937123588350789
364166699173588718124521830281409032343467846178745720393003489541085831562835
392564948699415694992100972104420815890453089517556703696529888482981142021013
084587660242198992387329153742039872656546985975259090096124884550520643087149
162153152132549221570800916638443058660962535477372144022405623012215613092021
354453548403820150331155122650455760280543705514771173868789399288123586492169
026753770370975461854703277451616231974436337286568721008574326843220933336300
752974075510425549682275414045986537312857477398667780823215904861904250133724
237319700230856857341315433629302475655349512047052625356180595777948220888661
250966378140864897489620165760067573919249425965012959720737718145439118335224
230349095363533336802613718306824333210701889207766841348562231754947911621105
278340882533782101140250353781830044788429325279857817183312038326965183943832
664296060793653650775630390166574248984821863051255301841751211470848704134083
092227590287267088222833484148638709464396515696773681434514026174802735477452
116254302996781041556214546584315188091262750913916649069607326084626128173747
873309991969345783502011161535433464069700398497614945464335810753690495488077
385286793069296887395730573075396641678167151922715432081089325552930197377410
759573635281523185231730363923601074720378289231518142813226598231208875188840
566082744448107275596822790609113863965172767707594123598792572758308835015283
003419868413945828308861983045926490034032743630243795340959324916349711022228
993214473182559360535372961692802764219527070496024534564208942972598991982727
169018438139313826629379828343871179441274002074929306008852177450999413600732
126887121464849697831787093354272294052075408039841082760229710443335626624703
632702571486586263394538341301384800468077307592669709218660045033903912464032
581696606244234795990362075171344087885358112411468258126139168175382597869556
590417356458648388100775219677521679582582593604035735545715055664096009987961
052893832178669609886610150676749872158258813756767226772360854734359421985593
500537130428771988471846179074890283527068622567932592974548847071384383296632
416399397867515770057079113313497468482292823058634226446210963441554179592455
449339138304371316940917946423934410683921687292755405582340918778458444756655
129299789176505371765717473062562498821895124347845181501786626512250176943711
739307988002586713877045446836283843706835519777447320532881952496326707657850
097968338517748663164341545580112008020243949877934144902202510636700368716791
411310448083917987192499337980205871707223167157532448729810124068760073965366
238580715614912873327651991681632814685884083128704739232021855586126313723247
685819745767621322147650770239717569307261447148233283370251801991309286641052
447035078874306630467961859081586804992831276016953665872433394975833862527524
720912050325963612173962409906484105217152503130350242315172452215090206207512
292254528371437384425310971409439496907789900289912676603033483486497514903069
153317577215201138806503916835532906696824271985057976878781654617958903714374
796855554669166507363148018740118616813871654251138851155941062201202514402091
870579316180420408871058741400257886398147143586684559788775132914241651408383
310722430337507071950287779206468945472745163607047720995888685430108771365506
101047559066118960325062715796634179278193105991904834135722003647286562255425
334948607153282115382008173413757363303867249608722681286087537434752013520303
415805723412936240183454973369240047558305185983188616311865309091563346187865
605505829898696538723483867392336934995684227308424486667730660804400257780732
524765150841307344023429264071182189783427003074637691858987635503747491556437
142157590499532847892567550492316967267751010931342558454038372175592859487381
712392464923274849668203045522244906725905589739204755767590427549290758373860
584135647079794671593751154901477772891897091402246577737719474890808732444672
625161006685273657703313045921232488812819627928828781511137679933189582696870
059229947847292143326060942190702172414330591114981812989526449013429047754954
629243428281576160339114526498696178272322511858571890894782728763953677657589
260890635601260639941337040898788466109158454659140730403268357543595048614890
330168141901870797604132901757335738925009582458740900364391488476008816835400
830453659906283786702365509169037082989688690840587795519166009173474701687147
059895791486376563956497703498393517570666325431279891172698075362059483917475
237838187692619488740426269801436273848240041974038142270679362659140772052234
043508389649744547470990442027628615392485652438564176507776999177700504342436
275687003445516304837196383280064688334641898818212553720892247169138407822555
570039579925263789011568622165045227904764394034897521153017854950567905786291
565987283301620010494183674226118271122081083181979441272706623014414419906753
718898052697059484826280225413178479522157710327510074532659473985095881895557
276315004507201716437138506850569003170884699643782606646107920417186274973636
659268420503389175582002065303836304849217371525404359823460742527856153836287
357925634389209114617172704335246802578739116952470928491422354176962870852118
090836950533246780130501190912841140459516558434525783501925258883918221520650
105772094165025004352531775601764046547302773374386439916426629031480850519649
279073316264504798530335258611466392270861171185571226058415465241866862468828
621164657686235729268264005971986004768596942082105887363272170437053275560554
666772942871527222697985572205947727654928971748533878496331246669929757686782
587519801922217685935573669111273077490379202245750549360572697167671609285102
512250366613054276846974862721705887607921200174654611673715432319337677946763
034464947613370975146065956618131731659385847919451089065734215207438017977032
139875450316878172511733780695251323585860575944491576028426045437512831072258
258241955103711519696774015391726721845320569612532762159707621063804979056379
220373852221673009841414045653517202961538464289044077350435363405976962784900
210470521693199961436788331131142949049150932512834216262220076975495686426724
408729783101291015494252417266984512795607189502449555542980725299279529255396
697972200570466863310775718441141733513733188271733124566347226306054295106861
294800635703592677798277920885442289447015176746300112723359724116490932539526
924360319791107811023504670150062344072391360726522852483160815759220464078404
254026751873982609280650041995683120852742601856901118230677250107179560245261
014580688905445962409235277018191863326855137705185018269601925189175851483701
815644168487870485977760986829228273994637996627476752703304298842275568655284
072165918671833194203127906153494853172858616963266906204339360039500685503490
587761114000491813409151040530632969043798696888019927427213182038855027033574
562708837041033057769911784444320646656557788567762292637824783104596240450254
755834837927133397079391899599140853267040621110247671422112802347297661188923
714952275217286006758483916007697229611939259719864358878889034974115702406899
727597536919273952279678287850536444869578319986764500869476418478326704715086
154430229581372124958173807446849477151091482727685429093474235838872676043644
913111860544744482631065720243101821865377786328686410031220015586353897624882
531198450419649281239841354278491136585602820975272446226367193872915896826940
093668392870626031305296739202773807961474872749131139988703676761256181009635
142915012328626327817400668903511799260735724636619120188849286057789470986319
185387855001251387334473343666124160889544041702528531991736141379362712525884
020211793609352324462300893532062463993854106069366547459257720780624467740874
520688577761274549198108568134236835254397571271586021770589448503963508587777
565944089331550161677397384505046149761991110142519577482447867184683339443200
942355498850670603353661492445472369796858351699199291992018144989468043545654
484144014935834653744980744448529199886696357532523648424571380237859794596152
988231709173842250015522208865055476398459294306870761598255001141451997665951
437190690874939887506230322624430308046898178308240259091948016806085673161017
514083715810798167980926930198150706733783917262439637238365548720387317317452
530661568723665612122571615396794728884926341341731105809179546968037325228920
653502909278490397810335250953625824182841444586433313368005731246633064013366
269407452697444171984545593489463311133914575144131756990331444853626980894247
597019772106012528630546785240848165506227778016998696429163740506369662703719
049588507301219309494685735757893828249338170980441821174602967946675271431998
056143018819051499088124208333748415005626130253908573361229681008059754487517
283321844629731116366902282147621107636163745883021938713075316516719992677309
374412346073905137458488783246977087454364108526311965573652770543137912620818
432863829535377637273440293590907020503700254937812979857636965754459302743229
462166263826611175265436046861378270228689637902193033943415571150040746104049
427862831038388105120204754108645142021229988105744330363704514707921534092331
930224950576066112526268939334523455227618291185634287094984150879882816973712
321865645654090268122201785035075241060258303460535029720061842416248041413116
479343279729226235861537693055043081973252046839293835115489599077698063518841
377541418662302869716020398716295322743875669527240881942198959965400781974623
408054807115789908888387327702241453857069311678938497523427728302170084813875
717100861463882042360656569924187708533451128738019664245916101935354816750512
093731378834009265756101221978869663368730552363474578728289866086038719930774
240235086220123365730167514730081902509876064009067975560577974179955821874232
841505897367492462835037476476831905187271661141813915518643344782651993312614
077037944087031783657058005088969268170389904074933361990201159970294984188698
749007085241320336126066283208658121193879037142327757531615083045045047212437
031341596764212917028218001250081850258048266647745559391123947904547117339383
074181979110038818389488168928052485735316074468954119536880225101511111320453
679021562011913329980114616203393681068564773189996116261174609057613074399554
517218429535298398624125910001707070262231523150081012243664780273182252553357
688271740173182068410031037593694012842033617468348582736744041793069771925005
968598891547879314630339843059443544660011400767971566984434253471218199247246
341470572357681339434490993863880878309027667958745106216057296954693612531771
980056111178645013514574387105787803123363021890971053257933955048002927946959
876457805787090984268204993795687499280654204775116514437828349665108963070804
690402594664055266226962656252343946952058099682034459473543265384435597840786
745637242106596255458361637147806821408002707544640356996248889136480848666872
387427337780149561102310985590765071156701293185661415568234289251380904103620
549345754775107307765466713870342597855387802088780816873026141220043670659567
151300624141142310844445834653942753321962144674056480111971381378598655858012
404007785388628256486004477469556564499919508028945488289048484158322613265930
323290298969649915785177109416935830327805194957940074817135156678410163324967
121340601397568557124027948923757905940337926420921632221473522415838523966498
702580578219924856468269726276111625971221460990341697529728879447585354177553
329743691908971447029746297712931216727189072129861433307604150191605042109106
079908910786112684045358931607307140178642812430786600572786478157076617176022
332798076822864016471568286303128524634061875951748100532496574199034482348453
365796940504863363658720345829319609203829489163686114889932561576417242133577
653436863932297141091203264064957033736291941289446848785528597543083005192311
383138719304770068000269962567261542248010734581379563438403246910429607299516
389868083108063846916992101177420759770907117381362837551622897723281794559728
038141979665977789117225697445977275136378391448915541400829240256486791245098
694558142847916872148820968494994051863699610164334115579720048987865597976849
536509031643472722082730269704176582100296996557916101383161743683397927739607
719961847590597532341122423953996243257694717668321397230804501970030588640336
482207954205817466599329973172325102607897801788918256537835853066512344131573
295105288147054793674980798982276119300853505479980514000098121886322082673086
435653771730024824385371666035019191899071011426585766539635288248854810790695
900126474171587655887120245112427829874668559770164547675326106103880362540100
192090085252642085906982891605438723118822717139838484667326836037671909527928
015061024452131209694895544784986465771892312621241012078103707065048919389139
992976368377607204355482003218572245897304710881346981354543238886485918183966
453823993775788213972192343852022169926733820978795610373994781084121685360701
306185283846570255612245283707625642321304259328434687492259461484766761530595
897698290954300977369973193236988265725028052699498023036593198108571030720423
995713042113970286864469213955485911151311560575315006283744601490474907709694
948212207374141167534341013415886751061845519318337762868209235899213733993749
397298005504559760130700293495623858751958821197220931967850848675353776348292
648494041972691359775533085633922165782437046485587389662836240426263795141419
752337295432982885785839105467549278963772182893564277657815191434673200652309
150123450112343204100001900556243293768835692972757065397834999739287138404659
009711843132928035970683812717877901154988896794559605958185691386536483441210
803646852543717907100937714394767096054088202853548694954047939407225709626009
515308878019362889746141267985886109287218652568789526341344535730848308510835
640301293235495725202383380714585500225461087667904307306195095211849958923506
409326068122209540820587279129438696125136827929441688781560152817413634705851
538323283424467803610614605855116065929757373720732763422204887521675188966571
923924609458921647733387977753338593369518612830014853089051871123659101678679
319658374867852285566996578256326989267364419717296240704613539241933733186661
940990962310324987287461508194165752089164233901979168565951690352323039885734
336361200503322931417834124579150594172390933842330230357442696046566070268301
251685417606342258554319722410848251749819574443934656159212524703710482471844
575960538665239504970293328709067181872418509908098926403570529632356633247271
147021885436818377676437004774619140918381540030708115865096204789048173288412
646467398581850405217949883089123958189491889828267800784411724636837963220439
130517295296115836945604060178259020296764150974022445918476590780525775045740
843115111669999986853863930913241065379119933091972258618084147106828884929092
405545503235932248876540295957948363054940319332814800041280821371168633854069
421372218177950955900660264785179979070116445445160664922993538708259602699577
294998188380183157894262345313212372306577742779374743842819816646738658012191
580434068758027087165440956085344717897948885904424701269389186758178051277162
762304784597264509027230197651064954867953677980795487951390420889465923740196
568255056708275134237762264841621772599554612010963997107968002590470146206726
271423614610619029496369694560858246304778755516591438719018033452841298835650
536683703904314042730079643916772372597709507138025722167537328176283325946371
408858197638788952496972428133006194642513055542780210129074332361864606482477
418344535890487827045789194266976983538955774013134550545372353876429150842740
387992716513922943402751754309148599636194278316034750558198969940764961586909
188737538192171617206327576656006580126228142455605113368546520732844505442707
622596402254548791603786408787662276674066900508707213343319467303211626034864
481065707153851747196104514922104812798748260773381079097220120176924590895856
995038029369865847526507317521490830333906368829487744642604205155625976865932
500971144464749144549234841869315942761482886761316378376317627404378337187898
894326042594616394997274436400078481728508575092646730084321097437159777048582
231559016415317867325900154288978581972594722007785518798537013566008459777156
425416857202818898573879655463093443470041865126579432393043470989438481630116
195288894981209360122529251640048207543302855197564641505031435365714853194968
313058985022306977219215992447555565031745275949591169872802226710399661707314
482472186380659109474943559642062805095659499286890876604771255026433677507045
271448149797999299810884562067031386268904425407029637741083142838711353953419
009351476029124600613812801153296030979401558934672334650406262080594261563301
404340290151482163025260479329231496401705877280430369305910553670400149646373
043257225814204980732316392294182385342828985650342728555807919129161719099701
448181134227396121732151994258147455150142417108414458308216319252970966697649
111161666771451108074449829076236827038811194223014024748506625219861585205692
730002201475379159194907301262912071795189091327006687260538283034366149576192
530655471831695636587796935924420281094929640266194114835388682397454698910295
778134276006939232563992179797864553646626648948821400905456613509934861276772
879803941881332092239321142205779732421435573905285912784720645482916018260741
484052248941664149817670690837449187124725244181802123232286598635664621390006
051898761290306523871392706261266465035494236453063963249493647874519086535572
014685254278855165531435882482579730362018267648955339672839694166134530089693
228849268674503750072012426793975000045983379030025085843431336886059790795567
166706242145686425297834033732487846912974721785134315471168208187560324783273
813080561160935428758328624706084429155761253733216709456044493789418945705103
127366036506843260231603456827874657348111351748843360485153812948514982046030
940467299084741989576686470115055573091707481099254413588097115452498994755120
837535847047226748727830852659577965594315418042430713383410044783549663684802
010186685213748816356013078779144699238076194539734716025296081210797267507946
165398723821851314906589733022252920126175689493884141823044366370170858180161
506874917034407061679134588404064345700959263382653425921791090787696387259193
214490527965369806573309192030725949712209202408333955109000363573230647646052
787563271035149520985640515972795508320598375002544133315286867472784001448486
178378933226204939573973847649529272085305545277606395945110169911982712709690
603132318368332784315562523802923923822491127105606613121512252222356043110144
501638126568022999768500073220032862649553885857312269717158620266042397855929
438707008344948295094056932937246509223958477151808310947888844330423639824375
067030236073771875991506947709817306990691265370456608986939784549636156988226
298539074269203213898753039643857423344180080833136552955226387330372740639151
240282709432414790579749638397600225745232629259401509700609605822612895640666
705582372726306452393690073429653145970710644310531675284235919064184503908519
422130364663793356370948557400976890743367754045254366935421334747670098067360
755813359355907805793738144896145377887036005162273796788418377925991931330541
724627070237714973127278254160181385107738245556294350105863571163976108684609
242761989996416618397694069942343940784141993950978731018030202792065254195425
208804172741024737935983334468478800692945924326875103774483029826551387393408
966539174345802177362055155308038080844906381325115585914393670231329529202022
779198033081179367267481053310966249591068719338766128478421676688243334613429
585685811564868461914547787705924759523640185220056677736399631875235533388023
483371525521243299363849672936372676787220623145554764738630655588908796478191
019698216490041486196357691359732459541722228153026771512570961438964499981264
803482998528496409264582989504776019902372481867056806249192661333263924128847
749064693893524609997278821215910527516692499587226533359150301389441053237030
071441589816302066271077515758964656846124286591222572494921323478394891724110
023092750501809893032181481953343634418012714754342292491501851637494536645730
279438900901194438136150616010710807732463867329465594348410097112289401576703
587344806830360294550526854404214078720110223847649582953743597036406390416204
289611775370398639303718781961212938298439493232220884424912203151402392872805
462477845582575941641757076337322126919883480081585322593925002668413568926468
285215121951647908165185983999578259796967470065845211713315336855582561753341
036312703309487325825978152655149953286386498290525297140063527169252816940288
483886482841016245481207954818717808696662781951291599670437526223912123287346
389604182337768638094149820242044854171109658596759807218415847305026331860385
158551426094535698202745825113533323621954701994939770058944558439475856773172
993086147816476188019979158368734850043162122251962368582326223296129985742762
926703616410969667255121724534395688732568928603916602618367625860034520201723
077196118121977438096837898933384850998296213067299650158791583838209223655762
131492572169837646753725736105769367433191383203196072657865670302189241561031
155332447923261626955434873453446276080206008929784610908111074403479496263718
842527581782519378954546790711354310485250655878699730708885812580087666932806
585425047627454807531636182241723680454113743862706569237522828643535112043703
154810543851739492797444107603405683126551932115968207629630207519985882101541
109223377318419505871003087522239900391528898684351993501983797594458161133471
904208583818651882100559042441232733589193599650791065409834813434608096453871
982958082274190259156427247749017928191047415592026051763484857382573037886459
926886472666009326786291095982634498785446247460861911293453968320294995326212
982164172150541358345145032694506103983273734541230334399084956244448545840196
232434206278854166928168578787199484980575075401576824787119978966146172026276
696740771911621791832928835909487337963124110532809033309383014008042449594384
718214562628543485954423475993477931129878358141183021459991941150896356266206
047382940979163309384908613050745801033766517979236215863622884212729156940450
601159282903391332422827132910975898117546228731491538980682407561743624551674
869248460549818938695369146148889554102364753468165612972196630302868379074767
922891655256758395406179308911854063721282884440293610884974961297349387222395
917472709968252182820166593971226272034012202173507758491475262494743449789709
808374178986872589729565194583550587201363210362928722712869808381735660408139
864500878866980111002014937362700820097358853369686035445422630063183542588644
595611323164391261214886681922189066525421993463037327254237576297834056576155
683056344371726448832813883156562254483937528862936488231198705184175817731810
980978651260008675463973274191341584450433053846998398180498855017214439790171
390408542409799607337249016136541083085475304309318170519677621873388956678827
227024397951425186535646452809790304449534480870540796052075633004382138800243
209954320519610768214287996220114195136212079432474187388794167226116955442947
273260130151553151559869331312664051028570725591321333317910583796513558090892
898093863297080985588648490380250347463773275362417147907117047777036297071245
689141668586437157180256651703149559083207639826413589943379896563516416440563
897462501700427909570624467468866698432542679794699058153484258513367832669437
893995964681095617899004546984123803803870666411063693421683569751911281040367
988672455733244341676401846328472895692903976036088149608877881287214404747121
984225077785879108113112028398039686430804906171829445180414642044792533729670
613077359441567159714099802092041325724075935638850944871013844828013317453693
544964541778214152555716187961421361310731532886801171810943389701588265211665
326128802496441539641631984041321573479796276949066053139086262687069863720968
935716124537987199438426767889878351863382287411473292913970799010943287966004
593969082714569276153631572839240437220931966753146857669815592176555451701224
613630376365630672762504526930738886149028634152403519505911733367260362878513
577784273311594374193799222354480467308414475380096601546894063577034141837125
631186035060956517625547559145755939766164166992141757158797222494002457567881
142133174420842145822905308149970596483387265359549919281623522273182527069815
817867340451799144759844536468475856808373571271506878466896987283874957714589
952057092880518456581061775762833291112973654245956010001187587854231170171403
476341966849146297348016725253140891680383160893795633667317449807761044204789
425091505017839725507385210349583860854893385049237472561353113898182610659443
641388655579099820583439252098258767602164681905647279526758849737986878510407
293205184161955932911429641882387018888023974096423008709664716608454774399307
237668462576517241578692407192607720344137391679751656423165686733598207955417
118281900526733731087849152102478383948413108338907153402007009368303225355573
099566956103793262313948367480885973326570254979758556472379218489908211794246
527529103178060623508633885657187182062314428269426050274823785622569492768153
610495863410531663400896730803510921309559762654344275460321109300888986216386
442247787136904582602673588942761586663702357225600939332582209899143658470745
522248844831660880960483651164502058894740307410962017563795866523393032914509
935215775243827373854777681435408599440682081465575726713682398813465503716820
007690565092620798782585501013619385715798753935519933149307505693392496721024
326008434688166315113138066544083852301426176134621328683388537037240194350740
926975958818453735935481041897281521499782601561731192397412042980363114298026
273850504774802847663181873279725850746665817169139344451427063160824268102985
150981529017729958473943142142641795432090166910280281478602990749777112239596
312245040315915334191855904552550589235106340686098665677071112303107336853434
002290557003060671433244204713385004317125007489979077513689667117195611464879
639583777738106710882776747141101640630181392310170709074896682013782637554910
914370806700591496706520950410174780803650869096920869825985330527665555689405
806496446108846744653339193454071208696114322127884084993746399347346807026056
638306194912201247623234074422942021456753364791913420081355867285702076638962
177987122101308685025204184852141666274044531200182047474911587341143155885808
124696100576123056770161761954766190609915045975976306260316021910602030218240
959316361257710777675811950642715919565586765599656788626985674164883274487798
509412936190296566472843515319248999319409572522709237817199720215518640661703
766247352361101320437274074955188224890523868382872597696799754210752322302852
744434843413277978706937845683788839574642083725598800120528214453021238515517
478784754363827527748222371176459308523650475368350794564235070679481108301317
867510490998131561975955096645903143938156555867484837814189093264630567184715
328082749088970708273200553607273341839068666045608348010994347100714501576464
787618533515455779865249824208651465672657738832978121885887780649455475544444
693431679034544183520706538615779057054242965314531667835397774817872770372912
083736613185112712866035089585918417661465017927513857975561606982125980012304
700985306467741298223521348725240954181066947841112292310365757557742581326493
804509878839332505731345633381559121430232788831618078902560423162816360374105
639199927822347118050984504481080164985700157047677375130710587429455594800117
269875589575793046004210614895043011255659197546336097060557526043721219291332
107297834863952702299533795811034802889391596915999749754066557868838476989497
150623623699575300674746526239356747864326508142434302178810089605157162886822
874700033704929152472035273367437284469932692147133551620377125599557589299015
446109243332368570205068113773336728054142566096738065982714280255522839187793
113778301415390069456439075466518009693907538736062601869653649770600127041225
550872545234611057165543068993671956102970219998443970570493583460437732429562
107689575050116931709642198842761526776054372119385344170370355828685484542808
525653597513541188601784446430739999734349403668140812754526262431613441988272
179046289481905548337598152106305152326218143494155927670065138398221484428466
395205307662992677801050453327710203905995105283071507520326563392882161545299
041792702339090878477234550434504908071977045676363500428552966902348747906124
263470677421532874378133308169217268904597353239739953792213992001916664497056
591027137804706948340553329549289060612552223535631144738824437365881795615879
555684552575201907925428811588467527229201452401096129695803816719315279760236
360926288197765001188659087034846017617595846782844072997232372923670806959674
634220983933388383047650062323434745460708832143688480278861373158035295952606
620168109710772208248360856978769316201121215829971406255878562121833340989245
044463841741443543084959799761918409922212707416087080933745917299228069360914
845897924202668136415133824426855397828934800877231430174338831324832899979311
641748370181148007077109858665918794344134637341865483223780278973312553421775
615666939671395057899895678692907209865901037136545101304009066271297056653749
749353105036988206066284636804680621159748157853770409690565814504025494612308
324380385857596601944259221699343318912689855727504135362115564349876610010109
129210247472832861828644792653297341782601410455295205417766022081584395244164
951820071692984543815933623259246267489256784725206296272568662180641637856582
274183339410199884487824105765890619864188985152076406381561462585302183562835
348747662495239586304454303312785668704809515919097894919731630281448271910356
551279602137828971308731942602949896211519887708868754365441225966257725368652
189960128953524233707965650213636793454640205239688649904979481987082205061166
958804755593099986291209765075691566913746990046813688315748264502356069209910
037940610603380710033238162258358642800126895333711427211662442701455198223539
769112707005339657891380441962155632370640878728813964672149931297114380324520
958829995430599232942500079966238920298968478388642979835726097103613416035953
289911855070606860270357317511072155474774300012886079372686700447958508698394
072548052345520084541358394111292039089909616135208908855247189491595978894469
649264732577305371858424149895727152778811347201739585207232351354113971311675
515596129847568565278503539727753823542395252443724230547412723765181390991376
816473714190384016227884794627994995593882798377493327732446689553249266037198
436210304819417702241173981062210514936778705476537105883344973002759910428466
603297749766409967182411195245398661231249204986529932183801738336838518302146
610493639904321830976848456868464236942992717545148655952319617788806182081925
102583076806419993842310835574213268420135036566732798209798761954717096694790
755772655901486667549261028391871800425523041891016468396352529100325838598039
956131192216031861082873671596671550010336109898046295969213882716287679059267
525604611127151718895033643456458365434392789507760279265679170063243307210279
206833905432257005384122237076558805027511680948124460067560015453710168212173
465755766550789163743562504655550185554200389807445536086826514550890534936874
752461457243947178977293126477388423464861132947797222214743269776693138139610
045738051954877478102523282846507433445998744504017717350188495547156359190960
324294473593731711850642348128202281262514981225043914389767527241119898753365
501238475878690456550313919111058423089331145259187513587123922858094607897556
876951420553017511261223861830177195678334836150843481300077327745581976251428
202239817668395025930024472693249347744172744120538085699980665867197820085775
294901503122472756042647758604018601097589705139760925325342688502225910738307
086006740100714435023852309505333392937417575911332902330544503600412338922213
297068323871888045940393468201118710842147322897192040080223918939437287181224
468890351811072430474267325089589444026506232629437787322336108058202097844912
218705384986930484007261749802132235383281210323963442691975477956092771318235
602822288920380684758232450493043795912766355541380058813048715887978112377023
104641473699718376968838307909366876676278393615470418847112478859338247915701
705034484156552094357901177152217302395118146590243055639572054890647715324033
494396687953744831021906042091753770652765689154308087131712820378188782182848
109421505860193255000232855811459019296274301984950608341425143597301040331187
640128661262705151045813913955120607622068610150211149489983304453265483732342
086996853766190280345778359786321120842632841667087559845374186240431762841106
287745485386012072498251535552773382299042377066169420369856277796654587751305
983289834668460141440255242951872401676640683439755374964248437989182251798852
258812025165852715023864969004726782357480646632895142798524351993577341962248
677206949116027307131690783616197492499991633973990680932305133455651540981699
176901632031038374960528790221589732230052938591779361146013217794865283048226
466802085720140889439469635226592810917937278244137414014856299590841333457092
723887565239930490889017710531207457472608461537511327815241154859766418669997
830975635943536141914366823537609445872012978354999871494342444199483224631475
456782271085263015647453087080338942519927754421570544568826293940985667598690
294789785598710299024309671945748585959252747558770698086547567729942707220358
742932648972222446778367742509603561735653639000626067448134711937907079652950
159296082083219217896733893063153699615453821085395821638515252766328609072697
539002666029141420808697210728686594810473147976238952469924177358600880355177
245100195719746857028019483212029013827716691751601698748925255759155426692069
799188803863855344712389988516283327888678363077895591324873210498450906333067
617028655126277956828719920872112398422997140348898813733514056643437426833337
024120952156479703052957539439084848417092852016422874206711913426834174872527
932766507082113102993247536289821247054353386470927804267289396821575319823334
847007928786719874770865077402362330173159583890756712625002633568470776269960
631925744813968014544716198920066024592145026544601704306461046806894551609971
373543150443438074842103147982285930038542919248368321793795542618111439752476
266711230247233033271213563697635840641418522309319618407571636437956903270471
603645604415022699869681992319026551780871089719722140410771740565860779104068
210123723856267884503688261756066949440783035536460922603693155618975904809730
546993746809070924924482872517817520603352453555910660399596397594147637649242
028685642158339930277802585682798555608353787505255412673003868105895167643875
249016247269559120682877257710827959567686911858749885178960065138663254752859
618066321941124407135848623380934243221693670831692433103472743261513686385368
709923157227795713781013973025079242886739371923360542184141664146025519544461
960187875843632001585678828130654849781758718452003614677529153727810810741854
405784862536450932156036569137423531835962029074568624649341953616897101644983
934802243345982826263340356415778462794919819871522986027388373507790085018721
947698178799016986724235002287136788395904954225104199403722227238805099547697
800158514009648785163373161625664585216143761866786402937785140600152343545968
317592645150598466863505528057271340938632665521677439874821531151245652954164
133777264294892169301407334216632410404654368065137901736128149510524611961956
482600465727600888684378071830088679759911231507058865683754390661130699084141
818484287380506055409015196594789140946604354730106907246310319864563757813618
170819586248193458015650041417069352093122744237239061365937052766693781889767
504623932407032686973348305942655242122975887272319956300275456039512508464693
522693045937454509319021760694966620121607908986305247204589961141224567255273
375518551191656082478926859528154318694995807219905226764718513657159270517950
271476739618011668121044192091987610499395309148710551483085714794944227821396
249520587193984195961719210179852111357069921000599657212916011627270761113495
189775290734983860226261656068205037733391605254377037894696859415486588485377
990176970852510886127034634642327026440638889945330889392971065244820479714224
001119783189103287147558259622075054310581593129428068072182695717040935984924
968598367890758320474616747195411640441617930631699881171237515083942090223910
592833709912903446837421586524296590844467660241752202683958117703900000147529
941162022626739152440315269395309880922353871035778332706936682444326824234516
107538016731809210241806659102301137023266318655612753432644543043371763552663
298957830645944414727261244154442262828259237238459257037190187137922780952952
557502410861478554908616301236533432510718897238622326230378391133991772579510
440108023745292176920249906819188495122528836914238601575793805553715872473679
245928490299045939269257879026213770170549921199430401295140877435838390855034
850420217262291453284964603495023937796329321342621949863094232536146669140931
088170958643177018987037062745471956547911428596142513723347895386127311635982
798511666007392152008813555459041393968395933417187871878287640044962540590993
027565167191206156632606366099013932375897747079443213094325240419485974615140
040567520635714861178994442194184940140810844716747568560664233829601932836392
286833012027692360697237656506792366615106531388339800439419623596461497171629
241763663862868248086668864642410335351327686984706917088700407734666295431456
938933545477074893507360700646377371631978495568304873277269189647432123777654
229799819439563804527788949071096001913180939233504172503056089697816051837467
286467782475817987665513122352281914211290202499211119873749394941218139754448
136353075817481323724056738985201480434716698231874478035192248582831552660313
209718271441618592571892559520141109515185174891270587309735913491188624515109
571253045188329774862731325398968356030049596131462955568870154763452358587441
706301495271826040966954879166313815052139905355661396297972607812629716972532
568790596760237313785666392696163573382919031424565075265046058680574188563395
399681066155410457313871855716352336021394270733054485119393555680102169038077
947579759809986539696454308678205607031848606840666576940004493452810060943883
537757170333308262960596038573882196184716917170298354261735598099239193896356
568513401682350966427029987366318040409007894751179295004358919812530786513549
352226078289035168348342842669268557510895260409091410131983512143681919238590
503923116583383917777725548914864224425254404513278487612725083597335538211236
611954115583607151487008903055670085996324416354879609796293094030702294117504
038741231528947908702998027343721684575436031759138737670832460015267193245826
639438928080647384812215859132838548184927501728517494184463473018557564745177
230953109456037432269046809565724402686242946916583010314061667468363743798811
190038232827383114665523444860348864781298946057452793090995197764774518727009
279383689094015639488709817277537162026794569300071681843154202955412395879207
864065556038470815673686602794767332356301289057806886233856944514325749677742
916365189468309757003779580542066107199018653828677381703159997927566880241687
220774690274209507962893940048503402807030216738616054022672981674642493470501
430218334100779406438229942515043804028001122959138667314809721006807547993293
140941604874710518081489899499426142716856399702574939406292641431883744382166
097873269679882437229942176885031037759552189567035029432857560478208872533880
089871055752021077466600248154124340619047609287611846996894036710941205896087
393154096881316047435086799394246418559565555844881499396440571654088795423234
390635106709622570063046094681933568049219258683354051586034799840043323025832
756009724239572619228369367059089063997331616183665076341200142434454276729999
698807422222688830474456995418148348767633481414467453107934926166535967595549
005154332498072242566082390912647803699511987846319242514785566427065533768049
935216690315732529367874865509297496619270384438315239057191994290393202841243
731312204628097553432592967277966471428218931112809432101686481033729450184245
162713712025890786776866000529011024093225400123471179560390673469327887852532
316606477371815555702882290412854197127277429144837354986532166890772759854269
707241766433396488057597462726238669520816626382132035073085285589210542347324
423046595422824424089726934805317138149775978008400115559348796918551722550169
980723031323213558352511991652401996202063613144564840485703797976338464989103
082697912472830210658468314074408466345490900611724974006698316468001156780821
281884761648362331691228264773818397308814176388924925887804265904079336187451
992685777300873157634844438399514970761618055314105942908845187273102739505949
567282518108462208171557294528343277317501666036630225756893108721533374114691
214154749589841792610979595535662891578664845790390278965303330304895190624588
952523397980312637256458099783848616319048897513847242099022184635936194064445
773714365868707739090551768105417023814694209446629606999372897258446554419325
386780400003194771865427778836371348107262313832530637468320174729290420254878
533882837703096537022266509572111177170215178910255894454592215332886316097162
462822757797212545360050866879862279761086020336681335266807164739411413360006
265233222899737421793993445868049334091171195627984579098233204397999484846024
231043726056924508423825046235543844900375520728682462359050712876091920249801
775787701177218290429014770445722924247035812030571661627489546130921489629812
929521338145867096079159670162900757424329774650240490353387522851786643725787
588145655438083120356365984525636606209605373018116406928403953849954674015787
138850431472488664067954924602781688689009000048645135743705927033491976164287
644931458239620477347777822866072329048952683345912904996594744075720748951760
368420871894099743981916151928053916699973502036273296996923081778025310561457
825812936265456356085966232064455326544806877428574348823208267985781372793240
811923882463554630271780798449971192603874153577873025283258319130471563579490
280490505052133466693750689187671012191921952430280442161632134738487739280048
001486920870349511852835926556754492667710721724144836574693931875777868871896
509333877405994394027206270271686754864107080168196574426434414285681443862903
777355643070453218290542724455985356058506912563445987944310407999535930588201
017700104066712909572375164434861046253694548525789745384586313151123343435349
156187492648816386776240882675604317029597637225531508005770797187863152714378
277522289443518777501331435634489324258699138439190198027999290510229506420604
598577651023311815302593449367399389270219023200103280114195760889177896761245
860955212730620372010822683906528485760901617731222767730506811870949733839632
552384394740655366841125045509054613254342653552464217409011525852481525494064
359826500738152395743466651580470929900355133654895749386769816554315583811956
310692385588300377027496550210423413587208314215242597991613372486972190400352
404256971270673853054221085991198747494686993810005509905962461928160332638744
554859720360709611746304083957971947560376688623089276487241527284387857951885
405729391863686142626077435454228102991303500591513217274629390962441918600646
022592494306826237225737462637365989213279590420122758967008279633483587042120
577836739379288075327635096399660201193793662055734590458100860484744628090772
319754196915917903528783086542631349042409680667279374474121952756779796030944
438733395771829369103927226990028712696137615915161591085076877430499510896151
137480744094674882144522620781687565771615875279381388227981957154572448849275
802867621796003761992145416023041262554035785366694481789145395127487505450742
467375034794137181135831142432723633774577835352496884644428970738578198463594
041601748920072016997254617449954927853664995255438861563621390625329415064567
514468576717635888408349421584938082188890431000833761598139494653307410314064
156263490248691457902597832572500281153670193279909270249318260712355857170505
877176211454507384573042913855114734105593987100893448612754601523265417187209
828340688134096648540289956547435987255057576875791195761102591632450909057632
022051017881401192406394416120599511051427913091404166487350169843959820707575
536113518302562717215517440658758421620960121731345152930048947747998040118503
319613200792208204454670169825667307726686310784779771790548790151761785745735
676639453583907794269858917309589516063535385024813368284109920874671066264914
549469561385272000219493901083354937388279742484493829711456824535891753031446
452872715327132303484230277943600444555995749443958444780041358760447247985169
410562560489261493524066743749708483003919231753557380348259811194716942876118
744170026290652594337838557881290623853866575639298167916767825675772449172173
676560403395791003567601989742796886165448606809831062263101057812608074405291
240378342313340653649238300340537832966241491675093192853230663276741279763102
128848042720677465008171697896619431415741414520835411525939567938168233844743
365213358318609346434479813508142071166705959982856994753867333125289508020131
574097513618214114080612090069757931161165104024618004042948008890213482844277
265380544595503966565845395724647069993336033987900259521932169637674846654657
514477134478071690091756792538924827071601700414269299493205449838174809695451
571373563192644679507393793613982880010432568956912469485876849315767713093679
497701032179573627905156189724023499975589802095282925193477852150581134578743
695004430828854640526984340226392866194803929221089227264850796582154035173299
802208892519956770810454146282937619976389253416702803761849840055445342919963
450228202361944999239785967964131330618737567027329498446426256142570665626390
829899859039600907442259022310796529919858194489971217174527523366868715476234
798012393647954869412762292161012268128321750898837710025904848024427173620348
805559505829450607937581846340748284168072806159905530923386073406130524652423
818174274721605572855107381635480613433273489581650470277012981922007321332903
941106719619382420690969836441988213922793552455261415355380155625803105391412
129428163698274024867798654516849835700403703103850510940286827004318545991789
824239407296481760677744030372653650253728360262627088652568307875675422950179
151907904987950733349082749056820026877812269006462039459563165906902956058675
980946455026832587037373718721948255099109513502120790359232344074330727037158
329886605182041179805237962733074921793048241438381044121701037337282826649230
447511279155488653136987776205767131667549851275589006937524458746096005965981
089447307134569179301968669497538916591250457032701345059878731250553206150576
100964297066549828828740629003501607454905849244699191480481765945862511330333
058556268134593681867016152247264197459593596155620446940061256670113541163494
252405603901032345125759590051906590442699781220873125409443361966891067050703
633586324705844014400674391242000044666819705226283039181625661995858303074011
670011695310931031768799171220465257341149306907216073530087988567740982575746
926878049289479075003307109780469571919828296583439597688822077344593219059928
692191249353922115697082459766086225410164615989893590594171131245487959319607
211036127186676849433705051331218759937967692420212381433095588486723745049755
803397937048045771888742914937550099438013600259951993041881984212385356255851
904443853268507539626709127239231001652803207540867315857059736432597618689810
828939727917081132179130847003547914951799402485865414508900264653749048697543
753290385794545790338491843831797646602633341499631311675144234124178993450930
361650636497006655131443142095778436427561915846529698229519319489062600674759
519942013213904515181611660328986195096572714794991925869093700174844260244229
230665648533466652149520584001533692068164771394675210724568345734825534983229
327315485407979683240362790473610174953289111212362595736978731859970279967112
595645300138959572892987053877119697845052898509130911522516862019230841522543
634384801155657284893641108528349065781696257003226802915620850435963511027726
284842279373370801514591230897318623330892411509198268187986363175283339347657
757589429329325510161529854688272887573595845562966500883569836039449689526988
351765700791154501312117359766687594523088851733226579108893057054563130505982
332936828400794623711572279003044826633560964590927015904176872839021593384043
751399272785095282457406619529489930187798441871669571076260224165091565938494
890081612012307185446824579537627514226884239033013501669707550893483916974541
998646380243399646631370791420012283412182612815748038488030366944861658192153
133817666784027038631221378438473755513966657728855515958919876899398852436240
839988637276881295091801378921800822862467136028955439597001501677716251800869
593739277927950220583276206011289938960663300658264775730010160707748907952795
061796684814541010320261772004075826060264417681123184128724280087470345588205
200728750213283617892895244202078961284692364522401111028147240903998613864529
251468791731752646088639523694493809297036707222934207302671879657428861579328
513161732371202312366527222952108528598287912405291889219427291009711907275848
154609875893712999536633685950131825315221183077620681274347072006709027713283
780181980192370959979386950531209311294765546668302865649086316753393223971757
833126573146220737903578425109177413469434802496758166967974187062463475601031
941007737171430102745701253285827339074121849171726854170761821621311443223378
564451915663073844895787160226826151137298537895665430900506294125616716889871
817368000537801493804733480578803769102477061689644415306118382196679487694332
145077921660496569475447082402564281188099996551829429801096542994448018244526
155682837277156372168150698279873536710605622271086843877694412346109192737055
518945313222829509328413712183040904352866656395958167968012462784044287471911
288868826444309929372237507340184788829145905314662197651034227470124064723767
440410720239781713886818716764877807228578621155921112528437195846485227638867
891535612196229266634975912138075186202621489383110785298416727768181403429744
766685906283466181063670686940432351721439020946318936176786966243783741723503
863934318869555997555164977397423089690136951322641661443930719791206377417747
525333638380142917923951040197350871757821388475579817931373609214878974485731
085004662292006838729496094964554477937760590865804493049134153762591325752474
824057124993278329320076575507473695514217927932931191134341480772045236468696
352154420163836758936766342476586392439976690980855249821708275939761449147221
578826704086930366564253213685958708909638819818408377688617160117563462705277
306842073244036454452332300116157019637102238101359370372463317032743053333920
354360733309654882833612264027300814755283234770246782506691623918985636597586
966400453802745138714600297423173209279793685813882104277707695334234240966006
567206070162003589672904814019486153565327211767104785714972551301293186057731
287010766004566975677372743812968993061996562605847986819208859815311767172348
082575597135777049667765112307840736329769994918648243575683625683822999490353
254353099082146647275172133527812171344411920433363892470652298216621858134695
697584038394946259423853246194133869231568119738624584617446041600788578251376
140478840027873386895794416078281907603576962608046216139826850829144834139408
963876501854680904911898408303539589456348366474491723160144211478920845656585
895199944406519043158593656413612244036520319150743450151391183054276343144314
876454582362154519992828913534981271173426248529756623120382453878503662439611
104711055501892878360650084298971925988186706799116953761960011927500775103205
967364989763094947813874515092048398541405981365344450723965709562403286345503
737754931289971970240549649908331073481090363375294975432562964400391593852466
642412633325271792061419271509657983271047098121736464907661710283022671806880
095164459073068693918553515930651661830974186044075207186750398766624392121999
066751260134533657437907161994581222665168537695651818778271997631575460574823
566214179924853937094218128628534680193842561252222685305277461216358194408707
566137009752490829748696977640498339271862809860449153983425249202634716545641
619134205477935375525059288332651973974825238546735967876068246134969131305800
848152074653618575217213070062885089890876968193579956858169901201443942359079
360116945272298792319869377196472796105326182199539064976206894638648977202685
984691578968245362198331567357824905210769709409589062437111198859043359370498
025745882248581411118108812092167781670938257760451722917448948626871405410540
541980845854078738783317932778737012829397127528395082149717448135423516126976
751841499290085338632832489457765830944952254260661153684815189989296822286324
856913812713680528763637050771430622073828048952271030364766556186513441829871
096020068158121423889340324237374728441567497534092574900368035617134739498527
407156489271963038815952966095424270678890192370025049847627331157191443501854
772885932688014113479360744109532280004332895498266551367071321504056702719817
647213053554858121336005763747134958819560931695296714278447046088912747749972
304730459828144755894349855517878581388964840556931951674379736184604858388739
348228080218510817661247941115828471963078534376647760046743187667969027647015
710238526562505860501870281098009873604099466776095388996235864808160567603917
366864792479266952942732505691299686920889592754044640008740276443987531839163
311792887350508408087028677244106107297234703019097740955748242022078244246708
530348408379150217458214171258166213184242409985225352541757304054972247736008
236346005472047246198106785340999624730125502954701503379032324263143493869845
836504068122989128021558652917955140701596428621570336200673789186844728688458
031911039977044419553599329982868136151677712764442586553276646811150892654285
401165322959298899032868216313697619569951143330793081440374188077629724182197
103605133744623937028159541984489061391822863991109340369713596991076820132530
227127161517986812016521291030489539395069952157244290348297586589466443436873
006514892767175236747743301708526189929595303375550869889402017976625429256428
624882870474283193158426403248956240998011253561301918579626363194558202051698
061889279004472774639050089529822180857257366288193193921354111803071201272146
101654802670114290821944868096403056573976953367580627006489804774478535656673
626400007905927438395248889852545039808747468468452001265655470805627197740938
458460847431892165433661353986164464367209927656018124757850759025441205621939
440373573888632025770980819099629334386681837033264974425204348125357240937168
914017656675678663063420581002861365039012098215282123511970613128720766702038
402254750286855610874520631934005456066629046767589332085686774040316519183386
228633028817014038165225764859559725341485311434294015064989195518456982126250
713017655298359326920522958606001254986170775915007049211654624176476427596985
141607248348190920036447531498647594068879651484156935726152570027768201148125
820567518651175591715558124346678604543438375597423367864593465286651138613794
116075645856919681515009363097663976539191016866292340588441045533556437838848
980122434374965989919980394660162578795392075053437030942629297684593031518777
265625588040618113015851154311811913581779732418635368869674994686845076850463
688467846189872986261506970616630167834387056632250538773736962522841761643497
373332472219260319149706770457054401710918750823599899915419901900398269685526
485252388980575712510232069399690868724488162151157622133212013988771148675471
610592951637784226679800654065390930176457003956178500855375165023419460141605
122023719849993268722148771338123916992712744231612432432260926860972272916892
483091082942629113066244045786090976210748275992740090709373725304257451761461
203802980080685176229018267022837002514432372545734007132097731647967935420808
872340014009763887981307390908621311024844490034299573638515377939561278389643
580161678595881812662861248383129011780148907457684043738445802095880306586687
170336802716906721788714493346339396300953069762400383191659884384517655490132
663442058949640409076256673403343197414533189331996673122125122478768317260562
988543572878902415712254043504455500213718765928030626796519097345458770599244
432916428893711910080189805152070465954501450661588090613282985920936364994939
143004677557794414015314578765565092610040543978476035347325008411040848353528
597234456577176690332384215068527393609236710828243102823076167615832051178116
487419217538121942313707036759582820000783651924902206502235981174339579726090
915490032129602621025260814318229440035043709293818549544125336330267133132432
285263775008094600232030579112135584321913514642302259478423262147993314909608
954119827891792687455168819734778144160008383421663779708189621969064977533687
436545599467163066248425505194430296715063945992647092789669075739342306295513
820441080639856276000782463475375354227353060355829347866367581101205705428131
060471222263199367649462166221896127653953098455213817408899302906162778093249
740550304360329111902751700437931744955271766418554557758646717567022185086859
364712023034356463092415331452607405953874953297545970886985873152460227626320
559306836699883254265341197767802845795609904606407491235819400742719671914391
358792642646287267510512002678404542160712072885002138154938330430994263142672
707073063394330044618953710227445436805219595227039883690362574075328890145688
036769116132386240292987270145570535837578635990925431104186159778612105245877
967558318406566136487584727542419862744979304850687462970210090995461516326594
079402023788206496395322165992491565397160763684884444899842703954607247677625
194178248534369402516759876363476864152399093788260984240110187576563985929672
550391684305313888789631475240500242431901534361264156941948594310369686683456
822700977139049069862085684637700333511459649584153230227876712140254903584353
171900517389070041607047629365245510166604600189385483343178594189525689905290
715819537617731693226675593021766756270835342509429212178756995479819558731583
581783939160179446885443308982841290704461857766611573991410404313762438534499
008192644289476352227347045064685863953658143200700676742719231934256132439517
778096315954311339109699635662627010699295926448650955448362445978103554600328
748940001586450906382569967370821557693998544886265336890756495216340393971828
410119210639575058825230631510322365161544176147834450134387880826335544753588
468313183300225342350160312763291363660958492817664671126796092823166783698754
388878833532868858291628251985455219595447817725902868693760131548607096812644
712134167493177606773047498134648360447300746009178652888407668891307347191009
268511088151569860039242087926571384350144879676499064376644621586196147209649
649859777220957823427488111265168247592549884574137508390602112519084538694673
454323709619859320808727104140638722890198769282126782935124618073743501712448
314184092155212793817679701744081315953227664914409282918900675055443021166179
605128484430581168929555609027639518197032319994568208261186211671999461532731
951495624719950011076860948647423008855172410044656786265805267906913707701621
046723882969347026364655533729023531630133133961366320680048981151574134759943
181322579456991567581810073382481346035564472578146466036532845798868283567548
528862653669963619846126366232581162993733153430349598299793937926996167954122
087021477778552633835068291775553528344665643509964431910171012767053824097057
426712113154794121497800037685509923191961184073666109741487488360656884616921
000550828447448303458793060100755382376870699810675532319558993562349207486687
412759269724197472837397766434986229673442221581268087174442484318805355280472
745227248531962736034963653675244870131047146876704609612125921472883654464744
920329843074175432043059891929700940666850265996289336869979669982567348494065
208718030021615149517945319795054993298290003854011021298218075702301426230165
479972459754900743372763846313680455935164920203211960525331722805988855164841
968843009395371260087488575506210855219983336559359006429278728618704096770197
801431624428567534085802247943594463578385652449115927834123810722823875605266
926255655627668686339690933805469836839567364215257615152268376437118064634553
624733258423000725107422659290573064852783379784890368159117915739290213503542
599511998778645909624034871992593446276820054521690417285241737248263491487859
944296113617005917264455603364907420632515286152055257551693716482232322685527
586697451863553632332918537845205654093406361456477473262444504953475389281150
144650377053748563539981803085850069841936663593235100615853518060415323768300
681021828390559661536472152438830764553113339216295228210676274909655431180690
158449489762249983395772115753294575149794304457232500175395520603779433842024
055378812881039704078622300451662587353952550478342818109458773725913311662254
549003449310359308912953231847655382015389080742312158782224922954693365844515
929170235381792496431598651882491705386145056319152152203578042666861139401675
616689615409275869086012599168896300773360199479076329020551942816490754427571
802387961923634658281070028961113144558031341623338876076440250911621409306435
183727181008583529757145856610907737467491311673528154045546808072871680318902
368308409749857069583638170217131743738464512446251772690097728714054625079063
715067969070022304377380422213464893795939981101792071335263237125923286608170
920023638514005952024266876238527000597065913911494249293204488544082127197871
165000307405567387862394985247824814167894749270082241123850608132618394514991
505844165469945595245391483981169632015451468198950627076680303812027006948540
757001987590645897863611903041659258741134897085757840594281143467246268101406
004218735408085008447880630164695345934746089213288861376162261225773068099622
422090373978564241334185097981295344239513222109643068170468623449938521795673
121424047655096730330624263400850894933711395002619099469231570955016541483153
110441589700053115634183107791980750754547552032834807630066155827435015228083
438687316279194691910633552777385981235182035668020038041390762502186946998698
794773169602966598698279977119818946870042703485472245202522466866225374493736
275924302972897435795647146380338962248794643206493786411892581670927983522535
608047315492278070059185565456825485943419513239102527324353130608147390374687
604742476178056984953478413543327443700201045367228283357779867660398308421448
903446272752355125400716388901716148624138180048071764391617080444009605721438
380527621675841829509566206972636700154051002403426625739323504460271886994035
822298146070883044253561374742819125022422047857111452575402862283639183967656
870848079659048261699059524425366664397988279577460100673309708931582476575672
540839729646305194492386085870836340566223891131366800215054063160346976304007
026481922428294258128441835771704981778379887968486116052925198313320278037113
006914174984420152589793635549766626108517603551485836081783564991457265423000
150257326769170855291763885112420640873778326498619207916364950652649928348161
368744602262513023896219677269498422729808199097832127628028824329400939914088
557352371993544950363325309066408393687828161093870354161259336978506544617970
298081905626779654245175740077558095718790791042244189527305669528565356992376
159660062929669841367780223350383043643826240946745472786765851828758319685779
709490226391938480515995179964860061451750259660965183490800586821885787066430
936839764888629672726540355985120088209479964725659089022256567310464189611550
101237426560274121802360452807251224754361459440227104590311380571784065001356
529965935503267247190548323586766395414850084778870085747149129435830004142479
826188236246890983795593800412738928943437332804598111501863749413027450540445
868060083458752108260420206009522975267461661033295397372537677153549487934908
320707994346984399791525305491390656815306599599103704992196793792757259997218
661449357877061132411135396096607383689070734787980685051265039561376308944514
915526484860317546033514898740627243349449073823392375419443381107807822689550
684951784186927277644388057761172741042679724979456837952757999708190554815260
379417047615335907541839135287450744347247832806435385897696562734276318344717
568478287912491073452527619821811275373707036011413379367440922416897752004038
580742082936991734045696480736542457025894574706900204622196087864683317685843
761541781623316741523782830663697650231228191836295230908105580037682471743977
577019754345176642749825573669865842313990729019240904062982546283228517416264
715578184751318747701735059109309270632975632528956207379910164356565494828395
855784729702369264932414955938247308314600014345927584683085264629529659627472
932207591039315006653768440619328815747799004709095653599233767048770415668307
103188257662846564475554147363123767417732202639312549690912866754222103740430
885090318603201867176758925371110807776814253384557287571943668598542283875824
160644838069777533768799610402971414482533174766319128564371061007416525904399
856531552504655126405809975256156376027535077329828947285788995616787263712912
938680646808034424102493121320789420412092743478398118147803793344267043388952
239437251060854030360748579470073775108101003760355052977861905544191313565348
692707971671961580299011315597403388379391774674579708144804629232551247919191
374642321386409816335741133566681825093724171203295627034344504221576460867649
409897978495486327160509284082961095713972028217434152664599928976967800609540
585811538857492878313114495961801223116815675246057241117106186221681148065745
713095159409580790334152021102113639139207608347949815474868810972179708430235
680280919228942162656855451800615504549438241812935273067807820710193776576675
375746158648728341120899875015484035975571687438554499163829063266602806423278
427160584644211193859686119583343791049242713333015063999314337651455839872376
906612504932497293453017416192249503462858951518936291420353651796240939974179
002604628912499563561090306800375562150109016857069131119196823320386760636969
140372912761883511997067142047962656382977765882443973700165314609844647625155
979776023025349061912399131548957746231534987748239160779958168845148919998652
928715496850015161705898962371658801368159535820225119124396968156133896869999
232200752102147599307282508816843536799742878082795946255351290855726542245451
746397627237448819389098752818513977444209710279072607332498777890814982595658
231685979422441935956772185138428626481905797278437849596132463400323758694442
238646300315858237977256110895184266021267000385050832571071635249636718209897
067676488115884170793338528418747932748415430910575935191769666048595788261490
594350412626371238556198856011138944144403778490730016997317471363931595484004
972436317114059733675431795498196860601796297494442228411440168498613866565823
684897098826894322290603324689905535002042817213875411379016194000183951676562
496224731618364092805209256908637279791662922684863885209933376459397185125151
198686693633449889518146040827017852527104161201297613728856850109654318903641
777587268629777514627267770447899524944698329385534815237886678953622320291830
894701315244644906228135857735324503392050581489006802615484936490933619039591
965882790451151355729831246372803205260551906780512386475188832363939199669314
140132635824580898151965347962160912126668977283947477785997237986739536269909
518493494564671092400215076644535573938196665037376967594523389126414875956103
303704075158750084181282996138267659928482174643101566642962520174221001866641
159055770982888726167064051837300766081690264118488732777693690837649917975540
389140552458321018613391061632521248018831340867616283339356937993579711799250
660114274053747576575297752743244346691844541559197858612944101191006066124715
991201055946654291654210047476516489087486713608448032777540012564011537587012
339395131008343100977247720350371200813931061305459072783328759076260067938302
574670819975985269607846116009884019905838160981017819086718878155410778814396
059810891723799162352833110818371316570142968569823218243629754731289912933187
231285268960858217111215503251412301297166706535445462747997336307116778720757
562060937602971545607589599649316538348459817560488311241804296636486426633301
487612596438718282216562871899822458490824696811762791385802927098147219313945
660114214383985281804435947802190056929767766324243620327283749616819020476020
474383998906647753838441531537786109466769233281160070529142778663896924401570
700077998542579155099830864220786175440908990263353082429265656211986217954171
516867512074317597431425324246810050392169775064490631431993055340096448975485
270699178179476622246086919122324524729318153499809403396551840652673161451686
803637310258532821767555003794255998829411881692544704632194201378686351024515
800035522273124646277780769778392281113005553508282314675280235688479748323163
969056988209702746898555505347173880164329358267715514226675749902461067329807
265465999739298570565909727209420300467245119099476228134063220968072695085231
386404252304054090456991724164035309322409522149733302127191561553177330193452
884311182225778954652826889241516059761910176539357892413223137837307343711733
610419032881060446879530987421254582646336130599687520878248349181809170243489
679066503125940460427976030065436622057444913009499200207822378632112885454801
598515282530748715777016051510243528107604025362618958679602642201357116513812
519296881877009757150746996056965479127910962166742112398203655565898266263764
483717143118468669695918449098978054051105042426535926659304937884019096624460
862876378602640048871283100567599418273969417830180815397616792926405844892526
307554594004026506753178965977590760900241809839349006919941490532397521372469
743412710321017835388833557840789217983940178777872347501054376290606907647086
031425394920593631132099359901470603709966746313370434758575498093272260196850
521366093172850203206583336465235628467205716825807347316047035465147962944331
785691405120068195585965589243788931958227427503587993954787451646048602034696
148710355406661872825021751741937803272872825299006687045605742252112566819345
193188473281740475174282883574216203034312091096605847726889697417690809680833
611691430069117949807323419696953383870422725364400890100409847096913235872442
209081185918666740916300114181147089971632688594722657487635448247278526437262
401213399661641768617630565087737737145640248229168593817594763262940992357601
113667931886558500806176091268799263115209970379271115890688609992238508044062
042793973645957282164186601943415411051416008996964699045537506227173879699338
403230768953550066596476362995632776205104069262664899367484466855319032927130
269865546239638095298318437985404089469164956037758444698107820597020831469837
392402146307009701712526543451364277721648730377716242840287918049819933433001
617537967183577614923075166582069826627073234476538575079935848045812505537408
785256510263057664701902674081867775976744088557254437844913729893463509933336
482353485254714792904825420921226938920281906105493074700514590971669086617494
809156208671817624942457424269442930936139382123466413288565088253114743956897
002814519905264703816403419487422758071604346746213012279338537863110284856311
121039592476732661316523352919843745834617561373850449215544597761515997530184
410133582606880827030285424351054997280892841386413071146113658799670123648631
969989377940272559410326005791642211768619793431283474148207858899375932820728
303004030798545047848994371940780015257884907993527080876740353899478844359930
792793591747294132268563952860451881461294517817177043226316735149274653741040
200185645987908223253092976622603932657481980779499752733638888617573971709226
646310321919967997439221107454512514329829463422220202357150100504830236037720
657768091846694680213582338840067643415740131481855630483868522596568759210331
359587801312135249854496114014567629397716280580480584862253326563744762491814
182798316080583845099740604804581644990264298466063766009369675550628667574948
420349033534151264148337087976758643505365230779409338804412865145045930151233
492107957559934455308609196121249113439368886858772602640287295128806836939271
515048312160655410862997471009520588311972051241360933334554213415431833157470
908811371469598845035342663444424907553541688533909484291111230048303005063296
032838210462957828107732633831535485926011413130234262995718477959057905545168
551692654723689800880640240581672805419543549549168633397549742571327747706038
958762462135380644590899879742341681970207283931553296556977978955201029400950
657735615021883483183299218985744814229367696326827117545488337919708383504221
575833188100394586156625133405654753816963365515117759142594729281356053455732
292407923491679099534388937449621762732826435730414835727559998365102527631555
763404324043884974790991822657749670235936027966646942312815872571451764885720
852613800898209886522193383386789932699140161170312421976824122105722007312047
347077932547896449256600315004474444525203051420024021580332354608871009140229
919760258217478593610599344045685331391336541829499048050856473951317734586567
509041190930802331189489414260711669310870361688899653500407075798370687728001
282157740571166302391967865943122943661616801680204906257352051710703969252447
634944495089139966452209149805165724423879939814048804017350035226298126004619
663503128037597704448255155015292633804891398266105854607105052936003138566416
453233690651123239519165885866519783958229919384420948516525619404707331348347
593999616212769408892826116541658216427281483162611590269332878078501139898911
269206905078167169159411059904616134177507134872669798339969656625085126096706
479032482516426402041872881887800831556236142514536753692848586321195470809036
784313440137074858519226165504743413334662796449526862678711267379172845293428
327997180945272759363933165033236849014329411876604522918112182967708686887338
366360970441360329195985664911306069413974978656970030627828330380710645348198
558460876894303873753247112599862489337999529844307816799926523451105660385578
746070715786585889943091872516692685866619164890489941520518717231434822601959
307699371105126394411932319757330667269921261583406761556098336275749568458611
475502202688016000438225306929837705510130616925523392356572281922680360525328
135991907069603493092497406504605902533447769482617731454917861640305170882807
560026421564213114179333757173629044806053069783450536243169626869768763573837
208459770725607560250347099428917237981433216274229087788004765333462904933551
109663601281209401259265462079110121816708883406503457805542553111831786498546
964614036681545109612426376916740394436057267382299098569770597211159990518209
682196101216454335058927119081748851578320785527922171032078936393530436542920
264779341048582161439261189340261730149168279359400977050679622254499537691744
760445606759551686506315637123411142419745257670843370146715706956127612927312
336313225325541593592326613041272777830751502508474996447613249198978622960063
243897859321920561622206437455043697961765851465340093739536396228448853013531
118010828861074450652903296750063179491813356483717907336062632913873960298335
814507270554674128068704646098562952281229287145577258463945713923868117013162
093412968662168921022159325280067637895904709121289883298266707089546953701669
137576960533036305246498602241242610565950265678921462263311805312004170784941
878165377535988558183706230079357224627419036125565008859327494984498911471289
123246069368538386952288276652728070331791670004360461864179833512455675302612
750024704032469586274202519476157485108946052509099799769260190100081164639912
679839955142418108343509946122601326612429506786532234614650908161442061609153
942500101915311133188376034057885740668302123878038013784819967187206627201395
430020265984820522331019706601558577733224575206281028944182183191807838374621
569075992906104955234374722140064389134719073283452137985406657773376038415235
421992218302563943586249708692834342483739545171681135050642106715377855984869
882498228106383957657806725247028460806945101546382691758037523212716069139158
336078052280559425843267595443930497100557450621132630385823634590975251153565
076422101148761539137379896524572503686821625156338045080802601068324073181513
899361041911504434998810537354093378046426237067541257546175788651109939353722
074136877052168361482166446090250048345415303783613084794101898124417924963499
209745346369829050694929912756682399361906043383415061385942823167490595863810
297329787058212343318346173344036195412915105862329813567625261423159718395653
117956543547917368805505908752719828735184974847525314846063799500466922190846
766306680908800186561602013698271813089856433344955100340203176741196262752836
048925797037550583075832911124577193829320669934345921377209531063247582057520
386618615826630692052959715775965959459528107500350351447611787260951783679568
251344022256012424695096414695769433829336721620683174766076714472262469216270
913302458426760396578442092575801175033848887206479454319473643410533598541247
260444206632784473611877907551571265449954298808204882442918525268715308619588
056450831145871572657589009862277094050440089766520245497754101573206991781965
776035744034218215648374382749638124270540630231587429090326229379413763790739
043756319252701736110064011097759056707592535790631911050176650590283259269569
450046113977546622755833190653120282719573487111155629049350863110426553982496
257738521513103625299523928008924839111798446152006590758823795241155898192714
477912834942483375185511120063279581049518700607090588487698385677664388911718
834415735949145283055550032012185000460506974429118839973859440003799656133378
606419261943388925495645540154756711447016797698642405254885110243094414801123
611421850928704100226007160571792302032936110712913423203600258306114257091142
633917159271177902164689119179613414187715009424886421214346956068555064422226
497539205774225573094787046173813449850843582697312600159927022862788414164253
781809802012352843561585199051569624890993341003546378686144317487804264639359
459742727844350875041094653132987038540646502736684555432720600934367265421871
746543131301277357522215291219431959596109948595670253560148662791180015771829
947796492171359467208502115348274156100725737021042108075471778370827809139217
197562656993031596924279363960290276681254971593607413568572315823340935683249
754023377012739508000759421490650233695241630697221553599996224924845744001259
868885586781250131607839101457125210150598580270381176729661149981267790419177
820234858642075517436666461633661292777305938042330273336406977700427377321911
364524997622840794859763335702641085772947672546828256445270968605491624144110
019243443376081918698781120542659373430935955997999446966261934591143504734052
658711972779778527618487268237157812755929447747694008537607942092320074590987
715141987096859842749601611451524793348274321648044596972786167586557597558659
224573705626060779918812655761630218936532566333522537292048199188807989248463
477208886920756990969427830131693628273813468989819728113996073584122865754344
911167290853413466166934534488821904078535560126660049239298232750167974056666
058930524737347457256943957065396282196986051840051190523905583705025756908800
528942282276738171830357781744122961216379932029161874667952531839515189598677
627651465054479689948755160664285260785416526732785694132436593025368790262071
454082256391942010597999606004272072437802814691931986269751337102537812977292
556058958011877396249317453669361172864572828746584548051304518115775046377328
049732826200915435172602829496504702531910627036332783289674162420852646429263
373569754325644103048197351975461334524429338782620560220701833979142237527445
067043276657769163350566755869204857819903081828926280498927549871539167597757
627739493692665427086036795410308412357399584336183251768981479799464264496585
513765747323339012627617661636500550868632025597108782726040238047184247534004
659903895354256538811331788640080771249952469016408759102599115405249932707707
383823262102525584721691481391974794888875106111983870437564734617693134749253
981535077126475397352204501356556428597760297455567773396141720789207704305288
730059639705203592822271045515735951675751261978804555238088750973751127872234
066713549821363047036935344805948058865901986576550344761380814060815344157248
806407037838714615864885118530916970007540476894970930907742356508906687172339
915987748135865126320552030314704816521218083825898685401842425662096547048521
857506540534455737877363012770621153949131963976617358473994319795293020248947
533095991004062672916206625291027248796492996661266351783134904569885658257621
847863897467828857644357202150309750465376222411474999056468682327361454305032
561531835671011476182371195319517836377445523789971797535535150232719860279917
621787978586432687441362571785463475363377353035605914595904362234895480551640
445872852485291548467307742723041817480136479010811225493343558614930976404804
213114586990806894398547800759618469024703936546958750224420072142501699902823
019845446693572093528030136652412506577420256767542564018080400600314783825010
682501090870553568273084713092001651364549064175590552800671001542438114130141
639345315387147354750020262358718236304884436512306072746125214323053342769468
674366106633760191251929260344790953815177281617732577706840706863648816399645
606419255272869631864356529171740968077255100784894968242949508377871191892173
296034909333897663768082200140012390000394074910473294183471917550590247505834
655409965862966645489593801506521168201307804738765735609006989268405368199808
844032032267003122341746564915655006942036054602144412932783981881318658385911
002885471505091932298072208483395853006916785901009653497617100335928727852702
956284416891331129477764876755235663828608172694054748837479930826827850066569
169034490108668254375093055953328443727018687321630993178479433310492020570278
475288853173616738960419221571678249240672088784321681537465197022920590802557
148406526261818341967886455133894203880413487272373827350377510851510674129000
573266032895168268166027920359390399778962475177179958325604157357620771077081
984407449191374155037300956856130685959194605687532876674208391631756145055340
190310185670670710650562457309846843007775449388996432649825738505508941129833
098040767992957242268430700029192801223401621580093703822261053483560888941107
353222418593961251278670447578939552554290239020476607476074936667575623559043
466914733118004768905992923909557137565244768915563886123024397239711869395929
939884056250878142463431259013520132324038302991055789995976973395127217943976
667643700315371403865158999464638298654496429082394658513070428472060221319366
384526328164754349095920090044682303980076960027948514352719737400940475460553
243150123831490515175450862857293374875852336964821203975825506907068783041752
814229160686277466199232036223955676086584235345731275292764594804752273582572
024632011124202713481420293249036935665185626102700068229735035519283461157139
893260758418961842650752090411175172833046338570980046069754465769299707216170
411440624831348135133508939723895714783656604627382632847458262403381191047912
359427018316160033056916231649382104856705074669899315744086114023789996426958
635579958571076582087687925082531148956602055323513825592295521164048258811313
464994185504739682922378326635001844399490663066547281188792239641070992426333
474912573382050493725287677063054180372578040348230752747746959350597382778365
716429549278048658377238494245335508099168112161329782302795479295692616619733
398009910686706570407439823188149281163693142883236320230003403159807978993609
615236576814979750130777649715585510014484936601425715007070993150099124596951
086595112741781625720235333393523191990721579241528924117436268062440497411176
146905268710774833327448489464525739867443430393699920292411775255968260331564
850796569663844872923554000993251188965035683749503577410422893660856245276548
633972773700596434519495089934719726297479247110602426547775857033333964089386
035850388127832636807527530586039285133162305439253103812861375184604503018651
800004054172457337676650465813946273907391171722029435410268135977490046777728
390572555651070011491297285411559332247197907914882559143186365339895293853713
708274228860946894141084687945430594528709378535841068414476648241308023573715
951903018000202495145846528484887836856198080809936007993186426693069650987568
255093098038900331391803223938972589941917187853929505187538344353247908871067
480769504306799034430206972123782667984676389101436783570356331887394062537635
805457887053533374987481198197327341674013983368212516550169972180181195679343
125139345082361523545130669160458162087114430029022368892123613963902568397027
452236938593189072095131421192258080069578686078871427173020435835849473924694
207484756837394077122485626745297314793170818157636829578328431880176277072111
782301739853134002907082132409452009803786017499223551098482732783100537698231
473483752634637891068057430663521382694302694279252507243362510094674283428851
496097575331761455654035269267113976748689269430103475254813511640711902129962
800434791372651075674666584770434356333924248668352895941868288914222613347368
574015210071560504750406857747121533052213623246748989314937364744696147186697
029053241232435369157699986418096975632511070111478780675146986331090268545526
633334528104542292605118630222138860174998825282194964880105606601930424471265
495969615138131072723773637628211380436266112950242698079654477577043958990758
549465155845925996641844286435439801272800405551050989457605689529578413852951
669697974502338908561379143760029690915356665676022007779187559057338329394373
433323808935459259969774606141402513301619999493695188166056210624886423213753
415035534419729079347742637286358825911384855036686607473219288494214125638491
393995705236199759425714491318840006259927016188090434651091667188604335323410
614682674104244751736442749930602181534085286471470303569302103026602554217359
681705392787983633831867083107909915989789851803103771887382429333672835214530
999876207566444728269384652022511477547359255865636218948963294867569898807330
940558083507973365018815941537147399000231789745040432532487237997521453907558
711606215336873843299803823581184764785392814332869902435526868796478140928170
221731158169729317973493839829448508612107827402535234135998222563475674194124
753582678166097172015010465724604613244340076686194663025042591124332372299560
488844083951666642211351318447044530618968172763245500390935221544939863747712
232233374059760865795293041908837406732898998566508054324588492555324419466889
648067939779826411213699779874466846674619481324851211755637545066037269135752
891297548786605725308079835935772694237071792807502177122536944706486571437605
104848331092905863490042156990473881569292575153476614195632853649171857590025
113545615149281812451289059213070957866840922377069215448333767337749982408112
505452935430375372654937005078936751352484726132076042424672398613684931889699
461200828601852325611225626505172599348370677667793864960312393213724878503954
478140984587777222768948719051965238610391605582514727369474189611569821429591
208624507201910846210227771023520771569274353124455113227051027512065103751988
580814918759058951285436590992880933981962275662201782709305379669084113570440
674225997546824299945619211531318487818525520967988394215721013975762796202119
896389581871884617661915564273884239827088270418315085890662687433817803108695
294830185469089292017801271553797881589095900132791605098726577013442910094480
415466982445149570212132298796277632936508422378945293644569887416137392244165
123534108217465383440564401748099994844992642617068592866016752289145065088519
593472754578008490168870118184699529676988207521617732259113485731177540082238
722586493662047660777192131321201908484623468669534473535097071525530951984098
763084422105468764995674680054141040301594870299749229377675011989126832417917
204417684274929051173543465653553323114863500401240797436741402248123476022748
282217282864973645635827029943833015428006191303831573651104409917938244183419
606597388298999180932056341220713849736461108034591217092617804948210355842306
591097662360007188507591954759031193840701285830029741569115012176940836049015
295479088417587298291398603056308441659950251986505869533866275825450106740003
905991673926760497037613077429639677842667349006612124221744567458366502442556
670250369012446872873848031204658285524255946517109613741191549194567146319570
663805494381578839443997723645985387603857665696282092204885916054043444263810
985443133174590789391521932705167190196800379786038956190470280369351173559749
649976828720779569240281464814303674317426161852262943216342676384361388686177
309636637637789092429540777899901466167030924070994635516602805186639688403876
084562323724292553273504968538633054560920582056040364105356320692250675381552
387151043796935763312932291349460179623228264751817574202167682354246584149816
133856100143472588873508174020978836799355872565045610041934735776310161788161
643882821789977424838411876017726837759891170741933504099497855764326698851650
489282766163801946154150154536334750172048220319450418741375838928370045080055
045147718452129621612031743298202600938927636503027706309115508397508337760493
423925793882560140408243872957023930018317254663467787444063852288509476777069
310522962371164268286103619457760891373357174753894897019885138447763753232655
194817371754859786821634759626466604535923589777997750788982945908200272699638
305740607733804495367317291481365591810605770785141420972020621185630567105513
074631204363760669531468950813567062929251230740545934212547675069534299490910
575469344587569711437740046511936512089556863116709066347507762125218626191578
166488344464087294535710037911284667139813949274297301937583134423575558515822
558881521275198979538352206471031566411081981862440428036796551293427629547061
911629267567783816386788430690523069936319444168005749193428931358661914908169
704334913044628998344356241690475408180095712697055193964947382002805996559364
427588306081809121951373308746243117883723232689761422419543637897425075636948
891068837585980361528059756044802932050427127085221038259769340149505112007732
113084273154238242208884709105889463849282639461341579184237794081551996849770
356018178548294488099272958070293945753525606980308119450796062776088130133526
219210080834505029632370911142128474285927082512424407184688559511494483941885
769560783936573338694341270058160506533238616846059128605947870857840775562664
234553905179872971927189175369517959462308839425233188260672396302043051815594
886398778665000871567319075658114731870402797737626391465353470657671075565310
890154887079264351173796427980168402538126897836261873056406028904735723696675
409103696700220118328016216698205115409560538175005609723937444017567399343361
512549082043742225672014740064684997584586488210476089350485006910262012958286
465455845325656235435537387629770292172743924828920229644137765187645590422424
255692924237130315028185506257166792480257857938495378276326206189381591590170
588322098050456418726204073796597826260819923281043990333847693033427807352319
960080880700164170706646694026657129904035656132914453289847873811303071475033
822118467491221577652954553031929789961768922658280175731336627940491574252951
234212869779310227885293773595539632571922984287774566919972053035464187843581
149921530989589369804759179383221475088411243382624703569312447467621165203764
018961297917798438805756633702605694109126826846406449331538557227129290919894
452536650269587759208777650737999612103129322273427010786542696127966220325860
017711639025298864069828210297776163078693878101069107987951322455832415349108
025729024877399133192155423787489126933213573643537425770206000415817482765664
387435262315574636308660818013697392785599072450123568135561652660607182920993
458756817280503570243974266686356804466617441329285074972688732160250592519168
667066201493802689086583241592229641792389110688870360484079671110852252782026
589030568782874052039317108684529842292428486135133098099648989964771580231772
376795172890838287560816062073775616074918981874924349983132597772291483152420
985963566547111429434706402643462018216542834115537349047858334063546599205171
027820539536786287563894205186507701839710715522268862298103960060060691596501
150383076692009470515657950881548459960027548170208195366556223831615902043285
822544312760151412841610051333867043175497175680831297368959284555411290021624
909375092479172504400594032989308808560057506961397256542890373603572557659715
543664568245619845773280171031631941129618081139958448853310200912706537415183
548693268996961424274323459298653035459568567610550381918186448395714321482413
736385713336640580219749900679406380499597473104848110035049648741970503762067
655597623338123238589153420293571560858152211122465444652237349712741158654496
546502112674195716070557408740012353289527660279181266689765739472957547809101
481037008794492870052243727454386472238691371404224166142839178532659363275493
902935656742697502774547619806662167077327869535508912190254657988770421718284
135906020739336706973930061293882698964495402988964979644626794666004761615969
173979371321742446761602914466190843567067493697726997706874299636868484766867
814296198805840800798503573459945898710943575551565842131263987978223121657161
777461763479317323162200841959225361900470664674673522881405214693842617249532
031902840832523651857201665642047062388433785138508535259389680894055580519582
812260731229293406071260582953009733498563577904458805879513553383232032365303
280421393150162904939321797781303649464612465615334607240825619235609178137993
535322047649324261362259284028781626021047272971385497756219705190850111639272
079246922324236026673142584896076714892526432372215029441346625021292672054208
269213129325057809019600671691507189144326126731252548754175668801024899375117
423788230611206172078582918655320737090488742427393410739438621279551642976889
324343781163158597550729818034970843143337735086598568835667068862941484174164
015178213852309982862377763498589172466096780913244558848721635699842352144883
244757253457282826305134936960939573161692160641159803992599076741952333138682
425701204150737423026336746203781591586888400336151822157339975735059170078936
723480472879737541556351993125156604701832985323044755791487158945376802250841
494811764711172625755987370567302170471939675025886349046129296931209750327860
076638529299897025480844791647968264403928804103800513921606256043044210077997
135948941437019585948094050838082363340068055954327525300899890336641999632921
190910721613135196589437445674050639230667173231675373562655928388268526966986
951405870695147508687396866549477696244904267093562146036989926166851085374053
987464171415155453822814313183278807002659830735087322007121783406044599946384
352836427232931341650907789532484877084904563354182999884633105566477559549290
960524469283515527199652165882612107491590217894251347013101552835760030157187
404059076601696280274388780182055459468947593814775109808264435090784777275407
464126631882662240576937740944219920996576810454353454763804112063993490721979
110592836001239033750731711077425921153419941509596641332948376269833437076166
379008794766849532836302467073595366727176364215745567011364412341482932014582
836134034292883805237621825855893296348881057602935052732932038482627024010777
211112066432852945220833242309676579580162396645596226823596639774735442129914
199521990159505420201919635671594772019848569370679735573833427050635500801078
992334147105782547179602547530220719398636477744559536644741345995194530104288
068165809003646538120847393783340851066124544734485538285261334302020501493126
958186201720970030410709576641283185968209758228628115032781010502238731353018
800774044582302425490972865566855858492825319008019104941489523049612819902151
588476763841422700008023837640640896066403779883292534004524942348209561806915
361190955821465800900130032544260391683970490918029026546717423637673691069739
173763395358006167454678161529976758491524100629127845420761358599624028920947
032388464330954846913921461521463636376432770466274423441830311837140911011304
969138491494098210969567663434757793720880967079548762963467532857350659744338
703058159915559210770909673141934333380322832203693857609985598124522422304429
984771445419384522993748059633941353988576590424418474460593313134354674703716
198995663438271998262785080755760929977807739156187824781188643979012612737389
118946489112810814416312576976526201532953762576801949769102983641568769823114
464022368337188440645929578328421710070781569858374101798178500273816782595975
688556183479998858325324169129469985126678424743799633927442800314175160973063
659186466402176103130533220376294810106592703558481361253143454858701585876540
866702841455451349756209049733917192563448520529335462103916880230275152687575
052902690995576183663909677193889331000704235390936106857798007308889545501075
527420309650128004065881242008976261990314678513154799207944017670969492455939
669730949015537130574283374096681808401785039092908585568978061453079841574655
674737102567422708252653487112884445104770404833652912266954607567637376187765
780424620689142619309819364804420827515656650951503325761467947745152590634356
328972436779119275146013067178997460588957090881822782779341787458362198858621
614348367169756812025399880387125498944385391207155202359117546831909080706872
252811998795049757865924272890886594002436968838508908733989623761095065059322
924317919985551779106315930608254443890240866827982782437389932294253973608089
068865295361000531504972847835317868892605235965537377849325801338813528951655
974606798787103270548216253259205772083359199517881365987720615058823675057352
842878011118416554437227871674893031164016023450012308245217802884852305886180
387492479090603152812138516883394403475317504205064335521740977836026561438985
727201253864972481077712631265303872439731417401302076478317292390824352637302
058609632057730389191503854398921309126023279036570110510074913062523798760407
708868640801807154733726647563784752492807641606162290661975533093597154717808
635678947461293931991625166283746024716000195382181823617829688884798010471525
247915364601436250723797311294673504264494141146452896580156682954665657216545
784961995212259376491912520570229259595555491702807627104663389532383041175319
904278770126523140388388264047860183662659788204162483680264226462464461213469
162431684012956119666972229273469308107076690132279953605796455121288670650323
069018770323345771000474246346464888933056926133987746230104433330496920326858
946251053019100350162355219893674032429712486394872881966109182181969148064956
690900034485545057471094135159322498340858403651241782728005384564149260086801
749165125995853043835798326811598837187605578453914994843269681908667381558727
800959511198031406186803531479438895878554807815542691042396578567505029600958
738544112895134203334929133421618470526345177271506854291545676338450018623650
777620414467841895799828290293407602367294803308697181286295215305033434235473
479867460632891379274402424281761010855544736191437511300636265917458915809564
705050883607549719785750052848253398981047660744540486007264481307136687720047
727347167945745017289789812202926213381787863231985951213507991534113115745281
661997145573142729158662375607882299045202802275559915630650865080170676037072
402146711542341796560497514757068794439701803051479233179618776395621404346543
307911544745746712321129800878338934583299567811725562096248950863935466045495
225950245221134033585901456461002345790588029691174352682536702245864255951274
977241341895643816519174437560204306708498254004636172684981681322545475739849
830254386321996260043376799079192121880990981917791075610234139365367905926813
917340502811126197510706840762281257644805133012290419877723715042890160350605
054147794268897295948545026865629376760283171718320251799821060833520926806999
737515817588452614838045486425061314661194859911014943232779848777926995032195
577210299834343689482802714112701075212727076661604387435075493738463200861668
923657917434816530141339472220470411664413165533568792764840104510258167958291
713704501290903723066066565756626335568406199640613843934888349107847698592740
194615975501992307370568091192156758926202447092861503537359138135327742979916
414947660245302051404316081594416759565526779259722796647883968751496979940453
888912735899340060051836121430156609716655565430580076416986783108717603224553
603915770834706728102217815793425074460346367385056864689962158945140864348001
347117286898077304590271760374741597152120550924567345062143867578444760374513
292637946166341856958028816925399631503331051405552603978136256011663717175535
957346789977315017880785296636492065191421105753034137219712085429411461215052
895492328634611657299984063859124531749806096785923787908697234201396886073574
945479628302886712092888178116448992297870923098187371756330839645305791705833
670223422209565116273394519102688609124243312104639108667186552215486407480295
690309590494474037641764165585144578980221330796582322019547121984060883842960
203297260856443588542673384303608186036895276796465003952609682711145004309763
884705956243425415712230883094120782237034229699759297437399637772367912991931
827886026459311521947847876776989283543040096900306143777154019274597557561450
204786818459741685974001314852950102210016815805987347303862525401918061771449
069655877781458322198060734851605648367164169744650966453109053098085216152881
605999305155673470190016948901495520078354209775106754308597237741095069885003
945685485076868905432689693797998500525195159612416228011898758819178332970632
821568975399118754544903360556890174391496171898910369025997461250088016587943
466852790729591500664555173029294828993337277776037844986570224594247197514292
859904657029428025925235757498562322850688102008855276384808693699057684999419
506944214919455633116084748697984147383314664077513203016644901800336913302897
768915596950237897076473070064390672849098368459795966015591168481363488646916
758339266740132962296044568582736029855805764759277310828450038487922183290694
625266616253720252225984592512307850617067452965300047916542185726740653882474
485405343323176481560461710587673440553348590905843660871226537789988084938652
721761416088698525981118973688175902644048287417968638716868319841596275982561
466585328467418323330622893042911086468773160659520463265471522644974125692540
198607647904664712709176488887539409057561213617811138371832370190042802067387
362899771217875105666290350510034973796304188079027456917596162735138454851405
160923935364135630836349505774646313054543103880010703200873109615981126799392
516489025210705678955443982248237478320905516026167188369472164983436985873864
198544908782378520358462452850938242185509244903814487738352926918313710533771
825697214172096477353098501883049608193773609705728718966825979326878584196441
215661440886855853157003146714538589752541174444955381434555132489614867067734
342932419084254813515109265297603784675260752304042788626105732775365736105313
379741836536481451772947484174377530475597290546155682681012701450879599191698
434072999088318325489066290751330436547483898246712101957725930520646286318750
144379139352650034411302554038147662881028956202465207774033312560547210295911
018140819387099251951565562248315398397418565803060234293909938717501877125739
257197519697497127121333539861158587682405975460967205610427617008536848829930
675630628662135608890103506167299607802920237315712589807159668521399480180590
190940093631474620033375070286490315417641568930576883221373239785826249166460
163058229921786873735920271778495663755538281593246892542134809590486091492220
477854402099223806442262430517450482758211513988681322103628106723624398770876
740868565943025227395911972630287949120990506212339850186494992261177349535559
632002419948378493370828124569217233388144122649768340073844685538603279827746
207934771042511611047419927869306008317022640117762841493166836819937045388873
555458229492905205783894218630017208273961836464201153201761821869151772175837
463376422660607136671061302684738305894207698267340985805193554607314829728321
803747665143666186666246579117634112640251640273642865351383178566142982104298
631450723682275335099751648077919567833312747043232775058843369026542140375537
447213714996637985523822669147556633034287424675230869638701858513114498025924
239105956731981184053288379221234387746946423738578527256937883098840876666933
119909198098688201955261868564036243302348748281422969125676375502343608910703
227517889275485883649151076934077850355655441244493323518033978213873091436030
799777184208858016713466102059762813487006394258839662200931308877202707852052
746680946620245121927168574376197618442540814244629790318268731707946798337294
823385429315135593499046823327047739262576704230857917123929038585329918973126
973821928482426272070984678515299354778071382077275942021895656208159226831969
017622012413806440871699950990374026556124412412935628933911710618874455449892
121645702398107980350050253547454408157716777910706256647580991974542775552906
351172816100842366332881862888860192018605764074736370625956464322184147679316
205281218370118008289375600406579787491382193594748118536658480285634587273240
148178482210544736188605495919063652057266749040394691594604545700439840371526
386307508392840409652998518684511903874506828518613484059864168518006018751921
038363349194877857984595049885439090000710321089161776902879126601397106181730
483343126863924513911736646215434834527535790847596366729540071905259707091472
639036173844968723906732019426991839263868800734712352760058851084754878857437
431134542862307490922213213463776793655624480947017628487214403047903142732886
857664435511356430883413042044844633281042905564221810858997596331286918701973
001823918362559060374434280749846096068240664129590406749944040718777031463218
292582222616863695310812173651033311218365143360789589492248486952917646699871
698272588292836267380320237330187521887846166582824039405843525788947205627380
863481467329485507130800025818339627986547093951562819351442640774300336316332
484829687376441434059994779944355730604836364249215736291311777218665188204300
594097810043109607078953365753484449867384409811875151006613908508312158222041
419115879014550449791273039887824042534102494527920416716176395656823294713118
460920907608072214984648297426675912994719862738545939920309221510815778167025
206759026013395416704614456550376708867916390313216009246454415285271546343775
955719971234930868721733860936497301368183391603850445593049936221899612183608
553625653851624450819916353887049983838658680104750629099677952699159637871627
261483085322796394560776132144942572568214619705446762747103181441036797086285
345373215031160851834303435077227708673448340752336288453406914603145129179683
532013625753018351924023357769317335761569705930200067053035866120504427199172
506145145204026992285448564102960114364580757603786551594933522018464352527280
996533945363166768296333486693017470562194085858696396215496508410697019435578
574248107453266790642297535322256583594036539380158373889833736837214350408600
760432567842193176809142943571521372490196376410629389942038992643091333874443
977051594893122615765603749703325722919207762689964880029161200961230615338527
331923685895445935182752015342523190916349225493346196128427839438466864838168
065456199691006556592083828271563118278989459961033585011147864341483586172290
956705605548521016893641774026442346410471635843082348105198998609694956589694
214715840331210892545186164134109642369183253389692804501959363329767774988470
195617542180071978365718600299368257891031385928490266222282056038518451135032
124247929513855996899674731560817555091726131531760744483422005016115716899250
422383625140855370589134228103502398582591765420771240436744421422110506376381
642942685535458937309223925167392825352775815240453768595805735673620762850265
171658112589290325718768316771982751215591829753741184321934234191648041571124
382078152962000146485951445469971256250339368664835105828580797888885844121520
637559882600050686366595873670744365558916544174572350513324183114933406732348
514303534582562031043336432969117487653873173410670660370249595489352280227003
786457811291554483068501036770277267320438960690437452142381300810244622891188
730690373630021611279234970225983893888803882460828439860479938762517187472146
613672786234229557513567803218591084127143698859803877114669814658151061769627
339879615010424888460806395605619469088805577796284363813770103641416690273468
384652127345827985092506950668662218979509879473744683281898896999139117693584
770269181655897889601949233550519619548837221761361063994183782470625138094860
632212792764402727097100549280235855359717705171369675831384354339892733064977
306698697026395745860719193766721744707987738630529929881062023586838613528821
374467020263962209526322821257635048434803517032618256060257400493322680184600
184861680803300759365059891590134815658564194017625169664656825049856693155112
626917910938102510217890473974552828846244956171275047277819308711186312432908
956339563866599869018324621510624409908128808647497190602793883984205628998490
750857736216308069516429448611831578058488541294703788406102457743826163654138
765531413322925288525222047307701659775318778096635912758049018768077418004032
284155274075077181013673185934474457972208306512510939026158595982187854914057
828411362604704311030238207186445620820322860919381812386690977126977303188959
918570550738053586733921063719059101944914443893147508556096024658583226464476
452179613708961524302597847280920359301781655808289182401625641550174219366557
002051824345642857043726297249493139401290567581219092997717968126342008832142
286504648956922705464598365606748229056267747598453178401409372562958779982029
431874775977366851240902386468429577176323815677108646940319070379589087440542
802534988757472051216047935098768477304769261573546907444528324072687305147341
287213837897220378360684902983398410309832102933411605555832141455892651787881
467351415687998762809107228735470621638670377783991601844874561014403025072229
129324722886337339412610749934983725101450520797161105705007709423449412469528
852525895334648425205545581757516752939495982298543393282605694348773768356231
898622574819460541512121446565316089629658025518385727063023169766232461811544
368105978977125038714544887257536082147375854513112871393011642467697990792451
103429340589945803265270957555120675300383034442774542170133589160268490722265
562074945084474790012839596998949640601810929576564502816855503429980397910395
438291927748823444672349801879751289138980816418152054633207072034860230927074
142011390169980733119494411426619720180886057821720205978168954946491927755824
924775900323324572556302678785853003662093245734892209148689516929814585050029
657929395343843638397246956963053631885020146648192617145296140209700320053980
434295846628311669376149683060172401451676615223481295637530497576524089090700
455743327162153424591629829690070338989206626066402982723585807552845305254213
639765665419896711973533350734412358829168402146994370948702285493198352612406
424161191713305387329781950059011192030358927814429927184341267769008170160637
664396074650903491864723107948354026615501511761173247933069592196171524699233
017865679726331566409330754911464008590317743643622322474427824458490536930455
114662376243256332361319582811001348429253521376838591631931440232126904704893
830794845669913026199369069202070368478161003427166059093102998250955480343518
136825798671291005873849197416605579384229747726971955561141215355741642332567
409645250751439309429195365583041677168202431259805757728324628872278394577322
383888355273167202964888954978554066060642874224657447070335401639624313377955
385914315312343862755502749887810730621917318661219206668015201737062182379096
127939917567019763648601694112159938769932291424468570795541113078954177193105
345368909401809078593744035143416955787433407668899420347908308587842210852133
491582316170691167669920188945561951855481641027726729678352431394126446171285
403493532005851419367459350545165792464545893152857299088138590655375518607993
659437049250633552013137445058011303381764868352127574021223541713317944637584
504763851497968153144144885563792864179679115063169887852360847516707842551212
454699983447111172324978563416171835528529102172677061686374682556968086978194
849560965311047633329652636704838113945184795511386402854377104335479249193654
110300925103711607598325899297554246866396613585402926216503171741447779501601
171305501395896780359628556802531275383149041626285512732321172378190436502101
786829238446747515802936426060448717568054117691083603105231702860704684488378
982855312930341102908965725097077118613311051811858875712663367055742062843669
754735371540577856572753819282580935692259653931658369806479919382754579684353
747528807055298808903037535681942288186174927747636968942213329301881266606359
215833107535009888794846135312963891590653354724877355437133779775477251647167
573977327781872351167025507416075377255182877184924937699471917508396081968133
948606553245913325205608775028225701990151682000268383945773090719438225289524
832118718777597609900579410611451902914504156805668961425776692030430240001818
822611038132133346630429077841997498040119907922004500171947866718535931318048
268993292148152904650556331781890376815176653672390643985965953376733383549056
269650856884993569045765391983663645514024190503072772939073705756235339151523
686697403764026753692269466545610453825148402013788023335020630125218846257925
759852820583429879833720454559888552418284625101709095209633520184848946277517
745344525606207489237014391876885052994982216975867770934491799203619022674507
574214539626210351302213601572550723702859534992790163810583103498325225333223
423796458142523312758597315106182760889576582518688757029053463938780958830154
732755709551825956379244984478552510266779635266142832211640367622102478587934
589369959758521416403811197079890749392189436474092473590175937450833579770339
011190849657219866324932361545625151451117381624920367396251588766456728793591
988183262361216781799032724562190493521412584825060179805653054947172908410516
179303380591089830016007898876114815327090489967009888331147432698019564126268
802529508236805823693796492953617955811938397797539721518525040278719855705766
699474048355482414640199695882673383373079276967911940557641058364457829771251
711156658226937296458018303407040085289374815482582942133540886159439657117050
309632032520931018500626276171600064198378451692816848492533808015608479404834
219366966161442982648234763605388761266335673357223712575463626961052679721725
983099048750492709961800066052094780991592388378508199536784417411965010222116
054093617351104267764697239963800755002882851536027340615159172503954743263518
825855860634717751319507564271772737483933460565056446335454553632497466253550
708720256861733265153531749970384503357173705771812337972430843645143006487718
478307912647453128151805113534333660900879454163925653509993054445610747361879
026113078125579602202498225900242596537304003294628478631290615651804174398033
674984135274872158793943332522801401356169770727276878380848976872166783166350
210144815496972925545110464040758200153546007571748856578737929056876343556937
017511679551088430952487935228129236948847975403965431242349810273583946408908
145091496519452044051119062181336828738217080088904000497991448215730826383770
146416412689911765206394492555510842530578723382646215655359696170044176967800
564163593606276522773596013173042120839612119974697342660884488418481982397806
655900834246252799689033827733449743407894626105282343384866773519582892327863
529494918876833580062286908088504456901463676865316433682591501403601131816406
416399645491505673083130031582577441707609976262732484125251905043119838023405
938693207520110501004669059689300530016547853808103114613342468389288786952819
290215748767229410255599499449130876422571872110414719398206692384263795573821
720023244524634515279360055891966345805865187494161990584308862040452110304864
413736309441676439619473499211921438413378677932488996768172062699574502883700
249608775040464868298951586596758255355266393875157236556179813563089506314487
045230641354118828807803357861119862783117923133371405596889125414565359866446
814838051404422121463945006836398331030442388061080231674565881172061901009487
730736766934938643058074845419960113496841113741311665542781563176138957416810
668000583027525825013381883305614046291923090043833935273180039510958044369790
335338195998667958151672267922575744461125391553003211170235301627569274269865
569777617846134783188853589456795765735975796022177726484000730863813743487773
376730179816373428492143787274298970824160833044148390624119145233811445419687
358486253233914816046091731074452223369896904447367646637963753971933189743204
659973223661776969738751041745300568754421556572495449876978192312467623300541
901161182311349640427435575992259714387934170452253207768309691375940989154296
189720740845232752205589520320902414364676719925600621975489789029825881715344
638629473030786954253543702692290339109876195618854766869611710687616052590657
212981577803755800631166162333430941844085193094785168197010736795662068902307
524432460965623334599874803635363396221448728083428777932025733357023193716321
762348679045216481290667049693457105194908902954577841131523555322639750799156
685039841238475571422021859384662002381034083518597712098474197681368672453071
482450409601073808564294628959841067756559831630944614567203998832380381903568
904130862185497105781855709920809943819489851428663123555834709816359732421299
739541707917967971749518880818856443781122846802126831270689304432322312404871
437514158583922188759292318010802339417519388383063674791412413980250977995999
181749918769920379566556028830857990024244571377374033808164735524984936383252
087811847394727248110015865033417859859282848935521891970195148810858388681330
581868709036783303202462151204309333992443445437955050750229114596152660803060
518718664014380067617690803509250818947928062318162635983523706467699272599822
297448189787650300877781486854381208742125343883381831535801747428648367848235
036058752795257664928639279747137575238615820206605831410944954874153485809609
634009905688664900571111126854339623382777565982157605704302206757696722470995
200774540504399639920339621475870039112692917715644010673174375516866712615707
395925212424361595130550397237130307179659375196115024607984878755199953138890
878525776282030445881666843295573982636553055020897692551002782766168135859447
377067787666707518164359669092890502762383763636639955720675786853119976260535
670844011534561311913543690355027128956570815493154791918445752067644807360833
363043428056765995636985948289525934750059525480998091414009856747846033833170
383767267266728586297438935420831258127571237005461411703297031446949432733921
211685987678460158902146569144709034510145848712022965527370597177217001806383
077823463427139179288522386484766576133631542201156589774595205790097406889920
935848010518530667970214137766567047838884915967066858784012592773606685707937
360279960151534581247174982835135717968846301759585907562548610555627997985252
369480462234518453640566009937060743874628247802925654129828900081827808588013
864859730070820103676202426872154365214835064210208543630897557777312794609589
469289750273316901976030095148730597478408936431402543185903358218130886881427
830279219605426401880804325384073367775604360717410669346875722874616212579239
013774149677618640376209579517448366661899091737872794284181764302071913231885
136514163093580990996653193546310507490264113093430927829210857405442764714112
115551473177579113622221617379019041687091714299621784588923175450276300552477
628976321770942485635747469791314657589015190381211426246431414388644477674176
478121098465738396136115798373768767886403357418774551118952618608230933499632
665029700195196820725538304973426834753461837580116856324870743894553343262023
582613570857875646386613239545031631819278514252136216650848176618122180487740
067015932820729657823023331767232353873064976443169946623315789102379451350108
357599333976152259311171489528464887233922239858245601789018097217527357497138
134319962439788287983165025025786001436251724002428008814757091820662527815266
451044779986928859210784954049410300378689182150275952209433028120170863355810
398345625189067510596722321715221016036643496086944494389591971472323532730420
354047420535492540602382190314064458429976707694730816377955174003089057562982
787709650396521454844858960591398191708323639567761622619000390687618999096425
197268803698406710538433849995295669660924466083936154242876807442895722867615
522864478091905590951985217008608622679333734410369573652225819181200799039530
989240266535622224549047597415492763783995456329002307757290544063860271421027
561843885602899392106973108857817780491804033365228775496883277943518582705599
530496459318224423142749022382170950411670108338944282997227307647451684835790
134924678829108836809273841820124374102228465365645070873025362522266658885277
493124745826665748764684223589931201885252039286129240190499917225459836197667
202125297317257599327510506535468958273196286724727859469978673263157512624445
511422693912755167852439993843565927322773056274539339167526630845568360077175
213136762532534791923591240911494210285783866813893818031413668512339145451828
995553525376386904069681009948147839750099004180612419663857362865700545573399
098665055530673044561130347538167088237278070616027540938849939911331499762206
087611222932279789050600693110689183723928369472096348271243055885277394513909
107774289807326800522118160262922605059680800755754014163481580227045555901668
475809005135945174166346193883824768057213793907567667676344896154125242732321
122762510255603373328980986167937066737970585541700542726429758991409160482194
443104586005792500167002556866787168288167320040295709791652823151843171380308
876433533349586775326968228436484410779333857831469296580272426136187996895899
518411688249653364194452229119888444903323873465899125400341341092306020656424
503195889231323582100382990904352006376809910990593027586197219455821792740387
449013180011689165067504742885772735965629740450003074029597926461806482973092
684611781941011733638427183239919332034358358411263569036987235071573963834646
495438347666913519398094165666881166368808856256632834140167090080691970395281
575873500351811997276346743772845765382674112310773825677665380321359832815527
458896759500593271617505321090553234224223880584741963046835154451615153144089
328490214427719166511665703833563315023433956860697403159811458792953039075605
802389954221419519864265769931766534507937419319329722749751132607078465628526
820586149778054078638770626951414832204118865924459162458637860986855280362338
025567178326814352515135597083396356100033793909434366293515438307680917652786
567522614416523997610946132393458278974671113960953389228832220322050563273037
042228423225228011834803570802436031592255344636512967483412136658538113146503
021063921923910362688405858696551932299178218629209266342568707783517890650257
325823134599343769645473184761028944943813735110731478239147561765677318913319
126694445659372731142188400745451414366302162851917888999364502495473340763766
056472681954950608914825543799360139715400754950724977881753302435568883746656
605535023510300200641684963094888746462296053253161976908523357341738771172227
581831936592380182506512219563566010911353801004671576734415866783894597893625
831991114176043398272879577863421494994825403934100117804844743380814743447650
751403130909952661912899824722780212869541298353303922216049839557775798832121
521295522839968096116758017831010142590795815714079387560255845008170448410742
223491070599590768599074797233240264202193990926840237613808380980078116963585
757422185328315949643130468802777451662422170692256013783419951267907357797321
401144064709354109002904816117189914391172354098556518093688546781549297475098
247408256501714216296314404010433168307330488410085516156649292531488572767615
574337466761597724471441837273158638770990411401748880088692677646579139606303
654705880750140108104377702608199877425704392697785205929803229590397118963441
950996521723211433641868172050103454915835685321263680419635747015862141758279
649153355281939092088529577247984326357469398895309918758616609264856579825639
630794711459291771814609327858715759027071006352945775161097743677206240969454
892945060685429807176592639843243278537913322439419261707303335972736783275639
380104295494870377802356865826559048786903854460845969615082745941020208953164
168210161373626891272834446758549922776699108555566221077310347403127203036631
042810847453411679696242319547859386808242999485054992867499345562109120892440
851836187243434503325206757510549060098262776050690395781763076682822406576661
420174659869912049289571321710501463587153530882892304794740146085051759520601
822813429875449306989598802015475052181261258348800131041078653707154439700143
631014513958752241407734751225366826641636613675456430497192090980848716609891
884441921043389044475108022909592916408796360526277661040312756059675528664567
970703568420900722222476717974461126719047946988842991233536667778088717807909
368788590115931079445330044154425892739390036888832000918324821134129924148802
059531366653861176572603215509419953074215334679715082149085787304414958593151
883326827412650879909292888079453676125376939471480899381799735549297795139503
590873433030245192013677180962316424894255660451077307505339176145762685899805
817795135934972965803158457499591055923145824924272835743750069455628868036375
602590429460762160580156942367407947405160898005240461127940779692672060980715
086548349924944639121435526233206968750362341020070577262847926798243647944384
768200850317131353320783198380059069878009264309403977007797281628064142095709
623823578053052442244970487591899977174229501999472268540733891380830857200056
492793659976217420584213538282194931941217882598703972007942871000638986972306
727583393456821587164595294088673752887038439074337908565751896016192791553876
290609329096621633941459375087454344888723789359801016589246396525655499656793
074588529835146336745557561600628046173249774362415278875471794905522321238243
544012627185537897081776114473656422344296863033328710470175456832174104707563
319229748746131873578696569903191438050129906191490522168693465578655825230205
539523320512052737210841808023252117204536446659856587650049442110986789570463
907155922142490332325812058204513445391682148274920306544278398761719621069886
155935814165896081665822754071469607392316639432845099099361633399047425261192
309245582766091800282154585557275472081875364405635280230697578608170106672029
261050119831327655699226855927762649574496675820803502021816000244538912946836
610996128319193906972913967963600782205964103737812338473574835544441571379820
037524639379494591460171613321170462256580319497927150673236854788283212716634
084152340046421121697367460027735796491749506958972802411675706554167547848551
162414628315179033623088701486479555575717097135312262110570097005914706903784
492614578705039740434897072686855020767370267276531627533357404585076992408227
293629871026921628366703341339127054381353967860971374999461772112962680597957
810023494925275471866131203235871605355798463499640763365071333303696836605001
354078290493530928360074148840432673678707627420341010552477822417760752967492
290704166961390922911967564755736376800308562822197034057589819990921297457493
428921611412647270506341686917681322933160852851918852585100054498738012872102
611566735101163921409662161775940101960445146706215696209352136386120604641822
016273734274410762043724989563193420898091117722321713677430781403777943943716
439449595217501465981829618468260790883209082625174983992435857467645679157133
673686093657842713795891138299399163133250807495445073524667717708475504999656
463716053067994177651331433412125219025918337218263371447192856610855434586819
786366337135008417500158298188522747193542403254798390808457261646987794129809
781490788670064224247660459327126053295397033195441251262257902877868173635657
481636072139021361192953162571312672821368851072729789535252237958674287322633
589679663830539165603219811598706184912333772544444640411745665181740787403306
305318548614513561535355448825919071408423273662522800430776100754943864357288
819343597183184854834386388867312932841474726362191276789063336450532573082219
482686098419375308517634434658367628982206979627541066597342657824723207333312
754898293352792322749176574405257596005655300321599156810573326885623659383037
831889657146525675593659255456263578668852077747442673679777209839017202453833
531290643945657577135614781266031828344216556095518379986072586573775619411974
885432613953581727255715110007750302256903266840861713241954883526215452772973
109983158099026862230435963725624820413075072392886156388670739506822454935337
309584828231031041273317968463929029898619067988588851252005104618313341090599
125451007518696500166578852252390404200272170761153760684340222520172880870847
874227015212377122084665444288293035558823341814980959241401886376742633185253
006313906796981692803529970618212575876667115796757778019735619789610800653692
628460986497374379825330292965823072915897466433390259648734639693654805126803
742812165276530263952490723885207487672635526878545818693954220709293802945185
661988214690913763787404715314533334832316589331292665360576215243268892720451
193373425938495219750869678253703197813328066144799432576952548836699934321285
989834942703955195141718184379490491464528324277431931637645971642781417062305
387405059149167530326022659954584786548456957550786236018929314924271730016198
792384406418168445508431419441278191273870466020411713792674419434424804068050
294503367749087218136229694806424790328551451668057271003358246324069450321834
134639943298499209741743631786941514478629408496827596991275545178210435185203
712159611592061307175586449645391100941278285546306428208201978066620253226203
627791542747190565089316353357058636714122470790323294873694556501098317171802
834266122294375785455046850783092765488720481303824305737206139001473904594811
108376642621187402782041328292017654377973148195566040124798435299231429911746
413656705040071656628931734184544706791371121382219878792556652129685160799984
470661458322136918097180967222780549805004004175867120098890277221166309416501
017764279568266300970693068723077266290619550019653196814103798775570038326199
825900563389315584203123233294485418729774706117842097352308743222769055904203
609632758485930515368803643195660719959337921761896096059558812930173879970483
049982855931354345038902286952642591301276277051574472228913747767790706534033
852548328173740168519135953478014401502123435415944136860624685306096607574040
848486736852016997203645373248475054742915172978324980357942439548723455046078
374688822828078838188101158272260738440075758144738064259923123855376992265112
638827159781112831927902708319043236018406373652413730016937863688420227430961
079124826447144054745070872719388421224484129419903745215315225024212936257005
392611036261544887098846200013726960990765305815361915793664384290251659054068
741936488663900764443862977081781138726244378464054820645432580481887471508737
829490647365886175563914185900107653106307372974638451073974764113044100272288
081979097867858396938064270704275899967595979842261218205569425133240715027085
481613932791635138014246842654926605123409505652355850336037590160588886686497
597469604120937525159516655612717382349457904127051577686341533795883888876675
899889718208790950847010765608846808275840718638111199661995360444458313394571
109273199765986521751904795574079643279279169893664728943321257898487629989671
643705766232838482411247068641443106734540648174902241166607754970113388130884
801236871915959398983209318154068280662597359501429256293188647883819128044372
561807280315078126817028118545416259040047791944259702559220735057990609667946
786026321259946425944414944629859244502614042475323611986206911314561873796625
208612902383382031637546609541592003605299160582865023602752052008081267812748
886304021296112199471566319221685310825279613694303461248730245544164067157278
994835468207703674765113571523107044861420158603070884473508207399309399073945
495229365659460806848575811193599774519982267221409299751427635329116140203050
335391940323725572648703091262586302167346847437977596822964316870679334416044
463933393373451480524393570488140017814638501865954515736267721486301324647097
751804620031194718429443861666896172263574840242299407234734632656417681339344
530542046114425096072875922030020158192635733440772727793992764173486894992858
236787906038922410083056575973897586617166015845197337108636307236697447284966
010030514538895844684677349218557031562962397426383366659099918296143590789658
052991627262057425372899497766712933155447041355193731498535922758787114111701
095971271950552517479127726406885360698377307142794226860078268882034230210520
414616815960564313488963141866854987371866975375106876508715937180490910553353
686780573223973183284690434717944159957889941028651751000640729004112392016126
074106124511986746260655022471627381148641746124075632723731645985681649458955
117982623872226392048965259036065742826791561186547905699003511026033492253452
385956129038071723650405974064044730033251005404261735306656058536947351140413
658524515960632851510775990412856920908057403454932694922141956851397391604540
566805498183851995010202175095941801073669130501747404177181848443683988072719
065684489055131174821060235591216207029598171269418365359674991131003677727130
240038370795909040321436354737322243159853464509089428325256847789852639696296
530179611391261531315444303671502399337746875849115216618886098530006178645129
995973209061731725182596824665401087366692824197838387226947985787442569111556
542282717424926142120139571848771657985996794360836834175644290967565296253453
692025247192731525122917270692332612586018375548138945517171896850877654456345
416741468022553017519252931787631577738332835741524637413997515245904923220563
255229570558711005394664288984303971299829902561477071939162077005259257135685
445679026775325485119540487550099262213180083859945083251447250817140811932786
096524394637845555419842022007680335690114386698453353767277083530100912957583
717224547155967322114149664186318750795993749242236017635761877744962576654809
327363802646444006350396082843890580079523615947325779557189627206656767563873
955797044488693930900554847977038529682460215141899593125534679702101523305430
830803087573402942134255794594382774512799611763838849773503760728243927753424
236351508446089266029484494300170618037850379807063035723100528662438197319202
678475846665711266495624897044650567286536355471889010857948957012541249801902
108975680221945698443497849012553293816385607964114488747977363499028034799618
264779584713533616534953340362671847416390230759937342907030680819104362336038
028047493760405820774565675700950098612977543909279175482019135484701890497671
382125860802962587296378519021954913604954912457180932669035197894230037859320
465330975788496128684807144104051700642916273469270425443058229561310363704760
670603046451912620027070717691782732107007019174068354003237694392182131886830
113176578148166874223131175718722351453801080062732245330425870514556867778247
415685765114660176144059121647339201640766514864418872918385995048898368418922
521979194628763108608268110625331039844948125891732535781828944312421484150741
192460432757209658331116243726966906000258997167957888132682921915656788463843
442444154529503945893831443771567569039091056968101738629874035620712606333788
641630147509996520720870688803882795670874424607224044470348997957803548149469
151204270543603058915402932949650998153369509111355262209537036690797994768459
265715819168796285404238380559383655190819117957830279150940529953100991963174
141541970539213455559251199671217847559665980469667392984488872131265471439954
679871827257019286178523732289573784228141495806102704128139929677825349721751
172194611629546911255098185099441910384716770633079338457661752726665601217019
489307547734336019786350702126645095598511655157666463820007382154018273507597
922764116361291678420400518323864024505771995166800073580143941988313873591730
040766203409119900231475278583609197927689726236027011801374494152550842168491
623999948575958880796907617294434208582281951939855217015262034062731026589857
282551295738658850618457394239964543360053490945792923438178712690196173241423
617180209488810473490931457794142069461928836882036743732606570450791083194049
746682631489757478885457696343607893222692970770142212372538539968490494942539
440202216904005911736975401211152161724041405815696548171563249269236904882971
003350169622018702212176579635399900328884177030412146871922258677550900183137
169634443701508831553315563722791115560899650499120543064095311698461682671669
950342933815803738321828773093395992812628064680437114473304382294306630482634
737013958271568252832938516109958487676775019807588157008981685487476454283733
651592942192884556920229209650848020290364897292337482055996341653378265108233
780694582074016946180537644960519333933981199231151793158764435074938190835172
512771726223786905486277861819621036083299267744715236410082681059716087469059
962795399358737722624989303542575686833496169646711007718490156717412394550623
472692041540585451695134668423995665596179284516797021435949415109824680334636
741248329482290235468551374578882785970532168365514226041820294079078418635619
504503171085691042844511095555566086409133670443153188282677793752363275457615
149671567638335196538310847032752465392836109885006164081333917621463581378085
529415411584166566958484065698161235643710545977885329169826628766289345938831
964954329535989305171289414350415608484536678604999335219679628763748811016046
105284819650073196734963767283441627208619436951582443040118046129779087156419
742681462372187416488947272124807463943262224943711169284984793019560835976132
200181598068961552885495006883870605792618224461773726283871621909149693953890
624173157262088019923844305341459453079280687193537904051369415824133919140322
881382642129693446296870503964538664923019142865176222910922256482691864389294
286433341188049296907216167537533296772458146757965759574805252255234057187984
412913988198141247469467523876304218419078611591900431709087644592406189017381
179027287404686742344467340537687083197745350798037320883951190816301183282478
953803998577281702993289292099701484728663169085926232010304122510605539926622
165625661510209351717304237114401389754612338461937424756565961502161073605192
304117844304314688903551735359987935149023004372626846154474148384513552074716
245803113025747036247762268058153398585757052735536303756002570574819651503409
087518191693799900959869924678158535415148925060028395375454114263986783505601
771736015335721846116008886853406624531018647822133720508171015856538298755381
221755158515134967324770334918947872534752305515924131827453759625437808801285
746313147741663556828135052575396084991766138560713900408127867959040768590956
566912197680406572259500575021097511969758639755556389998242472740139600277044
918888383498660551006513738356257249700319410386919510924348310611798602592021
243346290790494397432788068499540986821972651805657856767030813753849299268091
153314975890754336890792404953950622597885068637853162876395604215067889842381
474842087558240889408070242962755206329838118752522984102535068617569601685317
886042886712565829531222478594407904115932375987002368270129911875064573046676
157004755791127450765752199011915457441975641460010747800410184078255543015371
191370616054464946872457165335581005954450582077743767674244580529985371293794
869361856570136344707028307345641800033021163595174158381080941542910113077281
419241727324815082913349285725229755829680057911733452202881825974609957472287
238362241986679418141608467368967529944262298487777898233226747477073230298316
229254370338580856533546344258746065842747166472209345491817370901714429962077
841816408073360221274211115277672651778554532037228299852701745417386541823692
852062659681322959441673966916091114198532856404924695132060393928012592227050
509602951555683700611121282913541540815774288631185774968454170611208268156180
301248061535356255066849204003621544918795360877629747047967226828158885881000
612112845677662566671726364108140785232263724862969767040763845363052754314652
767405913847985432517241257412687321573904530393924438602177641256573257202506
757084207243992464246092347805982042812511036647694082924310127670175460578192
397243613177008812636989622551427479790911098960648035991634794821992353519393
278538485305017801446533499100339553829331653405568731419655159880276260247172
981454131588824755606274422207444845320938296557825768005994697644447836645649
055168535029908770347818431297635923935295998524429026298794626605159807726780
375994381281956610216226135182121643807101386593490144197810529383279568375229
762087695855052755698028896318676027569540166235357769049029682277056564566774
526678901823780991303846311347710561434550200898572762580329149860864323663374
984733024271460004748910215516271375573438770107982548461528804465465576179699
831307880551236777673865470957143009329809865048596382566503322102589498265444
955060696732151312519690716658243240293307545200714806831104139446922271249154
966677346212156236721747277387771563852417716212161974481283944718368504580934
698333801013109375364716742474539100871222956561413030262955232156364502612715
458973452891614976987238339635169491955730548162352154741962346787130556579780
707395532809949594483768823666292037080184109653246541651677512454237557594375
805252580666877289838283229231058204052084791230659655810571327356430782504747
718832407901051928580601419056022126107057276167598202017401885802899161986975
027236009781462799408683526275620175142133082123878768760046269875007537828075
051426857639642425330576189178420156851065173155753672911261601878715572821942
154717957332151728042283455039738641024622322495330905401035679034606299299851
866620169590630645191947130209233134312671425504362023596472880588526853117852
581176305911557693097808446776953924623201995394692729685162771710058414837235
304330136855710199246141032827830559495734336064173909004732914241471642473225
334742072755963723636297923032150300304265989645395622849568999483363962906347
969471138136524784038608595596325446671157413544998126238949949710582173350221
623840194724106791068901212426181396749575441153084314202408686383617624036828
472279608084235768925942808211118437529749209072396855317628834525771877910962
092182798814216770133144580128220645958133308599947414147132393164580617662753
359871064950105362935121004280287418548471933301218857109128419499065328475138
463985994771513720990972766694566058312929290359602034856813427376473189642089
610586006606499212868422628524037991784915056213230502560565808366835069707151
056227906456644955073277808877759571146981299055884970389231353991303585386410
130632169310433173864415691866422641381098211425311659501903314730297661300351
857450168121170400456083165694293648591246226385730750156033863177966105616659
522493056105562916018581022942114488905726183377825768108308649105443339433994
320513957902680188226710567382174880113622933780200941694265432974689177887722
486099117790697008834220818419292669465060001326457449958599189891627972740221
457344050514566533994768570278365214626213755804864081670780986085827091030636
260652935735684593402214204614672803765719081501073397739969687612991790791718
092738309963162206214699762448751242742482831499916243136284385534798113110009
662250996373695560130478241954597833706182843566554770506298697460885282686611
602301613002461137881599141871553984419032733814366870551713990443814209948104
077452052157985765062575198178400046683838391697732265293657751955260286799441
555853377762904382838775734848000886600010013901691357547730993110110554813214
158259947577110074482216501434042919303479655200690230260353311691001017411729
408237987614147652725147686371217872373085578022316143410020965479937847634254
620008108210856557946457034939624295440177901470078531160840874760475222385738
168956024729699504478021867875184565948365920187116288819844045156334441631125
997676532440898772714616497252699161240955596932753587409456296236172808325381
381503862783286316274951494336963196007647011886308864128509504445476375910427
575467310150991992244662758281346312791454794978665892909806008365498577419234
290890205747080357668124511141749170686910671250097176016904277707827715555167
062302422857482399595608420784016087902977845131653871085398646739723168019525
219838420615660214324789930675165540249691426086473137006802162169443974922111
266963014016351330256441675824127431351429715368590548745047349352392445409587
907702988014216491007720069565359986177132999035418002317396892776055362858743
188925508047210302153271611466945172077275741976558906262416315625369934069898
324359590465256535934701188094794184267292055936992669384677061296519466446488
118673275905204103526519118613924375724877334166931495644374249422914997442800
151262714502316600499250348514163991887639837570133539480066896211800445611111
703580566798501537755033122028699760907533829494865244414593941322991018986774
832822444508264952624803790283190088813327665834763005351141295188869854699917
047064918061003310994004859654048821332056098480781387526746721943687417670459
343834280879139349021820690448344606848446838827850645611192401538640802795087
616655119421340236178655918864466951450691106304889587972509174850690092224137
257421418837759446811346413581982540557570927540961963450329992572420208148320
373173485597037322679707757646841329405166812635345499264878901691610694777335
871227746480424434909504800852746012071008764903933009423872412615590439941702
392786661792979132897286590048537606955495422980086056797916268514990289918173
407936914237054133538059106259153558040784324151360112765266166129858104209775
876173894353564422468525024050090395413578745343696541045155871111351774242173
337991895243638656074433193428120915587413434563119626053903733579884220774257
301453912135585407146536081976799383695721084079349692492029387908846628484746
144306550660426269629394791999783200968303899767426355418737148127159295064797
000017400438479939582857418594248688902478509500813348951680561154632993673098
857408084451099312698854437287027774250096967217438792770759806771745164119511
583756932234279029699985122975784801841617372279541394387320362994505393212295
539999285386823048693297092798617492321935616163871273217183201801798575093391
382965209115298238310320782948640043366186014816138168641048434117565178907841
071969486662860544363118959642997730349081412394941796780213346295124456636950
930052715925462585126825724219079534600895037823544922142589478561347895040056
776977743552010828313770923509192022777272909290964285756757734487002621745117
843494059122822588816295434338914044047587536446831670389260213274893873464920
757246254844409866827505807296044963073444023770205515321380019468381066888367
210012506921226686155340298625443455424752662275020847586290142308286629482135
109468307420353659318785920001077519685629580422069959578296126477131387028210
512673796290893401162196941929449856864848352901923114274048467402278620462534
029038217665771266403763345195804993635816543340057567987852612698716044570433
723935323685731157406377116340830494237763735372287847512747088448206951682700
239693783896717180626383528130813976878321734759564943719032208834911620518155
050775593206891272227843250494391645448676811706812183267158644920397739564061
036670325663229837469092935361150446147109728294823068556661484581229674980389
797738889632309331376553588772129422178759701541268594132738395022108349862894
141708443156358393413352416539478398180322117908401231198488300101322822083250
997011322724529217242765584533115978711898047460289658331750658384855519768349
439471784880606706377861753797778140352685483837751808736298843634936614778647
196820865984247660656037140927944489552818205583983268028277151353419787038321
293282804939691550716084509185223182406844069819634010227394288042671152804060
663563747442195724633625724218653295848460288382540499178720944286206513939576
818954950638127356077287925512769513624064030568953669419300132321736067453900
128253598702488641005667089448991640788217191346127204205479838383638062161581
216969104179085510087325691969529867140983832807019238566237191107345803557423
702934125421012574407729692550575083584080377707502411188465375021549408008530
479487256470094305123869966847543401098971960837077014077079133381297325966977
890554431065851374737189161595235640256285305884525932992706754477657137367297
643536120902982031178190905043270826064525875579599957560928650889813451674747
867894909273086814733724825463801250399134247245970848470824268853436579631912
438054120775540246916753767714516847098500047701217831956026622193478429845250
423375219691135121117679626915575711777073896793231759991514315979042791342275
078381450479317693639417784403978400153081738350127911627408150816997225643278
974812890789187935729318152482504651512479928506208311775891262379799169303607
095795366153185494803555611935657277807889756967623922907342088978380540689946
042108051067339893601562071526550213308398843827828822256071444376198305142369
929477095893526657110635537171555671849732763355456714483550337101678877561650
626893548350615312809659695168566778618653052279455830863361733348922122027945
491216421665336883269106509985208418065815599750997099865379638912519019379486
130757664371314534812359533263314756904874558009804046664281939612552275210701
576705767582349976132556408102567567801112543101542290037095237127538554868484
377379683295312404314711761347165409881445830576293110656033716779002842870636
026826167159783772465760790951301553966943503084324118539113805133404910551544
508830114682987204269342501163061611879691505514774209175123563164806243296442
921591849979813815302608737052224053083799833141713635520524421852810979722194
618511776239958768585756966787562426029593660418431300739609883698209135339183
624688589954370078283501113066969762418846693628217707663869980493794983107107
562524835128289556238478325927162577125801056814522439578532121070146247039175
560504665269582571243189604556976167770945211143170090217372643653780670040826
624082152452071213176981597711712594276677003966183347501663337909176173290156
489112610349226006865201263301424508046524659085233886295189606711631676325990
095931737458615901414141267057547317062928557221366876302755036334374436211863
010296190380077293913773822182620722118633614005874480518009240480117785322993
079957448485119954757554035316978078113631051646812496507000103554526811583737
058189838915722796834316528075026835497235937604857151809680179291788343768142
415986324266840367282542336210238988497994134625633746627448050626201053962297
081780620017092990153954717294379010542947680778544604410837245755323154205254
381866542737198838547690633399090763346348833604068422783554243305472784967557
632565389769226865185405240366313778541271974829880827746820180007610997557360
066894031840480812632199176836764963945142292984890839748798030819733654015517
715561486750292868739536655900250481989700752458664527948523053180172299621702
396814904955038008547886496650010083544993030844922063463118341191684159455484
310511382948089463189546297406418986880788484401151652704590130106589940118513
993264743134738458732082829449240449364040457366897886431595038403826775977222
240284755029372966459802427747488806137935324832112091436838793861157655889904
944395315445532963329649091704178290785636789006433572499750676642780282372825
124147335355812584919961512672784813151207616768738593097080395832593434617488
189138006917888159690550029886789108050435239661765413917783744182716212822933
752806508785993889483068548563122612502046205167244682766929795075992471725938
076138546661274881419371681679840660363000360705046246705624803041293754736664
621322750937845049817816369011832273808760433364284540728080628312463950914442
968797054357156627629478565239977589469730519074313206387195023114443089062427
163681620995604910383379178948456578636902315965754318890886354540041700667420
453234434330200670902462339744300637396521165288724724196942685134131325793032
428287951272465647895842365639670049213146314225614273892332982857785914399354
949018931812549908882934548063717421911437483442613272245876104917300801849731
827375138437785576152898524013005030759555243998087013117878568304520016615620
187328466752203341533160888951301608553938033793845817989278520465133947464762
740280854487188061149948882818277399927353569150780929353634769840556410669763
665831833875012463867036533299544942074097786811814046640241509508303112328616
361658005399107789491967155678511080987782419216110510659619274295289103360902
666472980013120129432552576669278541078312163777448578213589527038041176449648
008690486460315925304506936647501191977645156325618447685088750356566706931845
144708929151665501614516822515235107452035473176305389255262067786814017241158
251225520567113742504850667806749838463244900384142719773822404059610469160602
783404452702104491786097778728346118679920133779634503360080161189529817634673
233760489374828441291923443206554838969731666099282745754664625468250766300701
131161368177734301900173706226765937331484338594484221887338896566057120549088
550559568554843399266702938289648176382187099080528987058694874458736544556975
197005858230797419909393189072445246404146012712725576218209603363577390060419
656117353528863658822322876667229620725734467419726598011692532126750397287076
185397419407761333796235063314922326677944516323376648649938616383868843600350
855336079346136223121468503949255555132848780766765474147929178216187557698566
498433160391367292741065912034751493359216710310275846463283079306633347699865
538780600736350342610152459929514999262954931696357950735775713645550168559850
231703739501230718651698022322832941623997141550277796444003508727944538875858
783863421989800490209661435106501106008457785348380867089480523278240264139358
232751380613791115345030302012564143537491072774735610570129438965972484559647
056506809355835404080674693744758198101834245364650444885377950891498710528679
113945809719328481065624889078672994887376537433395334118335965650324430334184
960826323305239111933393158977211143374892161538145336824043759365409859832559
376527966099831979894214623470286282678345763468368488540224891802423348273387
390072632831069901816137136903618805074141484764362070588937040111700330373503
959377306078453706032660098660362039024176967238142496633038779726036379328394
196154228029981354247410760079410818377930305497028429439860122516512421594327
122597335542686403148023828417344183301687607972180812922898024173033757269834
650583456274711557177454874369432340287058562611629296107397937375603314253851
991204787063731655069510394142144104820528792668883722610979986453830616882293
073813893582646840134166782879972926255225800515036772322926884249699834135002
151950602938408060080838162265492374452572723961074308030869532061161524128684
351237181777382372003672466659046986686747455688211517599808192579002204806718
102968083682504898533814458582786134843608671374003299733391168434793925944952
812347283125478667094887115140649132430847182207486449871716009727469700597146
554333944762341169015142455451715633755870596583669280187337540311492043272545
358132391288467421246508648155424437313828959902271723155130593637318649251104
498998399908019354041283884896712529250072941186064849529387933076535631101931
949118490842259061960546341859235047969126061495703399636550425874421227931976
069053129386639446957046601283475341792984276709734307758085030351132243677342
719968209876118137236024591995864103735040273767521771885680574489884671765674
701301256604107572241702184965841256300682228850307383099609675829766645488899
926608759443113093660582298516320574320964233823563607528852072224168469642611
564210569171577444043191526828869988129553374841310231220481144349031194144625
149352275543578360352926875874836489358087925091232129598249039672716987774969
040979098355868890802346851340119696287499302309246013665356628699247721878087
034225059904171734931232825844205284651160792238696452834307266279881502052435
274587546378361367431342462737836104510123012637581680202063062682490950865766
490983121328919735801254340933789566670175503626519786991921579479152811234689
089615644020321999426815964236598805340032054309612313070397942119831502835705
744034215241213055968503147161517832779132844299645696789665872918095017213490
725896408750113217875880545555384228931064537089759602660172879800287293983927
805538852800735571634938298291388895234793701060904994451859914364426132345519
734634411252261954106825137835715543722438174707656814789058562210369354083233
411558703987993166268361779022544876156674186617830147387914507355052265719954
308147260300282067663594481603870261476851738256765753405398421114773760720697
460604143812175721770161932657838457266312696087645736675767881213312623338993
615131640036223745557490697382578777958232354279366466261766671003192945474134
676302265384517935282904483170381949048422842592028962788827486028604804995734
392313553076844692826189683417069866385348052060627537809378956776759576625749
758000773811261029711484817070106136710238681651836348109497218740038958557252
253889935292030916177458270054580662202524253291935997437076116612495801703140
278586990053454913135281445586792258250544608847858767417528247330480104399747
152494300733907161485253559019438130684962153238789843275754595600679853925687
899561206652817079119282843241705082893873665355161127058266113421342289909694
250946143412532629351562369458026381311748153626608560477718262776585644578200
561866966275453431567274596098837917057503326727608435014384952501103473985732
490787098586159795246105717490352962890960933324057575866818592181308726245011
920641216172992597030429017160531996642417107055924079588613170875491275929373
254672342037095623729762345188424930478397696583775978033743926627045656745440
885813881356610858954830264320003474306286758449618383368522649774744470817504
491392373497131201305388521816730786381582610624211797868013916376409037250957
343827333365776210763613369451429883699961493368518530318038635867531546713800
133104349071386721920470670166040199541259654666015840458103051731064921614340
382849388160833512973861806108903920171149523917872811385979445482863907831801
580190498487231779635787303398177213069307401425607980656979555993029127917286
760982063003173739774873777159911213976150263688745044595759681759151956449162
996067100381874135471551371246119440299727658933907981799211310966769750175775
258845097886394665213194280704654988415658394781461825564533495511313921075886
094624748221647596855391490886437592649266777048235722065418021607916788739199
122562637237040768910938265456097349350287891823031692182109314738956844481670
649365113128855965476960548200392465668989346063706484717106394896752990788495
249248379063176842799942529097024300780491657040292578490233891773320947656702
128985118016220969575613795608343551982664913889688295798778381965135937697996
822522592917947443349814308375722627636681036879753237279811731731687895845360
560147010671919330920249056304249648407431169558961562418900635359457208067753
516239436967462549113406522958854323960827963437643386304426702320722810002506
708286471730533848481266294820254999795727240407875982582486839103045318599652
188172998805999776258324030127277036114496161215466887307753752764045403032843
268571316524127815208902072359261632103985001935385249538417508779330429772935
687171196314603685772859119011636238129459998331463273235945467132123651734870
826805480492019406223946558790430667100957592608240557431956516937660268214685
206454005374850774520543757022859322334472942534626141980476131279676832422762
024342968394598388081063193682579078103831377002204648845730233208406576484136
911738153117042364444244217987520621579920474751570175484926451441765394464839
244920233424522442669355008817398649846890993027120141727373374121903186895894
782550359297873672537033765442728140485428921446943279040910153993337852291524
905160784747587818638839263858437159528092643194949482314707578263447618693095
390660671552818978199369625840429897948892662958176830181409194141023082411463
147855116341423388973966428408955863019495103888891012743306587584505213783355
941423677449285338318454997437278409855532828358214603251910345946353189115396
158872919903963798381067811893792203375263746897668458895314356319109216048833
530248097578923192010083043003577152928065708331308463438149803994074966130396
889052214296290365255211496475672745680225395085372660256924863536128194857893
793722081406291570843433215176606249468348005070621447080166071793359322844501
630702137794840608988571728289000956954191628882781920718205600581451842613127
904592650267428025167563581873408818971221533064050174732076274468525247186756
480464819431670573080581427406635202350233059227940061421301273376577856889058
282537061712141935933067489462518641048962553419344929252185702570005330876581
545051319874885361269590719014333644238728724380608045731305144625016411242975
600405775517662460929135229719853933364222986851170317582216302851438626404304
883492612008192454653954449892495870074450193307583232047281865678426426911465
937234268894198207373454064873209751097022374985334172120317579173471386248414
818218090056394657155098973435009121622487805360464780668196621776462753503223
162328893841266122409416402997870113077347824127540771270764810804514068612819
729932922240656537351821962493453293237977940368448526477766886336679442092403
932650085891732980600532641045814078003381978925421010578416285480890775443249
126316853600722911565544694541993291137028616156724174053039905661041704813318
593002879696069687551171579967529263009347365950705961695389857868776124253829
285076805945040445901582716480798380292058794256939852975079529789291695948742
732889738311409048669260563154260973814649874030079036249828324109960054789609
354098652412111789802866410363930767536242128594367482456297078481869781708508
154740335431161916896879807987885048100310934313140627126735584702088524116419
092006036195521611754508628683474835338919403711646428627138848084832571035765
384383627136120963315328284873721856927911202583979375109151753045429627008689
877763671617009842098155016535697501672791931773371462001337022375658295884530
400838681247206082977620534280587484775354475568113749246954870923397817249524
437589891302804962460278559758600336547008464043923149027583972930050946392669
354664762315453448941158410819787081651207394595361316705307829513931708623723
310703480935904893776987831673947765753783763616170005534716948291362242461093
655638623772843664476313744144254959094217203922357950266709736028189066225754
274823709962040893546173076742041980227913683835582461371281283330031270104688
595361519671639115450684610136931368179617537926637898817058062925394393229943
883570224708809654069280942160210848308225115077770049413460252956537138422784
807638655849062178688457289202549208308308322781049539767693775753873137359600
066548028932792944323898805061090051685099912784649869853435250257262710967610
725500741299801828906776654831899825715736104025315195657146072190076993400603
830977735677968946844731241319431467238764196657270436061915735696621156488189
220946359779228239979424258937058532871146640716100951371921886049362813637134
353688856210718127432504819913973593112476682236725674305594967279710835860373
195698255095510016958382858187986743650566637551548318117728176677758947018938
472424490576037686127242116689538130274460872851294415248593647731892738627640
063547651420955477499836537768017860786545890384659562353180858437021881742809
554058753439151259026736132250697009316494610254957739289133862038344587321075
210751823108760647790327362175081464418395738792110974532186130749639410226117
096175093492152852459519279392178073069702897811042220014418991449769003906331
018331318548924278438806596360074354338817366564851861558109315788555061118593
505009209811285338191791020374343435262903030409660859946059755629742799875817
642531985437214409997197376024277714441621328740460694417974431621933489590844
891400318311507583390315392233609967929165057439632730260224878877047306887586
141491841825466232676330841762948621723779354690737535003698375788816217482734
005148090793011306630732545794898743609973549317289848077535069131691734036468
881765154888708786765758236074235118715233045670303323247915884406855780333991
832352825456327456661420593560645658642354579814314638010587555368347721033740
769234576739693689390603054344926088419384773235164701372585980163453246181101
445917752594877376703048637161780403781829425395129403420730391398769876551065
480414909755656079719720342878661804982499484107097713680349436364667374301572
832098262104313284656227772870424252271871245893874566502880933191122177634136
025060366099782501007179821410797275571493140791246148248913480855239122567595
140258047965963515202540493405934176109682319242520525964151648645505183261204
409589105217204392251553425680510003201875092804221987011350018238132760782987
299982794091137463168072585024828098366363800478659914702011428656945081726572
650074794320799721969798631908361365184423176928500983208367622971348440392552
440236571864685433393273097242394808967021693062652858828990081112186625216571
956133838106140961805126014041877030846722731104845981517434788225642582408531
689330567127466410766249727022056250647616229451040320429636913741211652626544
320403931799078583825512435530108437406527535032053686436676146315340791904622
630637638627575181118456420765055275744460785157458689490250742259338559263869
561276068468004110729980292055316040027686529200235222087709591008959046651768
213141481394841618892277115159388874870355400943137032356037276481395689287713
308000869171388114131610388715504689226384992161786227706682892588093172860446
840116497612526895361994125932546575169004053063171565613995901844572397353906
813810477151714341716220512509761964911776154516970286112305684531266925766294
536376723060185229039756845110030249645797683009211523975082333711900698085014
401716273450531538835586278529992063903259652234663046796687135386819621316498
701403611394097449448567642745510134516316143504613768353711197840874772721038
845619404349382256298774158488612833190135603657546032206026465638206375912892
238591318774620447142501675242400336845626816450754899424771590918069116605127
540197145466252070768641696733034773206389126804194323927575819426113469290749
602018676409647491127409020280363991426458145174936014228314564532856287083097
884915218186764891693730984764899970187916695230140606454752608164534643277479
472147010836648446826655109994268707475138052256990111802544132562332318681141
668437016354559138031855487657891784025645312817398903676044376425534250358859
309773176464171616962605257973225161687941351906115634172752953674901609624988
399538623666508818983146916361673290998504294487236408819692576870984355604903
752363702207642205183031518674903726635234637323637450917775418682911153457774
684831401359917523375419073587705036016364559855314064401690079079431765655567
718851906075314447675959140074991298955476879395010124423627705283402275833842
347574171870898276268686567581609466771759222348448652432853485644393547580676
749448323364772017656210299731134114408724977053988236283945064496611885453186
034323524918736165666269797763516284573970695010900498957436753963853991622815
261794603451300232264508684316319707468323602752785214560474804809647172620001
103687647459780477908716029943345288950779719443471022015726675156665918580825
885990921044636859438312713318580636633416208680658573913071269646471596407246
976774549105013320119177532389903658219909156812275971781016120069268238463479
729781698884764219653432139181864474538274093703247106152591998997574938444404
285155703745896783983493774856698999160443660183584433988817611884373101986838
432854130814122345079662210049432999717715682753071183917030173821891111340244
709000101224350388691320625448118791886123752609656451578985575035451417430944
443650651228160458535789655471854179346442256696196114004141648030830084898710
290459541833931130461681436484863145002220005942048467994142432661539687130927
210257971476528128127049056118489136192759794661985413154694129363994442073156
755117841495619442426271547863602520088487153458805954286706614628181086126170
683149258871656563489888173433287711449478530235242880879546348276276835259678
733552106640510567130368101065009337967288453143600850247458705846857987405476
083999710359762293212583077412467946794208521432649330761132207909069758100822
945268820870022916067556128238528282360018440030800658736564930382020572580542
501278429986483336409573087884800994307312319902811999954703564894553373169694
400486861141193822444338707252915540616748885021620932447920941156628583713897
686726141861436096007569284526090278493456304557565972296003160177790009136892
594967775259014206464900865666114371670532309024512471592361354792237141278381
505088290111967464701111118797069431493525785028894939677612021719204430235512
400468792929658794747943054955257150868350168591567321276045571086090872032665
543737096647838197066739473201548023452346070019312387574368496079097832889429
140997380681799345390836083011629009856022175462503592496741950610715614467573
690370331511302357017876138637595706087204304451190342693410086044595699029304
624248089895039991329611426717940668141354991208938348637176888336466453281145
007759475080785290623612012590073227605916715482770727907467555354593043556006
936342012551242673617112708107649560604953456122228724965781764079607617132245
369022915768514634241903887236382029350957402590454734695041276147123791621983
020534999019017025577109514074839960324214845408779458011284899805577070784895
968507275735295980704624597397527447864606709234160065616840386526205501741428
914116974710519738945813017350768329750050405477469802469064243390479124139653
295825051934833417374716011964413513565882228018649776931029019426020914814871
483737222365058837240438360932628017287533919319477142643824381228688880150131
731538738405259041886996393917134220292837294683250449942955146860708929072814
379404918581460065956164460467783958236738737541804985373709138211183523290481
083029455926200766712424317326237465454133745098513469658051204148328164832673
294820478543667951349612895186391647765777661648915364114955289250997375162555
775704473541507413542929129624462434796374173373384163429573836513498331044444
662171579538934240834367265937656046009236967665101405978775216617824779243663
616581787788796065459693309499788137331285924800152297727085069340655854392029
960707445738159145147982174387773815877867123999119783196711136054281401999491
587182759141224155044794535135691519857125911118235938069778979704168290347010
480893052891848841604374328383386159181138245472352860212371546964024250371597
427422922927943086312941892062082823821408532358868981657792601854490992033339
411134591704707260426594700190084812467238579571000562971506502162243592571415
744914011258044961149581346261098021637644927547720052511063588787511623846537
886656881313729990051397206863501039909825544046118703972034204580688511045339
675393324632772758659333935496815711890817667400134977125959616623093793366310
571409637578072272587583329958885313373830125181581688706742343096697811730748
501224222916606303356152256871241651566977710121321784317214577082022590554270
562153255561925606400739468778125064256895544627152537966966282385746127082752
698685078934097630316373882791737419148361618049125732364122982292996545322274
750218118834544991277614474678118268222063013540389445094742733061980051002693
160857599929477675361860043980419153099424552745148001833067136976039724655765
349770637960979541307821973890368581699928191233275158391480609628266216418627
421244967317160914809965900956678855312408832508370436830964050766236208876300
476444805707526852090954937758572623428295102706816046864336008357782082967576
286532924914840245219263884223656837884412106534135041176626396199456921983767
310610761708860935959297188197843755926677367646329555946155545303522228491274
389590513301976377916141181514435528183517324442183243833380267515242944935154
143428904404905535327442598071848691096114401269394031124713361657500348456746
238162780126362298938809214245918949119228882111680405253175997220005324908328
761520585697674016799894810741728397591837635595420723074817258860860557642638
691145234822941462488150014815196386262192035641543576417841270701904172460029
369712484631878720678857734056033904256335395940796931450553910707739019473663
958258102169381961831460035870498939326171750562554239015692715823247253586033
258249166948407353163417163496204113883867270019547609526091346754487445729769
224703657431195697650942296816154840528275602854185076709508582558207065518395
413393577054882422001587401446335040355149484952318862602892345856948532228315
859843235170548480460681899806580878432907357748019101068090586198708019538609
137316666066629555488222998403297964271502097836806074727646554088812272795016
116454871434411290750978961665170588124848470998403514998009810955912049689384
553908959930844351550868562874425388842345145763292908357687537327692610560803
054033788275993509123220000070999649392307423711020533079410784473767719347342
421293729512232697764369915461647815022686834932105043452361778666968332394751
349438175245143865909449983665178799831616413550390126029106914701252462041865
278995103586501206579295269304140616913810179135643322035528335673751700401472
965907220918226702862226544225130866725524103332739919151286307806259290932102
016694261078850137949465726024349362453612436140529568279473566523639872290963
610894812688053860385424764435373310263442694595705750925398778256963267640251
513518103276583174269932292872722802292362011441038907676596783048157932763866
089541384357444489380435864406810570557557602921329647581658390229903281837066
634207034924171365869129608349697606695590397711546276511407970963804451518127
342123995009066445281946158392836211253980675903367153646789543190027164352402
279884969419240260892135036755755259686364228056154568794755881748053181885575
538408039716887426599836057943032363516908677104849622189334152188770736623076
262282912203060804714581378784714377152944391902347857670601054435922336625160
628535619201947692707785700102719143409388663320673957720866716323071106804238
357901997489597566387608179317462572744241309275170180663020736139811703413223
666648190521679112602342379333127015319737402121469616879005572656220463013171
612146853753709581002908510873835327178971730283268316462974651146599480219349
612183571710355548651542049311822046720464359271638164000202418653424372073009
464639375844258657069163285426144947147135621154138866346383973626038887025245
801632921131358304094101767562665908756119719292400384296193451173280106049246
151732253617859369859511214390837655545837709962049736729182954037563729199467
032281321171516929740762273020588027720547088149165397232363017941731896907176
618007760438909573261319128904112297492126521943876317904556779666585279665508
354896722202484833068639124761191362466052050133608144177390526753613409993817
941469879653270089305558860136164643933149572441426599541078691782443781678194
128231080772650667863808505382710811823705706344313805031441660691622748908632
409321601371822446036707618616387725810344350810456994793581583605890191464754
840066984464574735026487371717069486122891207830938064620609071741479336686038
734274043131352258259946344164772585051673753007344570705193286510848177525910
082596125292676919865298697713033606841076973511563734464629695556143435790609
317909341706437167964890360674602029417142367004028280496474097595580409470042
601731885226564096969755956908388457822094769055474494320782813210909207605595
329862672463736028521573174245651912894061481506354086667772448367831574126489
815013662956684286677865434418200763195864733660629306956514887733768996836080
413538636937246803215936094341760526398923239815226192283160431323625249036940
465683413512477425659363638023236198328537637494884733105246553607210677422053
099795106712261327287435553409672964028824903702022324254942070407867424489130
299630056482379159387558336324287801377811231140780645933075761093767734498892
149280634939820275616303180856837110654582970912783253651208221941512589135015
292843295079558487681715291937263480668658891245759429838609250400752954191889
252084056681534258498230655759877676757875222933850915132386144837084352253682
137512077883319160950179611906143373320487401951826375262746602106931398759791
985267999549828798123916654470569012926107867158533392720179512016286544285954
211884614925455483313818209879900298301987267544933028734986456687887642090083
710477371018825369370726703789400977544213548746273320010664053917620144194698
810790427166994721765829030410971956172698898945849081044872360567174243026041
661324687650769686640549694045842979675876447494887329342009808881751117108133
511064513835275195904735548262429296230329808209339263922988796761035197837111
267202844659075072763804986583793931369621081401935067630034953087686856674029
785803463969978788366016709549426945487473640319460745156504773573575280015863
883847932941317155772106287545316834411327215791682673045334838802174405838162
327960967621732200777070103667228684319632317676640777366548766916366777076313
800265604830260401203421907559134676532457844937897245909249511880325605748773
151646808702482744561215168099281436891210641681761795918735353262009971379392
051100352873370764239271639370206776975332005863346547627980826238743273339749
312288227148069869484304725385256025122006696740418860357440868332883449172308
051202193920176153007840816823260111999144831773876401914677053733925515829575
147093571126278208701868190171668850023571203861163918071446785852723714321793
411318626314208354111419854094598481483483940606522592043305483851337018992858
890397339282090378691773512881684575221795995419430724374182427524659627671371
908142129210150648691505348994937604026908117029375198566123486299110071592581
272924533867212813219189189618397033261699759463877682465430533138484237333664
070991889362413714733989067523090530071885212075522478987182683011424878894138
064858431222677533773250229242830921286167861628090143773751440647423814947983
164972271578206831167920179003034174263687589271562803110861000708670864685546
728493630554594464827536183269919109363611730975856329874415216623066449714343
854266575953410555224073951990418910187611936207064476619271210216961039293454
895227798366228951754029845634135462965172149938561371224008306230482487198469
040669148403774885764928208323024790732095916541739503295344791040779082113644
910984542784244221748296275572451882521030184304931014808934271607721235332020
535052344215910258725800076426970641204177724550401686905808680704662244729351
893813803133915273919459615319873864930678632151524995685696570247959803773819
446196000082515909417039276184418948600575385246210909329321188758512917613332
143929059952171268335773985838429883342597466436789105341220230993203802912022
080401375444781612159712509823161397046482356958372696184849751603491797549695
509963594247567095483013482856124855635306360335244680743905518579318643617228
228923748741822306145541079907024988831749610111450623294075804796057511600697
523348516702455326281991194475228114287347504615302520527153267118599732270515
701590766356824355157292705400003876929522372395135231384733392743889245631864
494759201984689522953753212001468937475213373206951570564970070048712360025315
322174648061358643183463549244706729629137318068210492338233154930343826400977
417592981077076291993159991881051340038023557459472893304526532150855060342219
456003810400342699405866827222162013000904384128200406347672660520035197820096
468963650955848653036007493626321470708974039562111768420164766197879026796890
640710980105960986058912124458118256915218918063609065284233125304395876579427
872645156818382272888046445586134410335446115147175547330590730155581014487959
228501641229176691830040151917553956360161820646243550164987225381817771510972
555524867604324321421878040719718118197271159413847255031059937202355661622003
866228124692160882493236050748728911914321958885872666967677404861200901917750
829547152548222406278221072244926949256310514012345194687685353974214050952480
031453554717967192197441094976605329528201190356397347244002212658250395146195
864904963393657943625942953274557653594787686858891631794260575344513227480818
958142820612769088483206020947513111752534051002752144671415274249363800516571
955982504319720307709305244174759364978259413114029286691188494582488650544230
366253481650177362000156353251344480763408807891931935785300693611993735987720
083095787048267641513938192311956462613828278351209929585161427150454023288005
586639594211500987921597493942355988826577680606609903808459767173029895515374
883808947451884533654769827778981225061953313803254003464793002309627393070513
173544281995390702246055280418888377693348312202780924902711343674406273113057
847112982917065531043958552540151603905084674366818721815067296276880918327591
756778301200370691671417101060569275105695963828497634267199336213269586976203
526521244077831937030463016122073718698116626463734945376767617215069465392008
922407136020768390979923940545631481278652543259497676011834450340692456399811
888606586326830539649429564018563223566833818324173902433125055836434410766345
409861031419564996103591332447927078957088919902585823775700877731464154920343
449171677092129272345083092088057356747994268805647186427866912403558975388564
993461357926412149552049522081340665659145239965089132495047184015002385013139
745400180188398467832163733475198274670559036351606118242877616589971739535241
124445289735869134737277252092537212301712118178021009553524714463725337807146
518696846116961494240630898694794853449592349494219006091555888290229494788271
403117875263690745979728330892042227755509969217866007774548348142512330862446
647285059942930473121038117246933256021738772304746333676110596671464095908092
330376843708799509237749276711787439865524915050611212770413893701744244080702
248318427371894999473834923161294546099773056618827680291539108803626799053257
526609259985976473336456162007367748741086000085417654184658195659340955444901
009707463384681561962100101485862688673508950196685196557623201483809407876314
341801464581217048346745855831001219595365929968933233622312006575659562006726
669489486303320588370348458500328558547050252653834918271443923816299705771770
854457357035166995258680483959876440521765094956548615624048607375893308671061
807183854414336175782431577294018687276226151712538679362766332279226967531408
423725128274290714584616807391951054617987077670393949095333346532921781286063
209095331629594325274698069739227105353890730117376770830487421880562074274924
758847248856230983736637474133608573984547487841448855162950263146743422184278
995538844441250449142103012074291600691142218604773700313233562521715451793017
308919546601163414314661128190643762213748832396234664300082592768119583076107
917537268032820140251418935303536821453243008961770006335627850509438905502723
283086310664118138167228506906315347021138641156177199269907646686424956912818
021071660035427047332574993249096058409014734030881901632434295974723196136553
091506759424799905165039507598817847014889514777517664621938838594571106562284
957702611627857253524848298006876651792223112938856155228630720797141328482079
432356046178632152822827163302519346698090683710656379005634565233820873273443
489054490140763941383939975425287715907053319368154091335924138664887640747360
644382547667835062927898093238486976473197995337404256704027383036925150533938
078855351583888518263239074139906456428526255529141985523177105198586726760247
262372714573809232014588475254581391684690747921609718981976910730216964046087
900118310238238261927460192015146697580607325707450577615144903451919425817873
797955484825202956401589000490188020095309138810323536988776464881748066494007
979767891650553798770511281130703090567491338128107567620106344689279569437673
605975979275541919931685343438688233969835525465532848775110211296045569392771
000136031297614568868364032160088960281365877309257190710695695079390126688166
225451388196974038966038335718637951711206994549264538172816711453141020004480
122803994877499835316389951866206028470501152761424638403659158152290685281055
636171599060693024717601738663786691973601937998155811065156708179900733803763
031091509431559928551143773037670382548161996200202994086313593782706284011137
971150673156501094646180441260144658345481224383431466788307990232090211880167
702332834913343648911987608094914358595559623241581703569752782750517273453471
860018154366518719662740247672724252546779841194004017397930945988274508702105
848503419793791516595574460268472730862796563684811897479737501848820003447395
557046742728930946242049765816013241569479719070693591494965103987938247870818
456918809610151481593336810636892333745787014855917712428155907629081659416619
652044354832105405278540902854851939324693988116354816280146205103522566646285
028778808290605163490276800463329118207002151304567396190577790672850926937142
084508709948392056834647330002250847314831895009943280991064505583297949962614
504899451098978381174387302199314273043391640760571434520023008928082614213294
353592938293059037263905858305737944293557610753697506119365994215503847367506
189940683897805400779275886535788868146906923789906193892268879429577639654094
087719882681145433815226258605525911321053916965879321176913296803006733860187
273298246414674175633679745711705591229154476513892752448116513237485092828366
464882449801702080604130590173897141971140815568589323547031973813293904091422
053265841336597537023970118605252831178499295875151224962951418923969498556808
057976637892595261198625404768062828202985901864524859777141254652467412282916
651776768997706641349358391225678863313179040359086649107570672552749564786551
101838399110763178613433594605419841076464689343431628224929752714403071555947
842540595257402730942933809455704972609419611037039929877174721590901057260265
821232977368375831601978433077477757489192646756879839456477459350524635521859
128136723138547539428913287660020805069559194087015508849714281644005311862655
954408088015065620525018960420025068840434238693698602033463908223990870766057
242418742867596476150852209840269355392971096756277005312756861333369754990411
219959290102034461529153290906636554238500896681313945343685509233327921622317
885560742265591112057956742473684049732841942027991520275485710995092534575920
056178289860471045481454921715052583129243896198945602117251997679476351640281
680980387296356271308488460049469507096222881543452210587890990311036265703455
794646375621382189514038532034054154576160958781909454767756755217382262017284
145178324830909882144007105874069949685981757509055972392293956792040077157678
051901981269379344384252308144069495139503274502750101410612204776756363580750
563380014811946785598456587670586369878558628120193447260862407517799757990629
712563769499955958207545962425498273714921463486125073549908314479324522067283
081850974091410210417289715595962889993737512871999653324420447060541686520911
306294762209693746558404240120658772565819380320805317918170641298453571965934
313689020451648659939022983677539102604264957119129383450538501122612318664125
162393866860056436147834395866418127322509200348547291900666068515929296502636
759695295066913826155888317520433122103254530374546005690445524012115580891848
874697640668733269121828946926710026605425121171112008650515639295440573639603
757718224922850736043686207333543683340614721363039399782308155004831721274762
855599617586423936877946759602688566779624589854982875745881441004423780157178
907066915799035324328857054586110098172051584921361219552194897607138988220435
484648555266850359532933065686043297421059248930619613591634862552210378937208
731012595457225436261632179782553843877239733365386007833794356317671321553730
986053308892757766685678593667008589623931842133573091115899366206281008705637
376471214779413851875337633239966231475507646595562078960561038791305311741517
981330645168975686874334021649557581087174050396049031429078575408274816489983
286173575120104701045901964216573972559239462508636059832948362756158370283847
827019514616266959542814422729806519101330604852605354347735325720260834709629
039991013167545045456331317785250189683488474095107858192771580646314606295439
413797059100005599931217721579613995847737535833809557734538641620381525949020
201475365594140757751285257542672392096967594661642526018833036311603873481431
125607570661663994517322035479813847282390388105481581264738129850287245116129
389117921711158949767935594361943984344319840961663893246162591603301416889579
967534890811472416542744909330464155944653821250597285350447137144988724251215
994276772781551851653111743895853149996861779955494647676243655205292277542994
867108833191518012771049579702303785892525042134305230491062107351858481378967
965699864027646011807196632019292490917589385010281109601680083397352580547164
620896140488913321229225514317043080231956175440760687980735040367121190700853
933364215046084146894935504718230761930822458446186070364252232325691961740553
550925747652772638215220188779158609844166327929075437080153226635985680956047
964023505221089420390241241062406166329891942748150046689509077232097889688338
425703834305405151137409275253985030387005761075275590806938912025672145816582
639077245906442778877426051046334341390797300274893634766417430360876754026241
177252531598905879136080604007558279555628417587395144648526885834917027931200
885875342699280417310096439806682822655538749256665961113245742403332471118963
012725659811997367563942334402545476254289042565734522074132678211391668088354
072635665356641274724486383197869723165020944048391777252044593645037268933476
160395618960764052217853087092407259651432567944366536081881821054203853799677
249835329405679950270402184858682588741042195991497092585535336882283241265563
540232309248299319546735348952527314558967115048269186455059738244257971915182
530316703984286150201394058359715599349825290231237096912927916071677874698848
862949995563130618866659704405699719130891508541901802119433633348831843704652
791739389401265148343930690662189188409418212315224739002130484885209892855226
926194944663965158680900859560069010787628294678390635963376258322353651851689
907422813751904863015034263879237239025241406923164720859809847991686648014612
380721269115538708621795880192572687753341725682760511047984547662291700863784
490150191222648051870745921585406716949352620790583138126190188449287178382195
739550522080644838500688184230307706230006141732030142827039524953415065843808
598119876988440744386373923623778916469730596029020869667110453013186225774164
787484650482086131130969208525641942841055985396925981763384034906385116451068
116508733748896699924332057914840405067778315090801611592157424588756081432762
669721062422843208773227297274818087808301416215661372076056629414169021698702
123028681648851777847892085609034804897301667016930699170502394445787255843450
929043631121406828982646490940106977767905026502047508213466564210534652410365
948302555880236061347621192440258618461727239629510335856954051632044142037774
556064288000979624524692948088129385903148281846801926181346667299933677044834
172133713420087221568254273837968561272138726122336070789744863620796589686844
592334839531619133867885975245601708024255390892660607055287749720065952225877
901738761338658605370363272059239131945630012768348680528145583366342618853132
202944134938843075496447584951656440180517155925762705579502379418756107952204
368766164269089682511976641213511120417899050649432816862671762411731684615729
374996441926968017504852199443476818983635415203708621047940530075426139154601
790994192656070804375623906370248828585029284965135599016168145754684086491480
956814806133431815751332377392602417725375706314014445982105136657344521301095
294629463584796446846117106159452659812212434591219661010753102557793706228653
173423941543588886023072224856206039401137358509885707153799940545189351616089
363234404448530904913212116038557644506184329515479225223871243229521136385582
392259822281947666261012886478752121169794444679143457152404045530874308354218
667882764355743096803194116026734841688958908404018184213619896335389978923452
684402697257753471109571678763106588885708694697382938663307599547242370376345
394385037281074928088317904423861662504021599210209593967399112654204400289037
585140061651140992369096372479923118497356755811530761344012203556245663880567
546233297759167171762987063381925723488494102916294753437057200551576995623034
057098082087135587497928436203491111385386944063749374773863129799506219651472
310126484049271738662514853300827003410639425183814374819791709410047238255074
246264103921047310135824815291615746671353320835845663793540831032968085908958
329773286833300618771994684927616714958164691001364303814286421955752096948289
937366112181520889717845877723474724704028440518888079837226565023422997201020
071638900865720535113549573143692340761842343765347659022962148577098012000453
224020227467361491834401423918467608943659830493292970491182180983739039643828
858575761369342563827414185627255310224592952064387177627182355493050137955380
837651841927126092840145031044921284455046870676011131067901955808245222772472
748753994812730064997539308621706174113620430128930217364235964495437916752726
453788208765128588413468199487822852838765146673738038221473420609617199593974
944761463995829324393900675974079546417005371337838652458376635839342523530657
982471840462422507734232228177360348106475835876381633210408649930835390555574
403667450465485484159413222836685878479559173831317984064188689496836663810098
674240236515821622898360359257831793923411427328066978152819234222767150658739
197122666151945923465064547621063067072722914307871427856049654519856850820698
280146528169116910118190352810651643406366452492233705630209856154438870419112
222859618163552181976793504059236978310236778079146882105332873490478782908801
477303956428554893366078960349868994659563488282229229684016721530126535469018
585583432457652049463246605296414603910969558003511046151214172626002579605357
081165399005334549963493576222881622391442177021081292362687552797572957116572
616889562063998726409180353537862963822844886078411297683560500552665467180084
031909821193334848812346436275794773246064553273878340025409736540896766113935
840760993961238219744835509699657652762360882855266247334183308537706080390367
076874970815530861389004375962788661284598442382404026021229220310092041128368
391573358526276676073160101449589748377370065233686698532646473024624873858411
647829467977475014248485493214117706156707575546287292408817457091097847623212
015944602077653525891309673789667795613892630438938430429551690724702832216114
763729611930968224062195561121430833495175404435500565978730385449242134968159
349401627221888583321355977516230628404996901766901932325968896819207304269269
330702992152811635349080643657299405997664597868487013123549469240841142502872
944191538362550385976440120003884148815274828301284752394918234756823480835376
618955091146400705067521889384017201121402495812398341265115274838707186099965
756883278701630324758142643801520226260646758665796433757218982289475509907804
562413963810945665132902743588858008919392514003879815747802717598925952602611
772936610942499516884082832006943471487977888866153628614460031758336146273828
177270365505030673228212091282665313092071125683020182739739660468781000955047
531915714394453419407255275547405881834552310788381802577564255716967044476742
727715940755818915640291577519821026392787429410537395101191797636048304248077
022152959633456587171203915165639427602587385497536539363598955581568478333748
122247856355768888585499608129912487101788950413836349735421643433950154833690
283093086544116060576482453041789019729601388346232272473037445933510038255372
789820638066268657711090653329662499091194787719818192652536173399069276364563
383875477722668034529395786842794288259431256608351741020458894507634166620130
167333971760479875507560300564546419702727182884261633831799099275785085010642
149243589418095554003762714132273921525152735971816853825008602271028290382787
449493397680046996236806585670115817296907749436354099829218104438433022578540
615081933503114275725135667896470070622738137796764912136386776442067247476643
077579413590405034512829585576392569904223593886562000021262427148622520436066
424912693319001956123147139926575004824673418427794011025330530585362866878521
444837668641631909484428236587119575953209023208831844608060697494384440700596
282823272239454884247337887557527735396529500888621853940283889354107926801945
922060939480833821963322015991375618221393692296807260955844257880196755695991
266072757840639326686298527658449903100046280718605064395582045456829641924965
992977357982004683974370349591723120602669167797090172105615946769065345425820
150281038320507625970896094321241926206351429570937763125562941811102464432766
233249187777619111577989558605601054039779180600456203334791082817451657490739
696745774739277981951636392296546359827556722053767653267188659636829199042741
730938277369387358699581741669331809954724677650369773764457580964301866094316
775474104767528614994234494921508669560022091987547275957201064580026158669208
381711957630629740492121714423973848372016087220251701991863844212016174807416
800234656998586380559431061603793917844465510788439731351028148811972408866806
132505594697976115807453945289360629824544848675745833862683825076044525601787
122877248398249050832115572815192560167644817031112851989904232097492980016934
676099473539389846629041974121158473770917614696752768059901388618471932130514
456811247036472585054138804105535003877658661844264035605370791430107699311308
729492221169362585924894436728489380226951771333378502324091334086704009666863
642961921829266455575474827402908250781507386215659464883130400042130273347235
893794530081729803028371496106375965701376653587947213824357131354300519286207
181918425973358076163306552964495048190339204960044089781995352002021787830888
676474114983668276988508029879010088087561732816270452118535314555712091230283
633304805652981693754326191455543558042678071937154195580479484706365137121304
643671246536424228211436209704349301657064283723412302462802430464504573914633
655800784533661359872242528625207598158640603969135321911855674322162117817419
022690241616516414923057326055090107437566395955849474983210410208979612618515
330469038282014202664648842320281343990245129094111372137404383032166861597700
145093585343561365795006020491886080556000243082501080802258213225946746619322
998240218702597957497056416856406793206450395420375089910969828555254426850255
154823752417950573814918141062687086667153721886415129355194476445766974949323
426451331650725023436049298560999451916198617394176919705958514714172163187718
067678661287769100395567609866021959715959606559868701748599430897289358673286
110776352049424639006539794619377043492471188716320160769847366124958318250723
457115048801479129215896016021832432034329089748034207976937328115876401764801
853336391341286140158405922417164659169118255974944023335971707434183820742638
453043644828668616597611769982962191214639245789766765709500475846519541044485
537807601725108354610182364911478590402838743707127498474643501004321627093768
729598052145116944459851225275665042080005225355375480882749990633566695783627
742991524099135363207833345899604804930520759392455022423736111133935073174427
188149401148010158651813059050674644219668148780457259828436222777392864106462
441259159816452018169021805239779551761938864598602879734787499309895815319363
169202008845187421073085501117906641450594915984314802908244291715310448234167
218782132824675631310652907312968629284339037295019841259206192785654090018306
134191939384504002651658571435310075011993183727384608406548250825919061642287
854221094594397025265190650491245849554176493888200507556131480968587465903371
134116987114274533617832729741830047658926761745664650014583647854792719865364
053354022941887565764933633011201684780559585643462501554521427661568525768001
361529364178140141221785531376292444011674464937471524240312585399842137640088
793144392915870335374646933495004095617412715050721056006018799409932308095769
038761492401899519090055893577061469384299753710590004109403479784453131266081
928302265313522422443213705001223568258397450300151523782558177437451932729342
960148762269499285099489928145066237272747180741167893036796683813226764494770
212620566691075648881361640228682652980164586127150374964615991497865061144085
974510239261518841475252540226255825525446276199437103894778683359074302498751
261837904814146860327218737336310531346676512409910422710685181430421597674011
753681183104436736724312563035109540395752426140639390952852438269417924601527
071310226374726046528317591322564746793813991481347413476847238929671162769625
537606604628240526643018413307168487843181802217858962459032704829033259008664
575979357933438354106113198960432263266688398951179648350889421197650544519733
667065473683395165427099907595819534038573693829692405159052392027996039102308
111213945712781457401612329087083312517939285343241965053915872913835772020067
497624404940955102411686898022856571095193489070176956109755034809297371288516
161461538059112417720733019772814962304318967808787716846480686686437006951647
354800156361819026413018121458973275685039942614248823671169480253966342516267
803252083008556121585683844823100283826191456864426280859544967931440728006323
338808166773942707639154805923242107000820651583821889493501119415926295327908
040545014142413315832037704284956975865033061533287127937479433810450745759747
483989233961200716839470736163509174145526264636524361921001011056275896755224
276019021154411721572435617240288413605087628338046468325001622014470337434979
284697645557890354168315805243661355541983747009508277581964232108839772001938
416864223906135268859952094880989249199574268328543955411718976507322170579013
828235679077643491664672762726673157374981146393203136262636799826452553437396
254884818788614182966904704582348986096202129103737497605575056572708653019384
492347933394716856675589433129488933312836784795996361430935154563174047563964
548313292834480879411313018714832101517296019325811641845184654271903043238588
793948118750487005935378076790345832744460503589255525833431472209097842437863
732299472782232770582590217111621670746865969708390476428021570852006137970499
562524452600973297032807308951866313107873766307532040552399901940833124236879
236388897825337777026900356424391677641823097712047646761632006868114086689809
339395605519874329710250829811233467931424860834343178168580775881565688288560
265739381806688042867406005369613067187239555578633476539495783436089991352572
028417714449942744725571845240568009914473346748176611755990667662174893623577
706358638555441488918565534082241733724779822989369905946239240535362956092691
273312527013656909735797326660039248011878899346765975308037354868696667202775
147764775723212880644222600423564000398561977230546599525390106394726829263486
050570798385335658384287633131580881804076818757322466062652961704106469321399
913029830403363399647802839345377921839929404687069991662560941436809442435043
519173671031509411229311428548282046741727040429948969855323164202176804721790
308135687932871320961636730655825189455222055817894884478316454845956107532635
074483084305436268839424185911977162131482517969668081498615936786838475288360
935548021912040267253806489305218015585877145754812430328668502443317823126670
805738877490405869265505658470517033107710497056342115602309982253758906348806
473230096922866276268343522419680107364558407255025829198048587410248489291659
330423244092394545962079253301583792284141616406657528640909260739549610141663
428044308667067041233330345568074156321458689534244145262747453948084933243954
658515954363054738052251684901985917244325516406611170135400195503798994780863
138808436732670878027331279645345420489909679601825937498468935989256664995858
408670976470585320763477640696789055955486860644147537627381156045402073259601
513309455200728658684115628314833265088300611621768837703272160249168887420538
038060754730369952208978645854661561899306108652579785413096058140327824983297
035934233732769422067942798620740860873569641799269877464108554415081905024854
610728764522460593443533057451992032175924675745158356362176162908055111471111
385211851506043462061391770161366574753109656001167981125691168369453799504788
306233902787616827001402482308911878042250480004514339946746029477954680535399
580771360964318580459855071864618548792565050562294587940000585355878775237249
759877941435784996912429592341298500067310396694215028527514050521185053682035
156798781166474050242075851047419139878949867288303783566788531332172815191784
102716574165047341538336256134198957279553339220312339294616099525404932720105
001077629184784219862199264931092981169630626726332919133095674614235842942153
866525302853669073581351951109945330780053215927119784020511499815442702281782
021288823351724394603684423329288222272238070591767448517027515763104996747222
155052620379000670390813677435132993048773250239714180048956238115456940357167
318700183486362764471804805958275688029113495001565683480297447566440877762738
901418037483172015906835051611763359710839529004963752760487341693013241399604
270577998053511479987017539832726961964741289065356851300109096107639307815463
160520469879253503817884277361925246286861957596203623506761862672628372676226
051632661547718491959212785655024916259907888028682336581030643086039379907852
368285595156529132271281750560782863730917058682715964363708501808271962641118
117506731287235373617105761560153763942438227400451435275556127840398766850223
339035247257055871327167294887455487327847228405245163796839674054661961679123
576136725598013764266313877162449043938965768717104606400613346222910824266162
426049246569664045794578624699068326429149676863105644295443146848563541723351
586825881143904723072621460508997772735880711320469106424737469788895688078050
309766638981754185273775231770850477987059130221801406370137207181482702200718
890454876498264230936273425320412635272672427604545109123299398176446002406938
211032427588636904440657733386537588363425156307793095240482374143697986943537
131901837654247886257912648793224004188903406756493827971259148555913656713829
672313692028087191556398444648975948821496558328878575710288223067001978324454
944884908906258090930952769623183119457714710414665876041752507612881984106330
624126381772798820672856439426608963713491832642015181670561566934992314328892
817561363374817456398960243633519824175499673018897397587485905874721893046078
020990962035928137403191885334609287830485244850209074806583802289979674455987
243485266824155480992978317979646479124497348178180241962458153884481471566387
246532033767218917853064884207828805246073686216009020665366895714479502559715
017389110286121728174570457725547440086800111887777872977587671959209550349068
111145452193557793407633293369622528286990777131637256400123909925603730480357
873925420566382912515013034116925614222996595885753347189357964082773306508102
302923848370237090594546924654697242760431645139105644840800401363211829224698
169901102947256753835313819210858023790903825540587635688775684137281810046207
975770576768532182714190302363324147009771629435487941714550115984715559246894
193531394499929365185679006172493790907788016138326024994117725016259606671032
702898762542819538341656545125323946680680400806209915783308931078883336970304
786462676302174920672121429975276037695952026757018697048435600278946771482087
745906271468977392202432335785796791795125725061398337021141825615934737277754
720137276229232167695291245598897862523831481085564887928451002540847876992689
095243112648796412844205465134756669499779934963219445344802230867445321875315
962656756121361953936287625764084636294161490185857917207748040389101164225217
389828222797809224421439773893139289274048255187700116863551248956217528075018
179875620358423431008376941053153755434785370972408204992975174510196517317406
804379307635022116983999266679373243560417708715630223492316498765728081230036
151310718242705365459171769048698192237480094375979580718625915397828947046756
283121732952478194952521185505773057481356433819128570824165920755304704808927
850313125810692113466363029264266521920730500482495068083663122632147416069215
238235335885413779316327488774904444527336943590055176842903083266339658559642
557395370339160560392382069418296836346733339256125094237147342973470634195775
261697486364655751581621536066745010507652181389376309570929759281529682216932
098402622496622883823553522270288864263252240438546286798077130959124099747096
056693371805814179537894409750941651212556161627635175609784129849105772980444
274992031326849488672376120016144108818569794878851707766801381133025262785231
672723082195993485035292740066949933670179867537205751790793148324118174711702
286720539016696103110249523194157260256133827213968550660741728805971641821817
412947593814954083384634470713585150153461710572481778085655389328728096994172
447660453995211677049305167173237841040008964675769385447291174963145294939697
149980600806000359338225877365530792885645324146158095207051140166937999221319
349421388705480290567466658888414575543597501677551658589159041895290101330436
370288253156607194044996675693364061996594412051031480471516652844855480281809
971263650269348846043004137867380213623463364841065811983113584140698815429874
921900314504082364565330206977982136214861542496915502996919066431816356931974
403704929706168968441192830157198295606739106369603519996527152221142132256081
498949583410240544401700845380025285175864333188088463298558455001690269600873
444810370453193262666152459637707718021180557504076657979290543738328200806578
428403462335366657747640557884736062097714761156371597401918561329436926973790
721177416343607604808160445172931258900991265653999843331665468538280596490460
563788827340298634396187282405713230668914747068869398934686178861435485140918
072033678508975150139648179436109140794706131249369554600417690020653240602388
704632545729926448788350401412773730165391569282104639599956806437497530748149
023058912739646643947498811291060301268885091689263429004121468365593276143840
303761553851042235158078440773928942086074897658246999317371784509676805386970
676733041751718988994225414325834736079046786382771221421836116781669274620924
250090749388871658407297774290118515416930399830268047319140338236381085581672
863005192378493707956958402226345652024889828357131160783670877906410029974080
015935586728205524594303397463539434640552545618507260910419853548457698500481
712627596245072106516078006542140967720749518598534371739820330636193005911626
928587175064178881220697067624834786172109999416429215719229097169974124211573
206329510006137349711548467771007677270938178348979292424195799324625862420886
866117217058713251946045801684885056922313573589883400409005847542795701713791
915172943903200099504496259027516005773772614378010163223117895854741054318191
466010514660860586374594766741046959605980825572827691044906078947293319709838
648093435795018847501868288951339290329687499782036115964924189304460552919078
655286090898700739285304977145074695780605294286988717966905136921756806421340
543817448651864717046918305488345002132279701272292637708079571430327232735428
103227634499591872056112147640618038332316840927652046549819921268846713290672
867630421926165188267777747093026705930326514025806176201823716892832151174518
458427270666463424918170876305612159387383555224730917048938897209444538268174
600938612501286513252330354700572057903845756468137190462414743348066253312997
229055232679661259624699971862104790439488178586957621830105474654642872912726
351817286114175989329513897306324049466009483338463082800982818129476082083245
979032533233925742056758032937705015788287809881647007924108770995600596932487
175066125519589579974334428833775585588090862277219660409908726132239130338998
623698880391790506728386319758102393088839000408848649095286319440042498402180
168802604198813996968616517008710992833277270276735628386743773848216126657936
578096529251729274426215158769358888407859978396570876832452321765298771040528
734327723364626081491885951504926685754084177030446665146952682473043119005513
312233051275661504149803226425128971072063560101455913214939675191672021760240
510408052940232288799495596693712220454356919904120434274714698728796795691552
716788422567042221071736143244616695435207424459422931421838820391333098770857
720364123707654287677195794892212967986191252678655057052117738567665853373230
260115935702465497170493982360459577592800221476090106882954099670599671987382
527196342605154442022843236016445590739700401682269110892427569068777152611573
641248765045230352582380981290430555682488556584945440887995969458768910700834
932287123411730701311993575293005254509218371439290122357462043948332892280227
517783153198406435626992875971926976162299203578864082518230653194226684009300
506123327476906457270251370423084321035879532566840985181504705838387485765513
362733614712825238116504991039738765481566582195742887063969311402648387191430
314278574907130495346733019376664059101181671808515607812491789251804533650711
620147046838581682197710050532963927073451510304188319185892189338171999715964
515291731564946045779536186530378491317313245490784113404254744998930004077577
068347082922376980568361792879735587401973431899781175598142021762184142173854
481591943470621928508446422984264030860492815582319663434883023724078577416269
931814484758979415499952761904802951131545702244777496005464789897596550500910
794361966312628445368817109193654077169842414101551342976259019042275688123015
588868124278589468350404702227887324045806709385121330393809816756395855080534
247640230022254101249907430125810429737171453163267160004203444408859977518463
616681483650472723593514169273217388166929874717538351819684250435367618450310
594207358072450351329772152043189395363966561513825820515127149302567167133375
170468321273542843382823811822125808047848387269971895720606700068455951624730
481362161116176426185459015137956297614677050508048297931767630870723189715000
948288924091826549480520558804455047833585813480760621114130498618829108681782
357886876972105318503498561252033258538371321332831444342640700175561713140306
378117630626732445777803501421063633819432262006882580939436589707802498556408
596520473326090826012404967270760691748370653770610716828638051740916812319661
906588222764843815582818326499743232301752937869742885560781691660361446862494
557729666769232893651410482898744078849729797012730326895437116946682361202293
793487086779063521840973300460187152647239681128232843318414855638659893450486
609050462182206954579547511109168280531637468660823299960129326082967554678951
095867915222615650604641871292779774494364650562978598265205420494396440436655
592067171652461062012638792290143585526170835964621126561419928409565627103607
346342759222820513209134245323583279389070734929861159159234347864565591427303
540268554998496968617553463751715109752150156897124626088859277214370372523554
301685595014139258494852515615630950557780660867033077634182003884266109063276
788487097491750466104742278734113851816317071863500536571838667494798105309809
279346971142010912765963716072055232927056437046166667272808877936749084431276
287280025954055161451066858447927285453716607091731865324328384303259708003768
300711050875864006497763330406063893561077816027824651249080906945744178738368
578996795072450805081169704442051843424171159221717670326746558509307866941752
387950382591151766934320000454909049483021448766496460540677626661092327067813
270558448566953533021708042088745854080778532608605101716260698179216710545091
597376837100631224755050393148602416356382310742576075534935695885299865623109
249767429092960192700515952912426320720077101827707847120355480355974271143253
718658961106761176155432882314500516994521688792010354253382823082666112779238
765209001620608335734689402577487210293822966052421754652035495971031690162907
623060898252321737239482690330723889585091252882571231671701020850300706810615
651156052617283507572761266625156102216197728110292851425257699687538864664394
068635927179447170920512404241103363978289965331946541652243051502987372158496
437672622611188139515140506877999899576017135944996343784101970240625002071849
825886937842259181904324666100987557595964515080809164341079138064887255291266
001328740065426227344452776361583041154480427793379542654401416172919427617768
788693743171386707020826980613916109350088838958412574287843267076711208129395
399134749385569014972839674773448890432002531263427782598790078161743644586097
092244109637874310116733846464498438671770594846666758710348637725537907288932
836311887679231361639362113634080239534813260943813059441029096135692228038458
503764981723210482060618809950893796964532274103770893379930466983856086619740
854235686260266927736553515806887940832529007765979135879163302742801230698385
411714360941721606787771138905728982686412765983107570524210846776680531487778
306813322616488267308442668912128540196263017482591899594813983215089526619813
045860887596147285347765445549950132417696724873636125766391076899797053199943
555184353040579102014399045494885709210310969466883640854387394559913059038203
751913305431260077988021104585187747621125063479006821113478714718670869155855
903655726531775949614110117135632262092564466521884550958305307792865625338221
134580303398837968974128816394590077878143998331993927516696894660642212936698
879930466142816412542885176955790857790339535087533173886729244909555568213158
511253910258625216259947128665049664484116480529781938643719570205544213726667
015837581255356209900371946877472695835443801226094551277540887645476968269330
139715806706274981267801882848038363716211881653456675214837776869457838635995
897462832341592349173595366862646206847518709115119037904132478793972608864254
056209157820564852407708555632079978042143141063169945977636835050831739256960
104197057833140984734647803618881251354946607644455726310053040970833058175335
762269559942777826583445366880692635033658343288075118095338076493009084122337
687306145499661619174035300283825691196522986866784505317284409670510142692217
452872042801894530313519917323393378406331097775021000168802961355588413181561
602779729400328710041949891859552614516045498229444752394917323935763475179200
914988337282129665754417979952412824892419966440807505462924226498477179486357
322144574294661505870426715088684374044510539238324624279071270544339561280383
335198891434896081913765431558074449614148781581479453972305344538813813991071
828979894957729935409026337976511576113002657091055420349318102434870549956509
549147234090351837262797655594944308780193169013503194891787780571793558726362
014347816141862073516745129562394017997242480732031436933089341717825775780435
245898068260326278696347785814776724212085328159551900804711062722761067931733
378301151595754194979607469212069291455362862782709891981614934230304755230306
483079980038251247606003595654849139015670793473271036652092711126191216684746
732088009033634468298298952738992747984418646513206659595326135958798932743089
021324487280354629956455397946545545136296501008615032728581103509016930417056
779085075922182869585727561560932938741520198147597857766764060829268269057689
486496143043266834441219367302880856934340085129551598464640858754085689264245
523921011772039807044537179359637779219990807860222119794131140801928730763169
823734426413424503607973377431886547015832291013961245645283114189303568269846
831400050146323148552185024029053518964776534604885233949368755439803473698216
530488571008774353168540466371276731684535949804330928710093073311566402135449
359068661815133372187881347020866615754100722839676903910855010557356485020155
824133411950803318052846084124112704321202637857550940280553590944053348791478
461357388212320477276960872312515894578084836139901621153638287173784108270675
434058145327212206044575145947201025333587006529603170276597802769122557064654
287054104706789539268235371809470529233992279534777558519245378629404233517829
524301205176983076972287217474217041536675508088667683994723218756712721399719
060718598224726335926143802021181577382822585143837039960318814637635717130736
293941679841478639585769112955513394296531796688469419341993733067604099424150
829620985798502026180783759435379526061937810526624437960616212184732156579432
544994943811323371859199877068881428011133285388328294595470781180732488243812
976574780337857819128555468766112452646091213636019095014493793425716046643538
650073470211399012954050841788761737492576504233558430556445378253527661965970
354794492200878970979632216093077779258958301168490475323763787161089143270488
491496061741705809121505830188568282003171741104626511339699637385499806550755
124987775922013843837715463382532858099447944680400257635299443691117734979370
184119871146012161452693186277111110204655752212311799092191568883863720652726
583635193589739627523029341028536659124132804864852975319002086752413656400814
732981140772465381911623891181518021331218174458681265925863706696088571617289
727327418270584401379281071235846575672492085064286233508274092015440926785781
360531574841345578921758792851701486082996027041685169340427465627629412111991
566283695343247442797593032300365166311945019332977683533613366720973868555372
095551945906752648954366770447170489971385751250462396839403440394359502663798
303269689541394142442588359153674940775766050557226400058011795191898803694099
771822744533955071631711454443071306617116788296612076392864201561771385927666
988888322063173362897481807203071356466389212498767369080086658893442508457084
671355594990044420492280036164386201990430781096508186517861539975226542638172
864641395270267932857686011160898987639675696005365246877566343409581232884577
530684533704637826355680157403980372959850046484088771947144277998746314414139
907584198909751931916326588791897215036301912445519581508309521188762491290342
773323964054642344044766505954507922990123192600866976302644707086393575788268
235983309757062118473762756840543177985835212928308291739069184570169731176318
573117688788952870253217320292702943159360936716722428019560041815388219991547
526725741550025522753146618144987732645241346239107886704411758102021569473076
670287260377381389959565732914497626667315788078535146695940231390720594202455
371530792243011977383964978209177505964385057364440826914755927627895080028152
319114340906687862352459638055751089341659060082992005711051169341471949843782
749159952928800256841431474528614915936814534315170870623230785470749540920947
915428279861482803848638809706224412497216204295766375359480428200299089236495
148988305692445704453901996397277227987823162629415834230055018395243863217074
020944029384027016666997272773428453489553000972486536593898463769934543174856
064474853468397624341134386668363111629501917453356629521474457127737536958347
843815635223605924142119312083849211867888608580151947458828033230302694648450
700393321812175075240068105591209731772235959196772323452814605143232395146100
621068667830738261644324718755519850933355066500966625947491505700418207476363
916901482591401280086417091336227278103892674697130338483375956676909116101783
500869124544636937992650326528010549231053859620415240286979790334308550338620
272996169042746034343227289518033012312819463149973512278082234662756407785664
539295222531504576999767306226782763339611677515042922942620776001550279632469
589482962093410450103123843334597736699262944508313450373438268414864770920617
088590208829403022034407481235329422637844791340167445239033045449695558250324
341322861195027143102653688294350584708884091031515471905825601425935011037935
788214771410984784228321912983486117411376921443513730417257820133817996984227
633030691464297643652392835782624571317625412396117139331401133526782560943463
381437181312284287351092600189994167409736329687210654726819206658870133453373
321604264037154938295631579100304772202742663181124437461908145674709169946523
524698654828764113733642276651692993156015256810719522029916381953336539888629
031067282625455699222035645561170400315739658051041297474485182109813837874988
326171709008834594357758039305256035390505125764456525823956422068721071775001
922783224825584722646369073570982244438004167657753260413026777266863839980031
410801790436216850779138130115794096946479309768584416154196555927397684708084
082404716147923108703695179525668979398070341146921435666920601294178682726815
165699404253674907445753094881709635853532761976778794848814134949228543222362
263948231677765608198217086123778841178350176876850565734624989786484868878977
189824818022039813162724590438886160979440438134798444296762896907351046530036
876343942927477131973993973603730921790620616010474928137039364177296678159613
507266331860976160675085868822294247800491970740598322315323243766855679879422
909959808090921719173745393849825099401247877039931162444728136051347578358339
197616010509270179631087630061129952604314250685304269120450521370886105173070
714442866100821275190482688888235830978262333106952915412739949752120853664279
624639370040000972832926842965849757889597711166188388541594578017700364348804
078073271400684329277172555876386880879470617125393419433630846129671576676134
992956657973599754112391869050283067179085194208389611738065520174434339976923
573632104309797436492449004007080862326343127667958811314816921896935930387999
840138540800590833299318807659408543412448756432604822421558403243650041649999
292970183151600875739897910424595102995255671453801978755777717406299592808885
369736857910489598664356793687490060128894524595398485229845276814034162439999
953853868039848625084474812140345882795290126375425023653921335498227516459376
962602035876885382547528921148468995550166813430452845229404209174731802553049
236858403144631154024290741127734368180727214033541240088831521926526419082451
237915213859229135777271050154377928548659333749359662953579408763358230861795
927842355017400850446442845114115963027393899979783571267929287080239779126396
411719020019511417368321983397285825287414348293491427307948032125185467790218
922971546785753702964049789382652962940406430002227869597052744587321974010964
223827166505775282572951364807433518452974186001321342783894369793157995914187
326505064386237833409772743005638947951038621166092840188103513416719497618897
444134521441037420779155116580137637936558740312636265161899019716663676576155
816142296902978142912010825723207207134652361865061644601263224717911042523269
312962073628400256235144657464693748572833601106403122091007953471441128473095
183366231173141867871521163756882845531978991655275345791552364333832529943530
641085668509709690897919716978803481958638574200536242299839748189844381151336
467186232019278182003084498593423969085119612671278863534661604341627478945502
380218046106221727890011060010859620401940864959066110481777953237507336160192
744622139859380206457333000039320045413580652892987224914103810316859448402389
624736452709811935637946829955109672763196914982079550474742089089199750226235
169380222681333815283860524120866424181072171488125436527518513950782071327709
606911410349332547703298466637051406171781147888545100445592999268355805490528
659552833096342681746665267160088263649016688874786096499741021474177720364414
635932349013594149387683982913905265089959341085849631544770288430429682829315
387351800520806906275556055279104437588688543708834327121899631487331032059151
765865192455921700689496479198533682478183831896277868613766102968132489773352
157766110275458569840512600987175608475108073433400159359268210133082618477968
937131351210469028368479294819155016483764308098129412881724529973599504257471
107498780812079414246490325847930841605081217557925646612430157213543731894697
494307226831871899939192595438432297653043978640225436400308893539913332530635
045810181685132776623035246205269185169607709936965007028747148584149234969434
953703910455473014248224388333407606162954931539905440593783548394001231545801
880752480920137304594398411896653081478745013067503979713725193230744933875860
396284142482443878913821259311631536057809424663348794359649089542007872960699
865021902257643956942712849624511980545017961304299828582439166166289029298501
346761185169407933279823281519382243722945767817475124831373450110704989297324
858732081646748005039131193278530942917904383625690415942332272814547944383067
710304390895761076817881915877758785044203889563470014500247130100511470660163
841362598323831200224682143385263153094303874287143973679625399746681774902363
387244002573172245638306249245019699237347626026666104022526057651511250703962
859351578171604473656557385237451225601060192349004608507368014373832584331030
492689513942706675992023300396916294303517035020740093586643112938894063563307
827332140452573887582626260995867302586538131300132817089398072314959665130538
786464960487927789746948895190473840003797841616176892862117119357177797672447
852837860797334962795039472867647250110938982267336743401090386979861247711108
849386075429589125968765430168597209155672358935561236956579785623270464216738
538808082434917763732162227881389790201754589315103597879349469794550866031291
233155869767014870440158689564390799424828523596716816217599071951439957719820
463711444570995709666602151282135152263734904529024500813181275038064305884318
883199216639217674131557112604607371523073845406320438148012412897741513865515
853656377720585796988910269619983700375175720619048526102041075353098352225199
450074420060697389582945610913231026964701298748172876147522186206811845369593
876761961966230255147757676834617627314468570978426616071597870333662645076944
694184054830666291626058783416523543320622839918450382036428940426165147128397
559061738981427755293864994101307974880757146886472167735659939910427784415211
265686449235633086664115431538683971143827886666668225427130243562983564816039
218816951147832747177569146406074190522111926486450156150320274842590134231815
925597022987810476951105686972695337994841513353445960304786356501153725459311
364901969571778980319103211625582939266780882795570601442233172368411786797150
416572489060897262580856760683880074319895329478336793512541841063132164741872
474448888503948814427259505876645661521099829296269789829694079557843208074896
462020061371301469294038498288941939249701785195577947745330957968861813833204
251229851980917913627358134226987834216175380494652103104631165727129747467997
742826603056342685774502812191978602332254799467897779154775879531473861241768
226136928764886984282846022993830954271089715044206891017826348064259911546029
659521210134706664954536738208839420164796018555263796120191636400822445942788
476962671181366078020920101646721173337392068034391005436379548447649907494581
213587210300086452179189490628138476477636988180580051104422984948925522856839
968418744689119388175594597468240248909400077422936940322437379583126659105919
700455573148066155244405741469854056263569072529723163358741897264941792314997
792482803062440207440774733574444783202375555902243147332506127351873983098047
750908048162811221522737265011003765716182685300283137925513597925778116386124
707364181094399581955922842013830660345974768923796681731436964976222343163855
357654167179613522417521434968198745761888525690519898167745382020085176785298
502435775388419780301327485459215330917514365551711394960192768715022230095107
462600839661635988091965581342119794450817200253655782881634210195367810548993
529508997719037667543736496038412112147836840241675123262105221757316547135988
863533575122053513103530413004056970834033635433786588749863750096469182757294
869609803089436632182334954568991063531439177562380354072398653585250152033626
646088385529381182399744199925276526822781500619476757220494345311421566134274
779223569106748136092099536265402641487215708105880699066076500991965644729917
319124985302541147637025376645672293288665064370107563926496100854326842397084
215663827221342734190292147371026658815275336432764358366754648661158074507933
885419797639845817280283242880880462145867049374967036742630571259868322096731
725457886032598653042392416095075422483817969452727188780746421796223606077982
804096185172634129874492794656348061896433691785056364688212122478697920358111
692664404388425648511254931311563870749842816171393946835420655136470516513192
838486923823373935649006460540106154850275815885689953431315426854873989010710
178655842724910248123666153087770613425413982535553717783393081786347464866406
484047047595559457114842082770922391962274873451392368884010334957352321606822
621600671988818925191769688618661787861116533220488569506712497374611613914934
169573581006035890987503460969075473476438196480042617963262512011552429571999
561942757529262206783165861386443833630009496983986387592930750118547557668098
024131766769174365934279432495144301619813665062120357866660867939580482659552
484098054441585865894291500602750546684281670941563077940107027816820298641920
209202260484420247388577552190952776822434963889952549552903504274267197544298
432055977064776527716957629656742711256859971816575931409753098626847726713421
431275687584733490730285267966374814984091425994665840030007678372563369691883
909195024931724360040611398713178439985333712698854306342159163399270244253857
676311174232377090443216601115570352874811972953499454795038873023777813497137
598800955701277615834198422056415060719914489008790106374151244258856353156682
492836267622779736467153675059272990767269819246082363038959398574638221861024
894097335721588107841345416792480500677410446210528545602764366617145924279992
728875671540388807258816226930526710212520270845246895845267679955200503028347
182063193976994535194093421167243397592365806583174777184219622193401626935652
234129969168408193200841975948111870984838891909506120735313762984734461803305
145729480401351759908845431063432962179574612504855662128316570716712533051611
789820826547542634142506865832748708845584613949183422573230230612026365318119
328827692182596428947830030008564655946342821816586753671481868951316644898203
934182837307071095804501539302280179294605437143233140954962262106066642677443
110365787888994856474548743345397578649252298311671139174348545262010988285661
986640892074413690577742956563168306264325902418282085523681639879027724362753
274642086913379322929310736384856403083107774559181136039023041627750126342997
389165345646676493057501722677672691366872653793529243475172984400536684785470
843941314587632557140448187858006362856625736709243264605075343803602770257164
356484575104779823226459596048789377493462813325571106767337452802555267197815
142545354589740180229842762020755244983151834375845447221433279868127289392756
071129024994915867225659436597625716277200678802474938717798023174254005561139
192017413380616789009534038363838010712952518438496883122432280241602518189292
895096581876125862113879209116324776963577682696938811495233701391633809495981
744018043573235659445732858226583748359551980335062454132229483159362873715093
553765237220944832583214381581343620235855981193857840598530456719648192624667
905756552135368779503834069729245244581191638462383006979543407084469502745940
409897023010461128544688828607135314100589871175625322530796330026325781557679
557159104847699920736968198870475822747969583625870357400314473505954325978790
154016624078915641932294631902137951210380341857559722218780358473405056546795
116680026343990406543433344009134960575214532916564798789852884836788967057027
128825043859126434315930368709978362425833106764264494256825683288539750102563
508914244553082391295527717681822176499184175378044821930877003109270979687011
449537137332728958280036069165272484619813582807373360926217170805813251386370
601841552567884289081220160928575920340142319523444721545747508085694636283453
444857213844374464462327582954864961055111015909076782501457892859102067721155
072160589045002051317834868459622585537990493411480684088509943408396925907958
158807613213768993591107756216270863244341840335929843154705364745372957572186
835688866661304206820916482300505455194525958470712018844301335723083798257608
995924713851413338860974754162546961968421604866320559984547221293811231955888
621153985936035909105482895672040163798853849974882486393678150222601332039086
440322012940465559466350575331726550797715854350602793911660346095194170530504
972425963918013416981741462630658715826767495220255289949220429601296964671508
807162876186042700080299720335411876279007678164622759394057895200879705385424
174789081786864663636105635933481598542698868298433628177723941878765064480697
391360442784966122146709009970171382919494073500517993416601897926502548228472
039569298604629064787697512834578639251548837450332122728049723855162942221699
500257855610703423753057709896374545614367278370943475016767697292017316816184
470943909452454363327843068270902722581475899054916904211226706321892853413257
405785019397557889967332063668943423054596854441456455973534152359984184303306
691846283135780897598039162487544364226386958724784335951437420956229279822852
092187512732141847385730864249565046297080927349276217393072925291446776865578
547173303603529100201366915532892455616916948717079251142129171733761898199894
402377008796638964439191235264587134304775713434242228443467681919334686370608
294775417642806891400693768143246041084623798826448319175110683156458358008345
487432806934326742327367306365111528874698094778476554870865833677350983866157
087359783703052244094579360751820277572153889093783436159535655960633555982642
735385452071159902561957722550568533198580333349965311382645644364601792525846
187534140602555330897141777406935175664594723310043047273862724398313567845689
778293102120729680542716220075082788839119056976591829714696337409945463812178
856034002570593926911120303168793704119963167788917606235056778038738283608624
651292264106826922288102239047772124091281119177553247350692993670861338172196
200610292456316540087425088455871053152074724050667183813479362325871289354362
704693999856177068339542011161357881123384937195171490333167941495833266872412
165046116614148890265778580312636653173432391402686121541713560595429796745188
033946038559182263636623182558840953871963186894040716309560726502740006533377
500387814669575468549206311239426577174894563140536801757058290133782067038688
048040921557282566555655710326810417156589576231488990357091752931059312917554
830085695715289767833972492147173205381436009140327506779503350495283484852921
642374458752669339250904527244007995287723173319167667586166398481663675174459
352384801283796497321441795109975451870017010140771613809794608721320621630692
099477602273770206000730533794055786878277101461595137706388436768212973881208
549498429732300905635603129057787377156722747388464907598832468086772775194470
740919234599083280945009934056041082167752893762815032597102703916896292117444
813315495502868590801979954827074607674292092516916878258951579073940674141328
624237616637719022361150328187552420129162837600063756252152131292967527403201
507537819707007215591020065228234855678554478386809061197978000055912310843526
886689529404653086598166714798531291924638901948772920531568434568437934394064
385250127763916884832761091692081682019486434165386424457829252842197516610363
218328201041586315435657273644454265185341155469544154383833993675749342894037
519596761910490767092174104191564522494873040483727323850992965556344419001599
652326121271295558491382393599622323542293193508092790798949203488568035696511
821695276676356163601239439068914588176600369539747978709518897717099437776737
674082800780111108341473624456480312323599101922062568465697863603642490508752
653812930672489638801330083359532979021428643293880200302629733639235623545100
782776520613414839737198400080124134932949083523809705913609868842354273002011
944181142872006585665375061706426748465631831324709702560605748529223531458176
079825689683469263114633509869170099576576472192363779530310007011011825414474
731003769768637174429262550158995346867208376964224777629495113920458152605325
629400074385270862531370808921236648374179592865697968960023529494561395457141
419079291597859831377912071424937140161751474535345577631935859650299838658754
219191664459961337028439576997523865092942967575023016316359020067056361763934
466025927340671323236196469046670798523980742553148161324191777923367014372990
395307605934084996062545479417769268541667551016378619718255249595357942384098
331201895916173027182731020908295766913781703743355452869757665807400899547242
336677684560409521728413288560026363063830759557846006131611156621906757415019
611261261374659431968486217681410370120102968834741297919092391360392922405535
204311218615515014269519674417567389638102575588194807009871426366492585249263
770948577523912882491599978406082392637844848592501754909778518317192847360194
495488745171362022874175296614953086058583705267008932623656896542461407944684
700111738040118580679498615721067348492239811214718197711743709660335006168858
343211472239324433824228534487649706189517669486560456685868112539473534316357
320215140029903604738646791732811940505106499714412747085708367749502093996346
645863909047248308060675502765805569455302914309024870443322337745192760429852
576005325653091645742153070487686242854705291617867202812571273099548730565115
737347113911388462859164826449905978233373243500888330434446698892262490371379
417808100719746620525296877200595741177882446828237848967756249477107778343612
429705890536448958488917707778068250275424222690245371444958864349639962939812
361887231218518499947362139591714542020087876433784094347911796080567047496133
742381054047794047531479708363926912608306315504992757846831594841962802099782
818486013294584616183074014496675523524919409618231686387567971313181140501726
921621048157286776921288298840381038648584198754333750833032326046343555606898
923451011270501463991239806838129672423262910407249878814885347941608849661822
500265054520101901361474308065373583923843299098345530958003696672990806949032
142968149140050991752853399512098648401256605074637521859801528734815799547094
751741014660995704105767384328120617720395235229869169857675392401126007973460
764783997467528354845073091580381887245509791183898968528324927368612064237881
031375169727763228058285966826153714058020041138861960762559656059066335130734
356071368032020542877655327979814085869791619935616427555680123741669354273997
684353923082553923469848030412520021480509396937429328759839161529861237686218
662473958070165267102296183787407764584689447764466045365986139029635372383831
713523648038036006316093629106805168309767377810844096835999372754025100473185
586571064785772674824928788590502128028760972444853641897100188876307462719210
658667902566587401231798675387558253303848296372579885800572655373092616795824
129290062977343225559255985064030380504928133468571633451311219561919112237904
805528494696639112713065755831816850573404905983380610321697815886579908868142
642214936574049861108895874199221308459531335506382899816031532258917394779293
023875149904582722679696235454683481631533663861505831047713796677644942186298
372452718188179115744418154330526874252423635646561254260448025194803713250859
234005381806176454161845838640525164046272589994897254742272466558722032333500
157973590497670417982840499451467378122733164625279590519494044991967781283051
598007639064714091635449568672258366558540787136217568097905462656539873453391
858559293828993961635474571893323085641831400124809418559688936124551631087581
348665502980752638744424081185285164708069227633738586792700607569491212580306
517953461893102762645842851147431248955250212159080436219034133715304751115653
099843420168735830956744686836526758782867359719702091237529591833019371824365
185787935721773691033815357093050795900496591663160844949787869370941633918332
899989303752483791596621728609790805140001829900250895605169223775238434628663
761874223123502606592385236499837978077932194452861866393330732927597792342058
474439686744620061444048844703185272876885719284308341324392018648384444369110
503760347175982845161904696863333240753989434878870199904991366630037450696740
802554171635678289406897913943696307290396287171127690899134937814253516433729
332708505672935504229589501703050982397642621642922181013831511776447336176393
812764894079917953251248117624133956379876285650541879231618315315788036909160
929655148771378651898754112369571430471418378803932745135934257678205349561453
078726461602039972344539625174917177770676399618545181332336290896664670818156
916872174053552450592268402452661052323490847595092042433986477108979804175085
324122203266280565228890792171490001522777818032146900818623375419500973125807
466583430377227831901884855508818260601418760355601755417353734164677774725280
673226926376646854777219267938937097461639937803825687407514976035433914063871
762347735099985472369286783631697664467642852790446857777293385165610076317699
864781699092490464696704164271581870675469251710739020618830717905721905772300
146901699749111293402682430986061801185855432495703391586199338975951517023308
090396472856259450433740413657571319264427957051257879480359357999771008772610
568036050389710066867454653852744636910144639767660388840061211307531796061880
019126231544270630050436130552701091372878002371660758386920703716612620621474
179132873870463746742747771369674869855539166969542596725152720781495556943741
336771932367772976212006091236262320999796419311417028099391780506624208091816
810595935776442098515569536131543187702916046286054496720306403386009390383642
449591803319139292668406639084723592011365484225940088760361002994438369571037
936941978756128540083796191969406194939194048723933462930907634552192927364866
771589565091174366776265304466580714254833105409952820594772829410512733931731
337342525643895297811022845929831642287111129229642641171808551479870521206845
982220048316643609751125744861437075126308706786707039697178560065159017147577
611522333570077899428176721289481175366128001722601356929588542136555744972652
873187320490730408042672880215651508789769710145488760787754728030959281542325
568385770482344299620522919565751353232752340728702485789691036063461962098751
643146194136264682314729725500442480345038397064890023970341149058137282270825
661311848758675765929045832083634307249441879819049430553077275304527341084036
321428768701344213223046653121324184407677430922715880805889065896466097758574
169170394734444552111615118117154356323450131170633358461016782188451051589397
073866936322111175966523887098187235550905631626910046369924505310190860405779
553272263663734988122834880933082995248536269638433168736782823278077007483134
546772847335295465834030252888392470409686773635175163398480599958218267830966
089851249101403170312130735183952554091256521316126188349913919140737234727814
078584381036556819429909856273176461365510677044491114838965149632345195456710
337939585098112613900631669527926945217373714463669467065143629440803078443897
908282370197007830171125929246969391753640796927413247148306035477236647546942
836926083228485287258935403354584146137991905911511448579613919111764699872898
029651553037944375575195594396720603310727890205720304135251753483265619134348
087018494924826043251435563351544710252305832494300661962889878756292681408926
336591033279714772405120456788710438393602870345428069364283958321930170066024
302185009056331011343003809113343035754743935404484958920549632032869964098094
328924801522353439585689553869000698096718097343133855944388544974039872411020
635860943062093718627143403472684502212563886338982715415666524968668277954766
162911567798119626282099209845070885670263090115146873876850873272922102651094
217342479187591072456069005964070546780721716428475630791762421079279621218034
052349995401558709452535703831719926250040050466189099500971748592209603481628
599816950463412909668822889586937860248670135370647682496698047652463159131565
402429971000273871653981809426106135669923252557585865126861033883794784968556
234021773964778125495216932518147079625157915291730462269106492290035264881948
872318651016379033545480115042864495167312754769573643063015420925662415129792
945895199467899763843404791070959628253933755056982478818699603841543498127865
170903914716939812147900283266753391417771096963099742077206336837259601458808
215194930381305096691146038896725476150793768712485550741038950277829896738085
089150739620174751647830158806675707654252236627452353778550511693469078084906
011710387548905234105127073170047476239387064842380598676765662023986765999591
241198671166495858656416586327660281501779028716608542708520949650663682274051
322992546250003856464341632428713481216643353344279842893888962806594998273613
477054225476819126141107196306396985898886197775554840292925817431992899827998
097576929600979957887471430595352855400782853951539853424674924607103653633530
695009498822219950002078863679483740158494551215416547617667474233881735843363
435106202365971997870765878601505417307402080022491288459271859439782373454974
346631639049859280361491972629141907797172388998531677404869651791766802726357
833478187168179586737959361794704035604583989982108587018311563401256441750220
055710165461509330678995298842096320202702052498414404371983510758256452486235
608272361989819412574223002044497432977665459054832422291000846611771626717415
435588577243230210946051077718836722126399797163675399305634423384051169713822
862127829374806128239740070057634506474583812590210938766008991577875824507165
669779165446077803089392600448155172087388207877266340444804606917949669601231
119262655215822131097568880956351260624749932430485124012219435962959509053715
833495861207026664083176248677734868587571798608887644218420509055413302339213
346262920099600334882823627004190309373710265945259914960688989041669066126766
033814448795928776361833772129308941038439655748272464614008016236098859683833
596262942650033970415161138350640375267577480483212790751260050399226019719917
598930061043073415030365376675193029417860034030170083247903410199327294983457
606880302519062473515157601750301901736373293673173055483753423012590436210335
591998529223056538721463410120796222791572718614087650046172076002175669712654
416029739717692266744112110136780660480628501188852140077569991647542855968360
470201102231184537860766717661471249828462327127335149402376315470103663526187
419581607258685147615301398445733387394807960255200769907104717677648119687727
021376953485335709414260758221171709861851187817903438000922310348603754617332
840954295431968817479172242406794581297004067862768393330555880487050558032510
292116786294399234559608976030621979705446990134303087317193557909823147537885
220034652478519342552351292202755770314645411041510598506896323980382700072329
712392500687675947592637779724165320414193012664990823086835197479945124407642
281128968169691275265581928121926041358649734527527947849558128314082332450050
037860033345453767397213901457791590667283555236452023349216305656969521072195
320075593801196270842225548812157114374310868698299596324243415962003047813974
359688944998089894878771336004570751029014298408769946839216845654902838615714
497396365781086440775324810407408500055533959497916697036959011566190973698432
524154323705311912849866622568910210653663182697177308975158060800877183455760
348198046952846935792248691182962138601499183574928376090618366413808594829069
546115604783711700202580031970710858142872928946444641393182506366376141111708
572154742065196141643722562446352304269145095710336753067502560432803582086412
058846952436565816127818637723705493480289136374495321982143968661043712088889
459098497727846651437679044219989574769521713084193257503423648147098048895984
393465453830327900436950085932244388514283799554041415102721028364875802590548
244716113882561663355797261508387191508892633122716668091589120888831706726679
671326922709533973006044454332315675939928038349631413121205253255543886282682
479674415428989111904190151524969597700495659738330127060725978237798471754369
605031316457205930439352162908561327334493761567959716755702417446392854899777
275425394612249747149079452897421360733409198197277878159126921399760001838568
875975291196704568906062008195248788943781444654300074445215304686440093166333
721123145614808488844272509683711282585345479221875245623237202610085464688619
757159617339626834341418838827032156742610546412572552113928392590198163347713
939325362444461031077443668931056623896103103043224871740589124620529047068485
957435457984179962565820432706905513136359127885396123209075908249285933019781
349753781493602364430110454095832683188788731732851787369381064863014212589909
289158022905234204440502656440647385008923975607164194044149188168599353990595
584090408778424401494429081892381424359713306570432642350257247748804523609090
377349125007359157691905666723769273734948359899448744267417698240002200579397
792906406665974699935490847806857980738868361050229575287021295249282660825624
123858791069842088730648424736205965564415892340279495375848918570006402290500
005274998364840858472004331957630050367526798841524015875455228139762711391063
871429664808864097785241296794961875276322788161323441963111698493632546876654
490469624880620817675145524555764301215012188380926110692260372814490389829709
328033228415729621730916400891060189524018590227834718015865388384687872522637
072022507030244999250157083557110009067302075887872630899762649387522275490477
732215506186059957169699715417467051240515867184275597128408713617114260206626
816491019598874594908486176369514672610120992259110322294218758270845674919028
001567095294673052787376935746838433715592117821667500304691897994873931607257
233236185206069093154056761240437990383573746603421104697743532155588396324403
143656419864568989609852081611800365806458933929622803701694014443570920422577
507757083537640739554255602481149014202691716121868143835319280230282297695794
069419242607819377799631483643686952425571734808452133700310161536512542448962
395309103657686946952128289437056832293837961908247165597015321699021245591260
221889276877550444884196109108548350545166831094525232692629006082634583907573
580439557460861021585426155890076947386593581212559198667566803670100237169773
450339929096071900523592474267267431345058293086228221978625708233481637205021
028477836170769335741668123116549274474403466741857559008614771191030028923660
308039494987953586305257974640183602028972384324801096043924862425855108402772
893782339821447294486201509206530643906857551762644512221713712663884406474322
308581854494806362508201192765769229757506851562010466805551512881088494555282
938535231874002771077907238063674666079701947324127026427861584225675178929857
643164354930632416064486858638040761521172062883433241560268723643654940996751
369511206171167967407589472498777679772887635847850443205400325769578549747548
325322162927067442225054181138787976833862518456697694695488203610700124796034
842437278175063709678642779527254659392628414651471556619361320649233751836467
323842698667462689253753220855861117746967365348902473748850272524314278579527
847357998023806817211722535449660045826948838760098716225692504211048687922877
950396997844648496726597465998882375804706777699996729082307015139730441809126
009273724194020703982558555530156200549566979071477606115933078332817039252334
411432334926894565311916437139987230924971513013083837522783330923726341903554
991622005973074684347758227963156813659114332936799264843227775248693859906308
458947502787371918700388705966193698923865455832284496219049427370638646354002
141107484498755717271200249283571930426861684006702357659948941971597334025815
431375109995942563092353128788151730739438101551510227040745342554295514693974
047052399102123585971808621164844632018317861649083718462752703340448919815136
785441472191096270120771859169147678402452115844170193634609570505927818691178
191641405612172674744666893541339487952094619448622542154226914828053438453558
045271433660943691826134491894611241278860676529188913763305069731952701731153
721610315826510971708736588863973856741352670184672854096997556111918159116395
410794061501239554782925271943712236379183186477652797679074090381620790920391
797731683516210195278723703717308615324163600228387887804899226699835823058640
346364778807012693541543714009436837287370804331638646790644375433853200301857
400112001800424762296013972395590615550538398640162960997443634185499564684002
254815848925442501954705192140771663204800990665315766918841196782561840651878
927985667581681446256463315778612398604581634956477017078857593681189572917259
102215769566622277073488866327081430291081337119029411188573105910185091481017
049917532941203657327411437566242063813423512065479938563306361436932841191475
589413589219349801137397762420141244261189429801390209462051150051306407661169
756762096187351652674536050496029621091266558824258150622611127988260772435619
808003289486495830152248267731319980611254440438626399436500173423112848071968
202731711035051005080863582272531753034472548055991319201315633941979984261947
748891270218219655468987595019364363740771753612651017861390172352925523738898
171771420838315265795149826173612633309842548861484779409594796288180918836897
542191197020452698967570551552087607362281291433357089508216838472217801006245
171253504389422601955417049604210461110310258442127921223909776152232793603118
671398508569669910071474191676037542161983873028792607028952455733126772721327
949686548523122062453233447881436182200741051295818457780907539359671312861233
916242493155119531321537143920398216337452383164773134264415590136268239045763
952467553277736761917104890583576655308488793670807318141017396805737631417790
382743009511548562335427350090026892727682528898597284642382522372507570144901
780841692898878328396593249714718711818488811020664872208615852324388095760327
952719418823059039147623562719589937340385459513723729298820638313450443372057
391906406688718308098703436607230320963711424368890293191890575993464326379772
378248470519314402829466721530805672094211224553658278747302615898074891643459
381064527220176578948030889928403390972345872810336022795417364795080500530589
900905328724423430424357493354124222398481749031003826895797363824642173538543
699697760389818557332250138500113914926133262439694747556140293664821080506103
606290967655138891012891550768439008785705596837054510557924312357174263106598
765425965189457083453537392457315460887736477580039665321208226328519030120555
437835248744742422587453204135692416339934149089878435457602579138583238512986
046772026709570516748308201011337661695377020298086530500455562883995065535450
797307549006465340285188780695204619642863762200631141191057307690199440670765
525827854493930144983030140111614602504858326546715423496311223123545754643968
668788791080364585785074327540307379736607810808043310729581315031543567749721
348992868909924752392826059869977408680952079363451518802344537849605028813871
695569583319947674639517638784551151186979404233049827596364443815858815253911
947048684704551962201694356445634723402934944970387344214335386290473514713234
746447209574663208560175400285725586322899489120458679742515874884792401988743
672195406170047277601479704525014006754402646114371453818437708262638085310014
898390069847139764989497872910408603953978186787944403074076584465747723744945
934660930154085769428673475097713692071568632925063185139193886060714221184492
353647234469138931723102877153708142825455026868541694178954071582691349065063
380536629571801894379098232815576498759806839487090124427095248062778583276827
954124053718429712276922183109890176495915505273743890097014428622756701537328
999310811678301483918804292525803885762270967478941066509737590167459761520119
516061204887243096575836172551623237754797829676373148891824261232865803348729
195664186584779813974210660335623182694856955467829392287240991343090853876460
162148201209805931708385413925539429270931271557574290955688872504884184715169
057638727205838963505782537387531035516860887126815825609308559756747911493467
860265558529610201322385529096134889304859315700661499243542708843753598468937
098803479122394143225285513173133215258663658810142435306012624058760457545728
297881148207109754615046470397726575704869040086245800981913285054496586111964
849230926814951036833320000504952124072777854345063909043863014149445539517343
476965288214993762342609759973098696811443233581573759769334542523571051003698
307080698461535968396671754939221188353885271731755275210127424126422251194718
572706469292116446269544087020343683537883738329349580991833492385405245314284
858893217197420258909132762818512942147205568165304013194375153124318405963270
988729300078495279965730070126941993222912177153411002366228585777244887467804
464356091682694579208252769299647068001892311942748008364245788186660521803299
100818032979915837110495969501128542374841704984968688711424303851230161049601
760483811323623543451886283817561438685372603629133986470455246055746965271042
240642778464682366188169875781631846706125417713062454763076099954624697292007
343640045936935213048733662367577826427755055315526058066261457990408810367189
286809732994027939605599907015207271830120900784714503878585933737282463050564
783230112704015988850592612235130793679337492865446453539617819709403521461235
879835686280379170449498023237942414520257002066919447493213445573525808237207
485767770826053041858439504168425503569356089444839000747904498270772306941720
047465170615214667057967094570353498529902127787240037658011650176418204443857
964159527683241786936985649685226411710046360087948263353865282717777593118814
770229905959040410659147967075298830072576350349777726043409218017601700536075
481495868140786637923950418021811699394519295122008360456334490876760425426023
360286013121921327775702007358681526773322333859718185806361662963244629776133
176693242617706842912689248026696196910915758725594510161564287008237411399805
201817990054961195750214182387109410286671597938338753909276199121040738614344
271223656772615561499165129670487595763003313958686131568766290531007161652430
776872125578550482978821171825740480657562944982016155892415512753144353726123
335313639095049887207403160223849816309740937728933998033104498932498286272589
925549091175973731418987760455553739094986870134570770340004271086814516181734
852451041432903914294506803039919452404554194689314426968963102542326160385918
524178058714775297201272132280801441385285059339182975422772747542707154586011
884245072858268629760642483080129394163077983879416525957338443957602393664338
217399600489826396664546489024012332723086584743114090452722304273341776625399
558217313865464136671010447110964411769417165833340808505845394731337634755560
992677711541802254174477210967115877211959964634286396863746210525974262273792
212298033745258517737843541283634236708098618292745739603555455416516440293428
192337449482195711545064536965495940135393627748558849257781308034166785326302
326036286120449139240253195424338847930106994391522833411906048334265289959622
194482068840575474909827325105427588715647063914694971184118984852960158715944
337192324469418846096774707388687536894054824500428649941292872959191926900464
854278172859024407712979721561240267419239084856978898400754637467844812683670
975552993482258322040638821186184531964642124267757438844631580471091786407288
073691080749655604178223627968523123453545341845107949929102565259557023483871
156471677224431795648376671111301815020886966200397533035336444011095321013384
489112235267512409739470805420253798694341994619845502911365606924288629959640
769692690696511701924001537842981341992312545992012577802620343200910811768935
170680029305225818798301702423980225846886651547152001732363592861736456977887
170488775775392954867919271475324883654541981776902249192168730790964543235722
508469412967402566259268244846777200057460285484376315643720595224151264486477
783387992169461001002536126338787770874136724234497292932922977297019000731353
119766196643242621778253715592650581832598690430667007236857505080864439124807
928787541080632055914311210278202765360996221863370596100768948504636576992800
529192431138310017415057050062079995427298825376442410750149426454861348387938
927305468040894288857664045539715533678002256916081755803222434793835727454197
915039779218925285774174800144208523352511180697716797999232520859926005874055
436236096463129103740629483943161797076310560470798765119910998167658576361422
531750186882216841855399627491818842658483479892078606347216131351262791609433
709108321205810905069089539692144702316598306133050643063457913920945349673216
082025914961027769238231612518556698782413044827019922272102725429827957533783
096034956249755433659786151753402862190592005667704242330554708875933173898294
840788856464687586775337148623612335901787146490977724703256892640220893833140
805225365621716283380215195851238311799190311384833882044123907504284916595879
706196694099054798284637430813984737065218129781040310961685442418265387510393
582629580223546767787925276480590662551088734032434825283058295050978387393560
494985723336496467761509938908311238829010484839763971134104378542312155449065
939810429984668015437151842010888105500170195454436559026859167417364947383199
418780261431630777565357653930586071176559305263699033631236537109703769692418
472042409695741212180061148373320196213646593647806688010369348310344841947954
130774030311450211899959724191388004106346015868163063606198417144270006306468
131211529462009429804604623412524504475162622542468892613132856742376403987819
721663533716509435441739532461983129500137803776637913141259639536960895642569
950103260303343879666866840113855914335663825271892813521317289416633469757105
862411738865248564204678236622899575536042311140176293773904304243377033194348
196620153168327715862097949075915015830225301972040411383411165140689051750562
252804376272829234263758821857183779035827893440625673150506830783336470726415
478087319227285913071080102506888769848526862478384344870985581752669093587571
238578593456687655060975513127423461800207076016575490917352067240869876955385
439397658032834002254513097140539039346315354218453820818883775542886435710457
150123381775279668357600181394038324301501048091403472450237682861288676007929
200968917324273379058341170429006590580119054343340497455524908426015928813395
130557444079864865703204500319257432130211368203452522576640857084399069552022
725287490409620798532951684111251368636630913123153930840864345326983213795284
669088685203235388121918660622823465992253652929849562258772809333222202670683
531655996427225860326602480465155659033823504596224796602768139246477361100158
192923385572368899369056820339817750673351042909027309209547138492326176805971
051775535686645135631964335897807309789008039069410111440508173433893228220183
882238624621806516076940133284680610211959984704754553541445752424438458597541
453785206983686079088897313809737395722395874351358902592111883208994192609436
585497422931637840432053967465687589018798941137065960035389771297761031597892
364069596822472142428976284759875771240227787207584934682401879543752070408730
825577193487967600599726023720375598009054260820664332225595018066800902385510
890250450421907915491552388622008786730064889663916071595999922487618767553415
332068793679389136479300934641303216181954522945493635613150779693317645848850
835601165268738212084150441357326087711258500276764509481900038284524974516942
288101448840976673017896444874781390519469870250126450490460367854916559081727
661968781329222412644101435301373448617379292692104056106541820493928148510503
396797478626505912528618056308508551547540638583140833979535295996646490768957
580568223728862803251125282014517551601524368139059721313020841567050445439615
538582561739133612832682013115482301210178705841087889872116553951465096506582
973661581745637041345273172850455971070500639718367374880646061691388961995217
724533630968556514364128402051971343439389083004806085006062776316511985365500
767808874931729874860661397736884614364852697499495998330221763846755018810031
452520985508443791523258895663228388156124572808364298509114252852532665136393
137941246318883774552225985149536564420047262981730219191840756233215067044451
227156910139404014712438569279097883094293900924687036492963352593879911084035
077429604126993487739130076303571402339984766925999325905013085808996003069473
883353441915653127925802590668030205333124547640203808096678982372867872695733
029943134421607725682402349385405489940243482187259722085580204575403710829007
117214121044573399334357365769051067376040681073510883775200398769413557943532
081608071335547751302831232354222659476854503587594239583123776899256850794334
057506702182002299011565107245057765606384314193610282712069470394853778780752
110569539997142345400196764187537032294952393611987311511666013509896852924139
675973873906239582968513481859633261984465456952017808062034244383614838440701
179131585991940705527557026468801482308606818768684979093832542951331667364104
169782772042655391520295725758203579538249886902880111056360492361628191993434
243551760171949310172622327836234761365067561723817969717887855873704308619701
526486019888931421006270831443195277020858355274989640214277078501053327189743
838324558881580022091570383447300053688064126304036884320861371390671365509072
409205190675681985117489908730593766739257253465930250403666524755859585878982
294787340572833531667567750781968527142451859568925351001332722480713418217894
271441610717627576382465222362368459765467884192628462694216485213330188693121
538838442129081168263049410024081500181052108185086982969493710468696472145800
920478036952337867564247319618104709882298066491233758517055249141114053338362
493289784963495573877471600069423755757511329763200274405993539318259736529082
467760490717660117574962221646864706037781551469824088142250555982761145571244
983849775385797691611941626853979901492945384688516803695469707818511870086088
427177994393847250507478887928228245545360742813383497804075586059526620030604
600773376700755293239785220515216562795492955755316972297559215080947711091727
266656981704445341551171870894282889080539986820653107476188709133484960197744
380082574381097919987125862093461669649927749131737530329722672994076223156197
337354747676611038439838887089754545478280118958272886998809306446047281803634
583559469976208321876403376084497259831409584013656195767790280873666255706682
699962465795967232519436293965912562238641845126571748913221184154356085410448
110623862622990505238267380242849228132799076229777518575171292524225025654630
926833205002155899779073022262724387944749028698575055016814244984744129635259
554205167560663215526773823152553851264915012466980391647127943757370336560268
960234135741678119290461614713478078992075764352792738780386469501152075838306
417518436310176893644630160269588788199371988886282500763491773981751698319609
738207042648288744124143146635749046789678396993540852060893549559885492137741
171934182460615840434903023200806993293383975543186997824232893963202998263445
406832436633520227358970145537771436548385411704970061873637026359003055537980
550426162929560835959784967207692986461412924267817009946634689303488082909062
617734672987249543326101425296100134187292039792435463535313083108116001099670
208030251380503339053415512172142136901116917535379921502805144068304488966608
931459411497954441718649720678247392958756964791595807579029526985111531765391
350392978294046889973759116506999908675845307168747278724956756168108891073367
788646938711026826288386324107156693206607355681512834973985772646923104039101
050156211900934277264375938840658572079742808255810656671106223883586550572863
931744052946578651418124374652778703151907510393804273641826496838782971719407
547867889677864478706953715238276292693776720212202122870086334646933625854993
141951092673233375583522324282624856482718668827146247617525202875209413804325
982915606052343111565801257013631767857364218442523283633055907387987888561039
145768641641298952755704400386160622578414165026785089418143921313994962760484
853342568909759404318137582047566841801015125674546851223044406417343298959379
779626493900230198751811774498400773089047019390437344150535870331829542532064
969967976293891479043178078032950357793838584224096045733098748834408000954669
427910284746447124106474287892398216324511074602472244440189457487698655840234
792147102216057098277490209034809210966813961689550359740206580155555142625225
366630360391185150041316110203559811560139778330222850077542911676652570788194
826123062913183739043921514609245187069311825980004564907722317413742487105217
997053908041852802435309743973750479737579706179054416730266940174148774409105
778220644574110594606054765134647549147513298129626188040641386720190538514605
356845334353600862610573596515421668505014748367124222423917199814785171734151
964979081816778114085863279436886334179505041648868135837836773292411594729154
063771470080435943312894071337442993167791818538227103383280420817288153277904
229668951414852279058409010711076266207537831309076943747174850209789069191025
562578580899799190881934923533162126520740571254638985370752819014922467942559
023242610855152649006022753580069595269615952190291707215913482844928563992348
324346812729365080898466281385353445775516771373339061958899268968240153673066
213429107843726382947030862122135236367317501939847460088808241994500785543547
164435347294940395809705276124727728511064300721532865317090915036233786566817
721843047341181371341367234281634204631762505447054454351689663560791659164470
861282917230544951972153174731358562215980728286319062340777403821632872526163
773392326922781348735837310418546917355529266467973911812827161122685586058046
803709597740554844989811793743720802848416097077404423980021836431958494044265
555774836644304426201171367870576936702683063396716465980977147691579215867483
419583503102287421911745848301604926191477005434579222753704719303798262391220
267841366165617035308743368974068667095575474333403919473290601882250162664389
898723977107794349101230660027234843124386130680019257837058203843287826363808
717144825082086985887933763086469776967738170212013357303522489257489100089336
166422686092175286617339462031389890632682944415084543907913395182346396904918
980751626376066038317917723967557710384647885650357555811524708338753531584901
695986556561574404563727860386315896635137613373422706866814063362655676791309
570425835273657412496318402870016517748425089582163011008574617848084801492712
181061867949725867766048007702995478331495175076097312664544265914336137747859
075051091898007107784816743307538016840721321555076784132291731882082217304758
470255283352583110308350371138857978625985142468142629910024208567605647542023
912897929108134785460661410335358172997536263248794821214967547598539464312736
726546302785628108982749205501408786451211546562521369221065428774384183383508
998836963670018197447335733280049173251668684906535969854313514075932514290666
135533612291163640749926454578925877391704997774127993290146585998448483487163
552043540748350133943958014454713448915515699388454887621125345637559146802528
499967345195970491879087268462821730713679271258808328673337319078867758811931
933546473643442630144296626737660320771724159340125481892869482825896678896237
356180450994766201273119499386976875582646959978262133351875968286045927847138
045014967525387388792905054667838754416568755202638361507834060702763867051582
905135548025996177088750202325631687005391428602742390622033529441610697066315
277857208821269248138001968394316236567602589224405531769689921536003081123924
107721514546836410028924788055691184140420400173150584800326384243868195634982
793689165959041956562837418658688358864662231371419950543033364287917443796039
806342848301193486981860229925119581231596650135222860793397618856630979939400
539424762836437728651423491331779408915858271944988489601050187215704255729659
176103259628209533881653963268415862183208368040924192452674028938747869623135
181361255475391021685411204448002364052720001904091217666947486605286887730714
426557567099108874471976595940420133746511624555432291700666811981426751263398
991134571162204415115727225052383418202570842620966525072560223820848502771511
962734427632261270179092883390354118971599340487331621865631562895860391553474
746844874968722579045702415362539905777613331941240562391110743648346036249605
213029375489607033116567338615207055287524026247825793416304872236679896646087
903809871321373293748891939642526012054686971543442937729433334821608491916684
512178463708371277679393185684917642233971764941971227656942836352487187200595
378300403077232719919252107689672009833269919748378745304204627090722880815000
230347981754296210275114012062058536449417673697860264934782945025396175421469
643526811589165992339932846000318474609370234815090881559499619623491571027118
567980650829471545931922121194812416146139064401575516711248422155531047935878
441619598261536180090265638056676316260142135789606473958371358346860583355393
324190301358946003767094991570657257144048779438673713949556328992724218119554
004409256128324614874487916453384281060290893973893970075387851468915288686566
413869793914553722297648965857948103797926653991288347687184009026500679375035
757573127547092304374997179308505734113059899516410588277070843664503688112999
248606222971241686313125070726075828611257981814879548184352414502211307771609
648897297321638923267486180488708528418675758271424605287298511225428973946227
329681528883106250539306229668200202854917158085084307189613724299388125332010
850138543487454945049617204226069917594818443071641965482655578404991135040400
712687779557131587636308838076116511618953278784305005693023401406907897333191
943327440301179308001826807963309952553937393804848856596927968500535003638626
181992250073975512333238091077542671084930741984304512020033712371313614537536
451017858984010322973034292470019832143479273907477982064253213952404599891175
437737607644444749438134926220650040779416269676126984615079814964306593214905
084473056097306907207044744761181507672304705142097048026274833365149172697008
447408464786205472817813234839604504370349972108347813341494294762839622843922
711274797272530792041911589757092951751252106521228488430958258600542612236670
109941101051955726390381311891747538280987245035957285086329502349062097783892
398930850316951571186348463988835062662673824792043914927764241749856943901517
165794446551852009274301628821252958966500840564851934378390632147082009184310
366416555277752037876913395515409293148697404331879430829935445411925877500485
440965877480332512554098950452307036716955624543796459287173898896369894781901
115351861236910455099274773289820853800253122699203759039269768705381913994747
179691827489113279121712334448958769839177196933199845163828571579765421732883
475935652273208847780976525947297892235803959803036707144371247824390657294143
306372561580550969502783980276171361466300590366797501874898350655068888388016
560129190749656571036414706844853188929258337104113984542050781738424755042965
977132540923215137088564840595394520621343053163535810667450415873356940093357
447539830108733543624219800861351291881757858023431896439584179920594842003804
879272976499412281794971035949383927002763755481009540017007475042919376898471
529213525153615507398522807957292454951882431151944596895666371685283387112663
779966168512836758006164527028193860137149933690481919190398028264112656499684
412743915237752850287545342793515781104186371832965343265519039679189226028450
268568213528142244443004430650808834919731983922137867378666094122088827222997
273823031595875425189609846323467599184140363930626601350612248730448669212608
630129006036388874646378602970391303372470980664637136001190615489750993554152
451074059766900896220861614805526353288811656671188276125193251037373657789163
518142482365672376391260320864299975930994478040913766882567959140956905915595
921671854299143020061804355868785297495816494487911297942664436842801137266661
332618996773230376510361569940219201899130025223660222389981196722330165315952
359513191126636047723181921203640142444984820439386432073256346900770217788846
729732279912040207800284403121830998551953150717907578917008081114029831760271
363376517279691760077236737666845776729807720388028030941227055336553957104726
527226187765636896185717507876081686633782710015936128865518011520774301709742
921720682189266422184242069110543495491989333980471015685744241657262385567597
622294196363679605897682635845741713613735182007190958311491280385785506115202
396843982637976490577944861949315184347659984788786222600853741723717676705738
951680315752216602022257398785211390283523619356559805856557861617491788665236
778726844901362016656080029621139086824250022384469217676190777299000096003720
583621948146381926043035259037745382583482633399535821679164447246599370403590
115308088683327537709015746540978791377208682543737902793500682603075998523443
429940102204154351973927123660468136052275200607356866438818013897127126598398
536648871057012490825309980719174671896531555167728201833375978918783981398124
719422145812070365089989763292771520855222827607826587749654647077409894312246
633253222836543705640525616606143545151216164167061047272514766946172756976880
930367994631897745765143872673326042908129538304221270251529669288778813100736
001442163699770678382198346065977513581422165458905975945905984586009089232842
606995768965847240107536742911744979673526073094065472290832275350830060893176
228192161123385956707264581571319233048207453006099272196542287954238209043479
137616243576733832661790483853789818097498763950605102970875891459103937395485
884095486012070434851559633089170936244158922603476812688522481796504039577840
721631876610566609127903529593221499870914426995689432018175441066722399762374
984275569821566874803125463109261854307934312892864608221398190094698368069617
097762048159820594801373307879245052551637926854248626166583818647038423354558
002840168694590018590660227368072155502933808090000120065624503272821185231663
848501078218675963570090758028715989839530980380189438215759704377240655148377
594809572050818145315829209116272464414763357040086663539892376320948276450674
458276226638382564154399378890425372189524858539162689210837323011032499262571
810559154741420310389962079952914486724354930895490805910541498849977069499786
816854360013471350724802780481278288856175004309248472769777722004072525752515
455078669025855888305224333047215543460160124751608881782028254878003263849620
965728850738687519548685344120195969860812693716340564838202825855702303060566
384944284844691694938273309627484813877905494766265283005145847925854319436416
383675574147499884646968849060801553509109056274343561403389097660041984419188
741122081205521324662869119124319850240420664998713957907627747469466224887190
512743977684686347490517795578172313900041570853971167308806384071497379098429
312304196946738966839339725096532575706941250913652517660531525769563336230639
233411677867783641751997860439701420325635111645531064941925312737780838587692
877444602832635886737600522567142469896244200315868730650465541748620290617740
493820234604969618337511982275992669274525657892797003933264754438945224226180
085131001479119440203443780477395261783239124301341766275311991633394972821320
852083744148103237664126523128295804237496772016487658536208341939755012089990
531933665483607165579446437597499581524801209535696526501337841718322815907009
256654044321229321986536879019846263680325211348803329095278060407807009957479
692549666072783903139718823139332225447819334817825722592242381894790286047983
508297439492121434126741252903538101823421992532003571118626285625695271017279
254731047935871248975731302037447078555729487452051100216305581796036111100335
490471730382568162436582324696965385020008464821813620956914592297163699436878
822232948512791697230861793662468905389797468829779958481672824847514534323048
949589458045851634360632146050839982066594629875515610042948853363330962454738
313289806209823989069370370482899081880087249926566065376348721518428569903277
154346737511046234378128612885304528056956608183843031944529403701673209926222
123765459389480677284547309786759524664876232970681092039369860816994039012706
666056894696795499057105001805409834257710039689927781489167555737570341372537
250970156830525100539594826703858398678580460204377950103052483856221726617018
951016129005018854482560807715212448453708310514174770577143571644942967057782
195923156050721778293511958533293168513266666057165052732299308801493361699934
441745465112339760283310649447663433146958416547849455252019961487551894576343
267811034914453033920143430541248957148695438676233348825665947910499284650642
828306712075026172891278787097113158643655142417273196524064204311441807587524
455063692086062589227221315030897285519239074489137223974400055793774235826679
977748100344843491082679192746158333559244978857147431081531089087104009839173
157316332163840339209867732299828238260414421870342944578327424532365250728693
305895575975432108985809795117290775069581716877159236306180167113106798307625
560070086696678772909034508588744188032067460387823916588353717849441350117734
614297538167095683837858785673946305448252048827782913625818180037746007847361
828543132396484015645450560502056126807391582582312187962747354725637869884486
953836511993757437972475392633281870576931328806779589568373801808055523343565
618090866002944951353918546057796917615690986041009421495844701920990593531845
335478854802998008373482611532445462908861448803209872765214888293759316407596
941655440401779403315732521824460452999914491826543772024831344512974530448807
958045131560669163748390654497805880363220484262854159909291666036899226724437
082343182195530226099910562582797035674922152506302472173456653758667693204032
465528527283087660184744554572685924108350673263481871751160242035518100672074
776085761555417009250175884604089493788058183556122173412702850089372246876278
262020427055334482756250870405053450056592951946319167161627819901253696447202
900235649960172426369223870779540655573702075069133682987117513980938671194060
129536614160418779422960041182900368067635019116629144612413273038053573426081
909850981988258618551293291806375292230724321384159148356754538315891742182584
853956924955950009820267034639122062258240522423524669835093869975271820984847
963657180276048766232909058340280854217586290508624084621571582795645940389920
010405527671660297878926124756304633353314900135957576642725355811077558779116
011250851367807974567835948636577058589079149037139277383763705931085632378942
002510651520681825859545722591386204283181379223630906714606368072960714898447
229775805816761274216952394520632191675099204748322502842823136824747221736942
401822134023465371577259039700091566148881889326209314596194376042314348755542
796722658013878932862562679395950103656786152133132469407169308887647736019057
655369566649270542989161797715042744257678313659338344645076460147731381733667
730874449785294712132078986144847134621251186317307551123844453163640865847881
593248241440176618045982552822143953179308426676054263717523995837016048678451
588064868250034215300572668556641856287853263660116035348074701643475322217681
656741649460855952552560154925448426242106487150202731126196985710691376107254
774731087554701332218725822748609388988283077405491939049537553602284069810154
433895939358229116201392391238932108998748026861079236846536334393440335106528
569960550257082103526707622094389157456517608291776893766542848351365706868254
699488993599900653881885939629396603797444438118991016782219365973876477745143
336787335118154778673392439868813981012178609091939748217876061654544626382788
112283201704326783824724074582780370465875674406706291169235227789403982797597
360078687288384558915862702497254787489752163271473255877423037024179067811247
923322362970794585039646857366824244813766615833531320117060584166769662478382
414155005837388639826308933181975514537319569273889886431308412313041798547381
273826395873660536835895842133564881237271029542240564157020402751883113506011
972129644899599598068292179143552940597790037494734308278423240483630550070607
447847680732851319027305687484325886206558724320177174593881428414247823525429
842805699011411371498813450853343679706469096393512726506522941181627411288358
813403933029515144214903465533516348617930899797027175646128373298390959107771
350405288498514122974972144903213410855584994474228011042863518631216362276941
097507633421886325269945182080062531851899622687949752087482201020639313984293
885168246632521122815518752683719809002484800460200253856793761651943451360592
268610246486038587560242015549783550837697956052757026104117180764539376318806
382047261716280362147337021593256369151946952054144281905724354798659444965924
037743823228130838077527279539800659054190317120898080644548037480922072165451
896578157493459304827282268400455053934725073197867302395219769715041634403136
457083472970738304001626506870735781963248377757012042208454031541576273519603
640585704651121568586617924633064188962349134382413726544871989556349553652621
297203931819901646121442121475504794214257066039443772579273063437503888881511
860313653717959641762906034196696871472231327307931215968335655218401513141830
743553929132953696035972140235450296711787180920479936040201098675267845253299
244291162824430024470706332624124045948083134923332459962196979436487695990229
740660788362942273252684645393369098570070752537244443842059270959496424624187
687585743892840318947218537025143110067220154951469790489142461952314954082098
830391719151327272165366527957321215438449051176062542792519604174698423421257
635517918195853291377364081899013770541702841244743844081768428963442632236701
224481248911792893294321706249241866334202100660808845237805021146022872553559
489405269359665774107442037031048291550554371542714104672677560981426656261137
174331575882602750662794839528652782256833730728661337418297442364429473195997
834781431894953481782279903690187204155746378279562363715022856799660608468642
847992285551796120865557346171955665148981689782451475754928224176436319330370
747699599471530556562805828032476927549224122873490184980277106631211352104434
926629529754781622204247885547444489280432316993265385422325339767902128956232
476341299470540138947173414076654368190802148935130237425794695540316950444821
799329273980132243056598294729469820650874956338861642626387274113198793468382
629363436532123307578306948063448878559443195988831250796805279316661251681035
839140657943412888850418638096604778185673541210637814098377088020122750750186
011479591898436550746228812173595118138145739067648806893010124264190820836449
720237899803440623026145206395256003917856174079870019598060895511230632427909
847036309206168201067239389025408545867494174612146270382360191670133461859732
729769216768989815106202131774179138558323340457755241620354516182806983282434
961318471823391532155363313979376470803146588168885789545394931149114242466372
131398656625329399789751099358424244664538549224215758300477702316404288865762
929744074486526145625057404316488344449866346338674833515173258102081695541745
911629456155259520960997295713104167631962423335080042911679414112803754612942
622130355013141838484697465539646331727007315899242102612747260365868734317256
076148168239731896894822860799199114008998779936547473977422551177486071743748
981223766122359190768025031099546803726521744915937847416587155061149264150203
021791561331410768999957925931937775656599144898708133935238775196139505358472
609801721626314350373116915966124684466565781641181699003872396085889929976549
217422762553304091169963168129086348901244035332079858092377236640782299143478
705857130617761982765815033809541477622475655898099938454215768409932061271112
362510064105000435540085679605408195051691576451357950171237918712724881508024
790264956342990367971154226957907674454222946624328147265822287048916275436220
597308199345267663270936971725118919300491930097025635756845448300441376180690
205800152716292084449453790764285509005260012978277797235664703860812577923542
641252058544741490889978457094874070078323398013301354254382195641356666142208
016423336161453626747508071358277049446419871959298932071150058056811485060547
069829778968019291974915317543070722657586351115961587426657014117189063571172
175590918531097764256556681413808352998070395530085772833066566589116027984829
922972239319536075437839425645915758739241433579624680840941106026168218040334
432182549668040019946159282115947147957587356988047771726645483576513286259836
840411706613412698920348662694314290508879960906621467867440044103867123667677
190071278561037539370481496754574304805167863055180728591764144795260525041903
417790847238185313216757460526674708509165460620053433022685229299340859228241
486857411726249197193694613546798252034951572474942898424189786767387200272780
046710623054584114228030482093550995483192277641406587206505289752973644089971
479965690820671923103000265337099645008940720873342239393191910909306601520371
986819398655235853766791684329358487910760227034861223978251381438638682193692
732484053232886973703245480571290261380266056103714005109416810933900399013434
033685675137995166744797599881068810091162569989686913295210518632627325650692
715750113812724693025067837010537658524839738716915008911352964387919251447666
721507224111326481115801736608370502083847937710011635898080525775467882026491
128961057397295053226113815382308258925194755520451826011315018821923868023520
357359405702567768561424913799589260917301223534354890499029879860094311227133
684668350416734176649490585620269324448881351900178993970667865491914100185983
662480071313054987103455065203023470875346918801669155074730400994319246497170
602306914304769206698203275086224283986509124164170651520041515259896325944177
697635231772181189360734012077269228454286090730711182852047090456637296087092
355718219383784050257146295336857156390641338507942501705269222371750529594669
720724387154476262591614905335759153243336482108415133225361529149457284463209
689226462154040604145616374738921604112355956210786900642253017032445972302567
933636849244024404587818869996240399102241400435326517840171855889105501336103
211450784389482267647899253168780426393243364781528377209511789003868807168942
523115406345130429521978950670544630127327257288787440359239917851105274103598
287871134695108595914186753609589670631051066424194553630627789228462736603514
780545818980126942138774591406688411111201328312747728637318508985258265554370
920018094694033234773299984378091884534383328638179291223582669691854162075594
048773338147015062775455793682632189500903411467902493817678739772671984664016
953065092706701803400503136555066351252794999253989462880325192701794776470975
611858821356769160847588592157494347383803093872862867595301788225018490665210
322548358852192763126985088715110766924751607749140634763886327955857010498407
201485177628933026302473816346639617734932688244587584466435717012109186099806
925772650049252607621892453531882305868211145002608464421579086646822196284303
125869305064991864018782191938416181462258216973798005770645602138819160032133
320007271603641293689915822755774574553510925333277312118015482627379048015120
458614279950742444944578216065708346306218716972464020471456272537008526912124
478579393008165055782971627895977933702636653946485825336192962131923187422310
652993530690731739969468135846322086715797858870805030351376397033836210775775
375221246720081131248429238712675913405801996673174285596878616810114003993797
473559127849273010137290952557865886194004504962058431190968820612870471896414
592025514406512466464810333386989424783362293681817864899948466703495782848411
534548456067452615391220585480908130719455359312465621770920227283044477215625
895561024365781204418095695078964666674292805913673992644538552967913566857793
158249457589173728936283521675750020099878874098960584242029775015197091343032
266036387408473976429054185322376908509514835986604658116975665432910500607810
861487463046601683770605977681057075506075465507894454956801025317412510058111
395031275820736664108618332212636815890588748772083274116442970961314154537778
253159407762184089819928167993930303548429300741742693269858230512040968379057
295950485076323725148312997135350531276960521987061082720502350444060780373849
258493983097369986671941218946152821678086696517762275689901553028089500017088
353145723472202144104325281957514163487981729121964604884851793230152290496391
004023610345085954529571220044578410425714660130505780555125359408812331102185
459268101424395174657560469132472357388381763205631035940612531975270590204536
998528185109591223531214324827414262105874477623734238280338981538127253688283
432277640212732781298923799276280333841450666614855095377559813231760860781343
586317384000156112039582307081826823448719597456077718138206556981418875176591
359345790012848565754288066454106634307920472461793578711254833517213617794094
108794934815231249189457375266886191823169681882148873154944790461759046433331
278546428569672351242259039695122881855264743845155154882792937655788858184930
202164816677580654484420795643797320170911464307674277765745614806390172239201
905367749320557159615193049575148008437572634674064311014536401743798048358642
238346461511719471000601194279725781993920646183065085140839870445815702938503
396049508240501547041069443280926177084484704711072493565148238102394236511539
094864332985554691075087787712953408747863656110319604775228034380170394862953
678901837485920392806826622890415700911536321760827021632900852487961055745531
227453054598240366540454446197960752352793898095505436384290860692766652575523
236882287764447318292600435350364558887899915643444044547342274368327052835491
867674127113386665707727100207542426822803206408133968575894924636955960929082
205895555854498038588988749405820365395979632472928531976821154892998963319718
953539714778946494665958575672890261989786904327268341618204578022046895197311
976801156380181668327815569931435187420425926540252983805511551854237286690253
144503747151820045380952679397177157077921145010353415518846079745014086331467
704890406506476374516398495913079138706817630519933480751202584541131610460959
592647205036771407140565738105896597527973750487404169869949328899622013273080
823342308063399483219157166192274111791255955315824181174661412229711157665607
626362448679087995563894132729049569877701379416690325162326295106901799592404
434253452735291111896255047983740565415632315412238036274040209805952341872251
192069624476964025080181989984301975633268167009104862815579201921210598509392
916837366485373919635964188444024567571464952804190345855469956938940025771220
839732890567749953208056985872358447362051334156890771270300978465697836347805
230422135939899868317155244075084779285383736087325015035874854184201716775263
181997969061018154141700176170491334193994058149439922650386763772898170336985
032230292323363751642594614177479105911397486477356388996486002898177495974517
415992490337446100446746844949268501423746594339110459363351356300078239096625
492956764784096899888930535989055071003034494027322597216149797412934882783192
437221040474815458489471540129260154492531858378241996104342153023491643645352
289997608326054570170154587447227223235785699799202230569800875807711189813149
871002352590714198581889599375855245121786811671029368659114015222087085690914
952944103576913318363926658591546485836149953899197410662187075278789993546744
503741268122308563864115222604851751276952670280785224511375962098507020570326
388381372948629298023770431511764900488912739151347441188712384427283042942571
926663395467372325500239710200405080535927118396791317049641615717903769997459
170853842601131147197181370079297120025584872896696044987046396822122227951433
478713588814860006314417586743174854962476321285956286846472234250748596829090
017260602496781715138471570521801712229271766240042919688612148867838190641207
047342558812108578959740101159908223420543673656188492640137506040466738945554
596366285259597512773249450165920764825577533386548186375724615018499498706696
063042240108921947913691979351850558272314111872912638998000124191352717254192
775662263015494873393948224505752011493398638480497590451832007515725045634637
301564004365734705983784250187312123858054736152325683214444051703670599251382
240941857159967006999118563728213226649965484064509968052482271735800468326968
078732226123159569708515551582262951788102638872724317617601591354385310598468
539748213770354935451723751321350294695914137854383122812742298356149641768881
746261570381978823397969747424849147721479088162160328853742914028067902175416
507742729020941072350202690853029723793631857753471041040291601142305618823286
275514469099945026426342559209280642587061331062123384406871386093438884612091
326238389806335608933814678245090572188094744856005506250860558087647268518850
111710865527471701940866077814961267094207020829068430364561365877958698653429
908232320303347578350131662188125652247205140155930148179437869284274099315824
319190234509769120455668783051041328647298243135064942257334001727364064331817
316094211411131249282725122530892132287273652710225664093090776276815303617011
622809026995430671856913373145956814011437482917617375792741752781959938792312
945989333349003071679175621531443604843885669297012830596917900424393358366444
581213895604325154209907364140385656165184070683382836095968766633697152257935
835795356903807773531262410307567311332780845457526304048090661418519689278716
442085854766091057627559742302867987232388766606012546398671590814593053951916
818017492627992798122510338421609418728860264236898061811960395448531731732996
902565026520026906267524146324058542552907205302772642736095582204728444055967
410240544844498465778954089283487045150585780846047564716118480958219609252710
409068282211412567066033532777221353396156073717442151861612604820364123229928
178641660568282260157604069659086024450417729913199111731809217131365524922794
784694405235742590553101684145634844039859809969378782441313031930350494108826
034639339606087710302065181372481804914851944002551836318715933761372461020722
569128572293962734681405435146246260361454297096039088770656859739880830810480
943304327870035749122711079818377832057087942671014985282871964899622434311981
316440291221969342078038911296366870997713584432581681992334855281884373540012
086474808212089640263470922106084421321668054464832654067293113300972060600885
629907846304021762620465266659037485009359052864978631214050190268599717408926
080432965536379514889123945225021649757876021451619436667062085060305127287959
720033817606970692640360414897410618828771393144403195076657882757927475909495
477037611744330809800621737734505076317886705826547025479531145439373138651421
973990159491143603779105823531137402034991629521827617936942763331356331085731
933990600308780190580096730654133040351540273386268177105729393154233421940782
413826568026921410647541987522237847197892281351186157216788046434521396728975
506419500998073547611897940698021236420388978396907134004443327187696405619632
355394919607796730457303651149151445944369110291540527962996764893632382297758
200136738823402855165875439755482982814564105859601946235990815724002127838046
443469980345053668475154707708515794643805401029830961587648361890965237302057
417492783020369542971688477714510779438869447188334099037663827759228671931129
508724138457099408913523140267371525787283588013820365933425298187664928618991
338031951157262848618088537195384430890704485890532875420695985407951776111920
348978222746675162897884950324165197022852637872734333948557692455309496822313
842293766145957417946866304009879978206438397041662094143221635041991808179128
963160687304150838821871569483626681084474955790601348055567626677282428251471
604393952056206971402865684912074377701237863243326896314217648444446135545838
214280954275219762787548076339088635087754654271498621770439617182069991817993
025999175968855215450116626295591445805325139058813056437122320595781862701261
911081448385002637383306737094438885945086924166811732918179264330945409127818
776427683101031802334476381585481656782567525774538024217557389123384720681530
002451304166672283421072608362033681391869678059075571879362005437865624125657
823107402135084941737887192765571292430818391140410644524516945935460947186536
173338018185362543946817809259801268048696716022730975103879133029565403083318
092932959387626229067216970584741116666944729658839575125910657749054133294893
549915918144155496999385972646927172482979711418180966395164451018163591686053
103413865422874491331383097077018534426677013919687796756962809890713080137924
441382626434867679814622878471851221006057378851719413223018257285689541039342
178418255130927576935509472597958468475428620208421547771592792200845074755775
684452631137557137484632165038915591208812758240991197442071310884868659026726
888721011705639656866730335092689542463200246742318526045165142574062074801786
097107379489080554256827974711078452812813829928441217458262494065330801799078
746409537837344954790648815203835260499416360720884909283199814993871051078756
056654809494794335838883038624540183956916699420846726871188032056751076291447
576004902540771537092454312674654418669573432102014375608692934417948952681184
129353774632178194584593553665958194110952350507801009829209411333706705879633
135279966826147072473457297556124968151885889314155068244312928188310839069856
540769087458037578952619951141164232620425456823726163145210383772857885009155
795042129646503738430225057680815411567155619064530378006342440065211243354915
369080262479535282646906400307593775035489755628962431262230573084595581211876
280369293688942768391396285723410555133274062853530894489631177675432724624945
333110600875386035421386206773781342101270870201115819267083763638804836175464
863841138741023289998277769387864152591902813794570072809227339080508262613582
381168652048881085590009187140110925040919323257206238748972345497484696667422
645750432789840276700357846090868036123384501762702202433842689495951915675841
565013611686814341391849652126245676070281676389145231425472370979539642013910
694000886438354801832593025139222141316499694612912946874594530126756335119619
323919306837603690137016429444386259218095441456251430578721983439751543417266
277227116752751061677048156496515764538266165331207175348089746791492264291565
205998549197827703267985318548512939927516473465459486515437791885535536956189
092007393047145217173384203388455542350627994986115499849673655569885738464090
214294109692539719529773501833354614666212993133023614147418462468944619379218
078704472099119414490010840378183722328076222523271199192555302865983246671965
133286072818350892320763929269140994437378854583872876999226195055743958723506
407798105718688837455532245137093264767784977245472162322645089721033966446994
237502093617617083027422191919941538776454629071376217417579975374805848707284
306844473453599155536937023726753238365740211954274097936716622691888862176689
239427087271498872508109284402296403234918707042520831504502516976666080345909
663244652421033281540159002519483997343165067617485836373668992599977552445623
039581015768737120537983658626709907674699999527565751316086499549275323067095
918005997026979756579207125751650926265036995777601624591714500009141294823596
256199738382347443655404930984495386840692125012225012021769344469958040720734
938675946383552789190669388329928538584895602443297587960710995414832577158977
553408590605558680436891803411555399346232221974282340884414608424054442478302
351313624471537636624335543603827815539336820277141926944520021035474756362367
748488341718947821598461045931701478981106020058122184331415127948502356461827
593550098794093888952836694364391521790922499527529816969936546739593795229796
288460412615825948227603885502177464619288932777974041859562140635163472591379
828595705495117485687600603624431841474986951677988754949368962540609788883411
922101449442116825111563708726389375306002063448340839704087319345160422916077
234563152533286732027748526288351107433326739469812238913771895242315116148741
532905472345204920027366395738205544784636772771372496446723029721852614232131
534482158442876174382866944787417345045627953944050135892282961111374696174180
878631835001448284633186970446536192663295485719728267308990735328445777245844
437581862397570210781482744079199079926604999675949349488736842127907683803330
092215291392687447056345763708401563266173735251549584614163358250518215307039
490333949777952765687103659565140320539206985147733277132908226967130608485169
316110040071261005755950748022243739442505845079655894338889540387087614857714
707846328205792775325398695655436028452501871902991946099782188243797272449804
027890281717010652746308948059330060669835916268437573603500978013600343991498
335220977493147472605212890434974801641414811476149843743515118838663174191628
250011002531878704842474736853845266271962366005423184915078331285738222401246
283652710389634021309457242747508405465285794735844759595883941422589160907881
310413486755754537823792403755978488907039978634755006590093407106622087772559
726478953582814000917920982321350578420859302847870818012232536978624285328036
833287834098895069940400333067178192839103741635888623147089181155924252761504
470222395946493776883415445907578746688947048321687060800312088983168640951908
573304253839808895300601032789625812297474999136940959506574081584870776119445
658103188765608075016449740240005779680447708768797289906326983265996288410043
499301948500238186086051785480363470196747441703737203785896666165969917773125
214798429919726927152546423288724700848305631314664349053250283057734830282726
273152576482527874238226207268574773781608038082776296253223142488410664519020
616826139443276341944375619500018758936313959885473195272572714915696611466027
602929091841997778148241822442548392310946713483921050821121238307324139915020
108707649900671948873380212171845326825072091061554466988831291282265782857045
496461985515075339431486775973161332505924121807917686253818807219525110313896
046675893718240014479931093256859965836754379921266610558041512646200526810102
493238807913744503510464817721590136511657638663371026528747165027238780469409
604632321460767952296950555019275983134011994128620798436203406617590126893384
747622121254493072721301987854319444006395638811902123412014639894794046296206
733675548771761095585191199880639066747466624837251879581157168073490780168541
182386574939294086531838718565948423745487280673477972033297759294261057670049
489911447532657395446833523631937565851416925559417654084053322509747845833110
142131460350666410829856879410407899451843835742955291868884153589017243960234
738912113368525937327170207071330843229656021698459694183598632962081847681375
785865256901536650518967304230472249690696464265614427986334735627803646146386
453418640531253088081253931732697996124478512095969272314500291743518041058406
893608106795703578695623396448163730404013756096398834807389146857057322351922
810665865271980450253233030978750595344447146918223641660993189155000224498677
340732413923300218185009257973607963361951276287974986404033414827878826477324
416126929605206559543482692433626741651947963931503667796226949986970149086273
844975329088804834627091211193577031457839832555370269242185165867218508808892
592346000091439276511420940244249335312096955586328148051277029231034474217180
976634501255637738090156929890467874119368438371242988441779688633409202174759
806725493936456545347887822554587194029516784798307147252295524164640021625168
381622573552355585957109762761425017664621790603254001805233554053604826637954
031256147431640412080193394374108252965286195684499794547126601424338594659438
329532803869453666225515919907833954809584438430583878833385169109350554945019
007461694391846997531336931026247251602909773219674667241950911781834802626150
090764736630723537366120735589622100004755161873976022196695444776571904472325
702683068638212726921083153421241495769992131936746844221945607742676979367303
682741548901537537686690335913923827342917234811301606036188008392016597810556
540943793115077202022423134141710050876984438433266512369300793605292888222067
054625405937943652519775171970237088841166712431187617777443946303252406549730
504554211715048296767516152463454565645108552074540815229621066508363547549378
709159060090450492401589445513469908125510069088096400952866302593431427735020
784481205370182734448808453185562436929950722316586126568785089851261862331238
551164705554357278835780336418176200244602452463263641388050239020155045130268
820286111490201727211983312358107140215378518815427804387461673030915454480785
490325103073141835102445159382090926623400511315486868426763418197019466534753
598109976710130368249698967706572283217732084115199141156806759985412502425859
881059588360483273702367770266415298085209805220534190747509359602149442338084
235719921972050443030097983315134408199564850871667741884992834227571962489375
975387347201267900185427031728536348001174321716438210649501468638551477492147
743099877905241733308714225218381969118592464279068334546111926142473121657478
832704714298282406796889456084151985103079379131392145527391211517830047852189
722471741442754333654569897690247075796843820934871406050684543647334185196206
307244488422560399402294473477416476911568771772631193531859785104903321670401
676263615180784640541213252668209140884028616196798962574725194833190748478486
806887955130343404355680827586672880131830455279709412157953730729355998448978
470048282858305440749102037125460780253424272380500275563710241908270168584477
645449775266190340079725877600746707330157065425631853292160510953572329961299
037755584966972013928560817831500985932389475227641429558045446707446968986876
556198995754947327967341523357902947707265412323938635762058591190464468552734
596438860939683886637346552430963006712269253324731625751102281955495433539115
509434290690077756945361960204869075372644010941089043791044349742052152978622
299498898377325244780224333496076434452453343209723159912663902228409698484312
134062911907030401109261124117986498534090158636414787555523616830994209462243
136033731442551322106994784872223941051982717421268010873429552923343588087060
881556754985940988596472760798171980678008626564737363872113346428564575101823
435812703993512110093107183990850752470184318864579802599692401948992254406360
641214744088577653491554340112610484762714848412583354608126670191190742952449
947892388398551848442264956814780153058983532359737355894379485005064567480319
846105623987821513877239179694830089539714271976755385757723186978949138629837
085891691469166789387026836153101497797605073824154214504383614008455971184980
261717262079291005213487936577539389809766711211681887277922076657213852585785
516944878872587217507785579002881433781428029568135323854285646828247872166273
077820026993290854357726130240473972724579540092221542081144643267293865802606
590062169819407656007377982553965216875768329614340021344340057638735202073015
972565154617437399686337924232108666022762445871688687450262717260487343715288
071214815617122335860117185603473576309410051703508479203214573364658516554780
406016318959964574229871532413912143245992989864968891272528159973099609697699
325028891642752297034709657782392978398161842309642580149102691291680953418645
903439805417109365009084637480089748911994767901637384148015600868508425009445
842525250525539829408220704278530172357621077046408912977362078331980388918062
472327474644344483806317901988539390239323041606227569818818432737018990707958
345973249572764842025076956399708308737346499007556258561896359883436874146753
529606877100300791138686776901096135154982644371564007819844610444229484191691
402138727256190933962518639275614915283929919277874221567570635845536328257582
064059468777407967668452808891491846893407774701605990625604243999201988182172
799858128109629945553930303153402982342701114300514334438084652867316015045050
950840106627629610543513419695219898280153495734268400521442877026674840277960
319291519746743981997340298504571503054546380238253001556980689226907119788821
287442764793468777021605663852527330430170152013817078258016917349844735755971
141238423903021976742158606500398101120095088399605196581993994353549043592294
724207841657427452534677562416938023007581954183899209064881630179090621745103
334068197093288973799119540373513459405557897494506577867730982814249412785829
062965783247760896861067492808567122764623313934265421964391726697607261058884
058241234436428545137133095664613153018288754764951313143462989303168918496587
211839398857960599210354303957414415914042496906049555872149999424286376306992
041449816532692232584476280186034548824505084619615705442475299011401887677102
954861467448922984885839825941589332553897641650703195023213077886077674239762
474291115707682386215558777645529951689064662556382110829403677571524263920379
471454834072169934613034789173665855744400512294544465279004376548049695550080
327202552522237381924311036599338100913015719646749650783081095404300452887446
138659601599452884218174921960456536415846244680039633142086874633941448979459
123352111702102683599567804298109457919187630487451316680184758033414409649214
792925000369247896399005067659190254683431855665048832628114257862698284519481
533937912069236835269995857379954479932247801390722998093946748962961427973343
103803956933213224314605427822551258148547465817108005294672351934236988574112
388608883374764784108997369302657879469941523591985350396435351950045817519791
173256461083078115746820121766819669730740208286088414927266504824785330877604
901767581566599074992498407108160801160116965011207019778474403911739921118988
781956729920148548557517120437226728151645335109283813955623443357267455037660
288654811588825225564853184611470285599126787634756853429738197154179462564308
364997904536694573242487323447602370481316057682174070657333682649365086044165
909687843569377151188933869459996264133678351802568516760677739648499417073314
116566987217821992070103798809349162603289748599987965214727908743783474194524
923870325843071428427221713578414721067170307368851398228410475584964500352096
422296203256413809645768670965468555123124461230118263345987926468325161072178
066089156885703096782095174013065827254730945417182381892370128383074561218634
558060890354234924613815696042295298829745814340830693143812237802666634012511
209064319430885942250495809092768001394332960056825390611187050590924169178980
905664906209014255713734254964805291371722798209821925730684893206289258640228
672599241080060888284059499340728297811267701468157898493121033308910913279094
398042171352933264067483107701078155308106621645261593750269918806048412446083
425461163543246357949076300589406231917065985637083387598352805504065396060661
406973260816908440558140102392103360092470993315560527985310358499642413376006
570335724392834423206606200337099219437457019331241719377444116361838735911681
541315984628434607281780757125655120444815648214837797210784152385584207154190
694840883603593759995995614609033627452582118505148831820003772634300609477576
674076657718127042048823040504477806337689306417951116407080966602110617300590
465416408478838774872419096873556073006084456628719415471973477905436238578084
639464802742061453588185052544187730753491418644677349790380806063302794473802
618168167802986427744666128216967351618328698725462661964219831866575012845447
788260347160590066349545879636221329764077411395564000577356719638293376393989
296402308182252520204648539166465553811203674238541875897475375039488870974178
451217044426371507197847642160638510024701915372093093218340092814807774848408
159604793105614265493814255608573852206191445615328191454533813557833347267254
437569575052786696739099049250516864812249541998286868846568005311507137764065
447068569403093109906733600024325631996616612392890356590681782655847266489360
456647140504376442085756486297085923952554831861672292773222034435685115528807
494153777825630419993270532290993897723815675098408405315271022883466805148511
189387419276534906539861740180299376457914878391045902433773721810678509863086
417905869232399464100145589763927241913180066875786217399214466221000162936834
299401690569843015651576040446533484361433495060157507140668925388284974388712
570722599171184972659242893122215912360703130505849715536990523933371080473154
889180551844192401570472522845372208707164632488095537183765076537463261025438
357700888244818988689186189013955666783020277956587343254534565986158869189920
709648301890908377498494494030976472565457947094474222182374826107435097296558
854640598622314576876612430195216738844442949136434596944080763259737515306087
999133954377523098908847738322368786265917851055499341753147579880708375990647
526454974619722975929784740637805044241851145804322647614208697788474130132710
271645023000687134976832249248836138582843857971981838625551540140340465605089
561872728280751828195731164423584448063242262952834063471738044611734148137045
655545193144850361053757967770908921569730004115350253465112874275777835223992
091843411825790305534232340362075841970806050561904747771917465189549226383939
913938205495480207711081794136206188384303466321335066935268038940213411696066
889919994152318717126762116180098753213402495893889722324392968376645993438412
272666022511060866758418212901858202973112643802718071118555025819047661449574
975574256761395481531377639804730846878533467068495957043012915791206446123837
827183683708397359057055360873642981616186638036478711225683301597336654630920
226210529218401436189125119501215538755204518632608673283775544884764495148995
483874066454012034866153822001594985501736417616219198089657935744747357416816
879659328502528134458778966335416467570653881568263531263124249072487187184865
259991297150899922113934156589076509149095280781916198618675300830895910130947
672604953498575067645406576135740768580913997916748653477800172556991456803495
050977341815185416771074935313572867693142266020442884677760378767555089464219
441319631870562922765704396268497067725569028137799060666501942386525690605382
464279978121795013974756144424374350427288736803678126787475668247249175312996
219049135737577909722452667464030979237286444704095020849821103980675384712874
120668421058717764225541112209614297375267501852114123798823226654619583260626
817845110851723614964856253354643388446486289796178094211090676455416386804894
995059008162854351945217758810462548064823838164189116107406189137132217261126
511689415075317835975878212322528282492919865222740074005760678561895148918242
368073403174130233193410652135868882928894277930105671392829094269183672868163
483589574423277812012857615378058545849054397370653369644007373288304641634369
439335961112003983216705368915452903771886931507497375498904373622085500524501
764224781250494513721554077742230556156858213292476571600210515770749546655625
852604579562245663618000605905291738115977261767137247756320327718962263605575
659725010459818739023634734142712512906080963904533434450915276700438041463932
365282479257506768831973346843448737029256027828140352178680150156459619524475
088440369234627391365003730260234474475297824519492679372123165925174641117827
031321019013603053122617114698459600133616436064603118413870573575251318735745
802816547483440096093991206522114386983970402731815097017947899944591856121200
523863810672696714154530861676849987915657764649864689552776944277432238456293
131292049478546561539522479100767705192789422184192749166499902057309281882628
854231358817145331384889723032724785621824764204383070792919737565081554995271
478705669606061058595111049339232852855688668437217513502922987213135900396848
182029021318246970063364978068749956087016742639000478511165252242646325198647
304676036241624483202973731300431911289982989346160644407194016864071352258662
867378869998382850542300555628604625961661613900003079806603243603010628153547
543795375776486291210912730678899125241139446910057251474225259501757477420474
757402817924293313636169918862273895094577932636291247128987356346248913302389
660903184035724883870602108422675712951771724965227840306089214316370903290491
925346857045324484726491876181060787873198563893668037774443390204848035510887
346651935705453163320240156021427315784529586029366459123285686687273048803007
471420900107381150720833302453174494839673209470859620443801789964786637120556
779545942560410526008914307078446808892336907103521559946787627415341872541504
573124635253851912269800181578879343609617449768472566568556299923911379664710
404507146794260361699695610138013774700747132096279769816803585236563350807157
824279366604254030311399745926143482223389436999692072446675949027467521775923
114411962414329537371542330148192087624277792535399465814100269518835856062585
576429326763872858264652106834198792441418325305005389171080680534160119404376
611657620001203779722915733641881504772106288446056991126386599928810405545739
427127033988719652328289780679415793762847904649703312577496658103901696303703
618853802419306313531358255006003621432175749234008694191170312926699801576646
638261971647941009538557078305718739167777659344433152836195304678103650291468
370891226534334041662911184841056253542204981485437003474595558866412622720583
848394543213726556968319458120480616809954778587800562235131263447824215155734
501673290615688026399966944959313299389667017198819795865758627443928360993491
014236904569559580582224351982198955818193317454670889237854311599940041291257
125298238114421849908256805895512835875530944194071190869535927115033510885922
026517167837031663262801977784127503028254822703347436998709814507579410268265
874795769552089959541169219887191786551174953985538150551909228456281598314781
936547333834431442525766810529654003682426532223989292182904529242951480414610
667202095980288417042727658258439900367921546031867957891303450957826538044311
064978321877436253655272418203263497092281397326395907199837394203767917473115
622416206233297061729073753843277775998655309761014072794139614479593538038650
282268007173462229894985693115722621814716059166259647684816157320474710023955
570192229624921612435518800524264487749728899555785565782301984848257447678288
583962765966697628655300419818220867700041036310164710090572727953158554869356
892209853456096378080367384039016425167910997167750318366400125922775072870341
269449544093913082172333306004951007943855676824340635793229832792272987977384
580760293157896600882515874673559240769048781307282024627761467621421862534524
859520841568462340026855978459699112293908942270426363939222343708402240073705
993800855190537437222702836612058083017380990364342018074206988356341032928314
281950217034159463200428241796068338105762391074456551182605027521681087736263
024506634136264325322687511083179427479731063190669662122222569992790387794175
628387030852939134600779994737336557739388766641718523065834706344032185045626
939510335779763920906607329498156370983547230229698580813327707359525358029869
100993437463692152130194057173138714926808022953625837970568628834598576584842
388419169129386856200896710588609810319972408174247213164448956332040813056962
691639567175471298574414743690988043089044921031052451904315790248878738539823
761897914875141568489223562965923794451292294608292856534663039255966763660771
240741400078692571112820868506097970438979102709000300871823790565266076363789
363043035387416905363434515600466225654137779315927360368816915877504899804314
956489427393475707207741907177265292851267049461201641249418137440227175702797
271964201596859971391673374176442352627525525657849442997540295340672023823578
404548664840387925077652869339186585931323827591151677826825496989983630688732
425581668481510783326787682582989681390342695784109720540648521780462537298867
710491080090422437552901391946784168852765403214370244531197502256092905574015
376467006995303677219463503516656509310642172954365589753552099983520784744342
756233672135152757431272077335973791170395343350069375562082909387326411511119
575165054540582436681072358207005191142361609520131610992989030419892621091484
489362640157192322421940415607402495612380524276160890906181049811161567907438
213795482373255989463892075970138340817090054378930529079660812805544366363308
881552452932547334974096347060936649471652516600777962933018280511694666598916
255480725036140757002410806093676708807875981282370503477125123710000047203892
978917020299436109157336531644058028133384540258337532393950095454047777467671
011992557088408454551817846231275695286215422856514603004272711486569571147104
084529699476352157396141046086455620524733582348517455986508969505861496320066
898069115202185547706356960433263722521457853971057029145857929178732664589637
812228782773825686655163653241055026238495012923884176046330752492722225155963
473553645470719924182456701067693538273767979092461374117247003500248823695418
346847698730851419724449065337420761771939209400581899190019631458501169284108
853835192996767670996552474353164720656630688862550013282670298363174052287429
502568154861207101653021502270882745419804263604862284322315698104199417057804
636023851739370164033850565003163313328300847347319243171131723133487269517255
601952364492986800023131281675235287326785135707917414829627574225116500503741
443454042472421308923060320505493246692263032145017179707493992021782561015444
495193992953369629040180991336330046912387082031810641182994469367863880814518
861599847867711933979402665638558842783801240794295669324298180664656204606830
544191632828517765583399565114603546186870498350359198186544704575995886508460
057607258227807134451180014177920940204964074319838827802777485750414119134774
000012638053800658594483746464522873792607757626387448649678397629984959966570
342200753241640783950257800070176898387502368991237050517198885545214028392601
092408775996862396924221782074148424760933063734775487509356954535128223135020
447320469863762961950079696127269097681484802277631282130597547989687485592413
969500648516577876903150066567921284270226932863649240382750150521583675608779
357840117182879019374007350280815184423675328502912599670872080270753200092323
849207342992378215847318644843203349524292497848236882311585567910642277168563
693081106189355571630427577863773255749900949186232937380771085817917704975350
127632837899309505776029788572702439310944915190319514307223666597477168770909
694134731207873903763872018897902797527473655385424309266658244636300628333812
920832682810555229963033997686870790753060457957378980234053554292825297993525
670756311040182262595401178501077763652631472933862725688050020948264657945924
077852478489969861388936665403296688741426642192065210112836983743963080321492
980485745450958609060553362109246132473630049684213857186056208979014923729188
115013711798076108473315051218753965884477807560014405198911195122592824221815
874791894152243118021936437686534193457764363975632105367082646682671824328558
117868683324996707500914371196161234868617541282950354370463493007883425982347
913143487897591419009802251376556649361787290145082937004898341331537873848193
194730367879371234850047582065538596448335556946705819667332726613660790655585
501368748960209214435680713269360355988552086657889690392684962693857714933135
027667710687398369297037620280497389846405246153803892832703577489940225547389
144889970942417913939018484016226038179701128196760237893614898082227703327192
880896289833989733039578206542526439131557072791315953453941918346208128426126
813439270121596426205600227264005636880506097526553474730779016087144274462503
202331682474340513141298378887440145171022125573517309341283057186346279445707
637427053846524814943496438709934213985476381920720427441142844923358722057961
131414283953048950290179709728126332381949194757152577762591012672397527741827
260836571319112850456067944272786839055095609841558164393576712699103436881542
722074117306559807948811131801970891208498333242084857205655475800959152368447
829057870974333761650060926482255035861128022771472424302883011811512198602747
304855776207210410315087044378572670253928268861067593804524030093463285698729
796832435704765737276655156422203202704790176528546521755238821290508049208398
108310126325739596877451815027386459272260865410955330111620414231616999202287
276533240827500716728643936599937604626376134554214969248242913317992105907470
935699588485911047641474787599588259173501747984390202239557929115161731674713
793580838296852202543272727066293394277139707798762371631354867296100438463697
979845394951432641507987014285036108386531813479629019200570817703192963758935
584469054056116278792536515554549275758869486193437102239379118072064855575599
558825162125144868040167824394896963613533612231428388199865134291075189820209
038950669997220217299718962683588195451213461743617875671539751957260812747990
350566622869080434086126102173745072396331086820462790898175221163039859070844
245639449096301265288445751871353148739350338610917330052530875013896365933995
688409372787323178372501731910819383415250338735952521229801816637425966354242
055993142094461509478940786067042960367030416203092230104687740574349393917439
428003408136084327741134956103813684782373891263751170797609323559654566797885
593934067348055956456330806386710761806541471746166841103444909638344022644509
556571290262731499750053742322721450825323716738276425158566842048005538852311
900162562161912805404605435801508897339916896727447581732718173643033372260420
066030906878000707244964148498677872770310762387837634789892680089535138173809
892963993188334149129683673988905921054361125458159406384645199099580699516755
786933621309420431821118401974254744369865269103084735057349355324369113694162
847023831258444520516132035483916392838440676274347894334366199668853863820731
383841712782405968459221124801717016063928335077401195221531252597323605010400
175467370323328147045164139871171919343456200396959602159975330726584782033493
276357857506572400961918845164959237559171186022223958919061039815894928141401
699888015653245503098216449829832648733793446445140646073841075089958315582050
006877118067822865850409822484218361423144609164152240155965812096265227487038
664411009175938680467469508356129118293652566992523940867113579431278847963671
625322000069962958625703600789651643099745944569549853410463286333464546952294
380630230002419305765668609930391976214486286039368351470217317076820739364300
339244773393553638030276808245092841061499757279586975941255568352543668742132
158295049116299488524926035986745415265102735535148880822814587549820743082807
910494065879877214813687538209235343512930608238549429977390210679572546430267
349934517222423399289175760806192019098816571409899351354085669419596142987979
844316039716167565133325705869183036660538486665718640837423021765021440706109
536408356960171610669824819033504821386673108126702777564599949987527942993957
608381757134241830784492969524462236061667967614858768240156831906690243837436
157319965613166616316400928656969650461401262097540979302014828092345632295884
843297205920041809588345777095678921775369746009074186040821247313248168445404
990598845246028067589500907631986090141762619188892930996221353563780335661937
183692739105779636106257234464218827807508900720909035279977295379731604841358
502492830261348726523455013637770668484350327125804123433072936103347808799299
064694088091382498685023995513454575788333553963667360075385664914545510307276
152798236727530024895333093181422619788887251237855561100706828631280158464838
258954880163633928973508168927685652776830286123933330633160161461386384725801
982857675215345158703740918837205256900342560992190916941642500776032691759106
611112159179044303302199318122862430874811986391381607058516709543419388097528
737250259120282977011792924141447698979792894099293973768268556849800721614212
462536212757551840182584704670731147412376718545269679615812280389866126878260
943839361418354991434937560664843874176264127688331345446171434689349010315288
923344367168014827235667070664309587802967195883950428239547004807108540381538
909546566034555748324049417896814400028637044481507072855577513841008467516894
502316213290285013608564121148087495051373863517599680023618538147708110061649
292894448518062053268677503627154980675048689553680765997556802072405609243375
727722626526087419838476576457432628389576125433887930628439825571530331845159
373238118785050831862426111277683519179085845387630864768260093824450792127010
415573801089531132584317204211567618319072024067299924678266433022047558716365
109351912118720044670669762211889707184777837705849853827960870108497969421009
060117839431058010337576006782862338763660188384984711459452534693655552884600
986368523555690936514719911693181043231663222399874723104884314771706048723825
613154296427512279448811710653015554322144345868053307545034990730955172948104
500747493390245862695713018127238256876332791954476794879109129641184091435646
246116758654911904770071354512373567613208902861492551622479117413257199010673
156721271300948324667773031618692779360631700006227643197346835307439288484458
888708393469022635850059982448212332192611744713712133273946066446570134945661
422801800513306979983153958967554822740212007459080771056201148125116280026859
578450495466008576277732614828117113394570023375424794738775182628768711306841
727331303104362616728298767202716221062489875639618857731475998316724100563289
484276618814455934002239197444135843563108013248784355646082673447097619924825
575153683438816097535614061430660105480447718405161644227113146931991525545754
324255687184852351555973760415771691480104905975993732352149208011506614757825
647892271344818818235060202391281355838925899074889149913370080369840660209128
848299163100354417090279273538185653127530322856780118115778862335643486303351
321356477446313713042018184886444944613644683545131083716243480420139859934955
982267455612708959491967964189090356229622465676337301203499139587980483726112
015514208715450020859078094567866733431289679979585772463602662815345097342481
759214222725514827178530152142469245436336982381154154277918842813761750205502
782782069943947874266307837397746953421097637493430219675821529020228741061472
740805863631962374066603796718647443393915694258438497349115266984383224288650
779057014481807077791961131259136630589900651227116816925306771089139423728952
718205655502841591994760462581376923236163318725419425409602815366824263595294
083757514799490401597328176810376250846095694024228904167353620637097263728934
415847316077112715517208969071789357473218229995783353540761369398489630524792
161878150764559687835247861624755090513020772418214560519735940085643750931144
580800415161451203915977602990637368212335715063540112954091127268413948312419
768403973214512453019749621593337389056441102329160195062721836300467444149765
085001084387274678959387259887272890536229943176527694937573577651224604913125
752621748849554589556971430341763839238596558122696405437933252992688016309005
218249161667039628307156719202204775576944000762400183990468788068514141085032
290478834533729507899532410535388314901050257561232149440261765225726401397791
857755150575696772554261954041376873619128892691472214744048712993043854442795
694658089946641378558361724853269661776202832606351603378273643118568759701085
236873292135114868695112744955952303720351308112803594952897687200501546899639
271357098072686986266361670560985451487158164123092809910878182702368972596020
268079737153002569814276679645274943178419434919437288766083939519695441370837
310405129520238436136146293299221805645774913000532329413278178668312250006839
487545689943248143360941124641276226910459336635791135647876987824420977348279
759809259388849514544050684096259827852386058491297446105129160815510071933579
660012808672129073076408830901889019418086812748024833145271075293502921721903
821195614133348984566430169249441803053989297796161947957510803086551695102135
101855153332302012295166270424675817000397867786322096015719997984232546209039
566225614306148718864518302696015204960162107857201580458063901706636347453954
329818259791981582060603015688723530990929765108793010907568052016522856000347
719918667343072873169021829416915273286806424842673433286816764861652950387966
164502262921300883737189841338783642383403807803487414321888839328209929989584
965626379212859859390324871262218905911897318178891652368591149559758370676941
727857858326503917010176440552811717393881010694392550283217271283409967459625
578071647533663110012577097480603478591684272136300843211370185156826399729743
881654681796536730206727668296374726356205587046763534199904434523143750998669
704666278447284235938508991015224231029266602134432873619666074250430999197674
933570934365928105871211413323637612657286119679638973361589186699717420883043
812641410619434100729584090982765767622842821514129705795539621387858391911023
476802481549334700619522877769591303709285095802093955079506461294650962959499
462736485910030470290491079304792958612382432369993885564711491144899501907974
927381933385387419797400500737895066184907951280523176688929239197398738712835
905694676079119925176290894916136035421048972655522315295867072383968115483579
676273390335137719067250233273078195251886146068761143917779076902659881707869
904839553705562112500824505538856278685807103209139482484432366990112405147507
323295080410063389305056818612513814688216228069560171014554418996543346909009
706166818010140963540639131917893565289320627111874278725948091016910492271563
818092151732690101066123347692590171106282045169257748367238957968233595901948
853088550807457040129964987103624527351273229130887114983505971422964551573349
129656200661106715288716227860425998855291577418239974173262088855995448069607
096071498013017993532507610491974977933797281414490505970517056761081798238848
751854381115727172935951290341466990003438450477055032508831414404533385682887
160918665173250863114469725304817719924122780772894652363746337875657016478254
880397062627004199779753531517126996444406996662868003834023111305158310587682
276089371063799563761490543675978790532067353193407900392408937410236562745350
595759415617382226978633774053899874328643771255755724274351190899016088237654
970049682898120787014013071544649017793984932152306218050857356684570270922933
827206607304658087613357731401304210188568279652367498127966230304730220420416
298985204897066720330215154760914376646984603228750750593019719399312456989190
920267870510066702563336227743098130970360677979206390841534809917433325826012
437112623647674036540379728016757989019444403699844324596402794699672780624960
369841117126606710189446909363294247700327716877155082654113441365169356490434
362538438795868799749320419076580136346277194373202039706271276348161666684992
413084298311966564294333329978751155550275446178220239184255828764927864995675
532655784832671691618350462417567253865960112283399229277250158472106104388608
514501218142750471962749201873814359721314515785642949566320910253524784686935
823552802615830249271008547592450471565178243784833836282982099834639020381924
569389218734513025582366738925599176249580538412527071686322304420240718448136
050918286333719025788039885633992742121806855672448070348246767416369142141720
526390476866348213841963580190623037756813667299791007402052207348276251230404
219096350606184984056170374185029891277040983631119905686190923572188569747964
930330598958028554314666517313747108067363045000940074292870056882432372407178
257206369802927060420029059959596377926234305005741496983325078877359719763498
595025311992942785074184539379511467630906640621249426996638320787387565145863
274390632900778523406321172173607033415407713417882764690111852771519019466130
726680923639737527441762152750148066701306400652011477873981106762906764905412
591062419311936746772836483772196203926413762798208358798402851790424283403346
824060662301980613114464206685761775648129553971319337321547297207811479206341
859088149536749907202219592204884309604293693128324587328220504746196335518832
453793461227542788385785108746336691192422282929708812939345171849935776550937
256340457615156530504762888007141737288793805781029720562475871208166514294679
303552652155841551132318377939556141359144602556237234517288803272280954550396
792132885576742826954926547510700908655373880146734668318367742764309151206823
356695593764532901432833447360591045199415048610019767707525247105593571627661
895829762363202299658825238019111256547013085963614621239954874733080936287837
127097956312184423790882156129406059625631473702407154349702690848228285033328
129157492751285155297044759555832553005128273434306761966499564487878453659833
513754755556179837923513818521849594249297026681415128521961697667719625731914
986773628778886461458435000646508588734462208499858422489556731344961667541563
168062487158530833155718122233916589445161924021763053907475066032365300961398
710844252882962416186115131966963728491961139345421126223009584084239739752239
388451762440819649832560731177017602343775719892462225537834910530312472294843
487130638657471257789486268847350343909165800272500484057433832766595840026619
795392968122883718471182992640999514961999950144599175494357979349193930800650
442888375265665302082950143168015616793608802504107484739534532412276484995538
004551005043599901573221899090939719275926154547774798291112789243745171148922
762481210495325392162052348794563694367192402714765396273369407265011102026558
941836007008932744569122390563033632964849369778227054341863657136903364597203
431974012750420674116089179808070643447821868392102598099995865943515854845318
855751297988944123175846933756639184635984156282477902366453483125890219668420
443809060486319214279100033108048517510818147663005406992831778205415197771582
012577738795593665275823574506239066726787447286628104712656469649521966526721
076141633247614925873133508408158833900783859040935154850925073801042777164411
770156042853727481446714496326750015069081347235838204485203921568528272110721
558716519230065487390645894361695334879056942238983045628188932648189698419908
619766849359235362448548083740385435359570083117279067498870329237665404405061
635076384582485461125507881918400638805637467484279151740744795386644309951714
554062071900732097776075007676078443842910061586753458194051471542085454756467
221253608055106774985341217846120191560731276417416543920832496407456733289329
847717253997754016986168861454823205975383005429285226708897565711670662435059
069463553804659366453492571035574923060807678898589110373059908464563314243433
596906126559529746504268373631374893119873560780233413609516511480457560144607
608227256532959122520273411095483166801053268798605023061669236700452159502699
387248941310051099347111905854618252311420302059830337305937967561715836067188
676273595096450206821792531795592230498730739171828158525055337609779859738615
273048518398697591900149886504263072312425113723675572608463643925074411173111
813051412049138060400373182134819446743441627371788439499538580577584384993459
536229300667687164360293427048310086571206532353405777876303758251337266304816
431298930076633283618709916822013142766952418384959180783159889209759747776432
542121567457635286688865771472716561292310970384337630504775675896074432412979
278128706362242529911645822923020382049066872516302210224827731275347341221313
747222170023602361330984867882202156715674652503426518148897863756379873365371
618312608411589673810854714211436131669714269431281348903207077423769771560691
078127675489803131464834432298083165329871295142411397221402837875551216661593
296375564096390964098372778399945710269016542616995946918398950064678598623927
764670588582808613400718988557950910160516697264705809072885699380703050404875
289248450328697657893257926143139146498357390915182410160081064152624573431345
249332514809319740732436142162724135386533006603856092092227077222363917186797
147434454428205942060876217523671298700040687674959003924743069035847073874009
956420457055873115743072324330153837485800003199856510679815340000436098041892
060203552625406324617587248830673430261062259090067894306294810297265541603105
711726727835810405074970692533927506955257378954862419841450068206243794699656
341676502028310717323870371357427367387732004603765155541017058706759374364523
768813364422109573872454322777852514055101459404128454305808393521489811819133
140059514759207541663056159332201931569103949601482165410221521367373670388312
271372408511988048469637688961295525727969237714564469970154495210434142908279
370849022068664588984139020502055667534026287746023392742337129754423422368941
854292563249470285361110137629072212072047019440125314005700927857140286476608
857548273260248768016664740730539271218512985436361097155058834402180568258788
852105290604543149667681581374804010568451545768944800543525851904737439431957
222174573689657278454151393182215468503530183744813417877793318905303623513151
825702746810727316054956316355158629039822903541565715171385876684889271459028
173826277851728556669646917049782831430498845482093816843364348509755199463243
470540895520026015250945886631229723928812895219761764418425824172660377914211
693648106091581886312907677604033154053712566293826542346471502935792159339108
841617151408927606534405718193038474066626329888595875273053358362761138376635
265021742576714129913725409360644959648835174182228726438340482775889048400842
596441502373535363276855713242043116865012255493459343855946707730015711878490
443569579432900158041455574363001163212512872635240538097413179150874783303088
384268463755067808873043909900733541406235249418373863480021857546777636253455
206962142194044517120155784207773332738333356626052592783411552102101024574596
321197302280160177479842041222440959796784176187613399903840056925559023282739
398442911411091596366203890729718956804908507111246303123911387654835976128879
308209688556673972371223278208647181618026677096179091402526745786972113671985
628770629810325479579412681321239558425758979306448231450751331163246068979493
723856053959626846588177844521666496143017619374048946997026149923724021604532
062865955723819671700832322499551884146435487420465295859879427408387906231283
638779417763689575019051917606585141478715170707905501306299981365672206918206
534617666061335163790469737229090571349062066190277920041257629369166187582165
200141853168317625164261442359713770867530178913282170127333218262183449362230
358948619736002696881965219410630342399325875124629503425700344037769790011752
348670839559546552258903664219670803985841477423864684177186161650983654561693
803029546361599163977260515853613480857784963274550509732159647455735854667292
339294626697223831242072698343405248746502697650755212898410093111088804750670
868338320941227112994378652278790555222177179151098724231999037488886773831038
871155831078395021330171427376569212785592193867311444054628131915397164935627
577749182555818581838505962577988587859755258901388247909534936718502979274457
803567826952890616761232966195791056324378683413787055493610808034457414440655
928786228595966259820109557083884067393466935986915446744209252440116190312425
684465012794851888596556739673495437155806145800887040719299223174815324162155
983900984662956120135477492535186463793217155852993228547990544516208287414344
771340154850097755862349397149824587886261390053440254357690874735923698145231
022176264427809660135524188435340190453620581459653448998045787857674411969716
609741494274778293232768470722792621594286775302418770730223122993456509448874
284746495265843486800175073639167152527960772543150645317506465000369858051611
412336009297909030757884421515572162832915538489579146889695883845268084897741
542119953061688547514589151158567773823225832234685213127203012968172268657131
605564179801320298055466336242927745640000741562262176874564230756413708677057
019990894037952954263885390044589453594707610959181657312172788881588342754254
210412491919123240731883559676339892447024030721839975150589502294357675313212
985398165898077923328391593094370506237085573412426215274305363061992087430487
809494574809136919044426007020945810889282427798109531719164325811046894245564
781640176903104360343723602229298764479149520193611526724644741960053838763028
345777694920202089532748555712767124548018480960783539902300503060215796063601
228690567397281409914881639826472887085785255928315139779660107831215286675728
752064454955680260616544991260581537196946810470167877171078822255692568438704
870146379415668693396467420801729057343396307513312099292544267863576970585304
809552526023146831629107649126817478449395880290026274045647800272957495240037
918991062833003069626608169462507995031008567950608949759352308477979962139820
171504756400946905411907519405336708889055219648422221187078746644604775395860
018337242387644042175507542365132751198101137739436917476464249166533577648585
326282479288843694209215234445141887621830323270084654788429798601878778017720
063083531134382100240183552101801046779245461826617788584777790126243042368061
139613561277585866235024747174713721297092803993527540359716835733923368813340
413546110028255558321753951411826830255188822061527321964946143192985971640160
981941993699096296668642392267680284281857040159142442543952218685458080986700
863157864974445909504587395687005779632678626249148106163002026571713937167766
648629175494928888745473401061186383540508204848926115421610088950476673628441
931613806866660871578548615864801501653953746694467782617017465071844623002427
412141064738512401832014444437037939823612964335351457779963003518303983869835
522817173761988915689709743604863697144548408333740633894310208347147208737935
528044624857887841768628478977276634731567358191565795983394374022230847290013
173409435203452195943587231352702894563002417012188633978733995909237257932549
080523196586121561199365659555003016333612224248216342461754455737672697421561
335085957604917232973257418850892720026986765503838580612819278373727445056113
473191573164195206446179019272265469342391737846961811464206583077023884205999
074082807289168679432361924459001400221147415707243268322997826346861738164562
235122460846199876024601777246882173948166102818728788940499581681425181550342
204282461695492648098630283177841254851349570746930343529695478137475547099101
230823951590251627966306115007075508151071661564536300886687239343579898506100
960538140230719958942473007839785078917000491074320767026500359138402765644481
962870392264496900938629126862665239291265456955432815663164917271319363933605
750925739072690271822915625398168205496831965805004675633407108541517384345030
851338046039414719701195169085854228022891234219016645544547636322753876200240
462965068310409388398989508575954456784737055110939112083740254407272564415269
131009932534588622800353075297100486470066636955880714603662398241174672630506
129206774868421700900401859723030746365724751500262389696949980029492636800293
997458987762907497651290243634917000546733450484056341941014168579137456751170
450715666993915214787944590040558462462828598851808863128179816720902299451757
337135239459298725908286425364033434965950148142873616642402827946889735848907
088919911685619736476536104432951888708737629527103793920743727363945732861658
723432113418849213020052333177306353649634345493435086306744283128757818246726
019917193365679750975795227583629500702311737025103543024258145011593713509691
637689630796216517646549855953405219980463736656913277986362681921285011640664
853889672061838586532362727654781991381570583225743842590185046355714442594208
461863838666702747388072024152334223824993529822850874760913405147302056142703
217793492247581350979845823493395110260113384446878908632076903888637353974587
471209375096884564596695789939821875136718528659234404232139514641764528800254
022101793256126141522303722531446389477428123494886893635483821276622296143515
486391044913923069578553540779876767035488424274927731215506055747001617498736
539925107082800843788400224321640332580518091157846369157820138033825094813886
892423892924443771342734608518806904352000825551741608423362473061759344272972
216342706959971548841714279045363347041091581218531383110483271093216245268216
515706240181628297890363038149866533380885446713242373638739840798344666788604
853752203457418215665394675270074316464606533953883621467184369250975968124784
038331981982253529689411918414654702613026573444029139126587228009889378963799
686305591217693213699597285332557684084050596493975495698496390190541515575841
700541826930617538259853277510133157923131490588029660281224444223301142634971
781428161196161586856067126152265570111672108805055028544757769928443322758188
172215282496334822048806921365215591853754932630830959393112060923141269021396
089816790371761394684178218387424162024376108000207749460170020131639082363099
050378478695601977825744046462975105904079708690808575905262329005599338089631
318708158566697595297066495066110228992852228324846751445776857705848501410506
083139057945987390587332230185269458890115048521972492629193132068342751675709
934844028558950217499604144830923281994560671383566042702430896515797505034501
867452586537991583079613260588437712703429563505963742436666651407752470570483
660337193478077371972738381475012135015849854477666873738118929494097433229572
183005414395608849767707061760598776011091480212274009099709292385821969858522
926189737297624050932147009679515034566367500178697471001399439522726930319758
576578345311420268739930753908392551350228190203883341329078473756979627504078
524799919778933117581208756411948554508242003144964692244484356240030313876921
255523264644115050631914224627188117114344785809110606174602807077194547932752
930247775558067088361744019890364027013255012589568632047468751782520438089706
749920125400006638070788015465608145450478293857465553124770564746014523688189
093432534974481494707659636829501398097136032274183623315396515931278672330984
203229750894755406865869683130681924767581176965102725674133495607303120114940
616785879679010429720151178890272108642842528916614684314738314780190971413479
684457214244134482647452832713239585885576361200129842833503300510335390617843
838322183381333981732856645998034913653891006561835024811654381756908707504261
110076791356172978923310019529106121623499716705391400116580155128297014262820
092412495349993633945567014254074867589841563942862925314569820764691291572304
459894638934836047003801617840005039767462003390714061059234009421050889764130
995465049605699341170175605631522184348416434743158823326486636593357815041894
675595166533898944627627123705513540655725978006510797469635715511351939698567
215030255322349211266199044322478707833754862667261875660025690585635282187779
980398305430853568513259739972945896858686908899249566457653547042322358777404
095585147332785534487403963083773261751496952970136626238363965235617633292592
870650422766725829044341219214360539018469506947568543226622888070855294323647
732927058492319117251259101742896553098775939836309979322979823765464067958990
523431229804419827091512413518200062105810551605938841575709774920441675908049
989754611600208290022206885722467198967597349434644043977414690471465303361190
586728332187200263972185421059118971754823821772166792362389860228272862795739
242606649530776443330291965564636421421853421372784243054789251432444793832715
908277007607622629228099371319352787648273656385144769569999742185832177186187
862605514534630118139523536498047507434253683164370146640674215404902536612432
216301005051453291077335355992292369015337540326819805260495466952501988630678
980667723827894906877412671644065742816840482838736520324282264039562815182556
889891343425663062232745643130686176778571075497788360944615213749009658679703
487951662813240978868549928262274114557691953875163973117697835344787932066292
069269328830659676679242511647176273597851604810008128919757690263768986415960
333605963877755243497735163919935726486285852199141523878565964636722226864552
957219884216895235883916651501939498354592685500010373427183137796718426957291
208590926090535759325689255508313465307850374256965320043212778525675669611585
773845984215923950690970717043299852334188143206154912628011128396852384150673
311430304616737994983175481878364653888574023703506088404023962907457050913951
595047458149130265251971769068958334046195736115680254850926406109859262814778
778709368489940669943823119376832649880800132251004286105909699747614116738479
861544341656119284456794033823794514442742996939211137473282172648174132157664
096544332776266827410502314828345457716497078563351928325053956872125406462964
483917083972250889159046423643761199543782732592466016886110541935349949137356
736803335459061114082111907297106164449272543708314429875316296321503937810410
592760854401258274167339782455950235344599215866745158607473403867866295227631
319063395678653969234423960000550897492870437979342109737191146281240795497547
963292251694256577024270407358863442507694491540058425784049255430361150857542
622320541814004218445572752162064612872351703200921268168207433212044273213023
781151489183809872034567254132480212334877398822760754023813244943767128002533
476639722259744369013647737777286486386768869884062835583515851269083889932436
610484675195810335779120138609443643302565455523716838122540318198480268514000
992759211638215442481832385320470477411911572034351129309398401083365884890322
123226771731724715261904583421683770070602185951981546237517266124369709442883
364578620324860285535472792237232521895751962915091444976821600399915714566295
610104258300860794549048107152734570874018006165588196140651040386946791939358
971858498037689867960249589859814400741156248042665560695849705750258476237410
450424123068844323490056793664193740383055424676931492586632446246307115616053
000280639516792323402939178793825170161327938188555015119604912959257119462215
361973777718882786540857098544197954956714410641824369284849494323800097393723
336204348238214703250103080713728085537960961857958446319249192294479549950658
531893273154964948196323572717672061888948365620581071183306582542284388929227
261484431654808017868123999816499639420740396150221955663295799935502271711340
133499863686073403505918324001315623335474557758453254278616044376121785031396
126016418458375450475831332791872597121159624847321442251645045142790696037304
641541832050519937259414734565145872343249762745054723537377906915597915039436
860865024130434148467271736032607652505619099183514620104346896412644483377379
256211310282842375756585795944023072897617615200717347653954943884511206341604
862328893290705656288785334037682251519465185949327420373755814890098729827545
775981030924430483586453957782412784485435661645053110330971537158011818736990
546092373505085749198149936908931963236721142576162608015712451403034163796663
067378136607652379897764483683576143017408426521916900842279080872822839368518
846256866630563130573804204015244930385328488159856781436396250102991358546031
240304647229175049532598900223698318323831619085821113414702411143891743332232
738538308453653732886744772926381193365632106427599123870880243591644596065849
318136808430287805563235754772936673361730218158714668120477644919764015921840
317764782918569463755378670957317663288235318511035450594127784134697264312808
123593653249326385620785262855043085656977246662258019293659078850646904787211
136633466135229993854982679934727573401092522255928021270556446461548968968394
815590483682412322424975654999051283243168716919350748240287652038712417229867
110114273119716783240704615032032629710435495703603157057847516772271494865040
560999662758512075893964838169157383685508927109176642973309375205483565577544
306218290097966595820233621316786210972567024522711999447717580796878050031423
974760018314808990417811545470465383847591408256737623260128982404797011597262
193065927026272420178301416634950067817170688435062170991147993480060211665186
709631222688184304759061373405794299424499244491104669355789227523616548830140
896578559313479276321100896048610611665287006427188241372809276593777229888645
876563792723782469611825240828824790526962785024030365094579956153227561351352
348419131013256661852240324694980108584108693407908261094705352532299089338557
031803807785312607029821006898629348274130846833619563503804841610204628391041
235766897600806797599986673802388958684968862974614563685322176215344614224720
263086058145477370382448500979633894443011632223599719864071307134338370214598
827953986825082861439330152163754541791377336415905648854107046454724543699331
767209859074617150708875414895653998677792159954694402703385419993161195658530
828513627339491473542223599972346681945141296898239438875714398085778203497886
037429516437599165732590887197181441721518180178171618564716415290820537123075
172222323318154366713985764354836176130275986649024769767145994247960340492729
544663567983402023677187536634670861486855846034839515486545580589744063185529
167233838652530583780461560146157219784783146417196979316425045908261846494226
495175014009757288084089830335098859293568314863654128469517681876975911592519
757131324284498623459983984193353793378573285196565174498370859495881950834052
946759347902111459687994509861797817858611374352276625396054633867499493301358
696143891782415412925500014951071492078158513176763519201433101130087478192148
321845146439698987515274716788892663870093526473018296343811827777816387107409
204609118734502780204325964264695888563054850651573390196038362273607782609333
398546428228039785805477778220498423705060635102003394990005404393808283570273
697734912519602493752870934406222083634882524622948622033514036558154217278335
411706147642738105162256397569966480401243362203468379251542600269934861374509
693867003170641635546689821521190489488502889718792094512666331922792798650405
281963023440311834603121430263776882236798429479848099010549714347270586973693
467595831734673934935957756684716406047168412126572773174945123055214185920269
173668584557143006269863481510028207447204583607897145806681333894783403848132
004621861253607650780817980812320047749289571507773346064655990082110608229951
366358345336801169865615805319778843518193404252935574571168355398804144271697
451297378709813568466825498617682646508782426519330594499792479247838573001388
286686138760535028156841250640578154129941516117673931370696077539414158277724
938752606348870810063675067793073318318419109962634746009663879166492967627115
790332165210547977967218269299711724163418179452590090086892544617986946801330
949231219279854437219929870087655857819526442695804226596860248499029388538912
017813615396339781302791702588034445299564774241446486219234418456920152218955
529202382740490000195003029623158245520373273746561909820180723422273661827873
954063307164473924095566831820000959708519269223898942893940802887482557861815
331273576253276161080575465585488080945817537970193929787978572162742845450853
949941942546541608287472186307806250690203773687462266016766929227932905245887
070860362814390626842822523911549539730221216509775934105642141727592253383821
851158567865817301089515317847141676893489373140049405008722965610488088345805
246984882319597166755946701951763989158221332692444212468776055001062197542317
778903528472698718867808039754648450781983986872401647357719781679944064921207
502475500103633424008156620050392796418090474420293157146462908193017524247737
653190178376733207747818628157670166929152011056317787683672537948279811933550
163369070047845687933520910341929189258640599776524357960833200704322201303847
640611738346190995062331793672008893924056591993531364915063767690663748270554
268464504683906382062232300951859826255174740496571083298648865574254510857607
274571734796934871163652194418361986545020496121317029664919346180136043319022
776165302165515456244156743927003021205191826562834766972775810563809790292879
928980830732048228877548628093268651560327328318983015023115098562051429037808
765330564140365000138080761373655774421015123214521610084734889191044763697496
713533280629160971972193892787166683327024773177841432616542413371538708369533
117868157668886885288241566298607911894564862270558566086081401049149958309299
892862359648396128939274627539287295286107168987145640403186145066622317260629
752726241487635017947936116754034877526341602052196634720094686918245681713152
420163276381815753921672702606757739604651959813505551312204356251610761125279
631489606185831030106013573862555283770146369983007003111875530175476006347856
690341127696069036197864481454637801193879538924069926828441249978040352874774
205771982329086969107742059304651670995398899146569505557747195421716359842688
845006720976036030117285701935886832160242566771013397808986403935494757794596
892026768834959919545571364740441794529896148552866320716323215384484534204760
755830472996456157148255223960324636766731657154977500010339887957262288802700
748415939485759614335599397844869644074848000074389804306321047691527350293871
832189024023268079410327509360868217857582866575123639486029842981375218576608
115449684198281125369517219713937728012313042237478960665990477178027091376341
484043286656415527752299091023054049403706770215668300518881385152721170548658
525476159842666892472333670855312205397236767549831148476961470842651966281954
817621033514332353731788519483522674875582011799763342902675082282876559721691
943807192081985509475644486187453784402116410816497149295927594307813465155537
455249532253617722401222270604210439882981599549450036008248549248127651385960
245173966384376788852840309459129333892919857476528099535384112300711773522212
469097415429713747255940808069855470933882344062917982478792412759617274574144
416678214435904435583866658303833779519668193467698201730215563446236399640177
640629958566508200829267634178843991095485362052917475164942351230382606666496
294049001669532501980492734487297508362601988906798089557215579940445088994096
113309717640366871234781103681107435459858353389170518363041594903398268796289
639004042031402223770555312046705236679478262832415461910714942117644262125720
033612807051367680618884211425067027353349702078093605254947105382264388114780
767012960436347824972780009880728409477247594430634570855262420088265888139860
455689705604227326230002347456898573885910472092696790846971592231429139372684
292820357307604922349529883690320629902539329932067619146079982835404858611100
569618743891760464637679383150235684039328680462810539199812000381179476424329
306043412430828279362193886025543578520662940237049064914519703033921518090619
325921014414880606929207374012013935392082568893891726493770880301820848349682
996885531282015480590502408632935792147623477896677132232911896117031137317519
398510625919289638714810284973978430702032653831179002911313074854171267365633
418332650569507747176802867786109529256156155673083421571308986648124635007368
477190371423694410586831293139673996441838815955008682507935496306088161488398
887399786462511373666791494136277786734226299156583360172997706403546765827581
904305652754244640342778656030411610175778892125139549649106166358488305313997
502631178161182500203529541937383461488002791508528608110189161939454493834634
297316393541780900764380148701389629303594566649490286707387403151454345841184
925590478351608387996546867791403502968843595631470718820103640828147949576998
473479057720345369949296445985737739322550281848414803155001963065961618741258
593273561874539213209083042978223814023324852519815011865323720630251539570895
844030211438405097402901742030626349905974353969331943360931837603920838214911
346797152646319487314024485909811696298632538546149349950288741249396589299940
521257549240022684775541460690795027525555797984751086701690056112692192839292
884773491493467204766000597738322409930457609297960984598763446655330024886615
822368325878587720241949041514595328174500552767506014582613921589364411338882
723578718249815890169449329712572806543023614153048673924531480360353456955934
889472221926222160700804726501299887776025295850761874742594292505940885813323
073899531166176150353648519597015420284035656291425970860449663208802362565680
443294438456689488194935465121499341524901461451675698159753145892547214421243
111534287299944463094383926864768892530126857336818975102962477478662724184004
921962222439174302779507473170211051357768279436748622849808356400952464557088
686464461345349359010523824181049038826161739917577114646904637518745386128653
373748910883666641000662673118671734741963128646174883100107187473292909506674
142238326851306338214720765268302071591291457962893421493444692402341336607653
961455366695134158728738410003099131756533308123124466688915535567626213892566
035603671108297853518919973291015436378445304876485360012308104982808933093220
719478024266530272765877431532017477216209314115028157403887932244157196286860
833494081555035584681238714275621897257878761615554135729747148915750387697851
003984829880248917976267237091785976182901973830519063381241495982964697647002
449664235110652829025749361338654554470610597316344870000097154981764196864953
160230432007617801197870027203820253260561963464052016055156308876955694950398
752884178627327903222583314028465010098993473175857752401088029072546658038557
808797086525332581562010698407697237123348943248981542790077560423325927276112
734289168225199910307981467779877378018317138259355240158752764046847205806629
612836866070603251524265887273392392066695166010056356179862927841742187744709
154152730598974083553847417442681417577733340395907632002225372817647376800974
739788778134780192477028101608131454494519885656739653289594434509902717083361
056250256439167716793229123057252235180464958106573309620086647316943391037996
000281657014721539335018353834057348695339070101410050928233217741890735712017
912703524189667071491094959887595446282444850314460763050668000226451844398674
869588794459756925075111648483714790302784502669767633759586340275160668493505
834841418066808591331371942141009015133888317499822964087301390680202400236559
687455967724377494851671425941776519679909634762146540990738773101750080847122
048610224637716435219856724130464588212096785549227582572598944006549573543995
070596367722588049003357642560473392850697469232964573358621763070154865652041
624800755828875220493427781494615420662315572023869034750556895524029144288201
272947980084266911285222604839860099588204101322163037450503484293467548596104
600621752515517059754242519656886162586508366862689676754438464516348424158848
458219807108215052552738315257517984705994797272574806243634546341491523293982
735863373652904295367206092307100217615195274061427561745142884883761369036875
083983179931830999309636158598379697613223766657946704398654646297232868035869
667609917494663338777929744563279058398401470129368066351098613930344391360856
772510713340687390386391389658855318718085930979281341996476673726840371311956
038035907743131586948717954660267583344438239185731990390598942795193744076906
860048711340114093499221622714750488138405548533794701950329102947885231302790
457936858783869207168846685813018338519519143189951657865188589227702573329226
104699788166752895988400962926401126348027735832139348952562438501892943105118
924633358885334075733926139922852503685782351364178431832785952048318228542053
272471295232899167259459325230727813012160564250450894518605205947393436892909
758187794384229952822704448932791571452082548746048707618918857054450135399343
518302867946360081846785094433112574142717246640386975949060784839819618228522
943645531694705103580367116402262990518390220215435998158740872640431983834330
481948224036073196930883093502281303709425443847541383052807278444023715063570
270495359478887490135055198881337198388764182630573321492460106635930349954220
403081174722530670405845080436924878926354252312447254305720441072261922524783
078444085152678174942606286834954910899872106715951421985244270596347313878923
886123894515720627734214958331305523645825738455570590112034546880614414400565
991152647939557021571355236223957113225577858869269757667881293961660382760118
844201793348327849856245436506470604161233178999906195493811256204105151664145
277634097385669454088553748049432597303207720316415399831255569299176526893291
464161054822138714013308710018882770868193443055553076276381661137795412888007
046370104579142782361880543078361746121723156828447673619631205404913102600830
974013033630608499981523459819147740505390823554354412444975746937055415896632
420102869128426308370407222557838069811236819096767056484569064123737165174122
203377551713234439548361312549666057150569131068514821148001181917380041241990
731456104007398793840138747038148138580541697903968590932178711441477525380713
562133588265020620415801296756181438226174006713396768594173885158293381792266
259149561581929801002063125349224304158855654950141486786430277404896679558966
814626968610711075224226827702679400635449631034113863588887776437759329970259
163455371005553328656355769991991809163152168206599488769057810047251308642496
892203153220777126511609676943649180955836045905730504673328765131413627186050
095352539400447304374630022737966934188488274826893299855433356329324357312589
250687601595076673612937760639622479703710956055852667844447524775558460861240
424834866018126881405850899358947569710766815640413734487807773016054454624453
793788990845357132954432771645094188507168637987861949966418434653494690635052
875906976733896643951562602925206196292250048611639334708418158605243468999360
701420345234644990694168800335211118845602007553628391749123467358193285990441
162661404914991957458908194750669272238156155347972665665763871200108622401362
878480740726649637638873440686052358250132458606637792335823801612782705975712
655402785427352490971210818366647191176409763787628288576085285975290828287423
380113784175021902382227737190886852809630298945944101222591509726528198137555
423387041878901467213418873323903343335936020671800237243962595207458151592337
164096502856140819713620146302335029503657367959587016735465405894604429175735
269405753944092669281735959276479291112927236750116356604370257877495334322103
940460990244698884192552252987332149739973118232167323899885200669772237313361
161033295627718191396252147164169690916021641525162079348596038829876030937841
294926420951118883129519813018196349470190418668192938333129440559189987115854
535718827757625497453619007271404214622355716422611198031891402394176042588905
987696349714888179518499422199225093693832586154416358053352502275383249661676
713606135479061453934806718597509633400073115389098013203857432127110331362257
864889646170229556858113420177207849941920306335282813250374971451538428347908
191872188827782188199767851647255813134309559049759435212777795719908562797265
417965634145017555941922776461148927987586243151106857230485974996170794795276
387138499203745194779584415061291963248303178785595620422319897483882623067172
922992283172977300811021875758080863977116491659944223544910408462574871101694
577847084716316771351136883922984561778332862401774939593773628904651484481732
534243663021488560155678845611855964124992901771803800712186957169442293406965
226286372637542352169980119161909615397489365137831372336640162019959977894265
896014657635525519091441664122456234979388853270054780318611982538415473026338
294044989748691468074021294953765766204103080879392449268969449489501799375325
713727334833148151466985270826943071425395819272784478014789434598801608246941
313981013462238692414274643101720922262906290868435697253034556788813670454872
396954561893960729199209723150524699922972390943739366201372491385460525320566
608630741223138559019708485899352605338739157175575505153091724562933801436174
331768749291935996634723808349042039394373920014759973144830269666642425195874
141819795936247981118579400154217390205583739841974635750502572479814489527616
223844965446258682410700530600920467069525498959626021601525075309251332802385
257738372719256293912587405509384936995362058729759647558139984692268653205763
980206144063772979880324438765609848937588043860230317985594337272335371186782
920269262459610955439707943779868404799465357599841730030988660237072033136901
054377349950054483619226452129154237327999408106491011278707028948905196082392
522119926388271865193789553840609804342523246515359845187439520184562178146616
541393803941461269755343332067015851193127622386522506780985841746053442533775
623217972422963892216454112096249993494660260830520901705613522924105922430882
792938874471512488395196155545843890974909869052942920154850266742962310943082
508288689368206797209615658235846987838701450562554946176459851607501130523663
933348852274901862623693545207457808024151612458285298165440024294522920305854
830250977953912683381668418606279147938088144802612017520334009547860883796321
543113212985622520255923781069504525553999467635797918442472488548839776491136
600493736476058357321878108131153707623865421732050438149910611935219947265190
175996947990121370792993012045123839808816106801239366396983256645369372114098
250387633546925904903496308864682735854725833905474158920454540491723519833198
798234167540839421759703213373723765503351094533773224071985907090169732496493
258572435543393618206822576430338219266742742127421105296748713671153202215303
273977985562652661175723508287544694471981760658721330135453182059890438496958
460721073747429581816872719217632676621904472233436028436827201470407497732892
962158633365535984918692588969991304848518724686932139039764836425099844094999
691578220467186561976732204020081891887601774879330443243048313240731958806366
227595051037701090088788036225984549265902331046831279432449132115459029985697
969054294774689768518554687005498256017109404228245425679215629092522553858510
678571192916744215384397600679587263244789190417295148233977001160087180402233
563609661857649457120785188722877296398007929970857587267044047768662058156601
427264245413590839868282573459831140595073289882374229430330756409492461619047
933411482851793022291555706941363096831063445689111153278231415368575300658280
445316316657921353147119828468088618999246613663577521257875774776778257646115
086931431547920627284777805034002875487634894041613246060292379126262035757154
951780751564999211691730419454290285933486422156535355321422072116124696852919
732173966613926116149764055281329594443539280082999995352186297474863939145245
980134412549900395715220682659013969836238137068845072084707356566955297068781
936784474492544697767479428993682207272690892855458593857240636784732261198266
790218331193288304344780275844742850416920373134676761039032763539616129871806
232947430086985064257989664235443752115991788120773720365751924277549006764498
252170583831836129917286797481994567465359389163345696345647410873536252503689
709717922448830102506238599988551391443573222992147775710835158223946651410606
098919188062724475187786400001045700199099422184891920041305449061646451984248
260444019405643725817875226916268049426805448761021842906529738501825534136924
602927344241866602115183901777376106257484849113435243911535020751553614260818
024931551556745203940734689580405030015032018120223954518060179356834720818939
492751033410035901483840349774070242508218541270705591269798611512055459583327
447209219478328721029297803006293764497181184933253846727960782086913275102174
874111845649180635885566407668721401637064524982212804209268969807906529350369
444965145348949546191277743539385578357611414886471453365558514985598700860981
317096575455308299925786334960675879268141613260824712109048634878637426236375
410662398764165851597765308296139930513476081525529772459795672864631441962377
395933880383860905561325940702251166247360795855365612346925396398398408347915
493407061912936671326092033794172574182493073261609879752659355182832647019245
678844474073319863784604715054251365806780153175269264731065032496709269120175
081094399573888643693884508323732429376926819060224049222599026373046276096618
632726208228500162451353746575221504906950674354599931332207638403052937393507
887189546412029124589582507294372211062564221709346005634006442322585443915284
014688553486635239231004680976243698567948468553173577197636511682593359893151
979928401660006491475371917640365765879817272763557947820882806720578641033863
641072867040034885271764391219073827263630373769256767843041979390505314894034
568393232425504994298060007154925497738753727718608644691707469657390165794334
200645079949493086390709342093426926104261596994858413413899227562780295008765
996144681165165884057796170517720558102419822093693239165100304855641656417371
851209420423233205685166452493699620985412752890620156772243021367360275127553
522647581282814931192014262609928052910032005664077435504137701563682514281639
388826817378282902056935752387350154552532444829478369182749111337139413126119
923447291183093652463075663636938757609573256159611842898087856077659772871521
378067014424195777106097705426884235222772544521385747737982420094156911281196
323367984515061529685563635828531351246465273409308080837475779826447784921378
695826593185670879126494938397424336555409295109265918595080990472933484335812
615282822130166315877035959327232396649376800158906060901142944464366950695262
832623387692928380791613813390804298816157874922866826760349579193933994429894
351593565487621020610161808321431660308653152852115642587238394540659627174360
140080910956620019508891107079251939789679364683955993584208012416096885125839
395312297238502764048892931236413733227928333967453578921525018546011323710835
629331218971681389416615450595515065724769480500720501380176739383949529793191
953462863855395446118761414876135400258257986207455873178813223193751847762820
288019346790913239433639792680634234357382109026459354002673293490291621364249
018684151515990032632199506440819087379750933826036507941499641541026130210756
382083004420756941690266520732902780987295358403189465310755552714392118133510
825733218460069427952671786779518827950506168746904509737254455389868813972019
796754238034724749178278469179966367277228896001610231157820314170629819518996
921590137299848375663174813884543158934957949223673151445539553548621887142244
712121054256545408165447704017746219438382961332976019934842030473481944245927
986790654456371001784962599234848140593790915043533646816839757788612847618707
899041835849541508397966074682258753946374037877689895768959136890277969769507
314693545203537866524018142461132406960820677075451740114449778310836740360686
453111040855849459295498342808332194120881273180671390060170548445079621638775
523894669734229494523367702723668513985997181038475564296751817925284855117582
772596629033248694310660477677650131794695661242922313528894193839417087809012
080846943400249997280442232246594323663585244911742496726963995005545010308608
202749239485823707914129729706155219227557792545794126687005465422880732370833
017708839632307133217458358911900308971306973532575156884123006844978138381638
282362556729146651305073431137599748370963130316323882829088455546479936326227
075021242181923638948132946357386169110405787911992238241465512058279954240150
211791980500291230615205643365933898826465229045197514009371147505591788919429
765499955045195595610341325616984198158664221261131919586654318095761003966077
839563395837595697564570065363086265943856365698795474823512637606435467027561
509161998241181564430589185143936011525886401579125834590871216023538528440426
041360167114945162610678125051388614863853476780964860106309080118621255479186
975160860483217448621973056525024173305452096084664148092989065904003184310929
960622611213216654061750946960082493959252079703740981970959072804853302911267
973344505850147669769659156630052059777161276017959070000265817129617285012541
935126495850357946384243529460567524804679917800441910339607616602625044136213
382806009231647977282215484923431486238319793039346644411019812756893725695467
799418008177831993306470074039525942139139727708410450350801172930987082650169
142673621957473042815245677849586577464543374298229575597826434237350758771406
987781989365766242915333816420076106515241672186576228837567466835638209923109
439455741829745399465031624147479634396445100268947306434102573480376759035679
560627498367291716617917276736832713105269416019311036840483082412841752210966
755017579859386398461635955748419761326181278428787789076159136036486026943582
376827290937532839815871562726168685471920061684774485025844216722403195075071
341211653433100657196451628601759303023932117298983749784664937489598405260177
481841389323337512165016377281852199730571407101173617369973952058163676235651
251750457921982293590029414394406931856996943673569505603674625007016440941972
666935185387937668643175916671965522824230518773101626412863874755126675011778
917419125502370467058220528848954446024338034450310108905245204384361821695602
485631578504058215668210544915116215471400656284404335303520871589711263266139
782314408937373724811611075112061339569863256536333085187759637438172637138583
565484397853860574473033394009571601720032573215555780243359117595445695949264
563376103826769501225807576020240141731745992421852402471047177603907582944439
103923314876591643227378429269195329190825346228038614030774025115670814687012
840833895329600782782200163014719707263970441944050636029542036055469999798035
487128505316285157570360512220416983123512553812135351327948209179247931709067
419120767989837955582766152175586638884389443569175072757129563470134015217705
916918955840275277050001806428596573469288698096793067313771970490738698445115
071666000749964831909884745902649383598839938218973621835649723646621907606081
341724916025167110569965074161785840447123464412133379942613585078405274619830
952095950833818440312238606617531177140906996892443068383312509607394134363087
077731073724899234559560157959532107651191249563175443696250298288047285810054
835835534532716942077516140769679520156430968686431385421354272796530530977541
557877932094845796447483084966842381360732299592366719598411320645407613524467
053724077839213307543441606519532007190223609901572419290416353349130944501496
132393730997772228367537064727120708959980227966218386064119612475030365374965
249313646337288691646525846369664246206082358321729685489067176545944142571894
689843894043096572667773297421395695165949577324954408198326265903331984311540
437751126671701621351795000014758722066869176396546156288979036744258645664878
174805745830920932544579137148552986521304962294512970766382973552025240368534
289630513011746731121671939992103635078760347413395311545216883816997879073546
523255542994770859213228297986222298540708194108442971892771906100166096973447
790246786575282326176576430398423013173993156981778250196056762570809320509888
228233434153749770947512414732728261866220886540527796410850600037762517131765
499332878292819171658948832732519759848611418671821145602160455453364166359265
176842567747845711947560644900969513887416333909998850808315876454795044426620
691885708721119289485999769447293105492310678397862263949691443852049472684178
187483214932221069562116000792151361542068650269244917412658821769815269707617
144041625879787415627417806258077172282192425944314643203689785719011122401088
860294808795112847516252683075220649800162372035160000432242108932906859670440
607190035454148956075216437643736841741181937738261166835437708725207777441576
420531115303864142848688775112187950566547652902032004953131896000605787181534
024969551539508083921011854967932509152258778060119738181200463102417013127305
153647151850212846069999176450307871644189506585937635742092948470617889436991
628808816328907311681954148423144972386015734904230320653466613418952177596028
207361009801012759086407578146937487553658471737017361209598725684190683844143
776679540043587234823672324618753300683272966917432204386430685358314996850294
134316934136918968520357174740461975552591275334944016077865457325036310153675
220253614277888764128965721733486912346860170963993332119901650435785033547660
811634722522905342129765018047119582639392556509926283853855647641977663877514
536299950781179709235304855846254001737572608727961106203428563428797393577316
097035203363140716576997906485109047979286433749522456357248912186010299642980
150914103342144693326178083759703468264964906199711731622057283973475124414457
222672945335031620805777441415230518911619636786075544845932532424095144285126
001310452529238024171589926818658371109879543396615260584577769265469078279986
362086389530417760416571290222405824848865686265386166739466693456833366248895
188840496147931128821725081129776697634754663093695071111222682556801261553174
548731435135808147124819867179156265743496824125082274915974691585451014615202
088976954227855796983953432177753607427735737931997838187480961475392609677195
888881269999063077446459025613206042606501108743872835163827898035247879609997
917839781737048604233166296410814994989373159499823647181384778209592592876857
909799268087923815513795906170393675872485343874322913062653965963148247297322
053473765498359176557727465019295646408429674796319111702828352737137324351940
330670821391033975179058605428482155748501139466989045319130387964399662588272
217119015726918775094937082412876087618376730958847921227025656190322374552707
249754573883065079545793723794666419002983203635939843178544389501183647068622
898645239954305383887617847398845797567739569972258587054059442174847471915731
072011882405883275999944869227068132178414283576984551895871748483184972173985
577240212523025121183610307704956239069899714046795934062483197031612534018956
929410303925859090287655522727721562623633174552532844224777940257659589317756
460057264802514836408786589942448820191272433884484690859280103226043793555031
897006078549989310128937672958272617530363550554882603291190421815681301118208
648524044794788642950410707272585263677424474566858457224010812767928897802459
661192689146695525090877946429403222761576261195663868672401288843413619590962
400802426666019764399913704846476142786211795429827304844387273996159335923817
824731469346717875480160771076729843062862213767555898018255908165521817685329
155878746062265533047238293902325338613967768490127731257610498222785947394414
522703343243796660694901594487931182203166196220874431995681073906233039613200
369738784823279547230885983419291477074869445522677287635307314338820701097537
814210887121776656835052474545646829057771941094327800563568020699139587046106
971650407173245374591055062954701168966233582224496855266216137678522525477154
915796292495441606165283525556119363033754991645660315705700220145732218654151
584063544247315334207527422780717414221853484111364585046004519930609519979582
383206688734667964118585481662137906554800723505945297601803872379514857025584
465026912281956103746719582633422279340712515304387825517528546383231977704031
350327640420049620769892213812703005882992953099610865790271909625253522784076
669921315803328796748934202706504749761859280341535953735368047678624154483891
872452603443147865768204477166241108179366190590772992311141820064673779478346
480618869994381579960203253937702385405841875520542157074845851117640052647653
171264494128615198859278236176509692485731793380268035503950741455686352923483
894832541318655035255139239404061920232132252505507751793589576303137372529298
235138221018279413979206594938556363323049156069170266214384142465751934999326
624643764231513524812131732232671318987043975185109995629695389139610788932716
868189363311887850166992796596767714511350125877822788517055408539892134169096
581298079705421201425290456548308629193241654626899506690072894460623535485999
290633910051572232391821854870085177533032925762792620791520842943187530499349
944119691611654884653260884109558728185446993818173679567876596203144390327988
486333905397942600762549725295891070568341881780864174733361514197518150614687
975421594631736220233275048034169535314887710974327222277489443626025822585654
229275147472542207344703691550407802978803078675077256993549697087952837189549
136913348690371691152980203454236379032170387692818236656692431813470142358814
098642329709083094266010643858235147190447978232817014510762141747014411514300
663673692525024346049741023083265988315645108798910722855580464255076284748636
468157495105323726677730523655173056049607853045079683211388871456727370006107
827584069532861216668849988011160257150504993111778201116226081503735655719655
455443143629823657497338928052602583621029550002274419040536734798613934946003
096001294150841871548087615708916306781987828485770997479639780416506732975959
434973325797828940567095055984346078713919218775994444525787875913187642984230
482198972862172285713703779973210365623699522595662728106512882975545361358243
193838036777140139523432025598009521818225799832593948389119395100550599781759
997099715377621856628312262810893853425287989572369098183293840487689293899239
556585849504279138427516709159559462848007396780351350795877624192095518436468
249617604986200678112605765976022753924723445423414087856779526996012342751841
092796886708830838150074526327490379562241827776915054924510956350284671772187
987763677561150215466001485217328300478619739601521773485395477776321304063878
736675662347845297131428616415165538876585222861194522648706124051608527889870
837416474805169623705733989033263362188349164569130883505218191554019886469752
234152690667061583556194656128973759004622546636809693820870779455196873571841
390447616899415572420036845402780305322248315872181689627564437761796015184251
091208274016462311265972480975228475519912274915812792775971676945902065288376
224454841339715926801003652355029503938998133726678818577063121276727877842110
580401202328407552786048563558310324527835401943479336913650174856982116664114
088434842659055612821965527094612105404792117822498484921058880873079424078026
418786035772270159947266878801926776186997160188670843844950135680810331647081
125080681241072075821663542724418361170231824925230978280375348474669831893946
707461361756157766664205341640341984967908232114876356888994936945621670309880
799848244180923030015490491684760756176742478507451151058579524577079296423663
912592523422398474771929171846586551448242869819220362780400624064258832346023
766558183258816863294920811242033645644733367760928121783465473764068332540835
130282365951967852951475783042645049168244131645157744022396246802752347521964
109614899189222682333026654622191389883589561904955146570303911904325106944619
589594602025965407915618205704881942260032325991395026041086561303163201365361
689150492132762633723548581126462486674823997313608095477037840197744060113745
588035291254192032498769992644758829247612728873825384695024959028875666250491
715538031751183296142612586831894045566581282959463592457009852210337581035379
466494611609546302410132836706969364535020810984866113704943631413418240883126
474230360935258805509077916558986846870890284445109678786998154645995000596322
154483797188299490186152258319984047659659131459719471203610760304693557716129
053303286434630481246718117557231814537167073416217766387723890195868717611639
719678083425434922934866302854296196488430005609343431397664401699990972364428
086329685742118382718460053113167060890788330259008204865457012795566521359813
075878590511351112948867918838439325851924996539209183835484946391492176843345
793426503558268657360738758535186566342812287584958057686957269768817278095120
212094942215435037471405778335648446462476291578277548741671176694413068264435
748853980294480571402317091168344446845736912661122345584301166823567631410526
724554230854951567172067989450780978244164128658847407334448609564430063627132
596540424625764336221732963205233983590386005054781152787435933955226613287728
615122874517123651768088943777351916082313030190137740548979830317265797025701
565031897721303109755879233936912732795274945673470054565493730605479606446692
912411569849235550245311097316132239026887615393519831302517677359454885716934
538227904534555070102570392224620024572938731752656695746607895445643678740265
411553618981528935345533516525064571368110473576830931208525095850275074532954
452936655609668315652227860475785645154316442225121394227132098985511973947605
401825802786083646157737341365231164342794836972623472883065303014241457574883
779053974203120518650956651372518783404859977190386884027894152461726093926099
751605137740053452836473525851274188650400534298527515321596251734232120553609
498371768750849041226045692237237600261110384298160639093285998625248495920643
162363797586039908024205462943460676715812928561583132036144743162589948400461
156209464627586188194484310005516348519845330110001940961735885435888858625107
099089434031270537858305162966033573298925847382157879974477257200826491179475
035597899179349622564461720027343998728878127819909853918108236956156460750426
928073765880396817759722230676654931626626665767130757541289985214082963571397
915599416888716896463314484993613996363813323508918587146478789824088566760125
680293941374832695941860698910903857375807216459734866941830108632053839115887
053138408821233206910115403588377203777075916932841453828178593485833801721702
696997788229709260802142627237752180214763532805059056882386057301787894071379
124309957661747396800707070225968780088844088395974783458713739183381261798840
067940261120066797771839438958665870735102520242090543320700438436043094435210
108278991343965239904948579998555219087544292086774106345289176184620296273285
865998356004673716252013177851589124555400599139322296844751352261414926027462
269633361305445763460150321932751609357463702879575430838755776994572128533370
676405927492004709758893168459446411250218208171871792666077654332629870485242
012733343664461012034603591557967792297067953014127585311046441139053481340798
158589399671633638444854975138718572508595807301215218832626929230733117390725
282132718885050834842980240408641789055945776207691192352995318097367951240772
879575076267263492952485210665342802774530096824155864254765246618994330632962
615859418099378444237232500743328856106794012417282705399174604500585895581168
075865092724397311192659095232792092271551700541394323890362436625065398715483
898142990052148668583561896638440492156860760103629484585285284244622004427455
854367630796678847028894443901896659115988548999268687014676958010427907086549
538350164012859789125468241048223804400278309250226811132938742363270459733378
652401904888499892994556694408328909039515225965986888121678828879391394338424
009675112499163838376093955302396325853951739487463053283362136097888740098439
965391572352359213176989950790742331012941395702466404005838174955184367588350
157035209640741236870283763608501295876744348351886616159085889088858736230555
448203063724883667418553648475064855181929311242167472918390260472210884275368
393200046332286625561456834947844156325891805784164608353862887786535060249725
552508078116813182361721018114609724023742123269254712289873382233605011357529
070347187176266219330220789991946523381740636136368279442548313846265026684749
510274969977283799480767990217814231715506991514835316359314965338161583944006
975251303475703381392405381704610403865437585745873211262663308151865639656259
598890391885642136789068928817700940796051085234440020458274950930196514214767
995517400994721925360177390707271340046630468493229644928067895381663589630653
447925940414384924693098634694364578387787506911149161151405952902484826695752
538166411947868355896577559175856330998754105051533602203964354772441985813705
063758617202573698939504200007555647489927859003139701518807484774173003661079
666164862443333137781376087260093666926229891816609391696092075166503796043151
572698398779451390843948574978337565348748548550184333627958690859855073675851
302249470137737384119473139492743726256033160677184338819947074780719728648700
477833297699286546549963507488308570296614449839589528485085531356280948729759
452282676976459688535994124121137266474762946828096223377335973331804189218510
341185318180048621491224496430390120744202407223054731002367362383513446874839
653340621872154940504701007930821739499776419153254599288598946285406782018194
137535005751392282396358565101474355185607698342904206181275872367596060750537
725053507004973906003743578526532139689171523500755723485207754966075917921592
024851976674186906290430048165112568744346206521749710362903789262403804753578
695141991722054143420485644286805526915801175968365036053387890776544580650546
903580969565314682995722089212788718649742916706954629582146432515719184329770
571211105255252373517453392252220640168082286797434259602128463741266458210982
938732718103998634906583631984965872407508718960121768989287199601267244792930
058765910474265514854486232864166764785330290877443482197114844301715768068763
242530758513171123791750545810309783690091585265656094263015154255471100720884
145219074655032535636275214763170357573123939875029955495788969917547190467565
501365710530557646754079505197876500161995075274129831052484397052194903204538
613394462316848197692431521278765230351474668198610063167196558139215401928867
102950270800840614671773001787709269755924405189081348424785266062735711677593
911751263221594557840904602104193873244083897735036518099986818704147043501621
362856204510936172540056754181960591253458117521992403835430547472209971604951
506947133253669965465869754207115479575633227756414284232952009570507209865381
091126920064918332735871558962107215715297169845250468341056091232632556554574
238033010858345754909991556350850817849053623571137178697415207357426607559705
923823277416640235442264362749205647265997098413877343744860055275899688695852
602646019522914883571927732621872846136929376890414824970262199458121151880655
647693277852552520530399112465312554695084523843458352228668315724000085339053
333162944904260357928479164272952578316216792250350598100192634650559081796257
480511255639226109980965595149354934837611412247263398603308796318469903667861
967292175256286180439516277735732200537789299407698720675563986256408904298809
892952003152569128169445616946551216995367813270466325962424454373738659164995
543158919348495565131088209334859256731296663760336849002795443048403442474614
672776794534064945745274757115826456285176177298008076461292223263490918991760
756596504818594650750928717407121579398081560430105350516980252273745446500506
485776512548797550265490814217019665107526799048555121507702290026824463928856
695847136429369887451915534273865048214750312838014245663195524671767363771414
988678470995405444894325040297289229141684391165631362954407900663335262935939
708507129932247836835449412158959459319965963975811545845975005821226396884001
500938176471811025741792689534365709939416124417435332996244793207101709324594
734783144269909387859497123208472628333226481894331365067475847244815077786881
171003155493189453856231702442582609400943134717732027485993802842587850345242
881881389324539377950238407490741606715024701187077650806016794371837171528836
289075571441834408561501123480954240205370009641481996502945284416901906398643
906203579443045271207924146559319535631669458607192976402241341360392013434550
504843534608038206073037704987735374900379205319746298542782029380197436100486
205525409591591489524987974678298055655447750535337940809826884886758867482560
378617929242561599693069315674396398936939165600857346912478156988405066359116
662451500711507484735487837780403828433638505339540544799873012067909305375186
410808834032638929006902467176785536033287501299825462992764218550379766093304
139750102507143567191676380397544422120239351635482195798453075503583515620885
007046511666415360880539131584941718398772406740260942595523540221981605096264
502546563454766664448094258488187921877880982623461386702013551698212673451621
611328532548347879901214917298278329845213777305376027257626339117738322450872
443476876267259895341897419774810651785391301214515754154401441450093601719575
922061196620219730267939613046493110851306635512006042971482379102997714028786
641624942425067787670743642739609490888366928008112048783140137741324774806612
782284353129236477095124421245544577793885191782203614502015017987143022186379
677995186144366796410248380171697617798312165245212734428635921941319961306875
896227631561481819916840028529986341940284731942568353663825961115684072389060
249393454596583289468345699312673883129070710222592874241634078297527294600050
773483657355636795010609698411042832174110653326998622627798240137225695043514
936596272684135035330588835112792093519298173218914999668422865710201944456496
372606935207261252423201381935758589539250504556168269619927959006703216212837
007503684959418905558821930389458336114189274820983295091896252747688348759545
454217309194456190150929797276717502540376365768418546709022715513308307280203
863554569533293478809161273481987236266003129861198610603328936216581139533857
947876717673897126489314028084446275628018283264682864889562574082808297173003
447744180153742524532712400220555172722832673081019358733617390918462881993175
030877110492421445436127101046753324927197586929985177648888947332117389052953
466788959240600827664957822869167995094634434042879797438769804535410212920616
170500102098929641455647098719910172847606213937788274352024765385704681331514
333638982363395295515461876772254474509280717103526815814356644079036218439781
012883925100094174875389604106889054302179167975306166836740244140653977829905
368349692888353034041123822271292098270404875786154856571639888862668307331713
495946899859609567173490564470128015733231804916028362874217516160973236339589
334829379312046415776930577889165863101016489634035217318332363103644965832191
344490162011328420802237250592583424250128227618947620586623431264622198343600
132654211099566963454831270846136988377120650331415956084750370050781290248991
375640812814420432510731190182017261894027431792021651187032502968280618575615
007124457165639556307744452953913064318530732797724858151505104237041841319637
607317916044141210643956514106477815928529602254936272953430560754501489932001
501816805463474264555380200409117691811600428877740590854355390685904108133542
580078837066548192681240709261423322074478134837331214950808288190705408452853
707330412067570717294079810787144490291609554716768673397042772825026787078171
805528564030974913724691037447157196638037572816662752638390457304369976347625
581735482033248741342040678561562006647932333177690205857844240067860353484321
244440547328619621116779822600885185904532328970576259033400691516130883307037
676737548355777600059174053673638917485831174461812643522534888859369155608331
989597862490595996944885335251614030447172562631122845086498526526481584249381
673137061324550116570115105923962867069492735281052869666858706388837696990788
119033461547028950695617860095130537026871946267174928230867881814223932763400
923217888189726442948473035712252563805679692985197775549993444812382545973270
739850328709462484832840297152940059796560160847551877521678248136943722188022
606355328979146030806645266646333619298680046712550935484651029629719651072945
385731729388950650754718665189378200073358137168349308891768506426587829960269
935654700933942393705561671456623270885162134202971572317849759364235808527239
477240932149732254049625454165791446303601686076260443358970296980525520419744
530217596463999534620202207849604259123308254598371103353215819237346956050400
863642656675333129092791186648104182708121890293695099873464023844430591370866
083692528978030441969050600103791359566411744944113004492629080151757465379785
616578489360139385935743340281005942990414200808776734934771522961992900501001
822337673532790713770295567684927558396981892260012896583694189965349762909865
301595324525468634215384305797573631387762014386178798423759643229785024446778
496157409845612686715594642432132251132009172846675659930087344311739972674954
959937210517659305313070607129430322461600315585943958703062336241592580623284
587944935348602633995063338680412384385365518301351139678773935422791990593430
217745894712515039183538762597594663999573096457216090390478931128172689577121
918494921562645191621284724948437163084689906459726892581005551682366207645556
671404352957281655359000382416771159678497556115317065434724904326942543486973
403641864924027908045050400644055092973633136820715575342655152554726943050753
680546869734874903852995494095657754226724622866226747252872277384093851647932
849076632692470253366048272827317233273368412264782256518462307161680455045499
516048367648864911441758264595083115807256813245913028941236900871887283809049
199669207408667385909910261607229949281788310716322845320704385778208551116814
290412640125412203240929307127124257816024919969500922112537961416750630470386
215413794703503782910797522524218798746580685790503482760104251194352464447838
250244157840624536030573863862013974991273524195754332472309334000580966156290
494456393741569772609659622070877445089573192150266076535286248735576649795768
259260180008715163079438042613886476019638820352759588487813865275489576073920
008578570136962093617166478806788945939725853509703208971403400469543850122274
973231664874391447598145845375242537532985963399149200418001912901616646618285
990941799638653050595095189154251530553875373973604671138778995315409429011225
121505386349728033284666235086822086527319256556111059874626442671126962439148
178471232420807243856630466829005400490431672788050504818401313864025180482587
455281261943807140666816122855975655293189012487387800634854765944713544598806
913782236732259685817152970756783619694428935618432018325015650478997924695618
244656985852184332813290793134618001220234420330786249292157113814672302508169
996463989606787471312323695489720655100229391875420736848300923879334968555079
006155284260569249604054305495012648979253950354588966853989057068824177888023
736451258696727299200161441285030140527987258388272669511221354669962129183948
809066436848110327298257328613580064705523252825551933275252931493662757547303
913479042120794152410033624219177140004033460729565670621483018138142635618118
305928839137953301696778973609988280895988776922635708661607135569892067201799
991155519416033450539561057882754259332485337909582517397865933946202949468989
780845683958766498452324463093260320373363611196985071326014900736850031389603
697089574630483935256993256970203701453631810009354420351740047753340070751059
854191910537328033392841788233558485801471205664621238049333449713729872044236
751845576917900569754545668786475407734843282183747675979891862777725729004576
477846959272810881132413457226067745917005027429581895613239026123851413611014
048156723380147807119514305859512784862914921755910290591331931345448263544436
567725397256486154315205101245154275312463609239633139331258812953029357119724
306015048199019431368672963299693260745668598463672552372760166533396582981260
358631444472003848043219819498317081744536290228921421159511802552545376742062
306862156541128036569782649083396528575769955419917147927910763349326959218374
170267430605613646658050364288808070799434234404851113940450883527402183787418
684443572303952051428936859407827126981716970193438958021933326321753235838022
498679296971418144782724882122622798124099936461955639529949631690897937986567
872614622836696975303344058937484669940556072116352324706051153915509291615801
314365477752287337870420465629327595202396070277287379939943754135368060590092
914107592787838779387577392637136297587006284859204281597505864168815286058839
523502558466796549481393750767758624206279705705512776490582622798044001592212
076348551786662305998742582204386815112629744892813784003456530218583081044740
507402289830891679595219452203534475324781453325825912523824728285887041388320
512574961934490199190316192384091869384476542200914183209400229011467467577769
589441098524552311858258023781603072255560251225328149561547564479729796035472
027354477650167326533400252649643480623397996809089502003697506636941855254475
371811918260029158155162547054133795127638541684757671882032181935647974111758
383483068079441339855437096294439832416450882869750607214658069705643174456801
350702533694104788536088045837544173706578363365113188918968839882555401874758
007038821325657214528640850372183859079103824508926140463160983463888626271774
221305938405330447857444383476355528609637925071946814532278372814658399898025
232440107767482225825586597057021110483819254541691959110450067769431932039241
035406389903982455572286930986082516085247326696768158576213111698869490814309
727024766557826123150850474738838571003902662851820418956558569504779333605490
085317885009177246580900928642198564997329562742228802041270525925524061112554
086717155958869523117621059688085182165992918116975399566605734446278786329128
953726333645849065034359149675724764890493943738185387444917351272638000326286
602433085772931749513303357779342980739481766657193732752493080600580770086584
888746168892655022643256380815735537456485065004047406086443355732756937878706
884636820143441749705829418781121465105649135078012901117499507701491911139328
274536640904313252464959482496503926521779596523999160111625547088490238209792
444079062530923332530611669783186586860824170008000251834942371582893285687462
237455037766494068130426085565054913738212464577575496778296702307219761122898
159860091614596438245875719995273810365243074920728457154552148575264870390953
262917447234886824392366796814479179891862815764400414734785692553121330739448
666185292315320485841959347016760666823027414942406155331340094168088213837524
461742648312261315182334222132499157512530839885044492645176740950813214288276
156859980463162111057231526422370786456818032164315400517313670503797108721349
376234276254518083179018197528997166933909822545836688695888358647568458935156
618720604939560460027619838705370481640409170273978035694118921370311429840628
729480546498073579268530484511143690374157819179489093193489370333085497113798
455022952172060988139757063774452486174130384645327310690193331214249561471202
997926996782387704812265318402426253138915377746515413194689089077511596858302
408777177014439104991720710443460699313149628034805736516507090307572710337388
738776267804629535877056608602361098485276981620610857349112238456872582490587
007448794184324565637365850990679871437329159131376450568984223125129927065979
051051129160883545365359664850941824964429479334713785172260294763444232514967
925597363108457622279103518871261171016091391365680993852402992333458578115157
905934020709493029397605703918069474725715909053224706678725909588772334137125
485627315873047957706621971257921816212239324118367582583031150336379222743717
976605340354876190752587073871937500108729448733310046473501595224660107215117
375474052124840598922867240727275174553911005745196959548775478986434685468227
466119030854900579244240012768172554187938963338614797716377591606841584984506
455429996618432526142772329520916552113390715292947419166542271726805347465070
255465824415668743859179025783750901856808830627565150827999939890334809866870
080730244562014278796097298185657932116144950898530259207743181514633548139867
793171324893497683031269795692181310613160872185610841444513479850691789438032
495416280972588741648011393151608988144305432404090008599142469220298602049150
707493328527324230636826716758843177823468661056831060297334636010701828069514
753845354305806173515327125301259926106399601135264835008389114347213170987450
976208601933899663984356996809097596704357132014512488474217253156009181332871
588072875149222441707329188434726414157944110686992386422043089510271454524595
970614057982581201487620798475869996550785905673332066951819644515842605977800
597222372909366236378917460166700034673796256367260499200295269143947331342817
428057645306917419816585101252961304313807357446757252083147542517592279847339
815879595314857634519342183664399573328611678752619966337183371828706101539233
461029727326085519944368215382130924046893764817378414392125274850794562887753
662554893154931185205183890714208600075034592374377891486968854268116335179496
611940405489822909682665660727102379100523124380168502755210470219742679075692
956469185961631420950414098211830426099139060385536898165065260759914475601380
073765325757777596523475184449611950248501351292193091832763977317347086836982
901789220748085361877452743273057547763965010914614367965277142413269371406124
842343946272040045444293765736583881357012109017543467835447770884105239357887
296759262921452416537238614930622116851782878639556885395739738199223883388798
352921033264354787120184550588376283259281545940814914381279932192956353294472
891778295248515238473462981444269562351285130396811441118851364307212902610902
571278037502981293798840620247244088678589909537010799420836540435704952815990
352771945127262111293944488559854052472967542402994771636537492218181028708022
669787121579840021284488618954380741252654077784526854074453953576791119686204
688861310173873114437146781753738528389051743955228065241045100001027939637565
883985171631707555642839351976523773965845376875561524796213119490927248281870
919216415387932972908219154992403935955509994789611177125233156960041422555521
942116625608219343504124272474232137801644683834361540107704177939942094492617
217375463969384813374080393547629818192970093584622204829014851671309703620806
220764695388071365546320326943580399520869970114307308052048857721163339369596
555867368114769914448359514809704032246286565294131878461497857424346788242052
952612906206182238898187255860066198869926610397837539514072993570410041405055
235816702043708003509052810340763209154521459103219944787045090112260973353276
820701052444263807050912323076910283815380758820649170589305461138272138019227
972774873605787476685985609635827434795812051056172169714328639192350111626894
877206463244194822112348074155032524245442586860786545146340107351160756557044
385857809990186099142531762088848612088269352719074953412475781207845740823462
484232903129213066669355750094286453558692478550571255619745387952285005649649
075635003995210261148514707200904083247717904685854391737511731230787588648121
855656306192259186065462983397437359868051117452025590017659899842888718653646
645076400573277278664288638847500163522340212291781465160266160887248629246566
303394054186362830022662154476268932264494978678795288355785558588027906896728
096162047523840626693528250863484433103586676462798388808525829863690582145172
051192438597557101320509164424334815131194088723681199350751478307937422083036
389054068640014470712237735963825344781828334438488104812192248229711665077988
715573404298839195017263078181511650247233722575893390834594607646869969232735
336432621582925329938954598228645982227184306252937189135775992350453524501048
191646424189867615857196180078904912491168844144217746596019154205078911968347
621191596583024144346775353448514331405742288450504521264002965010037253939402
941695413149742640575634999536961562681549268042823384632337222077521142989788
419734170532497108830196213207688595429310544171164138122583352443363015479760
245651443039764160398097091787684883226171990374774929708792260800807301442841
340912600912213531893531806319211056771768410323067552390913286072842726663103
220823532644600004943443234175428239735836526806928661158730433746743717271175
346749600824826695028100202425345845290312861045374795053884241556480066455812
140202968124838677507321065659909664156017193437681081410157212395282446972494
909549406762027079422339554102979030276770568838868426700659529162515490175879
243619055548505514519379452825188609120597210064946990461529546989459344187806
644570465028632112612403339728729382503700224762223674502032064793430209419580
681709844472752249160329936959557762113944722573160321800246377043621897494045
253751741963465997142927160068298592119434592235578389053489828100662112933086
466114093303833888446213926092047268615881385067314643785509569133917907631872
370347452785427917119799789267968887450355088214629195338650316285470315992136
465061302465145706455608712730109340765846224675142309130034881223745702745190
566130917845120790618017956363439451661572449480492912026648324706761633722407
189058115948994116513061616524544825231123281188083575226814727612408337157361
410689289791638679594041015807810519959945500127589345447501473519893668745218
250062322984637782000140983508859913901871250440470874170841434079543139688535
513059863010790725170002151600578180234221102362578536831818750350609396048950
322827057950345396762800969173290373327382435417927168657017523193535119064836
098101122181403013425180598583267458071615565149533008707052169574046605905333
658532627281024911629555262135140351989506693476987945837426858823116590677902
824624137836260447253375693179391088262581646450541820307389741192777538667173
791296807142780271224685481735135884778632101185427953655276404097738435450784
530485169696109620863207392058942098308677156809291957667669385321785837454565
376982604542510710649496365406273364038957095286397091388048601520847367189368
866664532964486525006223331377185753234388986091905423650221344190485152889825
344769314153711717691604887693116155779161396637355404847928552322841848357202
200243022819844202383008380174901741397650335526954061702443818437473025636499
000367513921932193648115380475477555236460288200054813186328054545750464332722
172332691319485170623357232160889645129120339696646376000197186004813412583939
031669425164757110873581868969170681464295912641760326219193401283070440953627
617009085195467935021166338354183107480623884833809470603745948515482985518887
670495927112368997221050062007889974579826567116806147525642916966641157361002
889975612139953101418774168260528267839505892481397786751700633966345852712227
727497055473147247676212366328106894868697392958651884582039877182564090535113
791372435434191601544533432119782402603260594748005512760351311114863171984354
017373280362552496180864910096625332855488020688733647388258269750083813918657
125769722192979071032778589715499278741883536616207703886279183173441903793637
216158727464994367364357281205844043319972919005753356843406836860752491471596
186448331859639044101036350285688424455468533723943146338182053048659592475402
117722765291852895786483670802888234234663495359327949628979938817207698492219
442114048736178586700558330201987230293135325910732365882678920874499526543171
233935573565455669640323283418308459537495197970089627203937511913957623204006
874236618002664751809417619065598688564662706680778146362144943548516200157101
374610789591541799347415697822554253994469088467205895288677387343369833538214
974155592945320859644158917906843229170460877995434321234548118635120191142080
558686970507578066481756935915822190748747293005601141930115352569363292027049
374588464811234500205535535851014543889785913184010859679645898700415275205309
606843741021672811686256592646886322167097766159852376038553979812655641903365
873745496374336602230033940474564444927542402752475719310933557059859191965114
028008258928355715391861909761373327377397148626128236690960255260032753732786
136861014913640388710681223620734950867383843983373106221565545297908457877448
102984234514130265820868679926424928850162317185993052434677090482154769095238
936876479661857569645978681527306254773573991769384670261376348937083629945234
355959737304655057501675498670665903944109268962735384928203760109536174134944
536433643034477373880664972466856582828706480753770925980671805431320842555981
753112790318856767848776329004717602015825807980627922451278355103571162161731
498362728981223773575759083954588100004691147615924577040170718821425053914706
938881767930727723057583372676367658884248758811001347164715563640015009871080
798449753143414316329486604541635704873650869265972116133474515612481608278391
340315060053862493875365751218272298272524327513262760592192903881669411113208
767442619913086483927040258694618579529188465316134972405169958617773129800694
898991092473174123347044370589335915963505084327954130076977905052588929374454
094137891142079004836997274781457666078937085764662085769046441293261983911236
075184998020421720049117067878544531928644431335408111156899355863624555635300
270484690964759277793563111115209389772158191635352426127118343760830185562479
637692745742034067059585435287692527712030301544940038130368127324019255360485
557541721607164565030115767194386711615170394001937257525890250518718599766828
592662585851006955278376262502516623880560240617184987326441850081258933659658
448766628809136416900989627196724042202423343838011691212401202511606311869162
002306153871433121024351148501993303661241030049925399476666476829007028023010
506928430649478499432669305779103793419399230314982797902490832747064745454176
446796074061218188051111276627298596662847268461774368504235922301659246331484
871566887346583097732418701220131070218290309006357381513191008724583490916586
373247079927757154560732884988863988684936308975988940875194378361479134130653
303663029215395651827912049856023427509406712501550929019120304412847396569573
552875661059080469335787924065044987365462794440631581679661442398611155602997
946828528198053506219222105361823919427454498061880932834773648410505183100470
042305007458673338393018232600727587845477181954964342844143030403218157253174
288462639048567484250971665638335522761368898664509875529778849357939902524285
473976125234348284894432559381077039449080907201530744242278994439802812048873
983287700586736596105618050468954675475706376517627590271947985537239134860192
067434329403274489641099221664566709161231598106625469806212472310129753761972
245169399621209017669055682611326388559985490614108513713278576083834505523804
401150394396419438146117954104769807107241973534752926887578522156529064685890
753721687516035730470953715443162525567177543302376590441619461141114391120007
451132585849823316486616693713714701322419276159142801484496413714940922387344
011510370363965634948209964271375050561558720908279796594633915595716787811988
098721145767542779398639290168369139306066468759711425288311690064123557793874
759065214443754757311096245922543145786867773748493517406008397290897106990927
501675229126870865723005564728617342258641212327429672617671107112077059776630
022727380465533228220977524278789829337591197159635043297872215155039158126106
007910718561167702469176733586144770285376482974225605444540879159319479800889
561299080639383005055499162916858728565928507377236135735991197749058901620122
885795241657607136868291941585486268928284806337622810272262313264236663292885
292180654674998438766513925812157903492401186044201727901692119539728864883344
852819088572601698062238392173034918631256474094412877312135168051861909367936
727303786654213071863828830184607090302966559468967680273570432444357757955821
057988920507163901878330771233012500304007037731491216399698639583445505327396
361425437412195337548338571990350348903067827521313461030841820152419051506392
540002844179055041281568365012103342012899468757179189808384560343553410047112
525766747183310776850601481027264319122457497478965936414325806745722997645288
030960724795563325189060039406787043204003961282288532163932829568594467655194
968966496060592877994196173867847334747021306221676330050514482670393441126884
711413765786121775515401106245754864090294412376649953693937391716100139113869
946834680769777747725746797379837875262493512551208573631893894528520130657727
035516666474989926398074416450976254402166219402546108200717301205807122243505
053614901205500850354477894658254000133763676846096806800149373249996859544272
023896087922476489315358496284506118832743339140543902864793541132412636882060
684753703941237220944325764391062520240198489821927319968632891282285912802374
766703135868179682845314345074976652251195970550347923659204921648084976175395
781665415957487546398023958292624469192037006000409991105787855411751418158916
939928118789931713761552937087823811336516619755237775570787528174341808972262
237807168319854644259915452097520210027408367669789745870973066103784620057546
038669998869725132810317504393879468276073817884771123866019891719367086092645
047652903743948587681575712197348672248221432999266729863537755562929754708253
222171576562387748050095843731125468637763524781634875661621537173946676714107
370186917867345302864901193059321499489303429256419692501750244691170770382429
266473597338850610942622518557212607323658174738902099533107157060695151045966
300968556549939816422765567652257996708102023167735691178935995615919930681240
133393108226485104173350171775593372085154179315655554408860840044145285472031
526997479767728032467427710932609608854257917920863334257224017452184753206196
937409428074100594525279270372115125630587399867234742140781336641357404261710
069783213745533458090619256661087561166379240722888302466780029537844644591710
110724921924210799119879495360644579660614322020676389224396098912620812570447
266974799376963972602713355514260054122494497666565465518857665183474469445929
761846616215096801457228332366414748977197538633018129458965898185782116287965
086793355820357073331573408985138241738677356074637157811047671027414654719933
799620566428354951955336321715510562585320975009253907789672304692677330023614
265815215416387668929951507277453863518770562551282909347901820721142671530575
690591322582375930028318376496180229845696376306537996219205568236665719698782
020952526133437855131398780253270815874484612611309412020031600164637827140944
461977073283134573083752119688940556705955309756049002669854081891387011997380
376083150634382553609276200237383799207964799252158135790270069096050884961390
207691874478686357091149856523635496674103290885337352606782271624909138988729
966474523377076348241347027208860508940468212810622758354032772171695553294485
717865531874016842345670101380081781118550473609709781250938734185138523408792
702477206120265643317126555630296032721061930913977936918381133741618110473919
425187338019966291920652186223038773500534868011464639874854901369134917687137
461321273420211042804220942330063194606734685489783480852809794921954498869119
725847671283587122555102936535864333030971946866678814549430899327430827100408
517621602382764295923570014255648876907091207402699151758042881810613942701347
255370845125919925211081574383121932766976798931945882804360570683940544871601
255089625168665147488301828934425287194315120060447998763466404882651446524296
947509661008568137382462139181841836594893569447712995763432409048401290598025
575525748431198726125514045575725719738641806738322992275267513437500934010343
660004314754595544962501325660404505353179278955631231425543700823402854595255
379481627422642561380324731248999850421432768426825049872365528415217094022779
778846250132848809469332282923671779924504224234309950387643233254061891585795
066441110177219667206866519073129372834588426113646448257294198879606084620711
440600500775154498145098590616450143288720984419360769310705384997362233759169
163029552536335179645477552690073853471280135885439914397589056574403872221748
470997473371397910437754235802882777616394085748176362233622990725975240280628
642610063794924217362933552168616888032524542375267286721921111357653164025580
986754783488975584691756812962447471397786617515709467036182981523659678915608
634440511470323326845759557203058752568585199461888602998212711683347771403048
480425222669947869447986569060027595585308361968539594425953023655040784996082
172574764423694566667258065095785898172115038047298314896744897838551622875037
423191921390421088487423558905935839530319997471792125756935591832162306018999
766707985442886059856354106466743505396089458525324946838421719004912798137565
113045229149770854224671659436622763707685802215632401571458557469160571477642
212374513377406053016185845307413126894562645174671979938760906115283540499211
679736128937009628256767257092607250450983042226739998252798530957859287699190
653691242171287781209978278864645017834873568739689002079779815226092749192387
475719199574822413420171287515290605518715806063289156993222653483912483686228
198532268154677392117345282839058159553584945274391876669048235456363614239094
777104420317554540980885319509222287166914659101492295566751821893266516992678
633235100790745226440980875747761523690839843103880015318096685605581700263646
500029084475433041359453776619128672979775100644302948861994223573772690353179
866935954008590745705713236520749220999563372784017227025379951254194421941001
759266004116234250734812256070590775250841254634252331712668056610773492823045
201283446759730876165690363801201975538245504694806721574059110584301440621041
211507836717437226775010242998761387175148790773646584929210172864568176075702
510875511538331563096592314498945468720623182655930589111213181474534237685659
589254247134986099251774440493039381952188984657262567745606865704611468086891
633570640423351490948012841666422105438954472853952426929129411657534482148781
229292585001149889984353106794145284042184731733815981589448769757067529996944
551541130082792451166362410321867142632231255688687967261409638618224518435664
026126348177802748518752100106960940805815141017722389833993972244401093598226
005673839300799625262149218406622186243984198019574078866670255319563725496084
275405736707212320747625332760038124244047751249507646559681038655007785970863
371857173243278777063213142886601195950199082593776792668441783176675035340104
797696515067752135781563545652677212893924402310125363859799088021453702937918
126368444280432305188692629349212910997351619613375911040177115822826564451712
907199698733192523753858869572793628140033035960672659526126404346617931531301
899390239087530262477517486883044131730757899297062749314368067685220717868633
950495282767373106993089267528933714796749542589209042421602218710183177408525
324165777960134866884982026768685844020343550909460815377420782418726623866660
088966104555582734174010691313815554566510829549035176979646547457055365934554
419793350584972233237278483914879259692510139938402555018339630711650558659927
078019357568044657001157284952282611429456281179187252249048540390462540935999
979055790456530989610497853299086243688500580256396855321381762864768995251788
098834988538128209524216084895062247822146845576822254989030079937196729595063
901027251048795469566156294616188245697959446160056652989130631927305560533540
648478899019372702337217318501676572184742936183875068023421815044887890357032
094726881091669068077867592852504311668759285018738804482957506677457569815023
157513130524140012430393533668242988852283601258465061159341913947834282938814
446980867237948281922519703254671884248719494787423836609961674369318288581884
623109296732412307852210926763934632304724223064292643202181741209080678081833
733910920076782661560643861511340301854713357786385116362462174174850931124223
019709941510486962056541831637631407522328302531615806327641957364077222811526
890070750312230053933650001942170645128119855049291857904648785611432548761490
271971741304571491996138181672657980457454267197606898462700486409719221280015
842531143269167924580828795633962148033930658000897450013150927266760689749856
397407138768635581079056652354691667716997550027732112894676432078111394548279
073226891209743029252878444589498151724684194508747808895435138957770441328117
131179348601384958566210350808724895934784698263363732197542545504010364667342
595312763406267022519143282729403495658716184731059575837361142512908959732286
280939808046160918982218754013717288518408605258803856444279235495864400908034
149344579960963774064342594283826676603725561151866064650797869388094760800711
393290005733048323957551888509272052906650533018090990245032808995656399412964
382180631887872741322212278010720606095101786470009302113994976870978013451584
593492953365190576227771056358295503232605647091815760621899518105755901173720
228375211470831006516864383869070816810904152277489705305408020226740759359410
926716959867771660661282208751053101077202994892363004158396769473642774116536
918659526547760173079854426423490120758457071288349820902733031844755008315949
481699980125608012129416183582866832625809328696352734991721918953500032330599
108168371224365513688926032210640099311284625957333922472283436836094736827165
893092962209628253746539235508911453196675140325064468510869427553406596120378
375600568255185639644278882033782914539823920780534642867961510336164699559430
713149533602872369852711034855298750027939454932460670659556489880340114045848
062434013991491543361858920860105829107005600634514882584608997182454786988370
193716065699922159017285085225117139640765183974492214404604574126815387629189
386495790480886279481586161579344050950001154422849475447478833773870564655635
264729949976263804450189837203996556195182351890385026662728343048491870456663
956280497025147278849981361964917963887591353453521822279135474439061357197415
866540088312794486778226037068646435485204930607397511991925858649504442252244
200910727168400105120606919940961678432290040921134200542150950274834709257336
813963127832185890052709320287961613870350098378147123001237328706776841297450
384400161232892704029777063053055062248504671405299143040564303926611362021415
520067681980774295545202325560370000590785412990240946732302027996092751660014
852310899789503101977093482352166257693480314012717304048881774080876314744950
414389682832127304266924681314637723384625311819301234691719352538910577983553
103541631933282438257163109523179618309153581533916338239454572967614483399371
724621367048398595414462431663551956439416563471505677734235813729956960384915
824168130331626491409568410173357859945224376643860101022864843695250291389156
643723204696116318983220983393176032964088707162767075914862706898497821062699
772667231086304412823304821877451984083755479455225508765280234330901485039776
525765875819266807821158393519674282083322210398559182162140872012934405612275
999854982898100915549954682356174926814387881342449049839700725341015860994012
269812772040544401894501810412051970996897144930715373424452169157771589948443
186658267110916700424639694775825562978992544738316180161619746676580359557390
037066297087943448823108337308143123990256625232999578685228460952514949821923
660635088064128881824234541346251515318898451594294729129213513254978865906539
040115636965870959900172915099721357770758557957665516749366250170761723289228
255311839963953561269211668843890842516709776060387529749000794277979769238349
217174515395030841426104398080496214268558187663710470785171402281675885032283
134686846664370967579980942695666515773369854173075059435189922505229921389569
776876265387960086201625996428009794237915577012055914502296412538973704125141
057687371009036994039547488576624051935621791585967981763044617304835213253253
250110151608046279096917112382786631367746225729212673131164249922038415116493
307295410629694996440967066693313343900178081255443248599447819032969052821155
944382075044166658852171275633608266230545877311117387651195122200770087490252
212427958082133321859135968166136143601261546462273373265365281417946404351724
565612518090827951463418096392929603146998983451702683818970192659935320229322
655523863877643089358083369967381692266460855942297277734344452987921901926233
889184380081106803927824165534702618128014001808959996185634219947327100854270
417550034394110677003263943958963649388516399187037758019655975684910270619719
561433908595426132392043968186690595315732673549050421189776507152238918805257
514964669163810720434780968915691696028461868728643679318899817164073338587720
345023091887489441308097178153344430558649286638974610510834833071984357503229
919585543802663885240065065709410387783881733145464588317246381966088123805045
786347854211733051146359890565108512674913036105248570665587307950414501454187
121552104890740350813342860914950037046605623555672522002212904021181040913540
321893969531117810375995098244988903167390707601391862306292606697611120411042
459821101844819839407296644330476833262241699299375486873873961737924947545810
399440717443920066000413581477614017265393123129959067191309709678284266547982
390155826284090544023118620545774188589547563398125871438527239048320926048611
733072034303770968302246848344091948924579324657381915724202226595342354023010
638724366157319860137160286096697573825624411167660157151657361981565026237154
602643626758599431054488971760547078823366947253825550553219073279455445840466
645512900856537574217880876342779439241403300821671126216049439499015061039532
392343826032598036796775475187819244245473137601476135478802419029527126713979
955129219158578934649880738460018028626312664044468164779365601680582210167411
825511458316383131078501122723472691087558659307443351676553451876323704691763
812021018935353351088580326592687554438484837585098664472806548309036026468936
591878112868133087205621277329701431633160305385403467877448577796952914864282
222936522824304282882026658707820988627581167835704224945858200104074303747015
799388874685761172555857996150856254397987081962551859422057767719904303424086
101360112015968889653965139969663813978921266018636874238594559158988331927009
254867200160923924321476696391103167175738773864462597982753701549440571085520
236999898805173373783155676818193634135238622842045408559914543257359393981570
604315332801660526147776889979322830032871493050251541427205690743999740043271
237896247627041818182288906829551300298664368719704980014580507558539842491131
296924894179370385148812647869057183843568533190856937586513807612657338131195
788782146747643724517633114412556152368278692881350399649631507697328265159198
084365414381832207679120750701789563766753605054892716583647943086410897010987
013334066269315408506058250850710716930454843785355119667503909771591971195368
600604752427366146380157327929029410230037361389279877861965350393779794948117
312183111246417193229183726307655869647775046417030869162406284493712456037524
313334014329043791835561878494057351185557280881416291868616247512508959826188
152370813849801284849938551004953009621439617393744007838999038340876359249267
086348339877807325271503747189580229178988175220723136229752603043983137177881
369699299103856143728626719377239148934340502065072949355231356488004995951517
040711222637189931353821358780296796393592461392277757201839280412142324445591
368855408522017952856681857079404231168629222946333330307746502649347514109789
330913192777657608974693959653746022627904403871237925146702701185915427920324
973454370819414481720455923785253398717399882809422901684755350116743809822560
991526542675890628512427354269644283773194132760093052577792233142599614463731
220557513070517099784007594700101708974722741436498294093118956331496454311050
583863210256978435373020873651301147722138496817119150416993279765630922639111
855459341761980643633269695249361566077780078422982341414243524533764073304582
280747370235760067414573785624353258096701806748959611189233196599616520235026
687342365065108916759889558518329933072368264262938198576760037232953211923730
498945372920546938853940051041132461400422471113320999890254359587585241179671
753182568206838480847140993023896763443952634365012764518726359105174139140674
351653942431708030038066780647326771553799653412661422326879845981197703315005
219218284997219529866681292016542660268296421047794093423356529975283606344249
701417165072240376294797255117260907638264563222469309111569558476276484816979
180588795682298047115352601955772953559057943251773499225756430166032721497595
109624677766079221941739675450379365531088204657996644976068570450547288527391
839982215831878518731932847281565254464477978891609685492039282508796577375011
683320317027602173829064171543756105461129023723423234641773209263753889140116
040439019469124095925915608844541828755262204292800689343010321877911489526121
996955030783013146127025119153392130327882553702133921799712270367198170313344
719352630218292217299692358012855897594652508583058586156670686744474425533154
712061727037496590469447586237807511590652296774675078686648936130250396098361
523417217784140375487249820061616384775196734057302878543966736193321122889819
680682389025876470234315309625022307193005187060232179618544259283304501925533
238155480331389916101334819027404992465487400888612061010426436801266565766227
482548393100151421302273967580988548428319602393430948497396622299287336467197
089382469889643782300449630805890667625330182392213490253043081797240077403652
013200356986020047546632589979109672536490137306273785969129380578345641829079
903500442491666694094774676010495361463565427811148196719521129047573923945995
153660297171108649796578919180491539923865697988305507708867372562852832851856
572402683310069931856763830226769165971377269916757681123133673312398828516840
218122940153265655488582079139570807319023220794081956811212251748956173200171
447430178575050249032378445730949565997297284985861519415009536020368201326607
228199815832695270897427551831644725629422083091302339085046151501896630910291
030242011205214311503092535464085065539434620879696791995905278553511458489972
095539477376855449631599382422997412501078267040256693738097399860034332441791
395821975772623055411882521920022331086059503507596605948135704613402094019116
603204549378043495942650738101731781532528623829289468896307922499033335490965
688120974179176693305327859544271769964180635109993398931504652933363168922628
911257277682677430673868299230751969060939711007653215606797472023039507942041
147794376532480348636553493624457639637131946394693979877037335894602777025823
563880684180843653762597653237054688079225193642913443487116415018180861782895
356005182417769190701627911907796386613946236423474122214073048325835419455724
490373668652677421922760907620503048333096597958545223134836542340129767734460
507692833846142915508163206380069435438013342304698989867219686908969735247500
228048391863217393030221967454855763318146645427034838634590270582100875650295
738566848778803271644443813802378320764734835284051590452445629256678642314331
331290080200013212818226796247370224579473325180114347072485501421717597982569
325718237202994257473929822383273043313245172499498881402784786491315719276800
942489457336932169874849807364313361534361145753367427050698923870333173364616
336012669042450997375671175599915438751689876011500678620503019801021416816162
605596256847950853388953498504537593900603156597376583573357150604566987191133
096429933063534922295291976074012728061946272268343332967729420212827263596456
186099006970453493384955630563593272291820169303557808287910752471921502619695
672407988779605011865128264118095763231103692282323763544802075225021651396774
930036728780226603080636755470691631875991281825091532669781774801978924539567
409717829806167208593141499010314816119274289326032408199471020109839824741980
644671127390775573817724657381561752927432669116995583247192235927654149129752
961227402452279866163101675065688709840327799912495306480232507015763687193480
670513267263721797313166768723562622647257938350729171421116638221048515643224
793976947035946488117088009857779803137633525009328140354143450650053365604504
861246927019980809625230192037738199728089665523936112861268083906313365539759
743979907347748299853922335268955215889694839299987170267100932868184202805983
915547725090729606776315286183639253908534251475257842072934085298929286226717
355985511669435839528543284570183027231454180933979369836741747176894473565883
858818455062565235843410910478093233527606234629846178613932388681236606343557
510114358746894835465749611959801789226354182901823096101545946514109185351835
279009328443120981303273768853852033470039429790623921764159149360656729105446
529408903149522187509715143394778764465719284363988133122043371732136946234216
106480504513158499004559710986857552989993539024764915004836116650881698262321
831463608947558616115896863744943764718834982427568797736687361855290207961456
292353138705596369681836920787683742312765251903555594821917826415913320774461
500664025227472352859007604902573397447691487019129944191103349676789190852976
846345701529600645568545466666086736903795552335677002790469330344111537741143
039310015300425329890832107541131852755688713009061964675198260726262295055340
966678986230513639146203393440389491333328349981777887732908692004430355346799
556732066181061852084546760295122172461463054004520831965317528982681556259330
281838941280679118346209054578269552578689842356639715753908515560636819490421
716421889952234837572314201222901083579513202125249129090048958724080563005558
400707818034648361749642527214476011849244313853974180188984318166164188908454
488054103372550153241411277830920453555803264395179390704099043456601946400036
987496337958495531143939230188632417313582739645405173401708874523900150422585
624502225270326729936782720975256498104505237215813828113366067824967430731861
551329835531496237662849256854726237558526175671579203232069420216468522949654
993174233372533930389828774375296028999268157984392248577246361487341971031389
240105642999409629866696922706243298350871911035692077279915890816166704072256
168931699756404392389682472726163797798000248267227955957300072577247698021394
512825166064017742143466830447406797065738781106938351204999684502847391384953
870227825460763615418729582868931522240521770353681358505451215937588704292424
096607537400546444827549186336369912682470263378324268038571193963182214154029
950681083025116727636012997955650650063228951359810011901167106839075068839620
813162765647192382977082917491318321421823245249023790495590638528782550203575
010129123078275242023636981087017579421949115180788797618960393693735421013240
443771044340600357967807346316398235863269347513979819303610072654061454162653
081769526238026613151388785280947513533121639348775674294129541451275127706127
121603945429336753767542062553384186875361166911198084753338616169047345840953
876067937582974507072935946917584252215577023444928869935348003580577424365978
069561858187778968148163517747890959674214258139890015480915247359954129779828
935841276632209402091271052802371308053290881531699483032534486177898676590238
478212519049853176764922545709610355087491485646162291009988242816019376277448
349177664532163455825789390033987319095699233507103551137349435120572396054655
276931359701618244785982602309506845411395156026392887966340801922638082911643
653953929109909664955910175492338940740014717151832234833822489270399068580237
050400214020096276539525906237081199479863956803772194086428730262505325762437
859838607121703541554308194411440772762800615208380310000244741253447707207497
328207028914594741624264190393919175153530449782588552768729034285831758131486
117066294464732986256487045610615273697286208777535775215241446623601630333590
080440030475530931705436930985075677526208805822466648550325936367352684398326
676995107220172922724242149029330343416893890662708625656145194822918368185772
219914338674105396966334927427410252759653728436076002631505986660681362653998
926469699158223138289446360836944072138971443027526548020376289547765044016207
680197755305185340515928622281423417919437613357227204812193609188287867526924
284897073344016092810891125218258531676570434583873664398893615742408559415289
462453078400909449765762616578325879244709870673384119165810576293871617366114
415240473881140514566674214014448348617729667375391737980856407591631033475343
544934146517863086076425929311624532882860554068836062748817507749690964853834
673775019572385710864042613916472383400594826129674349375701858725474350037442
730873629657568055963199319158666446776078763429575496505682470157168410668627
862208037675831666575743826182521880095734313135903775541351304854701566185886
600308582589306572228281422425628173297874548996200391622158815651513083941224
116040963811914365950551111744129494311674390286216353245879964221253710432772
188214137538726211424240201976186700881565118479098302728720852618696114995331
756704508516713861010872839004217620567989907592435624187215799428599315133368
693954772643742835321452537185470895533211447405078580808385417141608790728386
962389444803288859403559457725618037563334147445214696537108948055372169979808
364807717998746770311530780757657269342745295974011448015083531206748043206983
590724106514199272903397366800471856901904636934503122600170921741115646289388
012095343829518363163791590755167994916460493345868171242196723922012725290401
933289594352219097939495929603949438727407366094533871580028093296013933019577
967490401847549773851019281434516597096140545997776213400043881948176494598122
206475957497156087519254217346821954861991781655676988026656664874472758806181
616654928213389338789935575084510832244833085783342313941262736381219820875839
814396686206888689086791134782255433980600321515998088428912442896836057179096
991861429442377440762398969586062993153164932646803455815370114824805226594224
953405066096816649443144741102895142430717817022161331181121716219151011528015
549328008250671116140382958803247543157301078987595397902896650833495107432219
026932037432328217506672042263548483751576212042388637129862573712814126221024
064042882230443434948006658537943113765821364831084159651101790477823608806165
143389253111391895719336847026215661505467846399655244882486264896177289593872
337423121393607259938888632864449325337251542352398630460963441209024436510892
814754705814239361469629676533787278306268508936674536877918942354638693492250
157173685774240713492213648796046383337168677457073859139246819935539736838152
137390865005897282878641909116034373717415327410747680385931941439086881236701
496100296820738288752865224823282930773725102139517094479477419281368735928981
957746215009564606372579657833687487239346990459989110831274963715955490917510
053293343314823968550185761114285816634222884030295331135461187865610177345898
185846471502905605171864326106076473281211640539330238359954464782235084116026
404076744526066173731021268259860657845945278592861035015539861561321187551288
177375518003542861472764977135418347618233019132571346447088348888795310187872
790661132609186427091439692396748576025755142915867815762642050551718992589723
769670909483500345640470567651563936321937946356918534181567607792161267949002
521149163931175403394531745125256995507818911535120996064651136153194176145831
374060474731917727526108062787313845935314548486763441898300155625645763101418
090768804592526184350866587450535451722580200121808539723233092849465081945268
155567378638752068146412665105140944386826963994721899902663097789051711913833
724967997855414412612462450890346556087188602792192689061425759923929013372175
466176744916277267934203449006376588745314364151546566411106481367813198850641
566127064236675877928985724134259852136341769584828849405105030724167393050575
493729581867451287858281533641132416441025268684381228287735014021793346368696
234865929033571877394953862948537652672538580722200542453661690717342848409062
154559626441454232793637219588478498606951492728571865687948784618874032650416
187075243808687928885162209216135106089082843079709158192505956196534077614476
576035924761013066754906489866900585487464786347479148192362259850143926852801
138254236434382138898289727997316129945551595071710294568056470218484511937133
372036786583155156275394041625066759282925867450340364830526533938442896901621
061792086853451192922377107326574510711994094298594815898337431862989208939442
741122868742959439728570005976426931738568126218576466123925703888014104196388
199166764482682682098221766816384829437721036323800558697749116844816367671519
683900369261453548481311866304442191559086104918317166172960044955018916450180
997084102199399617465025879296623755468965824052731124883697068050233215722323
506449578497230254648413397808604662304258145029154914538644301649651867411975
967737732290255927307413523900594625362158050695096165587177392349317418563705
167946383825580058282120257569613138121980552813499238091074158935755191255310
352821596456279848957058338974924750600035434281576373032539863262923685411641
016768855655572578225418122245204729909129011312952537594396419556100433531092
146383044700303680665120262883942999760736957462268795565877424319083189563525
099074323010150206697288847641911442878575402439721766956100736907851407844095
889396808004352968127704022598251039534160878929934120149681817456049529880265
277768611551282426967471193591382943944274084085902787321510715308690660803874
398587538878066245655451702303035355458800384502947335979048618062773828099625
820764881516612205144729938208106398464220628221008519364547817553987865187403
871546924667323429425586138822071808670927830454205665027055621307031921670022
221536614179017668834850956450191464747340784120705679336838103938921154725133
398131838511633495838175672424740513377276461365704607165663537566261243305931
539268777118951714498358978097434771234677764658053764650120291523030603034517
888093770314372095888458952726917667043779153010790357914116103398006346786885
192493621325319031743341155444026498010025120676355661908943272699700544982187
996991868351757476673927914471910319543479166404366734425633445652011242419405
480925629843729129016412180549151650071127202818024693863791176449620200275664
838906261823590156803237428212419097917136258463083960733598001305778911586151
323766950807426344582446545394499087639200106939068488900463433324803965070878
791239105273926257048605706127845263981921260993162502814689557096702662582951
407239049541118501204300286351463650912770721268172343398738434795316306056033
302687584491123875760077433116740558781732950098291481171551451212156194392631
599395607411231759332984656367558598973465139357887913885905049598047370828116
462297397126223629846272145749730791499890123652722188877976196806511143618116
388084602937620695851547046849958111268793005989786520072092083552735752156457
607486491407276027917099794493161722052224494835291231267546262085385793467676
882471525246069091061105381758769635128784946020030880274813715297943201026362
580983404756625473111216956958478375359929550132589103441336017794601384604998
768875994690602801603495388607806508864117683395028984357075499756888487522949
732701938860727961653957088868686387259567214886815110283461594979095922505276
719677301997594864925477437755812083974387076450446381457323643306264108296949
823505732315474150532396626837639310760849282725386364659434685129882405540590
653695729560600320683909094095738860516840019395521696356114496938001427664321
418065395917798817239452237665476298590506915168491580213194555741044107876854
777907056456554835977429416441860014655368487747472791309925153051455608057248
439538819749637853335230414790444967816187993425052777878923236564042004911615
396832715867194226992569422709457005346357714222680393614569883166732086767431
816668810687602278364947028590973741977545619746333814757082470689374928035023
752602269323848702088262585645136777783278701820837288777297599680020886149246
748672125924176106187115656382853997376134392627966061415586685216500242424241
003914847502504067285379937182038379545283079098728024455393034913173816505026
585168641585027146422432125451565623143756472443223370087153532076285659159219
216501478616486687699017399327003663547998720062297890069046616057832947227862
747445322240572486694187791435673952026648540783174407553935512296831550639223
457882503012427208635125685609702088021486286370085463241241014427992816472919
933711524946570298220671347414780289492680020003134054487842044356602510442751
294501586949048955555033037385261315938803817958867309844293440253867161258659
696219560886975787875906071238582237219162610240870797551454979459618030946469
133640169309180970434782143689718704562892128739685871497915701733420148667497
357048643321231884325015948204310580133311694077116025042720011341576385305755
422444835301765290601247747376528360560836461287033383048632123656794896953499
107496286774280690491025936175031304274188072501043383740953675042651708324186
293199857919493368014877979435086923326720472783409708279405416250306156896037
359878728330580184051378895474566888795177217110278609159067092029924493534869
627455960915293423431952517713338669486672828109677158171270982818816725243703
840503468127602172962977997279713089923138559261930283769090494463144778189930
129181771333121631857083585841382744218084820520922691409883621794536321388605
786787520437832455639881374456789644004290266260923437007723988709644915806949
596947523867879607166365548896803664643493137777048947665357468303273387974714
196588328376414728072293802599837131931206902917383170931389047047421588696218
120077887849007363768734234778213745342571534605007302961982544710442271481654
071973509078047025146224363678374364162444958231298319491479970923626875927540
497063953996447598595043910111092073873095325744590107770363132627616791092072
751460783059910800267434123230180797947040881162537087267069539237145663535734
784395169638524545035937583458430259078702349542539799216950503954031632827091
426386274153257677508875662013488140242522609737843174696278482018697558259313
427636778846513058962448132730462120068427324168576561426418459049395532734377
603030179094431030191300666406691677221171072474079362573989410901196354929861
383371393261385355672867067777933213410272910247639738052862672267545688233164
749315549468401895465619142072642624406786618701665763462225267201919842404553
742452616934823624052754211836372019165898947655383131919768364202744542080924
762091984009744495420035936442564545785849546607221872811055576741367205697061
194916748160979248567869566797147369769564053407690464855638491790863825473909
883466170091543915140455025736174936851621843223457826964251826190106390850379
450012634515452486254218518403543813918212777643604285965165233932389064229112
328793000213675203707253675494729608128125469379571649809117721207226999265634
465168601334904551698441897597507163065614436128003041050457787164105912597389
634559417156188339740738990364680303282459200634871751207596645666553033314523
042758217545982377529150868886838254147639483992751190202550955818569807872775
711072519620283921093760450669325316916184007425374924178821167146466525847925
619216476814776948449841501243901031898554242193095365687501731872354066741717
630149457908315395370292095036796098638188743182865446288207062219558936439001
026533714058033258090386926331584665685103808324578182040589800603278349527487
257396512946399895005845812326163299236806394138093454910274462180891878329072
576428123752409467761624441881947702741270757235089637043174482497245111058059
378057136554339790378003611149826840607872154077022571815033885505710635145867
112771599698466676783109392214688715732585606368968548010436242485356803461614
718569575225836921009426555332476717969865587850778551119074751864488598950206
895139545213197465294998805108280978855678120183741793777509972852895432742579
655149371214686976682480677912762167116013817896008551043745994009302335271843
702400360574521094795729751869707950736746114751266565048381089875031480818336
610694140659676377062306576566801703618295955213441319742859761993342951825887
663522565361936425383719723177091931453530728001983246537531134055686502809278
248010589609267736174694979894860931669910830009953039935900646189236493885729
204350727250876246923731355160292634411098510917220765065024496624693277281936
279736493377133194458569719079134024772136817131239662974558669909806174581178
762462541431230179230429353145916543693286997790332736178602769822023870509290
153593868519166056064217008240455727161137961128545303167677130821633770579765
922322285017184979309239210528601110733208662328308808026989904392439952091556
420216168094612031341983837901819624233952770791505983974351153981503117607537
760587092729944820758746443282025141626637934637413398716251549633286387524228
678636602503076074692709400695396392772229646125496491184021736489151198014895
095571432036324306636624834462647449643837124961935809128070557394266444454765
236241403901271156302791679275263365198422569201837349513636068725349948012354
670439872458474694656353698965932055006780751206891721649642629592431374309378
668648140200542351812279636178166329718344283319798891781828114201071420574656
268900961855547148521607856520905717826327223231235992415581242829973256562767
604589565986255947589397458309979474980747166786227593727903045000355880359443
346015878470981219173351090842398552081903034757609554935430423741831451337233
564341570234026099230910449722186230498660694707507339629842030370938237626169
312307431161860869553498023820825543940186752275873797660337479800712290165205
999422409473439747776540434639169227619151042866972599715159975819339813023434
327244513917536746962680967037343965212987615715802034020085777457526713698972
948930550183314140757213963595581831931355711540090982929773264817299066870103
175551520153684448995156510140694052468970213259346422533664543541244833680310
588986816492307461024606957522018320577812161009951863010801978523880498261824
398540919533266811442658631006511848965058660338998855369241335571014901497481
950706932893210113413531653847524495786582443345689082047700738261380445084694
045970647047168800126683510640318752030746779575420900987811373798362058881085
187733794577956016778812918107944350519064794833000694381240475085351283831399
290059982768783946212090526497131839045249595471280915778605195759587053381014
396052935225508164583325351842382628277350087383865288703884674268112420721578
269031434599576306435866962173855985848573529704316502296742339050650534466844
091817678747719928159891096709075996829522640200389196491086653649932652224299
329722497746532902729938803800561424456064793767697221376180067636497024511947
187006227962094322214838626019410162192816136648012485588989470113085230308471
549633619367469095548089475503482616342613255794002614734226564198784164027811
709470487510614205558637055023019631213207363979661701311103046514805739217831
005517360525128571550345372667647232717653787147291426124221448403899065643585
463845191397237260389096307014820703016486574991396374036472786825612340700327
247764058824302557591025561697878179401202799995466367005157315005698304740443
049444459179373569690059513937156566600072979823196926754717539961027718309602
868538406269671640719500109671096942058841236929230166869231695033708112770944
009958619662455471579899514889773793200877608860361874314052018182255894295517
123416960976587740108897708819827579919497779200947020790007066019151742631978
409264220601691833795207631333235194312072113610245803715671671630775345741144
715627686864867846036260176075384274039758179050590751999437154709190416415792
239403326983160688954686350753470506911190746087410151038112535221501985058652
049882103956276437058263035779462047111453110873289278100630550721744260390261
958146001159492867737572484960000621636666611563507437761158913030663835557827
756841324420854256226037351056133921517487669971391720026966016690278355419059
785896012752285142985814459468314405067354852312177540900232981823557473204399
593859371045008175563195994696322847245291919533704087106335834035384500791525
402416832562301194954645743267159787295340054107232648378415518438449694721118
679506231923902029631383564903328946736439980789520065166605114428708272432206
356858216437837535441730193189767427999503788278244869368619496312896577546309
637763143178992938928031116961789855824328817177298884074399959799447532541936
045034983892410510966601711931504482217832398588852824054429750063383241216074
762253242792000253047314197430418796441633906048750057813807920901023559811274
199017925795279946347009853277572192136636798863542688875692424936410361738376
210607015297738136570951496886033907743322988696408174429908309997206769500050
466734723788348062439818720403399751553379010097847900373662691169080954647701
758528322783432785822518296549857927806533499085155045015186711261603452895722
927762697725576403134012108464188144116556899992933632794491738177116889454284
657914372632781557965135763065745268433846481707425501549301359001875312984190
111708786985167418384725446423927446937520637944891200031229361533660916864237
822646599682070571291039582318753867205457208188504504659583880603860897615748
468318544515959471921115436234067704856174567380390036824298505101289607863604
040744537330914357056678822502226706445474118890653145147257822356733608124442
827467668609574115141464919242305716861622982710536953216216616126737132036063
507263470191090099331776403791305801957393765688357985508414756716148883225093
218473075789497411870086797048348240228429082109398952366937729534910633889705
376288518657693031622327973198219411694582005690196703886789156331877668224608
531347583278756517080552882099052083974570395907965139701107665462473350805601
293781939855213659214667916481167129700040529850905566832615852477409141790773
510032357993616740696681834261315449135968302672657669005156067313650360651394
457400603995051726587413614048896611431472698542641315667514568259817740044815
741608617625185416905668482563492005888580537754562717478369506922355748570542
731516774467633441272538754126479913623689205161546988566131216067713339464095
026094727086026014446299837470869921256114664112791027714466551510477543350222
661915609401131361475652403251134126407843718174279107425108462833855573395471
976050429527608193493322267737243365038880071876735582482251961005512867627521
784081214694496958449327401964253488759689043667056107566987754252135416641487
657535756773129917402137094287042570223936396677403097991474890651427067991424
306114799378934605433975439035774636537578182927839881231763512258005717774533
556356391306918672039126927889203979892101381090470035481796714835862030713332
973255039564635443399121892034233939457444449992985431500454461832317123679326
325592307371740032201638564886251798711263488756547968782925416816572920102127
881281932411621704834377635243699236265401094057245348245881153372383564738361
172058590568415055524677941621720559615091503741494312923370237109186848921704
775706189028868231307365727894330611289265620075499163798171732399072265819457
421252656210291560711065423731861413736561441538612133655493030198698556790396
948048940686153198805961639301234978907241607149715876747976962090355521561644
250956312242011787000830053756977752792641541932870294226523929993965474136674
754329187660629878154335143753497575173900371515250805443650581496096580086004
682892673490500497406605738278092998214413274294194514655091963623606899728508
433694690322442089546293389256581698027167056405024063362322477133903694444540
778421201251648162966087678602690006604159151764320706462102858625575664961539
960520680355837499244392998861594842979114530306370153492295020590547813896843
943048716743391916951039531664066215379153670367613959321007205233652187075985
837913047836238226528180520635886346602452034552144889224320236354434458973896
371351071358462826203131711954791289700504794201287696836538378753088022498111
061515297370859199523459298920571661882185864351471411775474735750904540989562
267951076910578576621714230743749924621254003576691979667824989824921069743201
630577472245028585119104991851858429618988299903241615229858515862336176386342
422899997469594351017599824987922042995706581968276466639020517155587467108967
202898551517794608228463292604642189336879115627211429280558991109234150762748
733999595519303350344832587074540992986756261442705669158120514807225826436571
497665565591565876150714762743973472594389921653076532078228211435599857307261
353304979957996417851226307508757450702915833195989971764364336770872689872744
001373637270109320833824244035610119379268245026793257209265395419597530742090
249810733886470417108310045379367204137561402995875353189145161549568949954984
539076265660247998892489431908163168471095841852633649608309266260439402918827
488288280525185411623190987307414100718407860416531071878718234951701104386036
587133938709736314007293592460682795495898892350074007391710841998158650942363
569695840689777698027152286924798681302165440995749902889643379089361531000221
866383766699030967830782635236653607708211635992419435947615003002041430624395
789982855969557128457428909640030409143759201764815665736507769491842964448051
561105614762132564452375557164989456634043418040547185585022616571493785626593
076814504035343182252322272242980664012098772383344469438778480532662381282069
193302530128243741167759162970541360668896282072639416426008999611936804772847
926071971215472850714024360466085015055551506184404242060283632699339999959568
378174693361195713356273858394496575733466160362446981114865171149948801652710
758418025492375858210346770750730897802017091609822184571145321649329699383920
868312187244910918379727929794426792309068700632673141526248715638277565964118
460188244561331505825350648786548586168410293300626885617373157691179137912677
035122185885552680636459706529515360214996711467299671231096411845375358030352
228407639788595852698767632622064449485469215028069267915382232059761381362899
947401632551950144307408532811911404949210528077097910465196495166604922702502
928352931103840669242684542292537965926645124268429358228823069727317377116308
902838047778803979426710387163610197862889907394341252765721331734239738564628
174929939662346512219961617633076203287483595314936136221425633705910028623282
574039789850962721255554051242284210838862850880427783979817624441120873280130
082435621644863035463315818867683261450221178817735662652225022878853731734458
650894649371606650414029280364665185024063291923878911464332540467359627516696
936512104850304290028950347528877264446501492063976775359571153002919688340303
193698498864379452584809694630983047889363876356022940168798192454876804346126
546689844285400026084385920029821996909530133203631783494076572509147838935161
719611289003849688081479278106020871699259232583326434703230211154966394367143
154713742584844418773162971997169813788054564179120301275865354626593916646734
327262437492194363282504884184996636513404367006107005491162630040588706565109
481257402497248755171934245425865818831076548422003129256733857186121953813651
726127055525791416454634052774022974493888370057485299606652908358128682935727
320250233909970253954351511756284908178027150806243626050943450678426841575998
442669165793815798162004196056098754773102818165080832359163154778805345782924
545349047739663108991176768442528991429813330604792143425729400060568103701563
588791466897286688210636254462612742755464110069346473243080667857958210754042
838937616707724568679310934846877818167764051797988141938960410227936453343411
927139764143109425362456952463231010855422180702092031342798303660295135079721
909910365485759368411326553113050726507644729174505979314941123245967482618000
190612773994290501205121382167661182727854588760106929613577019835995054857125
116569487552436336523578250469129368057372647221548176123488164316453903476544
028482786543334253670079190208293690678121586836852815031403199105711017065424
889776599827798019656070150669236354855384373313614324268435097898523086611716
704043499275768198826402354079919495357530383324230263146659353913050716687530
494029999378778402914954659218293452825782710858955622195837132090368465701901
079143933187169771938886251648091836317928270994906888452066776104884129507860
260018914366195508954896659720308996243093749065970072934406209068309068072004
168866058665522273168480394386086905645275966390085228052431281123378545272411
717601026723788079730053996183399674109123961671692867681403335147024014822047
681576192474678419836802918371829991983702566617625858257862567240730703571552
075809107506847945499067057033313916772904597149488854228055406608151724529136
502090366610125080482427665717209568366207667357365545335552838083120853396027
449788109053326653363914296811579417867705184095719692650178498720554645039358
553677244096687634290965966121836678965675637641539465754297352425208229664354
947947436460246729001233904129091612094472319895324020747465985065212893302273
338161707307426895847929721149319458269761634918943983433487691290385550440035
626196059086081697065177156382497399944711218752911350853623619776878731193910
555474003128480442411282030777736187601696876106968348001213824099476813585317
177751296434662626328925529261210835570615243749858545359211945983438598122160
465043042633115250319201408549189991887210848675538622307094151369792859771780
955185710305785283789055426906791821895344801870907135501581495606925048723422
413571505357554771713879105138964727337249935437314907681490740189373725083118
234030046192523630065036053576423641908982605882099745758084837405708008873370
268067425747462219008987300343495080938647695790020008977009140576992476496080
365730386276560656176323997905111592642064793100777460244018564076730166504561
814452054059629541292947720058982880758843505206698723422428610248543289716265
181672688517141631757571039517901271051732362345364689412788486831758568567938
876402410497497248513977880720794531800379991127381954263696828883449665106070
815865895285213148201763731097090846270782775606258402706553942847756711899635
509431342909164905133330289512018867776411515668891497640013285497072676533705
058410648792649247935131922010104793618328676137257746735861715507741890394650
335657509084552141029111230137654605356296796033698804962634423290700809568248
206631723162324924609908575632707585407658126783535077671656233807216933119526
816129779519097341733902341704750434160659368385699311824083580350439016363852
839403219827912662021147972089960849632971538594104367122075267821043493342249
068174391737296594388693896772322333863001700396436306218148664256721021414354
923902906948329311048079319658320048980586786857606068789223529627951298118331
576039731974052795912226557951856454804950477477385428903930665234335880350839
103634210724110058688979765469359717580242562236952890043983349366461094616311
452857543091476400197492759040998826801053756229924944298540582807110423436574
145911231217243664977648743006769225874587500836821338598043587689561627894205
404154507750999847005551510049028391676741673363854626943987728427333248306821
446919975518400771788487385002340318005714141813132628081447305865077953727343
872969535639900049551730378810609393176510204964705193218204944803969553948942
137913351921624101654750112823303282599318733966312627356915027141989521026635
972915136369329520087868402877874004029693331175023806314092545527742270350541
555302820249246520568973950989039912502402807978939702784912405901819455011984
114221449665628739496803893211902251857815757182900734793013015257134390137993
379020386314251699138856608294909577878109335495600920202520177438520651514034
016788154045402758400233823157317762113798786416633206572891978780245610920768
629756805441312288070827828578701996662411294831369378619754445780020213691811
941138807148119684629366881201829780645040043238956531102505087457754031843326
370295109593946126708627865956090622320118259224606648281936414492249076324578
677138439375499754908288700686550999045089508674875340185571517723527083333637
479270206496630459354198668991629446900333772050942243856249745379850192523732
306795635065038831511653082933415442546708301043240439461807295487937263482455
666674224918546886354436529247802449488180574144098487889102329710467599464800
138270478560723945268317964539541918472500863626123699809910777058676542414650
595537956443345020030042682954895105221464735250631714553174082580010271085451
032261234944948405022206877085489571410651755543120353285541756903789463877173
846581559204419584090038714558959900859127306319331394565737845698292428821993
020010925787779161963728264901133080907082158949478881773591345604527998731609
441900840190634562015539134162945623125295303709764475348005276144619708221808
162901618192077419638836715309994562209153458635858400871956471648587007928236
244648514989964139047612235788939789235257605096367328605131686724950931324370
841167100568684088183119633666896631871242125021936884329201982232025443257833
793335538819407863320052229478972529398932769726213564166844770773079498904476
922048154545611229615510894795025774202922543010707792994067286740599281819951
389141696522138558413804416826652277215225695308538568541272426648888221605169
196795367240949650908902562290284321500176010421673810188743367937555171888292
741955410689690883159964835357538653482139933691333234108501563343871161425450
443005613060168468950623715808210801385381609515949272280770142992103804949831
186074428803206846517435077924538816082748763744670760941976230596180773455100
586964818284979862521095900111309158419764095753619914618069062658968013514901
281760815283425013581816911113268193074669314935589023127974138363553738598653
628184030768161943093448252963300261300310121743505554401231465821072209061884
347739238754319404653018317885653325725134306212203829416365485245782339870536
736290355312156337254276050165061500002042605395847552482107516691469130969570
421104103102613373117498203737691184034662556488742844409209301361984922167268
503082947643446859399986728544124333672142209747111593522794887532336250977141
899178202693697576760935274058681882211373876957571942055798447141047639398525
768127567181473576640872773685950785812663066698479565870446868133438044409776
749139055563761440585220880194901936393438634016051280225902850743449755750829
544464856556832409852631542983873767392586976031457840752072862943216090753305
578888327773173913660604259762188452011083289660624469894865138947032649263485
997875131630089293471939787603359821549280808977885527268728524104820271317587
279441395069379768481169753256854759286043494995937234634564491730266992680954
943303277674154406068604916791558991249456223550150993377787553406289571191280
841426674543038900513111009878464521995202108068281819057548842887724439238997
930801412600464330615876644324577104015158085335152431110722436094259575798156
005310520782930925024477567884301573196874116661073521852571279646080321676093
144559170240913942119814726821288495393196885856898317832716041669184780411087
111075018439558040678655067229736844047007101209581274593801952967166925139851
208527458267306991279191759712300697752416083537887295664130996709068901163576
350752641216560887808774141707560949712045543686519722113000841894586074163124
841376152817125654914686583588172449016153184367792940216323658703987222187317
919802390618324385875745111374522972068196892580913875937064792114455946189792
911340859076993375482002573951527160998876359950116434398311721059602152989768
766197500259041102854631549929884705510230089239942169452384731956905874578968
604268318974794216312600924112153420752831965689991593126332033131654777151039
948200991382026524303546599310235439352255268472311292490109022304289834495107
680541920568855364033586176692561732848956707657946548841180463899916062245228
892556718048189136933203329993486769716110757120355113726276302013802553099296
443365411126323170204399294694632181620166186728815670812780602545318382247205
532609024673316800748981460272299382083046716925333613131250126981239660711581
388960314440391367270162281551522839413872492088803284833951557671828047475957
472797208234400552880527797177624039972387215119270988357733346140992809098873
401658059867084151031525131602863108792845337659932995004403062346167090530615
905887857690316533543759247164232018832448533208778183794087748057343160870173
033198118076069377726876799310002454668596407703277045404551443493961363183836
737093158862291189486834634207931665918291184166350956966762391562239061370170
420787135977094200942786275674016666731088829460356849685884450349282161150805
053104654679487791372288641845346028817354736751458105404027303694477058329919
318907083082735407504544887817170330239132937995626144687975070608939608882354
367579556301351410703093522459686109128968606311089383329961205198764234640750
062856133297201159587173192832422832041140888179642436162035644722939480711810
056938556197150592930859712146788006984053814180183086434340694539157376958001
885328850310023601515478643917017258969406153357261546224055475768441744065133
829144328636323194872426382245197496177168512986003622472595946444389776862416
469827513943129085469206826883203791143039118788925076548303115845171555650384
692558766224683178239503178926615771028022429439447767306072709074416404381154
931213615924296698008185748644851334808309774736334442723823614752404450820870
257310318578942837109873412534543341052584836942995225147847881226624041565907
030413479715586600125375785744389122781459193955005751229949141022040263711102
354625993700133381831045419743402434969163380545672971226261172784676868137896
026967639755206501037310579511309142968504561331919431257361134971673066834399
860223538468121134577771743015952397474467756709100543105858212484932377844722
912010839517683850507122439841643215967267591358496899277324290272790139745054
343239695894352957741636151234193288019069076238416216920065921025642257363374
511459760726793697201646500881175379013765980304680947565266049581988012426909
331356713412025401638045202348450651482853916538658922502783247638513522904966
406065855832356697033811926299387577157258019224934046872425877194482383760758
834171568598054590554730778821168180819579531070456093748511416058179387912411
013872618184164676011915288560216299528431314840410654156344437267561906369647
955163709094331138088572385248048032876904935849387967536435282677436308927287
283934117500969836533148259444319925515004434404171796983669259181188777932541
516156559559453903359376343934388890178437357403575509522418268363084372107541
408839732512829909125229164651386019835344428812051363599655356048184215684078
699356177305701730496215978072053010983735778558158735025750102411787342671263
964205563776007393432864799350570376334216862324235608454179015200084549423169
154844746734827722103177048812307280675583334834244206231050500969194359794940
311381256210617346396070274846191252042137412014956547582731273368011075544028
943093970794327731277219623202048202253367633681316817137899957202861926886673
812632341532918690506468625911871160803590049260426121864486582119218653148554
634987153328571409152206340705574233313433096100604024359415985891702149785762
670687902143771335079435181528645550993191724859703634364448005565866415035246
870130311413897321853429103732126197346196123961610832474276152871026803167500
271623151630700566584204109602879419341449709830038980656439907085718289762484
515741007781394999555795838767711681570657342599134061144368929338773300864459
050142579215267185743384297852171849401120990524008287143471871809535342372060
966471560159425608360964997085763774035610142000194559270096944867455832356259
609483513238366155362973910322166988602485754917673519245443149403283558061528
417790314757192178488318754730862758543239289295900321747240390415455957226292
346124988047278079802077780186942202045943071568373992187932500999277402044707
443180808981993185616251418791972588772473612754636509698940951954027973475479
756946935942240936749525410532725238443521056056735992587888840733232273401711
608373943203156267064434008265587227362568459625183029353234936778340862402333
618282070101148849077683709359979541086552184105530888736020835966098981734003
610791153693687810379710304805140778452685520123736443508226028405401931807793
960556004887961189367706826903684459092257797018800582982817352347300693258073
375843987856433618088976077165510920094301892092861654603614374820145919321002
242896743087225914229860377441775871979057134951815893657644900565612520884978
012018915281456920953901042182009196895205378439675966070000410038434883212148
112015550969839934536536180694252629370437525832390763797406106736635134046910
698751040456450474602193892193771031478478295370887033112410471888514678934653
540914118907740272959118545523847417746956331366228198805666831871932305135361
346730486487559626932242496789813009558216551831422925217703837707157271695784
098572794780140406161600715927878171885958922889730866005474090247571519265289
515536368789359018572462854694717938499731611974694662376778863662497314291790
414650381905533133306883784835173509205629232012845832824155546873651948648860
682676135990626552043898899883467422312560070298242043009048822150455201459369
755543437982481371068329554003242735242628747618623071918372788549217267769393
786133057824336152749043982263465686304355285983209182197447523359145441651834
449556187845443550315533120212739978825657756464425933771744536675686636951969
582315047782423810307052273470078029726610831420814666101745464674135331217079
186615600274350063043417047885842586112057446252262488464497897014366583815092
906860129420069921023178327964307246249294493319948926648695125257537566956578
414906802330286874570675595073621212470462412590291694561479329896239998593360
896742297239045145864882265019729760129890019385548270403104158718277163309024
697420502630838437308824246887431521765275573533629234274263808334472944003377
557596883613727279402412945270528106863294383971009930227542594345471314031755
088959587110719415558027021072187221172284483752163260614604650548726878172545
679377521672615079253808752503750649861626267458588001909556930968131343513260
940433799824950708885516734566369455152776662977208804017297629329616245370829
040689092080698884922192295966297515321848051495028050028346051926704924908532
947500946623204974001601019481072312991149554899206684250243703766247989461819
427671278759734837841415804214008926003199801940308677406286172255774309620681
694600732727127792205976624006485725630800029821965732668863461116432716364172
392621873832919443118324952056590125750798094728435063606982947542714090960394
143674127714865933322907818437417378110161611267177178364526670075557008339536
897616563780096434556069657988599402004993044835187466380950187019247080778482
112787987212076304458851367470476822416125712063244128372883631727537587516067
951919026029612138976545714970592738282061800734339230020645846935708898919907
799500739419196845451758178302097743961304255965637698273396407689205533074617
380883889565127710905677344043314210504306287002104524153446940238316876368173
866438869948866560654370050117062610846868518541359643875803902424948597124730
632209493496158348112961729274022663543115685042533824782674492597160852222733
750046840720488558362282627258945611862435755038741984805314946089802311669179
359752005066974826600443180459772460642863572311855255506314367920748921671608
209976790359494415660320826285535654330563398468913275174018340869368221152965
147766353223758408373523717545513337065195223014785149977460787572442231900413
561018582639564664483822847910142926799749645258214009598442821915695249229698
723735745664255106942183773137051976153577586022302161761802746545599235091790
928157667376324416415172043969863652279260299462570615955870103948088478783835
004241365449275233797086826087445228170199662543571902238081510393590147555016
301224274048973008240104125381038058052627919893036021974730899983952201181388
042497882935193677638561419599427931412402352801217162891159453669920691966043
276781754556150632472825488669706167647547585562168050996342295580894653086354
741460516921018112819743378375647707609272993182396362290115254705350747893207
216187268222779695200466053270767568001942080963300411138729217171653583132577
880541857948263451377562863912518522860216744517609308644068088681678597290388
746124112172872345177412404973556881788491941748736262907277825854645777264334
721318897214364172242933733197479907037579238425946356809689005558912514644706
819198470119221370111840900308638942974399139857064794608700752468446569810592
302188436642912891333582147364898813730847290436027556919885400944304843938645
122526863826543140400522114059936033238894220323014603253280835782214746166976
923227734952723913955487170440153557457046771680330252801953158226042573909255
253658918027448071140023909054784544572909062791620962907141589368339386669166
266720590325270309338806205422664864388114171680211535254649741474584587717580
935770614110896816148207738499336066037873906851803806099358193574426759106840
449403729024801646785777896553815043571152687707400443411094795006267219915276
853219634339511366840918087885630115212075025014271041430351795054854850756573
888759642442665410541190085470860228093223413976216330084172340635280555859298
247432118809827697247021293910380759590458751814776516889709847874736496262276
811720575598478018468235333435646368024594262647853333694195782059418357413672
595172889535659086970178385170996705145434888407513790191107745934272270520384
952426967082706267415571831604076780689852642682050200073130476300329276336141
104533806980462790886158078187430656036182394054139398738611700047079614890400
198112810867672541275220969121930453203385342327218072489345752341861179467393
551740460435240059554689032265048504674648179095827657477622764188559703151548
892883611047934455622889541009034888560351886173887377312617558420356418099756
208201305859531783433698138288791052318289624752247878235391995181267954321411
102708014500711051521962960945573187755513336152945640506702226854754177619931
101224952454374451702168854298888925185135569916186790839903520745252697342013
802558836364366227024751042553033498002273340367000245500166538107480257692389
320611917658901744200954205700028723278574530264367581238589010270388074395645
109259127892758259950116913327186255156276589257088475033714143752734945143814
010426400711588300986116496228557343982719527134928425436317141942394352060995
332316996385191271912978510189768585402999763826925895218002964690950169943321
130182188513768717725702710929582941503060187992000084547977905750141501374808
203072811593765758069090002331212278694608483070004877530632700490902862495476
051938080966256394924856373747217658490566967536560234582550605621873826152319
702003964134321717537352609725187276266865418980437051821182625411105318709870
194381691622841732138470494696301226370057399817398021359204176860801254633839
875977400035715606773687922484435497129448435161142010724326441678933532909965
288312121343060210934977443656601507211970703058347699147519680866705579989085
000457098004511390385130602712189104856982135993575436974223769921648232101795
546848793472617388631804887386486491079107305462890683473258609719106027785063
334350367329697285471488709194993220167555910163846650524546979880544173699385
697728309562430406116577326947854369812096317192541197167747470846210147862827
836758258440061653049680638435249185402399404668106644049956700859561507892786
426287219242477556248606895592297631429939108591934613770877818192921868744261
199664081766096592483011705449940735813171726130445041618110051242743280928403
536714791613868701463718277437348424166995501077214047031690610923344750829463
892229568044513716225170452235910519513848441240340176524419378302896467559389
390421644874565702181356180513870764823400682800325325576158565208736810723053
817975629211656634449558992429523909301798708495112379067521756966346301672221
688247731461876364722657101675384138232373648707440379111544061744044781493156
732116871765845583796871856849016619465457752865183407409135373444069480996613
878645267484724569049496032184515017927621457926986475211532927254297633634791
603758542692450119297789547865541244850745397292559822934646586864295910725005
066577263336192641777694931938160463514216762129653083303638025337740871625911
399027915905786075752735903219610809720205531741735716329275390270500502202917
796824622707207410700443503253176598399962977067892083355503373542756836516684
737729986822226384928617339951680709653054731183224450888154241914690564410431
368581993462072570683744968068416697279575430742929804324436433438361301682722
632550057082961929318502744845341249284183092783416136979339403200083373190768
587181822651230645656201549556984023753172569796566469082995223705407241642423
772678386488085192754534155050849032339624504830442927122188689737841965561743
820578186593758275082771830067897942572960092822715072227287010946205406744277
542952460165887972346248816309640438933367899634406070314693708392362982281534
647604366424147596861854226749864144898268099141755341765868062920963958034102
671794576636558255567671595148724913249136956057238181386649607364029412680189
404371643093907356751772038143460169329509225969917566277055050993494273028400
296531001905643379991977408125355795044132109152034918942656442647976857630535
217037480041804345541254781258766307494369836850197914054691577185356179530820
092358713666047066120974431514211642043579205387460733875139237267732476504355
817760633595026930659618470549802950862919775113857339754011305264673737008356
183868822674770768557507820189346115666777912885455602166240027814721186976119
850295645372059425167468280935732082719433771277530473672200832387324910200023
565658837242724820056006223224998889729289902388270124801738266829853647827187
084942829965935844931010228655329925910521361260024736243884704320511020930961
250260792302697447268793194188246408063219207616217458754171831827360278222073
629226876489049066414615135026311980633691151079857807123412289265501102458237
882262754299638394495243258174277786676155165648853201954684510897247091460142
955913697011948457342269975768599604841391099581233879606631976149997845586602
023478032913266953543461653422256677554322839690421642190663828680462116072405
183229327513444277922060723881598531372307679890966367119000968640297661699708
545601109277477602113092849498971455191419723342182683714067656507526916053903
100395278603443675108980849760691854340783628446276094005131649525824454773651
563888912114466378676134521922747131116818485464622579851495405157991147982527
402558481711528827305286720860602653579433756721852607979000546993918016408648
270608597775926955796056971036796054837408300845055739568968384615885752500088
044391499443457322130053297189373654804452553638594707749162890447300654071822
047385094558800456094948135518191766405975837449102012424867754557622322153523
414067708840662837868050205361952134317948380556609896036540040772472953581534
128788748934229841666569841013209520882098040552811891126637407162143325425881
576655265344106435561387373085261453556736048799074906237386005535790114297980
629096095792654495968461550185672371460097244673868326910413839804943977713666
938063989083320340162991637023512627146357070264239283467971072488518070531409
129425744824815045882455977291151518935563319664276716560924388482282049288404
715052214992075876386839951290233928126961568870991794549321166955783012409296
780519448347169672240108759871594100940907323408915942220475745685461444791257
935238648378068305558609206239499613307207733332052238473853697262933740373648
285543493107167164693973496104278129141054799248943246525621428564551018458847
955151740186370069493326964684325602203833716508692401425663369170866956332760
646020578563783135592131085954040395574733909681962035044600199293777798994578
855542548017659961435701906774974608822747137768152839255380378136054296481256
814060213213603106164836219959298826115080271033954649839516008606296941186451
964569761859608461558824396051133538154097017775246842584458805654545620743356
413932485846640549453105291139668029165727343200137790957777911425671365032461
930145095867688584738203638205813607462999993931035264085465701012235329688319
987975019770365001303173720491392680306869292118889079629200891247047008008116
378357705231988178595988197084808061693685253324903376441860289687529777063042
561102184412566896769616023641542452800892140836514164769191131130926622447826
066681025838825774404177677852585243473334724526054531996216577645927084262284
737222938070099996568988282376320096498597706458171608496461542952682656083458
598433497025657140774418143423971564705740853023326373367790250649737638874307
708632760766845861252599621752305562681188101359262962798866778675505546509447
516826915373391239489359484354888792047232354441908409219071052398345400105723
661089151764674112007447151011436572983549803067529478318162733155549586002988
122869104780691699102589125667599561169410608421965267352285745844565650143865
303586872316671621312001825095368442588249373287920507136557952531675910187381
041387971995521852706158114724150861447644620917053156636885624454518758695631
752532493329801055415815643443833467816349078288289445424257637364563359260493
497484611482146643738072094202335574970902176651116843433109672949422766986639
303130443414171154010907659531828939314292110730135150906285971310042259845696
202640793529269283890911571479200876510815443222250001696890167868828554318197
671458246052209460486488847086609004540463761090710421291321754919660398752909
384673527988372813933322646384473218959762673761572761143413738944810959336312
856389598308596727366385089049846927250217433644417746939211081534403632188647
956099489376373663722665675964482887241427864350463388592402302662643725641288
542734004945901480868089011793641195347430804933079203065043955196558618211602
076794600907500727919158307630334663010602167600975577894890411684431585998299
097228995568671839222326293701557022690594731411650700118142745871612647414373
720665812562058770643382904665183750190168436900422106895003088336306167870385
421217128191193043766768286653808125325387945370567975633364781098748920332811
856657398171653304798320999909415438872319715387751862788773109518262724398308
880271756837619969338287613716341481212577950342738754390806147964491215419525
682294667862627178756437663593321900514468400636984282225522055878531272374772
762108645079233593122224743525272175762890901518540730859560183758531861478060
828791451320046688752390751632312097931780752271359281588549143871389277121795
992552986707946928384584392488577668467651969794441668256209013263463119307822
439407704073593138392386059245629731743954953741586880489710950846092741268585
747003993546514797238502737704939217649737063119701602249515570349823195670403
747395452986513426254896252952050117924630157821249751057989610676978305391059
054401355598507525335451155197394189705180204381546080762492230521291862012754
694296152706336793924469993080022014474750388290339919591501979656751777122743
338781049004315041061004965894450545448289537285245068227281300612325546207075
546179950356320971387840361586050845522534960802496352469064588076524736659778
316803379952803086216200856368879069177084402255699920402644498525443019540838
316136071323040383673606443087105642476093854499097847728633582890042859045504
111516461845371258861256906090682371881603729430235316660411115264475799538737
641695606339040250655924423548997499868000436401441565636752821548970939887549
863175852079502622611030233292725818202259415464818123393705104439426350973691
223318635438906451423985086434418848903664746770186365886256850827054405541416
015858728308429955814219701454438686783889743605923106400046694393654610874555
120060237094579101734303959281080114845473715344541303557399446893464470661783
444805591729110393718971112188143821276945763392005059910017692126954138713019
339834385343188750934823870045280672374044854025447823583432975405291295322479
647096969502234478696609571546195902226529262002766910050726143433671959131205
303682797402735182242998270728785059920984471409066348053175583859819028863127
719248173997484381101052372463145100654600879825575708056816960035769412678905
648135864044938851960103367176051018383046702858111375071414974742195451923336
002296420862554376020723710108364716423154579137671369448914508259859574969333
028932944106445208507188426436424248571075307807134942909879124024624027445192
557167853754059589816640267925474864622840331228186688928802883273446654167681
514521335743460680820164741601934217641024789003689403802542992829536380235125
267219535340281442963027953325250879611159263700151656818998666615022656121934
589904823833366818536359629722584089977676302872559621966054131370861104114923
191114906912300916805925873936623689347107742386928159150149099399004912880071
608767067579055634774988149159864520543742463422668750596098572222018922263939
375077258344899525720970676740858570610509779417220019850840397549350234700420
402170794502031805020478162262044440997649568716016716795760593625959056717401
203088240218129739321794642240139202376286100443133554006374049080820800772715
879239739231078457802172537370763953811175770303404937588682845278646650024576
072363898394888519056959961426858263730664922878000587284958173610825588486556
316402305756886595614927797027574432134236456890162626445398095068544902609475
126969455528641377225810906785416678278521309325862780208998938558591091579656
992158238039188760352553702537213900808180208955926629748141027488753446873598
583100409301522765132434430908353805695213791103493173025674077060771259477264
010078163575510717886387768224724642757957514937395322137285648816001243885171
572132801063583002986818775092120632772113477478561718333321215323228006343321
988967193557483021229220180046483406542438889497610144876648668621132656458226
981621969679385812863634996092055510074979554581791397288100440057287251196569
314546740819813729685773694127302571834528167820013650856755289915180403556757
920679441436952300929208302378615735984464846854982384019809235014608305054270
013242011316659310044942988647821000440451350711652953159307599582505586951536
167000924772533866563257793248189736573631497270799314966013085065496583730149
365480672382844160458394909595809586659597033566487154686285198278233237726129
360264548912336770930157530851584717480789383445850991723645174879117721971957
377924673717070611702098342778482710874044272561628068649849828964397502121548
353965571765026605508097267397576478295408736302522344853057966251325031288099
375466670563824122411067864059027661165483108123900456616252402418092138433363
006755276459571448887635452324788143638732634876199282706142749788197763045648
869720626163900278973067423669457807172570292643580433254840071069663874226069
034230959885449159364853145989431775742001955714990050204429550117995658596019
227848287398360054699802375297302799101682120516698883135588995369377937522629
841416320558199697826743259311514184339696583632752770178931683110535993378422
319840654190287735180394318561360106490832487756945687675073919885377981350373
369302522036303227619398800555496641479063045790537078574485283439658185830328
538888775072506916815969504755586686682944168537688033356357809703753048840153
821220780496199874037233453829434887294836111602911562503598368668529176235369
165274452586390448379487734522860624484377073392669773896951627078570828884837
160675411705987757229491606621150468003165170505636022461516606365569248407932
340744097274258812972688918009714168986412801533040481569651309153926835639421
883101999071929633338359208509654640734587424569122661666356804999667533473751
906073676625694022236132939472284557413987185461097693328478978071904438369171
512419668581478345825424739185387982129147434945144879325201810640547199263695
351647748905509208497258256232863872212910855067817650501279185758987483257844
752130261258204240948726729323362518321120535675878958146424758257142935527779
942077847104214618568169861877629772029244502360178197274266014404898707716639
172407416839938697314729342719445085915723834766461792648369542055095165361506
448184615102144750142288237790055188193816804925151383566536186914310339174183
620712922965001582518928411125165195241250066313176995109457515977173856017139
156158252727773148351125082033332728418279679027717360622782752292497405548634
290454342460317288551016871315895444871423258793424848388784235273781516988106
860720333203532105961063704822879147563445099902168596270875332052884772818321
766268662871860088337771504377444691657339461278948161409381369386812591594244
921676590433000195389394801823718142289301845656811900997267019537663899134833
274164399067864003884475018795053096432017541050044092997293063168460024342640
606155736386418900214701702149661104952139043779950275036133635047146259893799
675909008312525366811569193838218713579093592718545807578897300363661034206061
782119075873800843518808316874916036015623610863874797693003959419887069312851
790434255948190579365830015640857499189411519650816699374759464623128797139423
493377589077909904165608245327364607570738459879201355829562904875312512658579
842181630407002906374087128034376835023327024971401913442410473517832031175947
153891771152326423509688165293711559416187126096592405511071307203011028739166
502039202450313580505671018138777217921841689759043714293596356206443863345605
417599430488247754789244593851850705061977802272041909692166945749325953369167
933644184864871390604623701352147095454785265465817930428568926331150001402359
316036978056178260101402374036612072460563754415359038265101332031539091889859
398088788279289353296099332844319760550292023134234704761326009650473169935279
378245160669683242757245165147557679936824602264667613986509223182961357399633
785082997887342093900758073883817209881186295643943639980373825134803437772670
575375416221152794988955649936617884611348438133225459446617719731861803658535
390070030839716825707609188578073795046180854695633702332171290369241283314748
115137318231512534136750939432274526960873818167307061332273110158389657478571
201594343874986215179468866980483857503289141382669975861581598556794414871095
566538527118066955601692123622932950413311952573677047962196509461227742626321
871745827064945316762985738956136905052221404286078891401224536640937900261960
543443114935039908646065179616148939325831409296680518208192080993876815939239
522621314344793574799853883665594170080818295992452346242985795260989739020080
436089855974412666030751111671876266072292489370843809134529110596037871025278
278402445083604713602041070270147188883485313501636404527931132273146747761812
604996810083633088621825116224360750053516730529559302892860173192270809887428
041375113660857567460264246206964287070038148160804276855682155902822578235366
925501419892657215520163975125748924869227417807591825022996676942934726512931
363501471785417966153389336494148742370080743462518816255998559661193139012960
792633803158136412511675161784089888287037917930689285913262051487585733311399
666505521630332603197975600446105248136745394719498901784567328211542069988456
972033741402120330972346580658692468082485590406683035463728742760613324132001
701603507073192833825506784378304311385443538091088417938817257365475226659348
145680925352755236130430403033640891611590889129341546460354950288120953000880
325572143312658824115765834377556995082354587716924126587856042951267271750795
797915379633754027250739118100677360413135485555622783688326198106694831316893
903778120184764952901161124728699354342779184500270890149774284319110790323950
152539233555379275591217879751738512617974009755988569155687478207778705792977
300399655259592709368030431429163250000216611580520733646968794983408887701091
806525941859168545103632519145574266561806114712054298931886096057101211975200
880052773406051737739356042754263758923218111795496414582229462426267326684597
061767131783125006023694147635560712343536365860139416476054289323466047726433
785612406557925620402155204122482022571177786511762678213664183316130549187527
683259684016947099372936617563554602548980682020558301062087155682715193143324
943922670152330979450552333723592459072841074962740709264923775367212717789614
417261974475081832366752536572072474723606149488073469552360766680238602017068
423755163863847352732284296890070313737472244470926783931551885636099124138813
650134590690340089857745758537365935816485200769267174461192538667741073763928
007319601806462281874045571273936411700138968723427099820464587925371858692669
667520893741481843751631598883221195664097865178917230652089220384350565850174
953761745759747751394737573184069366516350872451360498791508974461482374697822
116280631997693964497561357356367510541922523598318314130637559093162323322280
779365801692342288394097918173772408589785497184049064494429632495870916483568
570253732578778707666884735119392160839199401713763350900885977410121744326476
215189343074107050888671278263715126047407563592891075453312272886046169499461
680468022791535058074770592803439578337594661746992469553529333372918883575387
613966239690214694818087451038419710328884257092290183279016486043715306251578
248351050887815987299721024373965453408608352221976927580268970965899984080222
501749656117908100382922446054740825089521870648669606199406205495202864814932
021268513001601738927769216364437163883818900312245098415079815182908510729288
133029047436848076240816030622049516451224027830457491842028813432464340740328
710676338189888045588067611887804916089068080379661715435903434818352848926734
198774088143187476784439519715124450242274690945992671846864603480057229306511
218015954260510846136682262356964994828812038012317713031273678268560559538241
365825977657564594053262038394334987680664795075371312461628755066595384476352
012615097666286929720018717647945991197885074195916159165036929105787145553030
705527166249654818382423546330451783924171690883484007569697219394719720487572
010990641116216968570740740962692945273143914001045805495296080975534385626705
305830731901002236113730401335108449493294385178178556580790903880250026955039
759221743917113436765699835408879285911775490267892761684344992682369673709242
319175418102628719703152362829161330977629846262866905150470472801343012249936
377962243446949488007597916331757183193037319983849928238109919739227814823494
535255032688077277874612248998002004427078069960017446768350122230127127713269
526512683483078625707851802637735144021308058059115593754936062372831272764496
216705869900753435671771078049244706158492106811541117638896947015763380476216
217771718322708290893016427801411837041338565409089126353360713211995779005060
648154778274602713016112957731096027032371438232376350196536028746255561170431
118693440008956808740297331834084780474429613569726834355171333790504991172424
141152539860573623323438110156446780574536551530976545582577269900580306253191
515850965966352968342409761302685443881198666623625312004909814202571320716782
313493871018079699015703486210221722603733258078536844097676750052009373834807
457117166020003452804153292095333271214706869382158379308754668465915725462629
901489736211454542823870015859817672650049716354617632414074225369749832136739
984372334797251299285198580125846087339687987889037195320873881332122039026339
334080133896973036560591859283953257895205768915815706422130862141073719543750
482722111721576371716388954159659767253080362104400233101367592282641547814658
548010925413486052600141770807479446113686364160694323711051736620681851605083
448360572258073522681031515881002693677780011887036159982478192809171128708678
667176459138047583074998439889870324003558360744710842808713988863820737240194
866360433529229021274657635159333406538742463464606602639698091813560484166227
939492055646948788815374598411254317653902162070516842971498432783268617433329
242992140385190300182473214703124619518727232096223841845469860596896148335757
335484174886759296534016993866167773568711154789238804664884290923294760360845
749781713597420969856312172543855779287741911675762760451669172536695695410563
191732360595838583921493024784594329958507986904424405105231101001523857299096
492068457750171943013362066509843214212337797467295554472343232995583042073048
983143420181434617559844998384334489654229165018509567967044275940329916615609
092279138138330197593722418165031245516645371824052070626068980529534220992313
544675557854472917347505596233667671844870077935688860053010413618276375760926
930641688626808947978532106770059670891693248784877447557652167117404565927833
186030695090987982002797204537091023320985336894711944970473026921671033519618
986360555926747073630190550854022433269449392382696479559622299443831983849867
276474208011790322152157308552148529708192541475343066004950059499390039239737
762126320791482983414407657669657045419328908068749183076067701429345972447576
700423619482311009349761068355535219041186443476788105958531162719274418184486
456468443697762460374220448116210984351036556970981759669908378588516184531135
108215865639614706102461772955380369593129726252657876264071529602730512713223
832139554478123684446879121046619952719779107852200596977043166101132887797600
604260416229284917476646980942472378987159320495369920158237792728910874865368
206494150039653292934603330322534964195294721636133619283348232102799853075198
278758176186679400175268770729950233873222708649514043143983986323264717842303
875349496552611876974085086529666531822860242982715933750448886621994630475342
960198335614515943718079578953860679514551626479714216047476161287139452316589
062590721646323714172520826629398336220226384707937178522714415296532551164804
857962657922429605226467413810100837609184228380295459536619310561667250816694
585243496592570495153135567310919293083361467083752999688236970016425925541565
175976256736224193215284575807005126051694790215606032118152017759517769363823
183215238728992236431467144722427892892837833708147548729910965567753091827801
467017065745487289908037631675654981542040407673952390183320915231788226882274
783759511568705134619795469586884328846974914821584333214199181082565615752418
544084865887330502893712561535756765322567932734432795542744064434764553620111
203676526982385164007232256028661333315561090082638008925489103218278298836742
705892580663719423230268122796416963996714899738140036615050336813700791126020
263196612670242223570383900193240652639701047081609900842333784442620142268229
498951022493708591615227265888887136828504729122230456335900597739388837264281
538715380087204363305589961366221671708300697914523782315086878743994186486636
716737584271621949159234163324424609794648967523948143285292535354378315512570
484025675444750214738135848952128163662753004337438401650783879650680357250014
901957406692148284855217965807399872753825356694675059104623151130836464017690
775005632156103560182540945194602776307220620502268308308061669393532176327637
156523385732522211201693015434227014181013360256382150118930827139882335427182
570437409697620170034884178578067697130873394568381775804307521353123941498243
698159887661027817524690919066865933424599668666323684331813198655954355536142
658739023745069527205077455681653359460021197971276083388825828756851515141379
514619179395426192688039599886900539164992790591705711661675119753794876898776
163451641507440339454081318641669929447191998954930252829878648374398268718648
589674449221945819488576080889630347796207703341425605864406135367210273803516
015372470941243209964228198472282893774110526424498146897726580485330771017841
385825458883481902828756841567057538649585994019412306148987652272829266697592
231753495750449600933477930780105089522829340623801770272488215502727436037563
580546581699119649070068226132316404942968535639272487389966637518061092014999
041216866933465992304507294471128856199726808041449506000119944375203702354861
109088691440565264152103435800436250961327723586196500546270967547381338976820
027119888517813507998776479339101789747492739439643511794588593209705110332547
642582550470783903489605921364214684955048831794841174846036364481075985492158
632555167781963303361685931973030843501938822431686623965095476535520117168810
479365700562470229853594501206264573785467372289782262692824448260861630082518
039837621840889036423546836894230136331118641997897797118965030552068325212967
831051866757081725562875430658771174152954249998965497994492853868028192721215
546623742492221013332452628917616649594991703865449969052350199233277465005013
241764035144286923588523287954122073124601193129191759523954303001312001953699
474208504484645635788396804232809831952047150924928350003984756165064696521100
858469593542716501377914989100474459589803070035142372053653869846109771364540
686761936856990194707115142726028951040712520384872258100806621757663589599454
014313983967491457878776947038956803781398325673598482372936368852378754553458
445042496741968351842886409049674713961591203482596481058819719936027772820241
396719013747673609053504304112846353894488254753894721998040412282402777489257
018477307262559254549047263480485130750047328481265023477601888180269100211663
639943412886855609394351950117457670917588329895596409519687953112284375964131
155034947903182771088175573837577933799759628970482852915010573786024893468944
965460084571046444232844187853076861331443351957175520164025419302578805420325
479638851721669289956104603762064913827694357386305746154585770158953370821621
654187631687612913141869986245750571378639351112131386715085420109878357426102
572689152924619859957221257967538580638421774408642979924608916227757380106470
381293924424624060376299680054104702188026423271413535917681610008372916428231
962374334876176639770285026977344288416823746275854442124035085735170102528579
084586648796373682262597967219527534500967883585093754369496747693223259808169
440741885262415555212890901575476572522271413372856494349850125999883176992747
853962192447185344400788465273056224695871109003215123213037606163861348549540
066576981466706577618661603905640713610975879871884404988557724502977468695255
635804817672044443117883683034769087400362615903258736353409193653944390385264
255999629173783488812286406565171582738465389856708080045841209513429614785491
610314630753346838015962684614154565711739233720653811928934691878740750524638
166687902081618141787221673838211301344829912521022266972824150340746841043533
403466804927597370436347971282302926345615296988866049373310951230294905567220
363408592776460516017091659360281146033317522398263185826660920115125852272890
110608881166891214686337913998000416064818041029107592650866091456407157676553
264049920516860381813841778794728848415008147641530052045977660957350007282643
354125822189533598239914737013551714444244194872444057494934517923404465001366
019038083593576860259887769387762441007209962319005255252878006972466560116807
691088901456032187737802061260304063794992465605397214166401263437544661471514
427170160670593332323647417704842836370799803801167304318172300761796143218279
574693934057781359552269066013829844922971249605794020311785568973120480143479
595585355655081114552483403848270553817504860309859656712903882230308933342702
132641879693254490964194389556013807567688117657410987754144006464132462759050
438357769976819675075433299226483735313565937022137504810285470619329604796265
841112801080000393341037000138186595469774170645865443452172705804570834087901
312795445289473829660540609842459431692866651439090147929883159275381101253510
718848592491603145422466613929609481844633255556982563198916757136818330075035
413836101526589101906602157773825017729295015317826903112787100866203489061181
356585505527155710418791147043200882927925606203761539032475735114854288559622
234392741539325355450294999920710256673282202605442937596170476411011365917391
171168995186681324930774196329773611723232407845134980737222248961780067617728
095959860678355346978527846457251452501695361900169699530272993831999812956777
127826447348297178594694332191201399906855511535260073597368280876098560237102
604686354908622544636028731506712877661224677945911410308066842766205308277837
466610277658687436708215298739922862239789484425494106990899246971554631322302
466950656412239076886988198172200214101618792765110678161682479076066202095485
683987759692982734944118845673008943474549543021559114889018376041189405205233
522207470269323271748700313179202903291496162656210958417110095263704960555498
453163976716556964353053295360363920261393017499815565413890925094364173482711
052187990591197987659972907188102366707811827646785569476901978971323681453603
252505192175966786559059100875385331075924035148004820265859530526349225720062
029022010845546214154291125024774248510753942676997781923068877963553736363161
709030798408372795651249153150072866592476579947566716362419332475456936059594
463257957725215202019342885408023737346171252504751872193465932918291115825400
554572039896109454770449713982767677872363641568876892237933602384367847416100
993394826402048866453607907931388396069207119058279191102906924219567359275874
927280899437317976530420241077285648487722589199607984312236268173598812221153
741803183283870336565801224889844086477461140719606828233689882608990705850250
035543862151197292888272507352503048830445722661898019699960602157892811168160
959272481248523982364681868984515345821804136518014282390899422121600303622249
584849874366869050437674713917516530094378248623077352774274922029427243777356
298907246474600151944991253796482408036698859578828744421024908021988571593874
248920054735115720703462390953804462472029094096042662795624929525899112060875
396833708221108296427018008146379152840882063407245267842124503958287257148822
362523367544552537789403526870823111426509608766890541161028634660301845536165
693444075116067892448939484180674377310381407163595688812733092495345001549055
847706873409066709404901142813054513366452780571561059117686400900946746567533
233521976149505991316280802462171588782407313886003533451633554511131277102309
936276937892549342808338710896907904107665345607564159723847968318910831679531
073631269402015422957448466011833350120714150987199717724149943689068761127550
889431081178561554291918796760371768311237179508624878316051886168718687588584
113797076062815917254466191753713255704623106374231613014984253047436648236341
323987987063585496625563180282748315393272085640711557241664542848848616650700
895494683145915486230861887153113046905011285559580144749465255553282309848190
721682130929715567958155296417272993223941111661172409027459779043045547021101
933143106047460089730066825061575662298933097169951810985829415928347476247336
583860105756251692623189622079871384133643580315064382105348528597055236349012
358105895500807118414978986372864519802492827073072287293357926544499785228590
819451760610822754501576704538176398819337998491288791782932609566175585615072
424129537506227638180734661358653298532147679674803542585446601542686385437403
043368414967956639290398492631310423444075895239030652060796293578428711738585
071475932083878707989210809539867541093707764924525923036347103116267715093003
705427191924012198649532683556354595307046814066408328609684418575703815675684
783001426531294075623798145483929607131808237089690450933444745634856029086706
066946554582640194931351925532116367206484434432400330157629720800407075160138
891285679977737728450806623105566603049330431281682938214338636619536348735293
659597012230063431098656342064963744100679577802615592568060003138574527314828
135411946056721319627280866824454452560025149092629457122209298106420323508915
815975633082390886837168255463798260348964635118707895742781169093879645938711
098408654962878960952668179431542296059535911682008665342513099183601092092082
505165558848170537464591539959009803556925248370310125530514096848621678846644
403114147194169771582960071263907664332753463051277867015252220668860792958287
349857649494780192224038211026116963821453430884711064005144748800535844797817
181974726896286220889157084937744921601961813947562524216935549621929182783404
819272964935430670063949213635056979083454196792946488450508376161680461968449
126559395571032051557472005143614513175517845660865726778472909787865082258051
397867875548158269546990309893165190227908728888485453783042582993715379365112
195509091153469795146737987027467813332714658120984239167337608015997631283140
063590094447734080584205106802811847909858453744374796401922269047291978367881
054554132353348323543504020328088829922406876718900295722913943956817223377775
028937971904637671570079163721879408981855166884444999838558531268224212220049
753350859790673051285356360056045007616168129901067994170220287389014834116007
703704690901119161607422888241274493930617127873892149151355873780850044221590
155004434999157054731621424589706295135906781229910020560148211051798423534643
655479047591222500547728502707005786294705331846685423654194664465134209650148
595584704612979818720776791081356927249232343215381043349858496445184114208228
416152935124668351509370644746973178173333217496892882112055476650917612903046
220951792304300833201653233302761805830715380858730791413918794456803747843276
426221036168648850540377075241906289419251671524645420744323106884547203234643
164770370731896203954688464403050058244154244904735380090206290096292424197245
869230738633531075129270251624497017961027892509890021488949268136165757873505
996312814982754090406377546874755708740434633327419087852288077506804079232690
406645928894638546515591369207712419192164637171014712362498800421137014006450
757522967506034353614327274637044001839646295901258679146242352041897588432183
984116639666979228888554507022837429480393176240109326983275912544494985797080
469661082132560731686282386491116113116603300728433626696651251191221361198236
572786443589350133673843258046183974111553298420466006251181317927845232640330
287385215508728805764710393356195270003830991455005085063109772493510891310340
569224512664272771657977120810644870917058999758374160341410822862564762329573
718934095575515701790836176183564158260605448249739638786126418175796945544974
522321751128397498588691182763871686158222755403485192172743109091714309350437
275973585165674860966003736285087087994813806887936393120869575531580734925338
464765610248726883910827809768447687700285202585612552922223648825069364734145
957545092204358665110794609355379541486395928702079937598023399229673475186356
413686661123693083553451752162465829074273411338362556978111311538117769010989
352397965287130238884396345668794549938445456272174451298839120337412237103672
491112834546521718910079914278894482755651486972876084349078299980843616066362
977648841680805078174835121678705814972312305430895112843670785201646182694068
254520737295322036386183377775177776922306334105123671057763263571088935780248
177795562282496560685542825127659051261019462901003210709973321554715276514902
960583300494348294751806213337401049832586408444133013755347909123029984125110
433538490504096553128405654057976543414394199438232786619108831046708113384075
639104562892416448573946840613171170399003560818392871004271485804137378516842
896848408448143458194093569705242462152922338989438100013164583205168601150426
555387850048486450879620390278790853107526215574606827205831866835167976019318
615777976008557877763420913710575817296670326619387650799501816414925127908650
566832761789155311686600497429296444458671245735285844968151015166259576439899
257126028142225401795680562902463187531614263241173289044875826578053691033854
061683584168730409309046611578832631723386003417255602931473403102898545743376
147606688894661970182790216349086419768484541843104681272597392396643280089031
083240087354964015887244704446085812412114250918032782188647465954944184218662
893205480430183389111242655328333113673564460461420898357769675952075209779273
198018406349877206339789431199159906398758474592255264566275041408598647658275
258531046964090144444078997637083359321362980482773046783177587469108868268241
018487469858528360631449309937997745166980624211224888199406193554822601352253
994941561863815214164398326878649124502549538018431175273495642708873060637627
108756934362132050599233000302790932259855256114868025274600622877517878789939
627323514848736004943186059994784157224421502854117082515268583666868830625078
537852957334853375749691768893497627284724147394596361310438339075310974077124
673639849051461578164007752522575820492483696795744868485311701427810602006814
386710198440438184604232232528446992694925166602453208521600803532181852012552
370674258616431733645755478690689220901052285904242981507910061595603702776623
620272985627820388671990991688221539686357893946803540064490667304084063204133
709703500642926183019087140046441001143081493866647183835798105883643390332947
305454005160746822221264017296259146471773802531678148597937879406464257277633
148891319221146840283637332277492333063142185685222186248625636502354578888816
283318411126520271072161112463944313156126972111828214538570725555589925390662
283004670959866474462470107735106065103244166834433651121919711844098145487929
818749515301719075406568677592416646574492311660613097986917221543699876959735
399005813813519502376431366113083998023215624176448673148047669768582250469767
764369143450821793222491658994270436380789317942651449625962941994350932260980
746037248126830420528489710216805266847647420905268859502023659067597345557846
308895946522575471751481192022155491364973681009682981581136843982718401985734
043001188988277165513554301562127507948373084845046132330078339212830254990664
575958470627735960551993703971207568045209042759729620795793167839068697324165
168604868028688840498443800376159714246602332140718967324939866842809391243009
599693482080551255939746678370536389861439398181737559367946680298758496066012
251621267036134963007128571692846907175569623148200004578919476411787782307274
958287088500903987629376010418592963559644618161661093232347803560008600760255
394904542224969018287929096441157849418475422727992149490239381089329270054115
126135890190732129106659351319077879318683669116946450947941001580837643532649
740160365139579269842538889829813102140311637810705630984248291308866333289344
565008111644019729241233585432460848052678029662538728110291560693393572968159
372778224530016014836385907729624950154245293730068623575542986463312762340536
150156873711790868368644865543454641345769702444905636656428844745095861631856
646343731859030414203305676372622212158899404256108244215118966986922347201551
159271194201251811441571775439772236719290927166845945078983806093470831552304
629570269019344613035584829354222982631106874746521282277547752313844610426503
545051402986138781234871148028667705297590288929477582828260073952043716105088
513981134598776299741087771642437207197387597091990588965830110808336468410785
730738452900298543835474398947721546108368582366722867256231637219212466198900
754374898393600635767730575927270235508309347379519482764865338070065737044482
799652580650619374233092767934435311092427425690206394510369944775343705012992
532036711012962108989997407564157237648839637655349110469888167011272641674635
904874015500332154938641416258574549030413385855933169880311720097308606486398
720256401432883698420027996341914309840674215519815544394321829571924762072957
997295988487642178174184911482463735801163089295090841208109341153254551252855
731790805442284557631945288090019602404783567452950605691600194474775937521733
001866585188486017405549529297336830410941111867778592394359657668803295107753
643387081287356500509322465839018351505669600459035766068519427007051433009231
351865832514065157499472834517440960183392409787486782206540776650090443911495
776317658420615404699759537094034931376788611269328469445232151625974575530234
734652892189073987386538300451289923205796245561946029359727971525215595640043
503825305654041692588607389417323722607360051484700407895702470645170152178322
201646810853166299509762905762790131955150543050498431460353288517860649702217
778736770495419235605914894712578315062178070115037904667504020593291864744706
243778446999072318236396812901248710858996971000969155911102925381782593899591
350994000197583000688874015550062501759764943216204871703910384409050319818167
770385358563666054919679976047973453594977278390851973657990853994422105252283
856558362732218792662877268099990799729341477966012588540080259734660462325465
415899196773046190760075927279708676349235285297965875993028361411737258570531
911884969802541159908614272307530334840381009390605354433980219531960743132794
186892153391840731753456760156568653038705705527329165900896242886168277911929
464129946290252281137704628576199030687791915181874876374773157436601941335092
189354498406067551396597276350641098053555285094610386783880197607656983271555
843645440664772340169449633078034641440480838418327962418653759903448625600651
191635708383013689156074753133428764474351757165367573849498356910653317726394
529619367219530301478257176111681541750476900646506669023402601307926068127357
107366889374995025423462931330921839731985069577971038158779660677330592325565
894073009062431049427548767971035775447404965700811869336866056089021621794138
516248208731647838005849887435551765199090553544743926275974620999249886506488
976945125269575167896607546041928058948180214630510428322340508408531611099826
304368250361298862088982444534935804618494873037131313627436243661462415710359
548941879101739604640566169858306926441738356606007549551721145776387044891299
960022647273962465702150255438493976417643779499859844709119424369340975211244
580040364207015776763576263046670249614248279785210684283315782535873866239457
650652256173543989530036012700248115894127518240800521305622105343541605277262
819198703366064352129699442862912860035374192548940676630186053463326993196756
181762675656393205498824221883615242346213405243880131502056280756805058042680
094831897019878724134745650354170907014248086569360111494601742641534024655150
012141130487942836653208390127853032665183868702365301259664066608381865195232
896062518957939489390051594167537476310359676722508898249939477715536245929168
303079826588450269000237213041108283616502137201843066628762975219604417516921
903039534129189744810460829291104642040958311784307731966846396613015702596618
679484258929001399634632198514042294420292318785184253941237981199407306595468
485955728695222175841184817119600560928367345040966344532093062670176757185529
864933027217771806770150893842790547984405227863487676826182394799586438458658
543157312448782156558333134252133356465113648562956244615841526715255872867448
724801946047403331907746530892613146174061999692521802716058020112737606632017
785525441765155594139101288125328912564551076727124330160597820328112810420867
579610143195291356304555334858966710595213846756376320836194458044152987590843
030975759947959457478695360879385227595606783075665052173529258645720989912192
226194259794449835616469240448837888043848705786433230832407214864777246607733
690469429977212678296378681215313754375144366712224687946693712132081891923698
768464491267532758633728835998369536252845257759437343261754004373414745643375
964107663716086668135708208762285834502409688118478658704643715330764364569033
995071658069655603658037872445334379044658459896052818855541039094718961160779
881575809296022410562246921598617738347007380855863219878791129336876088261637
779232500304208895905353741712207530209624999155570624006492777769190248182985
680876100777396687498782671664346965105164153778996744201640005410783383574320
393335315666847601830348586244151622131382763839833637104460165103611160631795
503363754922575960768077462479521492146362462080048157324305345045387663616758
846513035127837917126467230534197519125450966720470106263225881236051682792699
660020006422902621241583240065839521252104375090275218667716079806513430625205
859076038416612709506735420260210646578104759787942733609719337992286945126431
835709396875479489325269877997243023093538794101236240838061469614196264262936
515482854012574946648417636540570770421858480587103782317144794921975843490305
278218360431565800363129970006148639492200395742351579227723068829885917516730
085876017747979143292586379968592335447390892316598788059325606140434064261100
052284205362756161148583670051189043777504613428375210020093028206080733803153
620937576854645731514214274356408967620168402218952879152525587068505820353133
987249522806576570439815306646406622956566487615453889056486484930046651591561
426299513154835115669404387025959452685616205806225023893839517415211195237097
119620930064950966908995097208257421430652579858855797197748274324542579801877
981783099191841437216466322548041141119989466378687130565476473622184942518042
987880437689525927462634404079397462918771221115203910230757673346485352043234
268025424920613112602604255240207566817103130076137219930194854683144230674836
458416557633062269215931514618416575316260379865244655173353857878617281722234
673979511607170879123886964708466828931496548605938292468639661144837976618168
345664378766134661148530451352043250534949224259585021114300742576753659509952
010609027314443359087156008845077301468198175144096548503028071102558470934105
846457811474205790810017927963022481330781219697287684599684054831268150837013
574714402872920909169890891002141826772411940036816861772077893704513975421752
991128787308433972022838270517212002464553113891479397624351926830222711361143
900114066673805419209700906785274476564157250207389840053572043528186383344099
393774683602296753677434133312242390265212860922535542044167575351596462495533
692335817705799006476995269543494320582639021566446246594498778451471315843801
230715733463103465426024189832565629684924751905040326256879232409649057268979
098070118800043806794071459386561021763773969063621114362697175594096964285329
480056693343495654130039307375191876696689880975919182051090842395136796326120
746033096759105347543204781961276021174451140969483259100258763971155191078166
931656922390340061738975478611099153037845682898320469167542935739777566310066
219128763404329207615401393522792587956122585689789507507830120104512599154221
399735047217575864797115732133435440511062259468519186652226741170713342274055
245256725064342071643950481276866230304283697971578469470725929487186575764786
429495638730722249999057543287890293652963967665201094964440949097049071287093
226368514750194357171573819499194233989180351522883008769098048831107043319232
104363187313294171376062222179033580332596583623345898321958772247466498121416
266810280765668866829386605290941074878929690713072217951140993518159994472849
545811743033022917438858515411073385538360275469176093350918462544952120695503
434187185809308994665089408515323057834284373374329201325501529994191925493932
981792776859511317982846946200040522563063081583388401792478762635053961401785
515552735904648961519234101605569488104796521689138377803284453299124503487560
847745926504040705716179508272324461018190888305344332995210120775759267036343
096421540564805441702961938105759596809420368848977775832325715013481523571106
053840856767442561105552040654548339272760718303526064514038780417922917873671
303094661944576125390486197535781802780774328439668523676010622961067691365209
148298196489382428572800796856454869038198155406333484658946005538509281171776
985237555151759121645672616682496128068656251679955274337856740314647758167609
656306200318109925433850466717859844279579547932973088773583047667547957234903
795541319026377024074468337674426485060595538304617476631722704575206308297045
806257529024901789025954271799848795393158688975931850130335876544216978396603
158734750985040916034812530202792416929416320166473828496863396125419614963734
301424975795716228852904032243153339722504186545022477276506266237011403712271
952146813273241153722529303229924956990624258967451417042287515744809709193971
326401942168773537340914903218256312751391601090726271286803565310020296681106
657169643963202813424977919195969444361890267130985559783206389543413609900645
087272580624671105161743099504255000302445300849990789154281431222750583161545
156830029274534574279288976730440540038698830700664967619016203578946444747320
022341957720058020810050343603869035926827876050205587011911255754100521733912
259036472035060404021860205523640695684065960078711185084047749813629364014976
041809608890497632940325315008910931759790070012022157554431142324025953538970
622704082605707425054052034626774778974324259563352927687039445234612670500952
975141281530179396934247270472840831382854956364702201124590712667087937087264
597293648002669857826061345056503303980288331490600568929279553569646051863236
520430406125268299221015717701765206573181346550955559361687289969164900023237
075840514492746278965721290483953349911362949322951974423385589506787840760627
814664435338433462980579612130230013881442400842335410118211226001363214285340
773248018409277018290023699840178581547815153157973325483719716214945533761416
253380282954651853171464424240356006756678862019838291696514158072317280996750
008072560552648133369889146052815488192026740344882405227081223192124992119269
785709023357050967960894394341623230282898201577650895844173476366040961143459
630902268933644857906954262551769145677374075724630348089491160637147245543865
955872518431243587178986085461783820172620377618238834523309647178969959497205
521263789887477000280720452605224318157606440537645068515990501835185503698292
070856801986234964312084307449291197661886467186250631835844351092723000085568
340546380505370400594003200423710580087834506282704091623335263729666913591994
813101351434020811869859763875908913098756331832110646533611787867362881652079
437829993149915061032208661436159162601466104763405771108450553260286769722531
971555298606005224430152385653093565598325033533579413072015272976075412064359
005493356375711406763089073218331559077762062894869435347281649735607666830436
535623685059581944029789504817199488111424480148699446335747851518241549309311
082816392674003010081863408607282086134373610074170313023698157748974443015498
585415596292636857046644915476527433984288225925094878324086430044968632714698
712165453181148803622756624018928318637294302298655321270557359368073068623485
478597100444244485286266367992564256102857070714434668859750289042861119387977
825199769307094791133169837663410887351834263389987990506896969438802767685737
479080124990648230979842735491598848048371077098927168742928229006022977310864
951882427814715072041593840481820039772705030107016526964071461271630147211631
213400827271768176973875912654151423581022210504635876031747344144576037406170
098573761060453606308052874665130339618409214030942869492053357781343686606788
091885922244298749230080040962242517915591173126696898573968368327494952982062
450683849216164722794003566679255390169869707849968963691805894721984739550303
342121300266582112389745989345391418243537279171096132332488258186471378027745
182858010885679226000444859324949924188019051281454799757089790846677488220631
325311053421509743184208755954966385949195031326826113872447061048782737614279
312460773172494697108992404044384648220685011075944763765617574228949401187566
077831446706796511501749585087514666294985241504042042190608766412504130321791
409219250237415454601679417487078718750828111782909251621029911662833362112951
751519952597783203965233543963197180532024140169492216841670269644754881269247
249745582587424492194357557265834571920850303884756761234352287714731870195120
414509933921905726061141946927902863021621734408883752235338381599655216608610
416051220092477622908230946769226920364998285925029554534915540430714765423664
922606337446088511544782729362403626822090365728577741140265151380594566521701
225598019496779977119605695739199704662857806180145474360075399983035899893233
736404123176049487600276229675484024327434052952968277336435489230820221966832
512791374132661505807208602511858004271882173465532483321945343467837815341161
052329553667200388047431394222410581169775971875921634227070940164992358682837
416681741374301726675911589874457272000353081676060697478255437773271916417736
741819101409253752095988766760229760513417346620644510910994963347967151635644
866207155119826413926340012131817359844594669213256655501053116906355551977755
197034192314710768567383974205929463859018358353716004682857278918374414286458
470448522118008401491270820197638058602987679988015468253978194269023743430012
072070918072280178837296216565784025516570573180935296361178105864735783833147
492456488670405565293575822685052675559503394582451919649815990737945911300855
200921265163793902454068588290951789603611935227082894992921654236127878061627
776918711289320361930982183591840677770420487274841976454971570346815853857455
609661448107682789243896036311973629357578716277211042173931916510453829307190
136765770724298982246155658982864152633645057295799200238982430807044480569301
860390601686229421554433015917766179322919163289115412629880061437187036718655
147411659142642667531678951272291828566473266682687111076824921785146779364504
104405775181228700420847971327976919816812576067451730948035314990652152444734
116561341172979348553407697187815068123556288469575639645883342121981469353279
773267642332169557379865080322845213150766318298469047850820281693468573508178
369653339676411039384744423638628790659930010559483722782958165351971220573451
854469157389795398492912100006135890539143018085930764333576561946691436391975
846363378516362571221401661136285629239541928366336615345936823695249813629223
805010475372015998641227341842466367599901390443856409726520701213204220535727
758242642098349472913378245209642469097949857715153179742284489085509343371810
260772367068563689988697304227404988337781278758576936298163901111151494424299
370145770882601251597376202516633861943494794114088516651281345122603564596634
658651994517907555514690904311637495789182887297151771801087145922587205130295
319543765776462118410082904078978685015435130970321620177618628831227193171895
119799421269102790057202508238702112666110686516096800431751704486933680712011
117462286981313250426039641633107606398695907784048514379179753785847905788491
449709800372750748684539875169901245888141137100283356744740041785237599526898
874312982111992703596367720193824899584911802117023803314894642025458306439806
530262607726046701493683315351205497874408922849235526133347355041916309853605
175977557841240487889141835850043750727218831459282038647993704155967857566269
839170002360326179416643858395861628463496285010912632260585431793019163323602
196787224987944222372267808816039515481078553808352899947293756287620034449153
792801870716353351962311562387094876215695021598979028509454787938046597111896
535594301850838343442521416160339897075195703836665768775515149575016195215672
671932313765969592022499978349268126386357887539539673058209323030690123461619
901662315311719395761030364707812947494555295070283869453528658904007048417957
736355669361256012913387802731618824329419411030459491392996621026808962453811
682889195920115223392115306427193880485154811142443220036772258645644456728094
292235724840650099084198634267049400122451386739075001670439515178395763882876
081923353252956102094578890721910692795316386136733136015826961665646223536685
306395890369399413324992856433347898234921493371761290327814999750773608704030
140690115252284252171303752702704926914223216288366142226147020844328594963170
509942916211020820080935410027998240376361183941095499977156588364190762143822
612051089692195715226641604926185199683279562909014071338559060893446730616969
872510451085070831760676903829267612641812356245691438405367951900048731694668
742508457110705708490002687859615986673004759690885853919529467636714087139432
872983901871836144130312606782528118445272712110458826277865066419875374796254
266529276466928165337436705158187783019999480143149324381303187046434989458688
604806664690251925779466480278998076817757346543261822005683451870098416282756
240126523486004812109850292999725513438321847061440219436696970934377451433475
887934427897947306774991224205909361725525774324883456243784410990364811094769
223583639127360929557571527709756297932707016258346972995968963199106026756705
757844146109060199157872590054798790241653718829458028245793779371668040550311
635302583346926396639599196533523770347714595239358622586554425412834688296941
865821250708356102803311341388113167458751261948972971978624576404234097015859
862201694583234349305536532627364125430287131667408241402572373068526370352395
490101180779289552622508905277930654872852017801045736787769090989363220328996
522261839479561323510585986737060775325822252074919093408487122130050487187408
959440349731235995495550422692425547829250679663303397560382156674306434700588
257793123539385405450355938486108552283052636539940039590726362473471849085818
451145927666664546632473282761365394847210440620180185044506455680632858205000
102058396523313726141655186321306233951205607075266928606932524860255759255661
763012099438967917264319383499382875545964691838650048531709159972671250079485
375837813850510601728749302494874904236091433341839922299535160446818436714802
365503132915000076917802269615428352493522358879889293149143740677001277011028
755317506215197833514571453628827413400624013514221072864269686457038911231844
042165199959229436924373530025329765498812588882033444194823438845178844708527
076246931376131734673930364521213444533941935433006464899900263049411024865502
181189712737318493868508926823814607791209738529483894062160454935505624246351
445787393359556187439868429609604281981521726366196209978746869986284456666555
925199437271278974230680702646476873735748696008601207089022655842755691636906
343484682048054646497738442162857182737305540276149550781834082219779536549640
199757563949993284635784635965831262559521284387258758408344922891719254313092
654192451739536178669491156632437561643141877392861995812495392019501071166977
252654885908630168732462373021786747030457197827294841456231526125393459503054
455314906588365715172137976448982124314824759842371891256462707549398693880730
274516139280583770999994800432804547245899249787281285903469169437790573153573
473557457511649479441505509158625399120371614374691884189647677211391278081286
661227176576677756905950978846360836576847574395767115896996139375144845536995
800529464359086858604383244023962160734485607749798584956607999572788085243656
896183105776950417048437871044869441891300003655661607583531246061795575587862
967670081535045961306282457182080157820663853132116310374472370785810507116812
150322263268993046714538487194138274079754543459427918554735318022765937434216
990433990271164326341404491419978453390762781780086390340619847701454235392857
008479152489490045550205000567021961647558810020506065466804952576376118942605
528196689303090389682026743873509607087817454752706420574953722771575385992869
571425053643871523284690433729866294865741143252766276114691935437684213808210
889870153148567580343703558224156911388336968516165876932189256847563675719084
493458735185836960045209133189610659586878524727714642720734558384461567422232
326977415858252747361444653069346366930556311629611006246230698302324017797363
900074759700302055943773063468123700307988561276756532926663750819460007296358
683956438122366295560526980929486188931850315085303700381024312408253114134439
183250129288873519960540933886327411363060876859588693435731901579449344649298
118693974053978458871745570670630666024105630207095626303908389316415862241737
995236381866998930411157293744177594357663064398251435746869388682298137064371
099922879835710322753673621558983270761474403238931764345475728156984909384845
560102508909285949687120088662085967336684222174631716604154329198698250871008
093280886979722753303082524400811667481331140127872841539176406437808538569697
670484228801856988932869180983857552626203032315628076993615878304710229664174
030988754441155176693099434470055819770406348122926475660781843024581797217257
540832740032469702882438686627350126532245526562287301176798190671181179871107
623099890291317859264381571414444951325584453297554031957195940388668693379267
738494438609739930205597313393469092789722507254264633995817865782860716922842
137113247555484318757351323824603189691280926157998804195993724155567395160728
454658679725955632383497789761079793892376027882907437096799477926730849787109
345487358576406650571011669285071007937944648865373173461006895998443599343557
597073246886775844631801955918297376497534000185386347466856443581349965737325
189933046445570670678999928209016204954163413560358491540419395643530645961835
712003883447483346542994643912242203320715489687492425875872222645765633150382
639397152961656499604776781991711940173414566557598503140567247719437941697235
068648111899352692503133191644452963081012069282907408062547541670127258168857
916766081301869362055808271441484243444554824104181890237468720747379016139798
363972980802897891349279641851850443505165201410190826505331376563582183194114
053417957269992484109756763979563247152559162489129407740890251087587483435215
423225566137309238842315634928090479553230046787888887799128572937041613434098
385091396748364663135762748075852433247328999763024262291405831693878717271716
197661218246159822635054893999155471448887530277397717016566426695308299303133
166044760142590573948292241513495690837364709491756120500318004706295372939085
305612601426507208528031592997778079348973183166849988567163493333049276080710
428327801609412466586725293887303674470032197436425187207863055379825607392811
628925632998735888812007828328511760961583530199995412896654665010711759341895
491291957828512972951961208063508536300709093507959896040445040970868828092791
391018116691600937559433474501259094779053581395089576743511178481693488473486
773084842920690613639028353465223656140799319018541825877109162896534341828020
236026286819219885225932953084512099907036815908836372559738002217358019835597
284761189049397970998132650153566829922630153468546185945170067462276120039913
688830977758430991746871554121526399935994326987595530764044491860153966784141
063442620139167862348418931192165835643494851911339493287701680248138594646700
476949805825796376927067311456983233018781469628516108874247366016528765892664
659754866041575529599362497139306252702263579214738035574876336640794824443470
271085328160479614769155965886542440346527482173722385768064809067416104122420
710237993879260161196389739823282976476622447049593113235743347770300382733638
027887609069380516958440104792734649783137765622569355242681166357266809170231
545095137064040466847591093040151595472460231878309425422373289579759244262663
167244126054806324628335958317544360450433835391940319287082376053502151584116
481752922340375999347454436199732280869347569610674876057106930256239749215885
724410740594302948499458669988738239738173811480604985926139575766538157539049
578591161966623920386919884514580820855934635704815012753876646950050921685393
556281340269364961320813721906231031423451817552799374292857688922660420055623
308900919804690569744008500156090653305422509222931835372028106063129852525852
477762733565454797111632550787841497465827585452569220500519455081077288839952
687430386184605592365951988178766226856554212328858436389706097779920847191443
166105973217014669638385924097984760823300175914697944543962470393463562061931
576765476177908417704254741382893963977739416194385588635781650709249488568892
369036203439813763273515479318940478023674512083064341060184865868426700766801
869375651809955071685552846012931145001277259421746374866821918231915120330198
032453793967899339703101174296600564990909165540191016369383030482733039643214
435590401622098891683664381067075616777533870336538018622239935707695168489313
553073162017083896190395815543609255640436340956237730846941225236121347336202
613060909561231329371929055472493563334056960387739017949312052935806315016203
929180961432869606572617671468738885469398264267848558987994030594028920693841
616552070165689221476957640860373876558419410494342868839882900108411353954563
453522952322711087841786516386774815800665522210446543697025666929739150071885
085773607092718451259645481281530195716501467335220095275553621155402231321152
751244534845877136339552701809126243440894889778280959957223125406529813602135
215348328746837663365202069213852360592130487832777891164305363635409763820944
341825546224738509449584171560206321911973625782445928093886701649049908372210
903645432758461183787820000832486248320277467943150376074373769851722977502677
274704763538461390007850101881250162036374722818470743091667577818304013111260
825553241964199069964645399957541048984557618820751637957907103694367873856711
634524885605308562043370332638896351379498247270266549247131907207559064984737
723371704306897899369031361049995303330972818917173137479599306161169042650745
087718147079889717483088145230685468673397987524558664612709581141873790616657
526777351063453057211925032079894556606328431428879130759447090882376267066567
137300273852050167782024934863394979819410099531422090198748878207183519163214
601830564772392470135480300429078965111986667314763835856568236846989264254076
114223837120256107149464637075951936537920144303735129090831994916356441646285
972630249500888664369564352390082013901165762901394022021851474943300296315851
014009339930203300684146713078629303059473142993396096299797690522339363480947
090021344037288313278651499714158086151443827598124459959799304972430759880211
017454290296987337172440702648578558300246704483884516967263751701313925600473
403635422615440058864111594815477085542822461050356622358056560424964536684161
663076060201490493206228655433189379104619970597247032728807658753989004950255
100883482765328648726371642482367397539956855167953648520614228078559428463794
744892700976820188192562910459376453068704787001264180006085303953754233355469
153964605620458702742645099147020556179807513083862596549578314681763592295602
892035900231434229188598777877125720195882126842507785076440575178138140968506
903392163876334387489891174786308997960329489849292429857027571668499577687583
988500612638472154185237761738491506017054611312814480388917151830472103217885
625456359492436885362779379323354733342401223062221997950065290994472454680141
050734224547900301858934035788973419554961936944440780491230630490222195063123
098659382393245533227480659209157359614635625690793113054391504485753513602950
438129998122884957235843508557431681239326301479285791431780886032264978860086
270641211884746441802522072669124215062446056427530524063486796957272320531613
040321815660364731009596170953621369563250600459840811367165707267598619970723
068937195694467966689355466847361076060689739265622463238911209139884928338747
257196886441456613835150391292798174609452570471369126715802509108239769383011
726961077353882780351933858669215983963225442242470489698659935785545295587799
929034384690250534399400446488639868457934512863697779102899622006534870557261
937534969663077767387837305345145294899273827244983825779380857916990035849155
028898678991420906168979672937536607721713596350760232949189840935319287140889
637642296992267569391692915969080715290799663087220722250719612826688153266603
180660362663306977168723049324874603302900726262387263572617877360962146498719
324037861997464994761513407429533240825490131213266920300530314881574923590187
730936425607507706536149267608795546857189027129031255186333474967901586156499
305776983649752081608688788378512121286214086066274351558296918730408696406543
710365093090692633325600784678576021238969037592703925479977606112061441421666
053941522412199050077418253785134853629582852441084825341283431653161339973224
302167612650586169078721519276884262767133372413296272198759365510940868789036
971568035985579400214231903836878165012041555555823644706854404593765249791083
420504559741630231669826490146175264655710923148471890445631398348519481340513
574578652715436732531568541027378859889948493164021208066858258545914763055426
405620319471586748928129392009797599285958776876337389434973508845131238824860
101379219130138393181440986268398651892515827240985298002588317751060334948382
908393113666345652293687409087867337040272716223660250770920883306461071812489
221011740435473879822439442995403897833287052769098896591414769157146810332423
219670596851252673216145291490633484057417483245477882518840424875283509666688
072476011629212445171302727712852452307264621868982173550133214884370423326782
765946145281491528663886278840916139908285074677928910836477504878541672041868
783085348177697526565305880984791637378254780975459970876066430100199078445599
540052653446756676582953771306210739276527584877059507082595376446731058018781
512978663765461711385635136732224603418948668066560572025630467528468279246201
792807248185815170190384270466496180639693543970320129840841362050705455950204
497001230634917110055090517913242355143555514453690753671955136735261221925453
232500575982234517824038495980098561824272604650242354417396024601184282389940
205037784969367287697200192419786679150783599279400488189461997298870280770684
335219966416381356850715994471277117670533537968699611992481917038415148178972
153050090604798286710187095131897708662632512886594306762333758789418922683707
653704675533834830766898516046434572589724201361484724924017092301058602628543
345443568187794031626225159429517626170280981999355655097608540290674126192229
633960250773122970461031324285789157193468809644134771432008238463668741630746
945417277409921645578158249179115896970497808342966124718627856141321509185328
131683980475025738484838056865927949171914895612066924647134265026197259304147
934754516004836777301233751998760521005583422407703795886967357983593149156133
564808206530275512317789666924520541770595236699897548061496800708206346788171
781678996484818569427305253494817429124030578143348697608013274956641597202941
987685582724939109785967282952661741444712936955926135039286456298548702287851
761526213162497185968441475553786615007390896089348899723174894180716816158988
628587232109330493486594037734890824502946715412741499384174760779371199166336
330705316142631854401771013632603453430071571922104287411746398795150466035235
553916924293775317037631318913704137040652379717051981959373443751767760080277
006411988732541614722050002493580666822468429719436218148782126731884278150860
026574004391805791862986483069126497808725286151294876436197414406685154463640
997846593703682558791313263853687067560529430436166706824048343972929569128669
690460971130065002763149838704005193938564241040898600043493345509676558564667
792331670660490695054956172450648691352468581851145573107336400338637135708830
179444540663676150866396755919287907013481547589946742748694071645156752895766
260922105159010869048186990491384228853508630821292621606955594642781953164664
100261727318015781817091184398106637151108415095213584008134360235432228462273
843606730596453147372299324746683603759724200839941459105714224373124408707784
021869135574246723745041821798143747726113893231908178964672027761281329073312
203733410003620946570464397439688280808857255545138162565851487219597838570580
203601787871540814420095506091882179015657870182746167457479421282635855441522
663876878419626071072480004148924749273653974330542222302068707866359160259298
710098743367528606077613474682213071119476507342215161805752693868169383247908
743124010238661845964995528303806063111271174728807934863263288729315310558094
685144497399665321598883170717845681922400136106019037139136707807500459633010
356500522413204511279833911098911049949575598950859116333321102638717351327539
369727942561359120011730387076944526536691966647816356685586728715883930609116
411551810205337620002659484809454494778230325645935983536950016304299205634147
127775167738705530964617835740409817104160606548897149709446177560629006470704
871033542907299331635828371538511068923787345948651089705086819127872456622886
005705265043754895462032944875129860774942174515057527779211855790315019832312
671270046224363321883500876445319678562829028975656520641043214948549464930709
860162878154003538435905156044147096710819944829094302918268748767872025150292
115425622206907436584228400777445602722036197343016708886259274875845292159315
572536359246113065451912928808365119619559286968443937716111461119051870548740
612811587235170672974225043731797235057104341251257826348346546753404331309882
444910537036206091781650604103201474538800075132259268227257965236644815883822
250054921850916300575932021955198263862886521289594880561173483445448155886111
766175342615403077527490361107088686520168670833573813831940010390144744212164
365305303253484432011589500067781114774784643787811846712515310122498995494580
156175111263087344284595948974217804407975264502842664490729992102733847562896
087870969744164367736378941639323788790514665236020659955507066743522879376893
236116120587956985551184650024374260745378726825679542476870390751397999349106
661457674808478254725753099782032047675080398760059874925700032856819510509896
985340170809539568684153295222441128268046321896023036830983035482564722556905
727713625266447367073627784844136118108374947937759585667031464238623074910719
268258458405200244168703382630696727611548754542851667660090710988262588078105
970076549488502638229827332101167644384402302820997957461628168690127446798201
085976361424886979188783760644167781624993542925121138733587195791137878249939
867389291918306724097040625966890470048867266755328691506514136059657771468320
001170248703380086629303673669805709849461352268191703051750694478306300632469
282551735898842236796759199356848353719602544348906022673070875537849758335861
825854699104590285194182434686883199944661688459866485975484104800216012969607
329608001126694740700726110954381193646704388008288399561325647158988161500431
684254021648712335422884315175157541145189785545852823518832792518903316613731
209972535940927563102029327783641017357266278277018613797651539808762900798195
537475034721216271244779317878799574257400674012261469124116413532758692882493
302240390022945069042994288310075771068834890585904018202749467094921446811064
448368443480827613534839295162670124003942053118133246894502185077629329546542
730400754763705509706157943210093297682581631914747690492879663120939403652457
371090614581723719702042451533362650194094029840048673806415506628592467371486
561776065299615897993028836114482689751764779228056110173044411246949554778610
305356566827327967351228168925079564135301912678288093839741684732042213124680
287507772355530296632921018388011522342650457269880884605779090114806233552974
396540272223075641456740628759473415652451138441008755698796889582614882111476
547320361360607877913134732588829207805063251234262446711642715095515433837714
535762567969171635224815596931372221726845098618088301502217710602508920679820
033030727287806362035264978881024541360079016277132514015528678701008558832263
027938069959221111212412002022638822218301514255659694689236822817121847839531
762965992126332846925097611789776237064674217827746195853412540810162008460988
411600615122861825686632465501263486267815559834762053453201113492782531955181
840174653484622254257393935977750971418577802605116910734836774916545716051604
395230076430971369609611957534537602721975555947268293338267866678451024786789
078186085953096001956841538688906837557371881850394928729711021098925167283274
561126614819411871312781024938208974570538612507160796198944514579650854593684
440526093103615102948514299384087041612690789280800616285439886152443160181925
911549890545106026790902772717207350320061192669885591903360913074982673694555
637399970811119656570094437747356224201849119858704431675666551386181069641595
866791325550136340327526200508045203629408729752336812115334122060306177777276
657806951943055936284839663837668782082306181708702072954121077951346776184133
209707009283708926896156733767060909806981551456712557735977273141736291389412
811784458130223402962086431836849458356971667533938909317673574267468605360742
319404571134102235983858669833440144217898406597125398221913608881657001528826
563999468063177190913406124030723051633077739247294825531804846765920878127367
082018301689206259079789237466864285935448734250278915414947474424265648568790
230277881556234963699176268441190427932633843213629426703122743577580714095054
387602959458133333328164388192938106292059981551364555896141687407464163164830
868488076459431464909483265684562996528885266610808671910038920512370578461512
799223730066889445501535817480438897370451997623614272228811443643678733687848
390527390120386922787512025287682903176711733020188738304299143309141870401928
881058890560716172989485561778014927201016248637792120610076432162792488085926
760684872575760222825806071705327372767581701214831779030926532492427642326149
017102655208260073581076519382605241677447155437421385985620012940917098766648
818971859864941419331013288486996658342033286114625728211067149379362973309455
076431280962928689012383295286299045773857751960036550670031132391020977356190
567126050154010165977018376499801361889352367915007296937080792732279723201094
268269977804948826823226950520489561996483093574190783621745994139603605989582
416759851315719638887832084219063942986113707858251790267935691650078022762446
179677630026510298360096450528149676862400914094995569182482331504205225522865
877380273812030054569605858663365521245668503393503061056616643643411097352711
109685177676409637123866032810889415666436661631423563595085424547021182859997
618072585948334168006743326678803033416442336350919555823332009391465335363614
842744677256767852691774397867171536657225894767952915906441116313855407000429
456820482290485463998400557380322089617892420089572255492082571981964403555243
284773222702128574623576663428819619368757788571962573331754850471093186571576
776751897007823621950576487532684053542892116782110750517706906547679092239375
955411476778648344471354968737479002571491523565576041632069535284040398466050
206878971073140288088797819954720257389902261221895807408810828712458803001069
246811559993425402300887922064215321842466451952635581826328310805429050652301
881631578615168794026353716698337859998800085847512843650540857315559776278176
787753009819756109217079760887781660325246428710969499705751002399334373003033
158025300234178597121754403669973993867170854963904683380057398071965380337560
386429660140984514262705967887745465515703113666332823976000194031545444471489
115140887394530875323989580298839195682936307823239668039556133499766563292713
357462119663127660157688717875159587293112639764350616468076853955103584780990
684791956785267194227936361800289516019111074562027193023743204333424472342840
696168471779074770583945885683026420028530170078223014653617450239884344763386
839475258826042438253843961548685870268555756056659656729147685181093608678657
448688492325751645486632166454897997792406799322107762260647472742497392000502
869752046352088308873535859963598841411843776709122326448426604725556186811438
336161960164783125343211242444038219045747656868549055063640992009474181419865
970748928030444647432353600284363246021184727401531109347209982044491063829829
643010323371060973999512100236290057316493882196815396921522709290837674200631
079026262489630226344791443897570693087015381408478094303239875963411666370907
147856646099675436048227927671308979311132070863850488980334611360090147547718
011238778024986411336986816842047513711326078786082906687268337590891439477364
947631236991287883751645309216647881186088805489767555513084250398673880802154
056213757990281507871252908013501046209525635013464524940942035963548465835984
564488154183474042097907612286856496578280009768253902268453900834915606284318
358532718137554492845554407135769576748931372996064465670941810933307711993691
303502977450343613608340384854061993844358884046444942354338959267225628733343
727845017833044719118617954540545511508700365869285697426881177748979243897444
697768907975157511172969774329337682768671586247061191117233978654838772698732
504179703236348802246458941563298116441220993730178363272838892755443489721650
965114696257964218342478488167166880984561838570233121731731543609263600739138
259824349299231897719418303174614663970574406114843721629480451497949732820091
346945270283673259371568128364136755063866065039855630392085927088321211609785
757265266425771148849049092250491614901846064558694583674335167100363680693121
569944714891665820123408649194820360026961167053262030300363893444572023896021
840744510756993835720087694679553721572098509375665528119515717758633595972751
096051280459495113362331020653507084585134186402888827089821685446982538240061
801586398849652024820209443831880061706251243098736470885288579343086891164094
612960699315786556119636016343254797017894920724459586915606887550965447935526
006180012721705325810867248810590804034942065933352191265464709077085304185892
010825593141580868603704953983599163432892112871753917089691616781801912969345
554765786348682809170006106805395884586220183394102660899537167227750017608645
885988765933241061413797181459556441412605588850890880160120446612568458066636
047854794272354193183592585174764506950087099073907107672111009611849166346222
245015178171677687462143791527185216743332125844186933309456111016763613219954
115756660545556918805421980107255914811442020801491672930951423453382596074204
829641300955964720344381990018646922570943256972238977217705345003316673008228
801338777771400622337626105872257141373433875681072640909562788615387207788828
144805449992519117676966853958609235430848937144948350585103241676024437401319
016172714542398909856059225181239225191606380361106157462763966690006209670947
237799699877022750472374104320190238549864528219270759877984055223562798776433
809742816059818154090291137699061686418665017572798603680267832451747503575171
881037221527006033263897081520544896965063734396551601835727274771363571686343
808441196394574356481336001237156892996287117896903806251426132233806737103100
937777376327168171378720090952420009380216608369550080681848666416409908924837
482669732597735694385807775380747661441467923811481898635751470780398801605281
163150504004211325258860470007976735288420504058848286230431637056378695360383
719875372636151726729476711236441515558480728802024721308894727996411509329275
822531060041031306026892731920058187733976042784560017253517781771779828023551
852165135699084124315465616747206454485593021900807578959475281107931808488022
279723364920633188736537818743599586841518088187479858497873466128932937243670
586467453230809979643105759392861819382871056172438778965406253242650226469239
614716952718654849987529120273161183486055666803531813969165392099921400392585
853033142735980798002753163445421134855832970137546491991145762781534853942799
204549610638395506700243000580378134613574723513438401333819155278430498964769
925661740601518150832010768771416875017586517219577755519028687856473354039186
685186660374780921447617046709060675062737434262649007029008504763614138702801
476482676073196158651515601155644385645181118372082251749785350452258631916830
738041207756360088310447984670931386150094785334099052017832891508338538665117
252277756709130718616612065720910914250179614218407158518317950837921119525541
344961514804779836920387376004515788258655077982491097820461623704268464658830
175223887512330865588221926439055785468170101425475032853563202911541492831537
246315421155909269429814445131760107648285078011042585706029522711628337769275
831979569377795292570400191467993904518105834425684084351340830702737427196971
990819980567262779016447653392870970911432461846050088048253994344322866508539
734557913205762508472492773796826426285836350187120226980264567316252633034847
100494400246764254651944896858299352915648883843335780945404928949256107619562
857728926853071162273549306661834542536067666171260436691691815229338316324774
348393047648652433729288692428239177121315154444446844622188444503433336889701
843092500322473928265095928089707987943925788713287384301861170694312695059507
456599851771804937622807139493472359357321267807526445845201330186180019556400
165915815010655224635908888138325694609974736065309675108690610723622576196307
187152368376166764764424797216506303816139413174624262385090462282139002626723
662297995583503329691420082586919092157594386264298586155175064169596602032536
509961767055277341777960066101299673667278389502847975872769581806986524500783
702379687798696988900419170455693747069398227767246461336717089607828116159981
790571614291801068114447924752621824120140979093469359397239821878864108463331
780149569117892528739719330141246939352358170837025512162532119878655447968238
471683044678299831003093170680621852029496650335669627529755011101916151352446
587921926995060299900638836243224576993167647174627874047153269999933707662411
280271043862063522093237587582607900357352100165365881452643339232798205418320
607979236536883250954530507328729954113769447794661604764896267023742589464573
103700243716537707606779901896007400274562046329586308062462704163971150086496
059427254673188844454251892518952614161001880614725510123664668685619634791159
742532077263422556431490243340163190547074619385867633887916589749751846337183
962465026913845446323404843566884930051307281860153519361959885463047243259867
586339283700874188478011310676026444081194831982585127752600622712999625704247
677913235388544867979034103966013068703035592678284148444675506684139824475032
995398603989845455880072837637436701086993573686903836686721158483972161061428
302758114416633827150613897062815375670776663938347062363684659677036619153697
648156821001331292281164695716414386944297725119879199147950127203804610151186
075227313713602095228578286733150653923396683989180337091850140454182072685682
281048917559706510771575782248667916045087743197793844918298028311323195961600
606995635265972343227445182351297920388285978314579809988174265168110689744988
809323579991064723334160036070136280340093491308479728979652523342008718813546
382931837117062766774941845922900899819444422000825434182753336783830186048130
492169611246640808439801517841943673873772813452261869655754997237738160689007
926056513580272016362855964157950289633215881371228924449307592680883257233412
892682978563959555398643750241743913902780775166023611835398929834832007888323
479941443168563574863796836528443065714511545422520820728822970048893519933484
379860639355760122623197148309030910614756012211913462017105801594744109921010
611338059581895490350411988093854575457720514407952509556751926563928876143199
875323459047845775493600594310649257115276606845877290331311399051181034257024
820670639438478965695071535899368156583738164220117899415395897126440443672497
398166942820909885176195443249693203660979677772699833941633343427404132081911
731605372823284046880148699062824507554358048381709718180152288250590210933745
998095303554007978651537293398373090508141017031088751459774078225006818003101
342066219256108315428735749286107640744952302081860502220913668283091382221008
911603868381794090214277420841464750864698463803919615407956057287133316614845
733458904324045641759568369222976543147298115314404452887471217586860585165161
797610914816807623501138545411076810390912830452826483573064234973421489071445
160992021567707503392961790044265578043939112167499730297994315183304103903781
332901773627562330591670073005003296533756367145282273221774523181620169145366
315364831483669639915019435332081631516637644469180720298475620314823573068848
931369820406895112386260924239280985631904698448688611690737983967060223967982
801881520959378482715942194602362254499289115420487402063178462914983063183263
100891347039528149250578484093095990286008294405256695093339717044074702201172
316505819417294534058893090873686151620835806866496068774643139781202527142440
379286719756763148516631277130884417744376678014264260894356080905552162525078
688551896344970540444566907517895608519194521592998982145828468820895477307548
150964437841688507365424135509947869310466125214294337779320206068135876102094
989823792042844443618367678122436284565320129401973353668541735748367037266420
340472958573814851749503936700512769877763216082739788277321344868335825679617
707603080723294395625673364801514471661005298777821157786151568466092956218965
798455835737097106641275992384172708609952367838473604471277974755459372720842
390557801712003429398779669240001169310556254255048263599272264873653748097350
817025439243410270441208385873236798768908951296946368472976283283163025904469
907458102742572916720747583453353648722358584281366387158343629206105749001433
875202574909804499894628896156933971567690719336966358364361511528541185044379
563872794686134475372151115832392448460114641262971767467179195498297288320712
735729743974274527931417344965802475785588591795132496885880515535529921385178
512883921598400619496691996952632492916996581495066327742016771395301360515229
684607771942051763290641740583265596909929781909432273382218772962897545177148
458576446637226190566330622766105533917948613811250307162742512295014227895124
096327412220455002475957900964534111575611523444022678984798356611203825549486
111661612323798410138080652195969143106002800145904368513213835067182480851408
959178697127315113143271782571370628085644296531719780698162928466606159474310
925478835683594203126863443802020851814106699951536269287315342982568552567209
612019287693102891278706240209368084728617708856310534992380631463331900926501
291154751996631704047620681752418663420389021095610615289065612085677579785023
853724520904937431479274395195976355179902645491882393345492238479197311797998
221850477660859395339760798105881453489786936009013251548523927452363676832579
283598409486299846282807580946157201401950219552279017372913549229097870351697
036676562324180624355194710757850128232613333585306404788783791319088330779223
743145726273834329527347403691291674331199077750469966621159066703900383299138
195998664631959434748722663393296224457559296718233346510968603608896722719932
921238747075314138304169465971380947543361093998747989751984814449995810013501
877028789903444005956514916992151955639141597532972528636799424257595557370427
813471763252568272462840505395905013562135043856066444310015290264582982080469
954121805918716556853852383860364351576496892620633405943744886885189838627570
168063618877926776522546035903638344037476186456656790634332166086299449211243
035320738689014903243192246843137480102611458227907957760933622134224295692073
110958009500607753223415371393802951151613979713404497613609510242940540535492
075719514769811054818648434517950048501449647671765555944863609171992555438706
901315318911245035802127835937007631089630467926322722653430050974233869718687
578332382530383808982076476058528190520120584460585694025110105451176879969372
239138895792220875868909510633051788401427053579741060189895337425984668185674
950931433526194472172691080840537351597587999654587371284350533523195556160424
102093480201391304702049806747686826922257291180654501810094569962948729243380
106040185705765407734286459789994668897605759533765100971194563668329795836069
514943013479911074052846298047874664712717641131322137537606030675784313167208
059903438929962661120206343476774520700766050765901826409278633857242472473156
173506324879887043989681260549155767367892794698052228229097944478849501489487
353745302847326210034125446094287544123347204775912263482282410681183786856327
876574974112223750276313112929696887498406525704840954222165678486388603931467
092784951875065124414839817732622772387002076814450135797237341179984357613035
605541444942477822652483043723978614464589689071268488980861688166727136724132
284523865376235804048500414237332464371765231638652307312727160217117749381203
828118943168272052747559326177377385537565775674009593342238822440266402110349
904527191880118911767254362019419508454710649023333425151657026214652304379524
500890388305151784602153145686344024901121281408570696809425711439044011428245
964577062746040911871631862258744446711467488561842587701899566812685698801390
703448412780119525872026443788986607923744132389969791617386698523437215267748
298716897860888593551539175622692395813101081247419771123730905236625005264373
290089083020523107364554453926180174938086365352360544511528788528824142745854
247167478157773750435880092101129943743910815847415747633169731890453213990102
968171713865097618863145376172043044128306911242721062317180932696734376482953
378440550030882540447259568540194836551702332718642211061953661881045113126386
056509297281815103281750057095726417617529663450314974390159837210627816777332
774773778641090005597683705917613015170822544449226404365349194273391202762642
518212255896015133327896349384882741408536356170761412744733871164232018210260
483550735071165008795021511615078419721682213889751710432464869979973552867014
343452412406074478881834754672769753468016950373285694672654239865007480010662
634203217660542946561150873685569980355709316958232218450128849945619689939542
431469798153336539874827957269162123848029627438020589869370463370801063089704
285798979239716129659097022107025785574381920915474970641393630479853888553594
916648255923510415057500558871988180161969409444306775670065287866388157160896
217003536008027474943098364286521249853934603891820070022839418089398349020174
710350650885108481283985945316291912215130622515826456943220997320591994877179
063385977897138937944848169978684072110980009253067897564041633058483566415794
997364938708663903740166122962157076464098341346098603232702191129121372945354
128848785496970340960956522601388176271561944700274487854159207185997565515471
705525390698241887715818338477695474325083272497637104933413442985716811831606
693153753814767889460815708077106944852146135397827020157304014700138539609094
867198930902333290492500112733411828766641740863593969487379893058281572288167
004879007108911373394417672975943255725980509628451760701863105352342666893217
257419986123198914563183872804770364286415160715241497105091459115174403854922
193588246986375739918104498857623973887887958721015280556425271953864473036315
798663003755234774836486326882210776668563543484421288888278002110198879487870
654642593868022882143385781388523329651331973247141656468722425681427766588014
858440709927348628907016234864308526156049880465775232823990725036288013438101
770159686028675790477650040362404348796787974791092225953618755244284003367012
881590770235800468042802274626533343823934623076479823101441922860820090674074
228449391167800447886756172818182639915939675976249541599115425019641601854783
117826195361865733731197120041693150237875019336134505103330854500441519815619
186003682602470977751221348409789867361079626590930203143589207553895828768928
258139185736544095409272075151026472424313665239552497392861703858397616793202
257100558933162585753585196606390183970821859547636325967638174210302280859656
541236103632775675941677202509015543961745877949613494885430130196778662826792
490080391691235687248857642035995139051546231157934149178623236707483353366469
827855386254044192009874085863000495730448288942914662664118325647258801297687
955256265637875582051617099486461748560922830919372588034335243057716817342211
976538933523198433738487922425667377246391410677007384427867089629298291879570
514110401757186461618510827153841411171298038981006163558692032796389035803021
672563354446351522174839089803584290396477248768305791374402160404355959603316
429668981199305358128254346431399007495375587523143668250345925614251157419108
739809324247462857030971552200112871958406163097519180612083954044480712766701
002832999650699404926906539568689465092910677488553827554672528197145600725191
280208262856837873508354780061117134575245649839469292958001369623006223810851
401663742970554822779303052430779844245799252501028282664186357171423004044241
488492592994534546447073054670198483057246335153333045286931019065305328308729
869959611091927317370442408772887579683274075684490940833341820656969485618055
528989446177737936323129841945821213969975642030970919498928194024598873166669
061836974149837794764845224813374025217070142234831647591126019072699162663828
758927575196782016627456949722409937946733982424904514234313817152123039197673
029412813120677345693823277487139100805484484234865904585424254663773826749039
151501548044363466516229165631358932658225302920256083013765908459642453605558
614745564241552850369490437616596118051219255275364610116344262782966887371069
450245828317285541172211218477857714075067403497355412105464384460092736148828
818902856752131086357352395075356541420884371840327479084905495154787988950487
344288189036791086245327790573351128118866252817678759078919983708695610435479
055546350902318236306801042169204662596672314819779280102940079842299239076648
411601705176325951397581164546035569219291987199864969227158804601788454905718
396866283311432447032236230065145357282855257996939739650271154961357845518459
402419289879075930421027440280528316731684020801548035487147710281605292750295
295690553216432108315031418770311964924723802723823855353799406059343758836265
709191478677658280921572766402628724927683141744455102944719607970832155036752
311984960387653507564315990963134784528105625012841741274787236071270216904067
371281844245482244548282710833976556427602456023464058416125673053601422943471
287446226533399636626346324477074371036604203159061820986679851406600029096943
053118626826304803146823453798835737551196684319042407586313043748177468711592
128280262716436102655768017524444620420697759427572466260166627051469384128770
387655226485749733687319258715145483937405105214073589102400828339404684127422
600827066207747424478472494277202075943196361364920646634258872418551548934499
924779219818850864360727010739768203368217186031873088103634302735591648605660
391236511933545941412020101548167057501954917262684912541806361560819421628795
746832832439532751118814402942660724667453010340176894263784267678929794037814
969084296267056507051627462200515831888567908553825369585543335619014566106794
122336621838650797894885829811892907878367609928520384534726292765330501998944
822652896445841162216360310646152911604714413025905498390626673157983881910577
126229428768277081584141448721041896928636474477808080803680848839729839296767
322385561667384730551380726391053834058280196827896338588254700914924435708343
863632619384365857733945933618642686723320942914679287589526368886971822701985
084875696666891434138558627856170963213543010152970306965222262391533524866703
322686166391254398602968649793311598006648169629356664825163128350458821809017
709829535296304860691143718376305432008881572102561428126699906903164231249948
049472905485263442284080847886119026439360242200053789005447554433178142899889
598447248965668872711532282945777093859843376075564162000086175827899724337909
289270559499315682539562807232736444428426738513009625575619105627371428574467
305188799548787571981657179818585301619656298000273906601652365603706240210233
149248091515683708495074657753468803211919613228454062861731454562414535602300
352499545407934192569801349803518254893655175030953309836232807740907932338211
314995156498186271403641141504038763308348091938700701964631599781645694439473
081211173520787935335374946545991341719749586365501819002579707960835116200612
793401044937941902969031720400314669147545393388078209382939859488424160990601
260342499359372955648405337063135676414202224263177845126315225184218710957758
898873146243302374745697630156092345537422277226803492624388537657851736196358
236139918126494680523616674444483361244947203445622514258931189957510995810647
369652912044054120382816418933116541690371479168317671447862152352852050920472
891731067290332343758095278748113084267552724649233980839136265103586627008831
520732833118079385749592280297334495838417323049789500667183815515539788805477
164004398143437803598207541422503065912450181106603064300904490019869746256950
836840847566783634617724263910202490157089473277491051875305836353545669605604
633189813191139728029314210294434733233634380259074923914311080524075186141271
450769287882737727533043367944055806589259844176272764267609625995468218339950
926918949232132655634200924135869061628723473733981442330615178715668592901267
195338544080669972703088910918017667472217199380364579059643418250583508547850
401812804690784401293236847638171553514398735349234894680439119555194732098983
813819045108727919965925422894749451047903661022324985011372369125471431737028
398407254703308232858038646762465851332447556011186896569154373680756681422476
751443051609568759749724367530421501777382727110536194523006955808727861824473
875119178691420501061455110459155716453522320595350749502288859161463723051907
501865958821964375260827985741453387944894903325073229206240667204194131024336
331060077171630612279256756129121979378700550699655236619035410181215326315459
834017027002048196620301022711139711595434867704660353842529325827347000161384
113338550805138664322320624922367743174058099813951198437214445167311969533187
529615876508645319193526343992522914562807015318740424417142016944687278952618
190322606170525738603163045115591606802065569649573495057294868532812794393280
101045254605230813707722900951671113938095020926568695937607334687468789454315
848237915795808516148919506368025273880941334830489411387988362020639427622947
317714304677966303701720482284952821408877984177321018574921733977482510495606
011810174478073973662132037404768753809113234780768661446055281639897633926940
149846819643057435358430521574360139897155373434514716984347308605382010830972
266158544157614428332244805027698986322174954532085741262932764079764437598868
021717940592036641022138108366791889236070507394384097356526878753537919156774
092265351073589027727391089360110592339923831947976993555227108589452623729959
377806102554572088552802574343011095647488829192508400379454027012066757358258
699930911455170328865659139600946538577073974698655852521575621867756877724328
944864587578146557756068629760986018567578259809797625808020258684302182668832
068970301271947970047477877935377015718744503235002306645326339999709226383627
556475222212724376407652425891208004934731153805181538477620265745090290995842
373169453143754066317699896378580791261143534901702435159235869777545746723166
591602543306964742311469789530119998102944927024751607485921806090448876501656
942915730284993454554389294659567466127737871739198585333128803408607613597763
281269679240351086625825407543356434597111402876599138745009928624292012917749
202947523661617462238665457150661150071919160447503541998067681589024870871483
351728532198164910400521019626973692760309609051979175956779493664820799527130
692189338272968870059512217286905494224811178203253706325023309989189402742525
422683766293703539155782492645245478287107794875326399764134142331037100867104
825872811346277594076816470644340816885591237516733735037815318274633880610204
462971976830071289259214228436192815348145449590835231354786776982557337558754
291878366973003413691367532488998754669136758294500438733810761593661075953897
410495476465829071960870417802334268797261166220749870534460125002410277931203
844548850226711885470230650822544875694741029273635641418025249315539595769612
832605332514556536551369861586753003694868386903247539796598299621288802557924
245443059249782001742594513804842597825331000798733331212660118584756677268403
447969516049992427778519061902456830222563571244662737105309936869080765954037
989693831078760589899945978105214567290045822398221254071640282314439787326192
897076013465111870624766591886997751679161244654245593814655594396389398953114
558503795972839756141096090591684645489278780537179056161090157288370554616910
592292260666057083683207201580951010980723335031649764170802811508074942810767
488361273608577401665165999100963777315598067430880886593204916723748260313163
698782412653580510705347443907702343863409180440537637963152787056470720268935
324602810357603219461144701196319207541722125533498475234883610756938078187587
750202188620143990772044250235321847097594222301828977992312609382553485851916
417992667627587747031352812026873288654176491565903836387001335010208601311100
113091939476771617283816634871687667411884405173247664052056287228253326286924
996045140425188084597857488752675059262719839924726380734347812806424852227902
607032520668864317294898983635088575698122668286212295036433068708270950621995
400286180524868646144283612762539480088729747450556263201658261302797802456345
950377246059544557187583313357321474190800531276874567446612277960074257680239
576352290572802519347544644628180914113706830206719263684002119291359402251849
156966134989238007851437041341606479984881520514270977568598276418374030203546
046475309513801101686928930987061226614891551556986593687651094701190658286885
285134163528980335589835939137161179778767687412754925352609689946870369287777
926740757597067271986664090477018494157193968463617368363257348626061455164882
464819119233265669039371017799324715741146358468011343392193263074043336651101
796220962696761281090894693633031203408000119291940043422624876223981158320235
209458749072910745665084567836674724053851900226719952220143502378272183408215
791259827475991475925932606979911942275792343162229117596074889135919015095373
012522773858026099712970470370148187219750087741222896928653984111620096294137
609694421873806587265018151229837626886192328245409208108384812118477507257294
623802775787069834165382991751847042212142030190033464457608811228077626362884
058879554578309222107525015174561794273531483869282419719291915986456812912834
880480547533452738460749754195070812118643245501330501477281144166134058673261
808522485215852414978830556554228876120723096682105093354855871376046422099900
484514826944191485316750409699981955779799944549191770863182696257941923820508
069267629769538269265702591296965897159931484481203024797092649357143784125804
018997550433242440377745682336523532313139845138572256299729626228354984375255
172920445313603847995829551798837653567971196337094555617349883220836803930832
413455855237799473838685067207820115379622456910544606663022833166854911958091
387241408803447679682583207378829114110381318975105581001023041280113174693614
095274977339913264503735318382793683254765304795451808049849976148284312678748
006174884768581911223212223316785438448484095470526150714479095216831432568938
213371980293861133909643292597783438172387877665238267887576588888321147508337
651207882784761599860296358763175235295586438058615855687142888989637566127696
705707452722663216309407772805516776879705200333514739172419743554702233823512
866064736629744295384296671242809889729327100775434636517111479448198857429554
354854325747127587763071025979428077019571933017237672316033708983587982668902
070386333827647315604618570752357463568027537083041205986477771663720226834205
109508585418118956688930649267428579943071848058751454869668987180913679023059
410821938824581728936480899499072432372411343289732497324200665265717298479987
215664124020562556675902022237814706061069765428787093955571564022418141493397
515323182238858416993678518121690922891128871135881783619226399709313730417938
461890229606102449960834881041152462614132602736028224028826927304582520633646
306138221659306446010617483644122054204726595079629676733731570160234102743669
016092709581136249475402863645759906181253727776661848102640656583238399993748
945211953181388202624325001554947489095350978848424597744188302483800279936318
792701529777516367508650812640823100357285507569821537096173885064350711292728
387020283306891673917234907047591684901212331478173491883964959606511066557488
237138062123740739580482124776857402755003173884423256262430374176146372510702
170264911855414502811762111352646220134527467285381274013406034164947141593125
856096458450284739791931250094192730644353690695525084785454155180476434705037
041380222302329018538652275395086176986173964952054418582699500300437680712727
213641822814451555065558270832066510412357095932937623272455005847757271785851
005803378007584315749171819776944266355658689976113841116583313482752353038759
988176977972572467481332459144550219689456770285727439398482627758669661735775
484809750733045212782524561412705963019409892704538026359322896391055471795407
774621190970151636519861211285473356771994635760403509580075419771851671420999
447968866866112615326297998058897220154137968775226081540167792025657933723697
331007054572470292533325616452021228749249227455720488134360427788399865837213
449853686131157044093954160564007303641273421802226887887184690583161358364347
692396116588998783639818065872884227097841820681346941756143779256423433428902
368511322005452013212788387559800806341482364318538372270858248358799457524583
098773420289758181076547021243450736292269911833153344150165593670175150157284
674129749599359953881922454398007100810313313703391811265751509868361725482984
156435123838558842849207088641565801161946028598002528313412126351538253542740
238377658522361752804514034759356820839721965723279357856865434452760992009799
801347140534410751628867744739353560621228083530249818272786067085358291914042
101558213643835397549511309219411415302129460701420521735073886281243604528492
240566711641034075822612926092040875378388470079195846420712928348301043347478
575559526165898734452300197141092546116353176376763150222112011593127707845959
216257582029468464735026684723600694587779832241132248389121282136865981294539
573426382644873950503479384815837620027810374208270470501349554182688485983753
992544315187660966174951419697876068268235941627650923240837597911835775595296
985134722987892519143602157468755281323836786278632950869049204793589584283178
674386704318220650977049566209249194317450103534789076552704056286433878641819
122442056361899671251891669566667369565591726542247699412042048049597874366881
142236217114282772001277153409580850521036890097011668346974720063724229826883
671446229571970634430622717995316590319780543176922921681481178930292763810051
517513769199703885639002480782549699548939129011088191451082911563912645759036
744264537841305544563100426017808981500282729190013827946290122374981230283146
435437099299343637761594799797071325174490443915932412772388864365192316238721
099796845259614227857728451186637558094211600532961538686899609553081615462340
846079030519794395635391493458282792158543016434550232602691386453046460257572
181957241374956845178734657873802078887382430752455339378322690348331300703874
857200999049651736190479606503863351430206404125434137041338193813760511382595
590094564451287059731157931978615036915108646759973563298322461199995297680567
628263757445573492585654991316963789652905508823444424829091373375543539264457
772940884237375926548452660639402328397982375190184291146720154901572046777668
885883750140037690042374726387822986434939053402273948364406608532572176214750
423606578632346401580514938232046370426538633725456456815055256719796769395637
400662281792862815629582288016851254114719654546083490405750828306930952939976
279386045264585858942131464737919791773148277310164129816399349394187808028231
189630957198586280242059876132572242570824936409837322941562609304594531964686
639011743678545439721185569582291227895641676155708288612313388675963305271536
333827343471026770774293938504879067122332249913286921613462845714499540258865
419568640869490209284873506685137671142678648774279152384166266663080031265120
834236039172424533110133000815687050935297351772328186750473784674678753065631
718690687239401659914597330814816627389584271674435571344206186972162449092742
486195720895690812788152791996425844273084612910649616166613770971957432121942
690041130707580805301652632425507592082562730528588266378785940433360682931974
866697984479346538636973467226444796023851024314686009232650168514118738208321
649560388209121594125480447748173043652821950971793192038270430562349858455483
370037048062934517494964582198348454540307778013463364174348491541862122008752
183159218624262340217787602695217798038778400658495106227408534152707939950956
290157274398857543099766891221238602847098558385076794896899635697432426426275
297825123346089311711666959203260800176785701348581076892980241488301798877681
294506414572379399772425342406254738546150330277543427199594880863800812219657
926194479472467643221658173882892239126206276932215895825741211508969323962579
279199234586500179627224022439382472168994725489814241041082787458926687027317
330814587897805903168491733332036539284151228313125202532301191282336974199093
523383639159024762934502986826490868763948127326267352173630969154554226845839
358486389445224016385803458759398565621560775511859167378860848921086635474720
821963135965743288983913978212916542212935532569173510021372654880197336739127
391290063092734049380055544337785988156622020566710874963857494120058406547557
696092300737492550024769213608512844197547391883184469873426485007880264279661
969583283767653883430148368674357493693207339964276994581102071476556936566032
220980071400862284098528952418231589813888007797814750969668517508761526145857
289560429370265019765474406879996869073691567619025084804271748862338770464924
687492557412418322201971908392235451753180078648024271390803936573269158628585
263523786618324928278703875467850416185140645851019055556155019930892181890971
596138146766038676370436999652489601950725922098670436499718858216149392855311
667607435742769074534773145676874910883636378216280627068118259674939545156904
117801778185435490342365138734483370619802521516680774162457982969671723571017
980095037336995335282477125066807185338187128114584462718082144279167628887005
645140884391687143658273271567251464697409261030994975410206316704700419318697
232070764690845123366281611636449532623808558905867769694263341412174363550296
352658874187849662857029713159546661248022019437848855257894922139828068766322
317558616429603130739421731742375730619215272586431811943335866908672490152465
135451251471920781799414293192150365327496568841805809511307102307317519465963
947504552579093415940000860084516051152303824822395762849188747937275678453569
803350666733252605689603383814181438408585770678950050482277761488599804076365
959847591775182661971205909058931846262495431887283225410714831785033136684438
768135335743077963743997327937834300510412489442850045368339008182144319963499
474297365978120089128569701391384439099448771277538621114268355750702062976039
337804553736826318575689399729291308502695422898729274603516521937622575561548
239492756444232011809158721953308187438271833146927536795713958019439473400891
620941545163290885240938804912862977341075629327423319578333562339273467107564
859063741928258541889560984010257732689322690116097305935768612251588044011690
815106584836714986278223532246542753797508077201677592564051473078581061312056
237399312926675717250891145651713868352202414622775518035478841979094837011834
790465813763312762429256813622640836430912138611822413429069738874253378230306
195140947909419984731386976087133693632227499529162648878560930474780069727893
820353129414902894858266584813263306068113603980668087689410943980520692640895
128597410103570415666907004520974171358991336896457326910950764531147731279260
919769662617647354428395655726592321737991722063854157495115675940240348816651
070670691621848441065482452171949128163235899053427030708616740877806829639090
854734749571925551271957503564240915915171646688477058607934495446990535571191
155164334866569198455225386442290790075079481796818733040282381838447455307984
160977645516528904634149367379419357387948392128761751260326187905263503855986
087398520595654787524688202676744609189983933709126960704014481892518188255131
114862658232476643877207761016982382835440041953879474112395174678005420180196
840137566371367057553185712635891586612552355305501078439393434148777742893039
918440849179395189402631671090177929347434966407574031014457649462227650357304
318236046213631269866223811567098116502895378199575524911281516455499394573141
174900066887015289643403819351535937864834549224101773482503148528930098465882
967114697330672503407710010334154067267084929442523880484212659854694087988777
110194877895915472951644990359508703581786437093765348217701999967253363172289
103581641786571043573151158966941073867237927421169937930680690426629970994513
331778460950183920329019030261148501239047052070077602611235825145074004208427
803304933811993374399045628432195616084174935989344160285105627301647145198410
935631686949693642534241343469946826681062449299454804625952837622691842916247
052951687086280971596324510643916127202781380139707192822988509881256721551486
131290850696751034694174343902329454443543686357289335685556228673793846775800
645570776518388416104992217918113464617348791058769241447804714487442211458754
444195552963692460463905272687693099492038422364733967705902611209918437536435
213590567200156380042606754333187414284356326023184014145639224114042365866793
255829865470076967884701352813536264286484548212968946289525129048505111028698
208373925715170331061099403028687958208799054024156966634346568364718678267480
994079840109415916180669664705515080082558726784862193727612076316769832184678
052620314950373749150102749194807238674805238138615340769284131383104852110250
411793453966986548909136357255710000925675131343416879225192581354112869238000
959835965507483782065537418221988770752113362664830270358905541734873271280646
437046725158280302940168966947360884686455987330910325117351809870832874924231
145784173226771273684975578051401315263214755604200885801686031683232987530307
515258673498008345721618493572691981643022323134826269166463887356666122749861
179347981850143854174484637474213342713513039683162941135444202439897673983213
692336482245973008596855588886612664516561042226608427205038711636658203875103
439865374726713740643405459847878434395330498753890366607378266262002943588803
349815668304919712635497613897825972662381353609240906249439842261531145525036
531860275660430909147299119539592481979650149075675603245328766320776183992650
256928938151370213424326989820147795286450712177109049858273119819144195025780
694189930901425931665124564953877688383320849455198165989686127481362629360852
611203362459704908118725048620552533053398317533371069007475960271016559096218
264960592909217067016627331736195597363593644530976591825551281043528248811370
744333789856931106646740967384186526719298574820633624599974111450473522978250
530161980960666804605237458046577527158653489388486733307015606176839593739990
358455362039230006063202967156031096206011995004910300397838044714911837568743
520176022472631947614569330822402316372798506605819045401772501855608288516071
086763169539843716978913973281968636404144825815282416806674648284315688747422
269501463607068605795355080946188138550405029694042922489438680655152928360147
400425693960947704486059355159407984487227274704716406677738706909706203784992
512751663838826911787454445115277666039873267329301753031226449231191547605061
339378416173060162090393737802516758157130092110636746341810552379908659155663
511672966788093767449363380839122393422392402293825562158008499406271612611632
024233119451328212123770684347605048360693248301035729637912164560420457994838
707266727780735715144578795128423900963721744520523806508819121138276871334729
231649697474183404850095410554938011741624614827941695896490066611565454821351
147256772050524835774111034819350645607739976946425794648305483335218089268397
187361382197297526523758813372750187688925610908097978013836078831674414901648
245994511830601080803410356792967071306793334688908052545620802954980062563854
423821790857892530796686337098977584175981172573062274704926135316640134633598
474556948761509074601110893927282390692808740350548373881650657555371753792434
641774699590707973492013719002624202911840048091788091328656595448565153421630
423011888110365367430155966212162051256938419190257181561852990444776915180823
336285284356289403755809718471548768691304164338176344226882331390620556678373
297135958962404666050455393371849125421814954249047725905245327998127421749585
700394409222496370219846578658956140877753201073697503638761446988334337972513
389409110150171032831278727817069232442053016525759381798622171841448726056011
301323528092506091137906668341690124887560180320172259020045615600718224752684
213584558860210061785009140662289160252428695502744291742369917400108726921296
574097731170543550090239065442100836433921621289378014678953546496200554912081
872427346913719215244880379585920294671986556273125710453077494616043280552696
739950380634206548883069758158780437827707209362188831100664145959415196076220
377723283062376112281541697453148128929024846465438354460691660761043500531136
989697791311626158925714907477706055853804808113510774284129650839345826566079
952568083609240637441610082824867894042682972078010822190968856059993343369120
892077661931236718234588075323368047856607508841487014136669337150463836795898
472595952907425390302776697271589957962739309173848578267859982665916632253888
663420083520197979045635325358329031913981766952359775851859937046374267775770
669272415787144738539141665205160857082774031845765634960856208291898763405951
596756208029025730170550598600790611325382076177513702799127502952659477660050
539588901074094588431634239316298218399373776242866090646268654240957879665338
634138477667812598808643757730538661448311367979083321805875766422703143886234
360007388795060935608493266716553303288169800893767788248395735278648730384508
189121064352986223438048931801843810310495956148244896878078443568690030393102
114686742741962595807609259012031287084517856137107151564446311212037371264127
780699181883181450434651366248397343873612293332285059387717452827028501226864
347774009150647642696413944114451953439031124185988647389205869456456808292342
861524485788384671200787723368552004789084770925698337299283403304911037069173
111142559818527803841960738678457883151655616987841647995220670845852687702334
458228080181060489654692999018991948037272084946286738906681397746388593046959
495559285710411408273677391761392341291183861344808248691677923442899987386198
450435464517190070147994270861610690934113460332357660428616427488557792329589
761521559691327744081696535965478528472236080586256754668150559010664758531509
849889465385768348123547450364161160772017456579149426373186018902254041337583
609133813573214724903350424220326590802413240513481685646213242618742191416480
887823424994063022616821474465452275989555935152312386237203529879540649615002
740166477139298306976782559897812989911707828700355397816434039936933191735854
808744088482171101734384984826910568478994994603282674789961689940273404286577
481338670050195450707994544870782678457571768561020614364396064838299000441146
816549857634705035601436540112447933533877526983025031344037754098157409705103
827217781855058979813071229880219818780687965851428143672627434322431557149288
404079982881013202013229195663813470058655978816478837636622313905486237823667
791783288798188806081953792785542106383237261976303317725094785418350058383158
591989984933413816780840683043475064028430802037391678199869284339654156525170
814840085037360996910717433558392401421100967167910869352699276663124530573619
218822149317026474452755699718036866485057597395521588129451867727215387088963
081348536098796467233467263280309740881396223917485553666305801624760882659680
520108510027630466216496519735643709637675601869513430296081078823997646563054
577734415385913000906757685780479228516631280557904219478476245780327390986608
845443357003293113838947214542909648193061009948573128193564789359471148399442
449545380247842892221064226840376100912857524054908372567284176352904727336342
659562993048004441065736804250788038484812110506555849317571507458960768282683
930765978612338590184191264544974181530101031815952784339174872352458240196793
966321346344385225451202284496899711970469907597969199383614272395425488291598
824013054189859605042840757393555163057099770684157152344484388434845782153221
878290686723988104588593553060440321925754168552879292851309163079781753389739
236110576173912040580028916683244313772303383899093512723446419561379008099480
249042100540766868636399585625673207288674393971090063213370515024899595349217
325593078933487231353837699421799651717309707734939460618816192359152134502157
301355197722549054909520582455916382797356801302611562110768724991661204170655
539831047068834526266505496568652701298009679846561811503622608903975445643927
213954012378325102318645892432855810867315151153656187833767431061430995325321
572376202802193432045103926773051672265879108482183269189812188114445806906417
160726150210471542393104862852624228275233966023090052390574285474516197866772
781503209972365600905749240399600169659717102087371632358787446122790711103301
454169834872223865655848905534638112794084056008459473248079435266018589474725
884385720977390476153610483669649679037929376728704325439374760941441934644954
147419407270602972043779824490541967369530598771370081991478178202695135451765
817706852769734714516252758110779150604154276258247917502101338714452774457028
864813669486213969279403378059333183476443574011633261671289259720063438394770
396771288499072082942387891041665620122835417131175990264414148913477566644801
845383484225310944051289494626808163892517800168376000257115606920465001296703
705144449946263179501545542245792744311212309806741075953577663192556209920006
618858190083338011601765570436345045971020006037600266066580824778615894248284
706192636608582219611455600028142931827388919056141450503662194456404081124768
677840281935953610542960517688018928884993839655972008867454274975437983245951
353360879571132654821808063955533796876333612725536612199241224112625048850846
266235631765641089264694839784573328609607875036365265728560266139122711446175
430278755070045921553544014215330613782461137269098984082102021477955878807476
072592674526689058257330926172229506095707008388745884196223109652911134711326
030980355685395829702862973545717313162121982096951966593417186111186189383786
126706556459177820740141886706910301768064996293274849962896784839514041139657
485698597566488649833016920778552355312326130284459398070812502657376312564918
918613907544696915868788715610451211254332369530068125344521012846805840566405
261874278361751888454248834239364909252942393056218900871510866456930387400562
144646148637031263365511236835136943277522863370604148789477295034091349526301
511994606234286830731095376437401245171169204950991155786019121699876693726823
607306430529637612953156850822557511112531073904972472073663716951440055321529
257900984236390317690337367605502202264623008304037822867569173930363770520113
710104165964565605542171697631131604568838685728873955176868147399780856428178
505308159576294479553132081787633423094649931084493060970119794546841545065741
708666493792788317943064868384946374012467398567239401082768487810398576544749
555500731296678539620705570891763621675136719583918278134643596011335985724789
364540992393930323053896999190143924863984733629648144541524885598425924137151
432781887134227153936140170810331306441583440165963225868716263983138644183699
148224260684276564287540391308978031502178368396579737896175187820691591105367
913150227243578988426216853524671696998199790492846374383286529307268450333960
519208304364749803124821034453313187883482816415858295077787699990861035595893
017590664735126970515218200886082167488223157644711431361145573539016811010895
784265620975291282632413535328137182180694869533029288019033072130908319971189
300340835092904819659237420296652740099703727842261719515984780426127450882184
809860782062562202125781319706372633295341851705912013049112303046001112033247
815288853816728073588486625143422885925013552009468074959795577035614543759384
719957293566842318407694787396953858466105413863406112412629791863270206900099
104172872938811350261852040101022157247252466030259381340787482629321824109565
652267185442768250605828074459705806733698635405793877115742144480374359806446
035318546023183534675062789335113931186271977656275721099370043702958859289622
719377234309057720807285332927174779296105174677325422639863566051069840992184
868321014928709795298055248205734175623813847926527078652270924274166868308564
112131314598727492775439845914413923838009390240846790505340068789085291192778
349375533829903055414999041421132344746559717520957454504370533025416514001229
293090908140290702019372405878448897261600642585428818924393894097878513197507
603889963643906331013057843469873255575390225236543968320182314716818125670481
316406337691858855675761555271589801512064873363325198053016016874593423495586
311030918626120596802998073440986195265748805897114379140128197416107169848394
332749625233839849161450640939766981367598245697060934392000853781380649487092
300137451281802519793131945133762963993588949437888118921275320049145287258697
286611350771695472322221064005396167499739321615149298780575717018688059009430
914583711299775371698874154309140991696739649271230371884435033971342954732400
585734928348524311952771188325298795500315521091538186742192358746284467266169
142969060574048506986479689977158282438244925550599485118958505517996540753408
567314817322554651862143010536255688778479532657781253837385757802928753859161
672249961831289760056585496692864406889012677474941329300050826797509185574798
671131191520505351344127797461493552700501121827878068174581761163582121340129
830064142620724201603305535483797553895196898876348742185203927357253963402786
185978828133532417258909915867311899107644732726286519290950111576931661411266
889944362483707343893639976115799610766909660655892063319794160296075199263124
030502366497549225310624188310001037471129549328382252651295149793704859175398
927702498652607645121154791828007305874335387969905750807645604011562241605749
021251772418590815974901960176891528619165278266654346814197709054850780797440
853205658933240775874985498942903194566147274922199140020940943800114267728546
179181972247457867873208129548574647579315470646860647201006575589501764992596
192686327072732999158391159983528258649962866513612703075030600111581317200323
292403666386114888618319422961949826117519200054943084003262480735950469067117
919961752576098234345591763988299856255437051878650983609184825791127751088114
149072154078678612640812875253191746995671752038211018620050167294276566393211
748915603073101329882771567277802781075037843974054613835248559242258827495624
690265282461442902992616443240190533581050815228923331039822613173642130241372
755485365402905360855247937949417614518059893317891807703069928330004108094525
640757412139058226905005174882376147375095468633358362036902655624412818638647
551194030135687053212451249583752089335643595703865443150003996900838867163320
095111661096016652950269675311994007790421638156234887498267905593225245279665
082175127083384555152968842388263663645465465445762637435479492205401659874355
313368291312554236168990470339873960499027672587858541233617633146003282803109
837689265548952129505420715129304074469434544035211471887920446836748390094085
924131048703020530518762650782549883673193582250951389001074047227508312943682
685739553865746438454306565654987176279839254057598151107173122589732779328042
814658781222557123523360728231889649042519196677620005092387355628357706652384
392578795972033155574723221649025607790063875897815364574686915412187320319554
824964162920700765646962517406072516292277596324167310228706713849584317763080
530381097320040661532414648696911758224626407125785837828628282708496800040773
056301364680991169450127001866611088796047291891616602402090352405869998379971
386987894314727686884985070027678297583910163223233679162445953568944253381059
314812216514144662217003373499416079107157276244444365588813453735273079479539
778608572298732317372342065590267422507720384082946494659883280216408888449086
602616626849337655263205866060321060375277343437953029139121322456370922338575
838286908558318570505132086991311047686508385122463182013767710724375504007293
247973197504104363891161893710919013873844514125717058078656816750714014504137
892173238270473331600037106295644236772600349758959869669869996022137631649703
906416167838742702193218543752554401587276314347921742833345490992736914656466
654257206641189746031411833648760453127905445294898789854303560436207430704392
197479063075788470747816034159160044965302301857457978727481580489316442651702
134128342784285709357657051974041323881291855367822780302842597468660494340271
684252226280696766333680820852740769650682313856115698173578838720632163042297
720912277594982720497267005626034767845956538429071223302567052723454489149105
616238150738379916933394067811461861156124247681022509806118852529064598514621
149515725969127733877888519640399450458415217110216097975514986636771353736655
780768548473613326218433439285202286674342066508688218772733841458347360123547
770331770305563809484253818106264542106167826259002735023900285299728215749611
703730817474720498778374017414972222407807935141799838335161628576651239318132
558429191700645660545818859017996189485479019810132713509048108394618369056652
444629541153089185419563562197831174169965526270370206254308258230902263663704
276195191670928929632900299622659710862003923300838121443662441172574683110850
838567919176269338419550401169783933668051307649214348742598935571697639339189
588501626186634735979981746133323209033115358644740908738690141440120556776426
774583056939516245836263466186332426844156356546993898896348111290216912362167
785214818489927178475146933440228662287897937310155181114985058853121769136351
060138872512579381789453048255404471223049038559464121244854081811657242746396
310193327130925991718242588590709595395418118214466474326094048600999112865379
338530261205578309545893505052145615697799877949098702457185611146622626606516
310918565884386048626548238059221081560750567228696673523006073142722104802588
776800689466138487719521220948451290495892272562610546798435323600276167382546
406756960081631872634041080412164795653939932734220686832325528350131332007230
382085999915285589226076486243160429296441868399352600686197751503889169758918
578438096509868817916904372883333168880790373436272098588851899775925870377927
024832659466127096700522017814703760387192700195625940389554947054107814304575
348932276469538276837524275845428897675175282529586195667545401645260794545387
792909209881897511158674176510614961719751619050299456477943717171349273662416
906067742299936009297059707962268207151215655215666615851388496898927886624826
052122637463255247455431434659750175438727169891684920893154922429716203293590
513944951979122273556353120074007768123066485097457498617392626206804287290317
491070134628967540045532196438931250734783076388916057647188232431083543984046
655642480702620037888407681571091032265104040132092947109764153663505197241636
691384278229783752041312764092654911970194273990595013292968559997654864985097
870744434507006165500918990109925293979750061889651493473871967398096077964298
927249336015341508165974797650932641525119307211415404083057204408994352681024
768716732101263848369793893375999429954559773822658675958306152966822194804960
915393326114232590021798889535118986634402532224166094148507473975900397966859
911870444191169000220211950691688824013793833595161768168580247136563132667469
418642853252711168327868321113103769389872823440327663193505763197916631976179
564790796346563547129051176794615816173117668876620330611866588842973650927914
023912709479051351478674600154289496344096634023860662303391791147342970146444
627185188350890251781949036049081285824837192108358486450665964912491299877434
082173602064330114761471947831361775107104016968874058273197950203651975856129
131887517344539792715363466661635494936815822069845321603070819821011662494816
601217557322953812569294476904352758521335549506387013479813503352445267359232
297828335041550932006352452751829015298262288458595520263513440008865753496953
964018325974267038744902125023027241653598080560514846382630764710158360461386
447439165664607417209897369032627677088134540854141060982496921616350804834110
783612223642957028874974115181129949279922167040429629051410419741325155904363
788968229478981738671435614434872484822252386844847856361468751393026692558465
538818629594279403039816076646775909423862605372212924351945122693850445920137
494142029756109217648173553075429489133077871223951619618843560296884553754789
002694231681474235158364787149536764992198686836466036200607002598388956452852
670427174931365365389842856705145659362397868896431404040830154655164376668802
640762678390269588727870466443608632526011930584251456747961171533975276489878
527349257986567122960500879086354316972255637207395919115426282978069180655826
311996201613716207198317375504946070932023342061122141832153634601314231364819
845439501213296904283063527757618112698723062961052141576072261040696572720279
197086380428234273941267403886212365097821824504337944865246722384266233642443
682845115584682414754550735714519712840352241706869083590399458124688537001030
265525529623757948507621585545272532901923442637990331066270304822155008649817
434207204884911347730381393198252560835600993199178148751813288939025603219414
145081759811619530204659321618016586465953794093267513082603212562217014631761
518902301258312293039033086775309856072573315814571309851325195482411901767502
309633633508133124233637042559860598605070964094708477437751276825673739343969
996046977032403869164075378113520515503506157493924137715841416106392482065816
374189698030438159410552873409897288177349668499469603454134624864954372071982
707922904510798652266838314691108438311390635019139224636082029806261786687339
411480856032706458886786338413271155770302480210597761240855766489979457782517
229444307267040438328449061187602135192581814035772546273265634882075805111174
528291801531716593180540126097009730490969182455909652754978011534284964326701
848965040195693906140263110283845374283256446260100964390655062094563336399026
541121484168835629431473789752998194489463052724255778763051621760651494734660
222830950288582003301108517913397960750912495766331362432738518039222091719812
518105305058976740807941840114740680694157294853926347395076597006702852985863
055741486293641311113587802933922128477349805037135103179699831172915626189012
630896984016332014028644832272485407637484320576135188618511576774871989505469
873281553653041147571768196273499389106077292773275555278145649625971001046345
540730530525511938249202019777292541178232566013025691712593240160562334387225
074024007065001321367290133385285800072329087675768957084994827930113751751407
670652935494829552681581830790993281458520669030985426519858729109035957932798
952145730366594521232645417468485728369806616597924793969676087767046102993842
343298002384359961768684631842597301670144212105918210357886362190283802618093
330962386058404857486318521512013019776786095894837398925836363616046151516424
787376169586476457165294641940557216953506089801540275446140075631216482207288
595828456955247437396596702532061808647779687695670480351773063688226964246864
887081945219084130375609791882859558082110363207257362762224424988227167889847
857893963881265412481870133439831637364879852716921334935574163639169180495906
268122841473748047547725967500300659354602394093354409594171355728462080519488
599971617438191179433024224926370154315336461339860628348766132613636144544312
508799309607320426304227543021385708528959739680358048547551692609560442472991
874775004541823076916075932817882464222289915014961700038900009793153073781123
976646511222540420089671709415289508368307489085573062936543331605480124441512
746758420024047822752454178625156055629773410483319755919059018894766913842166
200638746055388924840635359245879576029872725873294025544880189495135830978310
956097968882649841364726124779492419291626296668987442573269298638348235617934
310910425518282890565025344709513398667852163807653795854486937437624323604837
113687366613643515829676585501884617981354136429405158456967724940716427713446
272289863086540392557670699442623207059972726946936619701451036345714316658645
863413809368690282039350766024886099057370869442200459469263228411456195580789
623744959937698906427393310566743586378835626354703690749534828698715242023173
003949932546076767692187323116829266285288601560720346981975634457948966193561
937466013059947177349401596036071524711312892749933390709517322861660860839920
893517995974231352640605242024142930331587646314046939294055069402003950565429
808928301211803713551448582506984976481494856460861481469381298740502327078257
610805196030466582852204460000335912298308626126814642870761804777633118038757
986425095915550368712828911758039276793976425463625483028429733713273303309359
761552173747975124690354270389057492975162987090746015399428779775262221075930
350231599268370705427609218120781070723381276697090035457117108872935550688260
658501027843337327410069917839638844235086191568335109820010551058271909103942
833766170274837468379597319936571948242912679503760028838336034032750072082297
425339564060301893725327560213086381452288157325028670875548454403970942012187
519180171024356242827526845255460514761138699030611313746780907362554629519075
002789978718749390906601608931429720740748795804904578172035779713984228924215
094967670909118759226947716870128754045877763182392898009321449533235765864888
361793857658601706147360184228365114780058087492190103032826259794072714083010
619838177323016458047551834665866996019755352443757949558927881275735829928329
643007707314316372491861233234526079149590195662767403946166517966097633057432
763694101128169384254329723085936909595392842967902975484162519184633434916114
208127558112617426692394789059877834846672043742820045022463211204777470700060
787084051775106793018437176427391595386968733998160275292226055189016037098476
659737041110685268427695373058090508236777915209496353998572164799359578642443
831338864079155849166230923751033213539150685854896098613216628152935194724170
233876913815620185839830736504143960711886375721839570237871256374829730137517
712664173944601579281691043681127179609638346159745898111329857806667506752299
511319861684661958442088565385625483449778270836109853744282604087570260374606
880811829764677052163221643999628219876462083683291485587767926563173072599783
976839956407018653785592492847162818317021355693961771444623304009854649380063
313735095957461072085450283465259184961845934568731749385366391801690400916077
643308384705057623371569907360517292624478101893390912690833003661773137941423
362774058676029218579960258002712760468444474424893985634986178139938981906580
180208208692156924725990140040966255029481218870364207013074145052466310590078
544245302571675791123002647425289820770782706511205232353934860472103160108550
910502621738469857541847657000244357146946647528550724274268418769104220074322
285684591060165484902362546781394317085257153894198661452533993790031239175762
312729315687557988048736777891109199380562615128018920089484396093016422355848
102881128329262956050373886119635586296545616864279431697281335198054987151086
598299753232974181037768382973122524067169428991092283394752673868157735914834
928288932843910238935319337216114941297703324454310268136548603208196456662298
143028420838933994755459180646957316120912798076513514866366006570027831890434
308400672393177515521101057899470826648660066376781713453854133925064468732838
021112420429052299427627942920058620591955796353470905124024078138109530466584
466330102474716141214224244982682199912047121237787352447420940121746841717522
506405306756983718647970352442871390528100646076683190779081095638014252467273
098001821153799949940948419418950809001034569300038374127717167884481827070658
970246189104622805274264269181583672611086972772885743457166801258023986856626
408275918629134888588308814863909223911552834582163371667554659593625679609683
019456619600760128244943888812199539239379845601311906587056369751155333820094
456591420407861631998298320229000540569529896666271624873821153645109230575862
319686781411824688541617247408406016659712136846760339419021219401217941169716
372847968945019594842836841484687423657373502181525218833367721303664574674706
907151035703649932870871356974548239696181308748738909164545968312825809103365
752788109723798092501805816317569182515719506883344844679234355375169218707613
810436558210210693225779499601176211917527911775423619701125412196744526491428
133558696821611234609581024712597587001647464918732119109074951937318860547361
318000495612031494227448641872773774482322162673887172301074513793816846036195
301474739773945645376331304756333142548690881712672825216853477228464895821504
557130266704152141422670649989208621682759134925909055777458712271436615697860
700620386178717553948310414376746719831377153697015231548886669007852550604421
108691136324745283949306737802190281912397594741691185326815292259363332598694
238981667043208722831790740335821066406069066654221016559980088268280790023853
454084634994593958508058001029584335256614653752571317484143753184225513643513
189393185003886948736327664948451446501960620957517340122175380724464111157522
257142420580957993986060645923903407207653996309785605222547035817508716757581
389985516344107722686242741786311432751943803334859256825813216200206060959099
642819979295435489376468953487173934551270933737839075459689301554181409397883
749619699294170112666087147025709404624383713069020455752569793432615921590452
927345172750074614987120688228480632549795499258513075359092779335570766597083
297839534499430843858357566839864628251677509365345294959103728086480520368420
803909007257224697450338497519911110485425450565882450053158903346508588308978
595220908031146942103466587953777812067333538202854906486306575723178459116690
269975131929144030449110002803099779274704801697723543162388487244676894010681
409619179694453578678266358659510268849351077690568750673331188523852035414287
125117335060000721005978963687781778783198977900516008195224256982380728790544
141301978081206838840725299089113869478386292515791975069632237550371507776958
605614378562021866740176191819956068728633675050417836359567703496331604113465
009728484269780975054930937787328143126586425862671162048791361763694841248993
074730499987251813296193598479117455257376490150251179001370669905765215015547
098893134327118590180536314325601195508063588014415452911317816242374375217569
018023520387435097987383091152330726992642473944204679436976685261158180545044
319760574400129816951706736037501895617658703959631706204444994749235823954053
954565883540626532204490193135839413836132423767679022071285296555057453279365
276946471291601220639883232647321308557073355164358542454034287211838949943185
454443390810389469004166530014945235805279700939156521340631230532359983930102
190859462083955170171086207724266371686368221803198801981985696860432062534760
484241168460302354565813848785635695968292027506373316605806488131775745396925
460563336222131951396224621423930971824507323468021065864931575861254860490523
471878150927718917991486693225890086245719697103370963392010988220175168930120
558794034322026255847796477941135752087073091976007974249623693455151006928885
463070011590305155915375888122343145141108560145333922746837380364127724979973
371571270757331501635136602302305910570343951420801829698555000006960188467286
759454406001030433104864157850602468698172061836360669395931218930284758083898
730860568819603399918046529734854355612365300364637460489169565755162733118755
099304129461961971416320122690901074085832185785635285419206585602984256449582
173047242803495123828473266641130778490124534511259013844264584289311216528580
417535467924206281225780705317162088182505656014001807209528974545274222564833
709651945896644111792181537797916175993812950805501899194717324612227736493341
989560202022683513724722372828357276347402058091543341265609337874333912230087
808396862670145509905958757262383551904881366677819351205482611668580084127556
310829379181880708848166842671920821778716154318468153224173989757794415753987
419534212221219344564142842114160031498723242604325168852125919996324733982350
176105999465022877315833219805637052605061425318295460327417801801652694428935
352224852898345905497899997448053064780423642131475270282912329339724380987127
042653944542821475551592571261118314980489582692088643459306444336690005259219
550681071777448351631243738244594878246238481640887277395302849996895123539610
035127015746294832310449038009864740818677101642923884471823352135211395434468
974394694900623403380963697000234779985922746800837294800880879639858222789045
026754169239401382915036276003477708155922162602885779069732626322972802413210
071319654765395281993805126704956460475157922068524538443152795256635878201608
647435604839817181870020210946124191981540792183011557787240583954230961393101
375602767505693287881917069752493365036138168810823511064373484961338958931252
228973137176819020511497922265768351250234597308547809444373391231965359451077
750385073496627341816386479173474194859512488014637937911262048335271498220006
485185178882078451877777067507815789257761734803641696952437690023181529697123
198565281528683376814294052480737063875856760820485715497699769068768020185770
672387669777312748560771805271929272500246185249294719703019166217467786671200
703167325882399376598396580044301145675231911852330464649321243477293131038138
477908106942672987895056184611686999916942551718316792493937077944549621412037
467704441266660703408081709350365176979104311601915447263824144241036471337573
459999233641975304089376878107621513620796690867903480027954294194947315913478
236499877726977491521317106631145404171214154956089741279965165698516474473176
273979682991623622043210960292820358195882846531092174720545002267528347908042
538402171138004328191140621870564695640260733303503842951300021474188138643639
893990928144740189167357980298277312452334436263012092118502878733282674374118
186073053347938956911565262408066076041069809581718674573316765292037118368302
947890221032414830391490702754787793364672347061626484866035042132068873969386
302406347591505192021371093977863143547833249911007468303886521132027876429877
791000231936626121439417158665218563017339138913139995583852352043496578412866
244091260512331474566021005150314576035885687419458784282804673742957964290613
885613723691130372103372341841062541085842250162826244212584780859335064570006
685650540759272070102751699814357388914276098835805242208852656206699502167111
378119409705329481698470953448179122139954072247756673656522447059889807069180
523603641046028774634401899002131445783545771630598133038352560098031206152204
002523719654261535689714504601766311146107386415463939530046636667095663280094
953434947203095270712625176404781432388740006530031221569025719478339430125053
262466993881208482704495299703698254758912990798136039113329120931052107851301
822827441107951691871586218657365156470679134313115855660037545665080041406089
517848618530803607645434913138555207101438621848622191508756182633387509294378
417150362350606287362596734907270575444731865052839722021648111363414278369948
478264198964355423927093694168367435821853089990231004354617245567085130182821
023460917050749641696892564986021910862311584010069631908176203555305560017587
073998111856909523811581152835157765187427935979593697913371698771963410647518
559565689192260246006641493906010009564826140948137270948716582855360205492598
611379224850697983361746645429666311306436980322910117299488082885515446102935
328703960319100547380994538393127688583272721085167018461518054521489226752697
156056274389716625049745178295507559611524957621466107477328323427344246866711
331956508589970535971843618585124569296894102790140932872587759495093334518066
994509462417580941062132288795843385465616717481675023482978685103485015658383
915467709927032951132415014532146376897748290173835292998697521558822929379246
672950914636411031931948571177980522787673069422479281115247750289986995122622
405370948494964420846056972176130955913895031776833476386121304259634034363825
372757095438073024118240664956658463598767687561263463752438511686591102062163
773733591051562994601689618534683180236998247851775942078176007021229163214955
389176769176402699945249144298695413379148513175948983948385631479767026811702
990329599169538438509964177504340162376929690417189171119755722221887919430211
762269577251816206687305937712462167633455535225229217878460056125244050043276
602293234464098766872013075143682415975210937068521493210443496300922855377998
790730810892609280275194734787385409459050667226457756608870962384869298329953
813158828397963859096126110809656586872933403860994985512690698047859670747415
102709586593998516776341317980302711351770785417695246496388400669621200719053
917967851238105339296363312663960709172686948169275462717814668790407835669368
618973056201464726077264994826133555983717981976050306190806526294520691316834
145521817433061568079827952600610358037900073061323900303587046871870506896200
742592867929912655954121192102302443088772151647183106050760999378752588429024
078369831585607090718402516691583967105983987029489689125189863473167494986441
773122543453718689461072891881562394714133660305588479900183175927091937761684
561694304205258509104665456944417036173326297930479666681777114378025525732423
717946417350207263404517206385352763998472956942879025865730148676746049092140
720512732336385717397901449982782922887488120028197299805620519172789189354203
097056281674886875691458426693973010744451851786095705905222806185890817463749
614131417133492467127010083006767148924924199778902415324346780134097630692758
740899943957869034047664151353124292559344005025576853755885156411991704881229
864370230013834853716981348051508450961498599541712980434199310005691732438757
187525754639103145166890068286027643593523924423168252516401625618833063445457
644484690700848327199219849457425780032630736105073368738510171323268683451241
008701752334097671280926050435964359588840395367124592611960711339873110994453
082356787110455556462876168049138338864037741963036782451162539979988204742961
537266127452243380512334805066837836436729667930643452260535929848444954936536
789594797051706542945010365907161327299732980597840674264565270839699632472504
683307293155103160473249055217547918922027421315050093469208463645286842711980
221369988972432871725669216971008045893871513067700728682850575079274217582089
352202096364052843178775450651824452248713885734625898333846823678087016244605
799871401559528045391248204985760479701966415099069817586868660388242166751130
770014145457379492875969925578334924392104768842909005638209888896364786529828
139869769473984229435442101364901641863109965617477452826329899709465167291316
270744338922358937080814862843641172527239190947966303478547162119483053225688
975559978633080850304096286662711896939464947587474418836274751995960140862375
323110744961485775956433861091906962963155534352239974439512414763957776760530
855527359822926460910411647237877154130966545813542968394072267007038826861044
382825607666654801882909316730534318772184251180481563816413481363582341330390
748009180942258132992437468556152726554253403339295221202172275452779459411206
730264690417260293909878746592126958069762873194820986083659321693339395008593
752537427045105214640231452677694034869639677269643923718003862410914086133176
401415703278877405139770960486237717163640375085224122491531015176436751716971
615985640017992584395452064015469361728270706247185349504804604538651188025411
137485982357626844806864751811034808159386572979124839181203938738631480734017
953667696303138707873342424411433759638568808976559394425754210275175274814373
847970478138248019631060176915858857929209567762724554503230376115632962100288
805320564704373709723370666449871712548857156685509166625647635460579536491507
425799545223066316026938496786099403662156385425892386417280228203951567713191
522182325557877339146887631949363534289678044374985427882458792626551932473490
994008608625675690717040185138807573062774894646331742260254796358460951084223
378750649428128465512672873151956117867001110172658235578194094758643277317531
942199975060686967165932172706020812689468672837777517759374645293235395258387
919891147888923220286980891015002363494252299862282869417359474079638012590632
230671289168101510360248487843017843169299572935755605696523547758637865746392
632499317729113699986653745730803777605021426965723646686413366165507242361608
390751907357286322669370347341166227516073349078803827209591325150825266134657
853617645141892182282280903551623687622535045315142536464806836094535473649960
019379067904424928105944114749414890439487719504481208412175352679479557146273
248868793647315304624047579542368520235982523102376063419895264712231442325546
897678281002706700462082852614111086490773858119312185473402578632733757484221
383596100055511144025296770566979917232831683421873637267066511287946779955740
386677173192476001221650014109190851440362174639208084362153796927929746051256
690254393715902355226185403503527062015499375500210838667898905694157468370341
281641167460132113972363567314390563948695768878456620590428375305164943842553
096745651157537374023682579905418832640553968860735038539150515332598412265175
819869007547332428613283307759982152864858830249723649073939197739175790770501
329489253624480610073337938149517464037112664392202870904240773481117891226121
039710468202567785516843402362032917475447812647990042774102028989706234642244
375959328833977110860995913439270358677039443974739072435350471600288918433496
207682497892549849665316715544734574337708632123342617976369655966168009054703
908066502892515278828825440366367757490976844918110875079787826204129804872221
358205762242889584625832332282294582755647695004613142978026119294023368110483
529249820907061011712519762470422022503044619627178941891738224817856404630666
713286653850786791309221826921675160124977127018451395283572305447667778415089
443995226481033527341489879157665843096070002349499118338776944481485027168539
446399576223183523872181818421059807991458249343311962888825020149287245634931
743010392621227631586955866249780752410177870841644255221254188253975286246474
263017617818854052685621322382351371084941769529977323956676245857871631886426
619140156669130240735067442646111646328485967994657869301619355508505350867314
607536671722940695697295032250411558149115751925878061946969955732138275421984
059636625252464346211308301974536616145929412705590829603697995180837357018255
054100172634027905399563306324643247911429121242650082900484992638161569295499
331864186680225477034100389073261991039253179923064815747813202703307937340745
648366065045310567457455215163377237117883940817726126965018911833700463217978
170095059827577708154908337128591184220522963995125426718261025207888021840482
250927159157701137638559247665548478370038108857486042899007078778365012219325
321205067463993600071901812960583390848108589157910942617539721863103200136824
642304686496183639242945555991091352319028204899405664949190637258666966494327
820048498408449596458295214867836568447160996735974846118455209993376840774731
593553180476427656359257153182867494764560044667756803986869172830382302378724
656398518167340117124898509654536409810017698829714618312331128857177071339104
125226964389306241092478495122095962927347888800878119571617749051853456443456
535727130739592409085085723601498462745466948857187288951867046597803338298243
965072626033390680873171043287498665243203602482923506337603823700949889970039
942807272887671468539476445895329781555429846930294967446818789734303437450503
367861722847430314849526628837916124522695343623094018061154303386014270710354
631611239715922766213409586889365165500804582600477277714611319169442685908430
780140500448382824383077595819707738807760902190422018269129843801208231586914
162201884854206363143151330788495840936562744905872973331880314252351282365601
671559495553616839794170770855481597676968245726066008148966015630151653763673
443694628872657060144960675386952333558260805832599893632211610386982719895639
970270895189665235737029978385096425466986967173504739390086514685603966391092
459603592581823434586226300204382080162790726310703695782048629074840785029130
413392568583523455138501826872844661897436704889634399215086319800646812220946
093282431228390325232493840670577098628028857453691668580117297410059561881438
568255503716176056557257567451195127563532093753283171824961174952885687254984
667464386514497398777662491005456049436837414678018016270164526696155152333200
972963297023554853051771064227035788175000307242871635906653731029435200965801
580448614456579529509978304037145509489865461466876573926811170430034928709287
145893683849057485780811826424364542211599304472035116233596728463152964532673
436970311370015505784683079318205127997388833600131257035169906041841791719686
199530857741242245383677811590327225569846837493832721402215931672742474364742
036476635587420027421489288994956615208285814082370224500042914268028300043243
447023979392212822851046564267946275349979460475440598003329229532150972891033
855805265508315165429801200416454276074221373122465504644978440311009507446120
478419308670190739655485531434879810281488660745731948653668276185525423429076
663277826785894173439514478853326781716513162443236262030832306528078247034756
255676560190395189349567304347275359317885589504409507533660448625602952224059
234156336912502655072868268465501827786854762446190256004648547833704605988704
519877765306756578110599590195077760815388386193076613324530739461010660760993
524409128451214691280518498395806882339949716577804219459413598453623033457843
043686942283684416530601090553935579476775204453094046092875496671006714534352
235592853263532108803619078991102992647178413488242683451915241182196110199711
585071746079583839533578105816132530041443161418331858914362658266009185596584
222853674875156226339475327308601076574120813060220336453373543064923074348752
684226984233312364039900738782249585957172405799064804958940411402734701060228
263737847095286725891727719587122115021057689269696531416137805162089304633387
599409244005535436220131705687140684761265369560628820351201198515960152853663
623869742744403907414824127109514293564834330463491110307579169433747382951211
348123330127440739061821369369917952308840199533765670783228331213675426077998
350743774132546648554178640307283447147057076131971872417794881246924229658962
689532751714663497199615894684311346885905707033344946677282008730276401403591
969803173424910703037921130245268353392092485564717098571796580617112995367395
021632459696259831989483601947606896686333442250093129723122523200354500607446
711902529878932593366342679692899443298417313108358975897310454790077039485175
463390800701106421965941263876993265290061648736132901809957385050924195972603
817392922150072250891647634989457064035638948737840793382036675166446823370683
584711249413503757222948923299541638031637541477215830504126846896731190931490
785406683926226849740882878156937160488299737111602548432555638638669585280398
643922957726080788789822467685437883493373708315567203017624735891339340246042
627387707668332513561528688935485690762829276072340046281626107629994966409852
613768901105685617219742844895039442862825738115753881246792071623277474108679
492677545600263405656845408542362086724238939999967568783130711273383112544625
751052069897369820789128242469948210610599260992389470600408733566403613476686
501912882713492391706871979744371923460833322332996173486775885681087155522724
904246960363030407648826724920414297594161783734055032931502399060224380049308
176091508724882640199499328137016776838169540238857895395359777258051613951773
328465253706716586076883343528936402902858598785047107417494007030450186914589
920210001411854514237098992497240724727066841477713102887711047207760848894036
364577526244925713944324245367748564557064034968127986774384554958639651350579
671650473843352407460258332762270935765571851819294768588232426607103626852020
294647417829591023731864241686696502955186636201837172630059853391103696212923
048876966395108258776015508926090209980169470122809644964342047029749696620808
796885099249021003942333174751611215094053577275155039603922275694831936822014
639467488954795676130163541001358512331502535383543914880255068026246961367274
231982789795444936999080452254926633218146726421671151033923994166007899413940
631935583214666256309251741660359992473255742410806147290197013380953136322779
563051504747209031364559710403538788257283227064988536472589220321860570055353
512900962589952454884361674566260880917018694526928253774578215976850262839002
063007811174960673149385810557719695229596715439219181547172563913479178116410
597276797237655190290764231617844625869234217722796521140059870693384293899809
809858621401477266141524234852809406576931442819910651217221588331601253408005
134723879302315198341478847893006072413381351620638908425797705181493663361555
410964472813351839851455324161549987457535266576313739753260716261635516554286
021672778905609807115608000406953978246273141666684455840973807722022483891829
975775637151538654922792240306625055930803443686838540685618725686209751183877
373728404348886483840861604480690325937081663492618607819037177299393390581997
120771947387480826876390153442038413676380197570624003556058725630607043226533
815307165821102643028518209834622390611449378639438442491218122471332415582310
331192358210207732708845211925211301623723863570707610171827306662154804439920
237576679117361246494116360927445615055350736250803907909065620570654156623284
321163535377720622455215780713505417107842241255429203372981549991832033954620
831677460567806193118535616376772835099993655737810328273068770757531919326298
114747534551124657033058971269425054260100186908553531242123770179253074161303
426850919259452156314680720954358877591293609604872960152493036560298323635763
572581821642114764342603061272209055731114602463015681519115053723812569468826
892733072399418616103139680491478909613069974733883157081413740365079072016970
700198370356771430008109886077308140062811742863967160647042426561331240956496
129110766451292613735507512905076611018812370354073949052562355717975848758809
966413276717661790130582563655450405389649450581064249798226384417049376579702
236327346507040682819794994049217962552522171912674446547775781022504308176086
270183314097605252783632448588307403771447834671699090013333542904142930918293
178994796623839244348869376388616385496624450524589263866851327970919396432113
154819809926224926330620467066950130633935250516992288910275492991117819170877
947362675507837969304315276875025347644970833202887286963539140714077988560784
659962364544643365331608006478630962070781957148476238156959361129524768076023
412865180670270335011736251404099358539614205690333398978276557226532197480986
248566462546503379828992576627433967310556102890816105791322680086040353740852
096921611937184453862523858629729262331923974552917980771486596896752400863190
624180877855173784368769754416299618606444000705200189847697697957260727483804
689546175794313923417525637763582404420065142651454254456166718940617028696062
554458223135313327815756964433456104833190406487331580476723360961957272288153
709649111639278776880736744491712725504614266738843543686952452356299810126651
740001312805340582265545570542754948672086551600784952521882844881594129038771
980870288929486989909533958458990987989134923646085475042127165100446445935840
470930518443890092160227346515905629761674451119084040761396425510202807187681
950252307778635515209832400330679785799289249164916194610333211759105611020313
401480555310298976544480019725931678431986510222681689505693900303508909630214
024912953209706755300403337776596257444595503625898037496415900552559404792775
066819414529661296333838343637135552648044875367737682351535410252040263508152
334127604178822932761851693582984810119550717362797069299154822082710601586788
407053023952022334766528587945338196297057084616109554012423974505402583747232
950313976147834646102577401815855691758565020459181957570858919002174645341645
133821564479853896564545360997402381962775262494300167498804293779141313592229
493621209208458159237483820182447410647046724364629122523298419075202121602843
467396635059775169737075955638479266289353988625794765483203432911310138646124
362565128277820989900983214901986855898848281804803843415190919114522966692279
306961444304297657960388347565676464298154375542571650101816476346074967513646
277994726776037844292815239275177165772281728647569364110688904922412941560132
016521925488184846645631375851739234890725444827802511962700185216333542456478
716437625755715150052259811591076372360864235453124177897598492910271979206240
783751781374936908331932724490927535630772735882222175142100128833795780367573
729847783171498135261526238954361462096813851526076017815257031566902136646465
454341535195822728249293956764432926363346670403101925589234167552521264365481
066928257789094041139749688057470681957704692205055997640234695934068352741144
410088883976117931160058404977233810527126581258842945950139341703876497708508
416917297067475626797000645149456777595154425999951852305984720169537752466003
471163336068621763931748457205134775490761477317627718254054841362064185787786
278679154143411240752524885895649578554991405103507382116270352137103516492146
291400915806777556693027250631660235895686629846174713861143674423545978967284
048803619064000936012054983582597178707579125138281238352496921448577936171891
894540802708460489449474841079443916776812716333481806238111913926307778784075
743391582423530173491685226343087294109285877952910298625099586788791896622613
655081855211930867672183450170160742907857891932825140591735032173841536205180
140015168207599881298086348177359559236550151599533453200166958035829400332508
966512245540188231515674570232535902399555698751297867080249841879442229205332
563210249145836109315882042289346236000773215285506738559745577772534072831670
181420376132516389173612987634280088116638384237119665938526465638041035033035
128581304259123557232489173685387433798858521799820884030434319785875755149732
905230169509343960509954878723552428734607959647826495840604324938682650721470
418971477896977131702429443533295167271993470853990250467373159473689260208369
162858600439314672047756785908835958075400684870152360301710485211598699510213
384200912095526115095273955882715439169435222324106606281084001132510698059821
861072402430179441092614172780263961676665303188453635901639740090075087288263
126155555852297617801072718629888293174279399993997614950789063188571585199457
200800315457417448895960030427620903965467471956971740121963038002167503593748
480174774374407823083537269961503484138285668937232588771388842288661616655804
277410849515146970970607413464599789334229129999644653630743987337183416758831
343223455296244087377125675306248000482240396295489489160479657551896487508527
712295958151644847545139816900536465524433282844784662274970346894245186079812
488332502924815869056912706410819532824576876089714092418994149307173892505422
652283064183874447823719491627538626388427808676982876267751889429558288882083
471970654751227802460877404006764005937735351909852496725418658755193465130845
103225549168320019340756110619311575108857189268841276401063481043015034481090
656401938223259770537222945354224178183995524276011874260403410309412947177530
034727631148745441955803833944796044412685449953786774512813501511931703226588
304438089774141573835336498869070897857690921886724601135534267375635066665632
809378444107812415002613002945348591903487402789659505152862124046944933363091
995476169296907347413610558284325362804285532625081104500398949394038573633424
232244254784529577321467083333896209120568996597890544567510488193270153141043
200390714257560667711042214615959651370401679402928365712093233363889789536390
113528796117014164787917588322790318017814974200649131858590994817612171387195
257263994245599357941860796963424010420978568589927452082629533075689736706994
233436651653907410810349533025879619414376426386582646880002669946413033610448
801298252201255599096932261835693836639262207697365821268027724137791566089998
357604241441251396408824165704071246025939512077487405964143422313619281165162
283715850676367301254637887544517535464497862573571385298643625667620656413395
205283436666910648677262406684494349879889698601470426583252558533907522624493
259831596242368590943159006158285564416571858358245251581141061103114826127717
404241976970232598364681609163023598191028220381748747940126165864220951824514
034005833813070033797055869216410564526908590227867408240202656215932175277802
879886853433883372314005040478565860496818871958094324473371668666164240480470
215660007401012994118936106480794736076591320011989072930822065361278205865921
509315723991860513874896341863657035717998706520415022474188797602024211442634
089399312264887281609531997337980207483607167903475838900074049152384523436671
971074155516802331030755878096329046007101519927413999520398535966509597952836
660938749127825064917140287949205316231899497172303312177728563678693081747046
009506444625600568103841111164531071656056677384795645090617848260272709629980
490809395704415959246431777986034467073121638252551663554399062022193323739231
554736767030484024788819681294214286384200758803160699667492621650175482981186
268762036203202758875625153536269094695985458882624821201667374841132244072035
942864250046385458613985777777925346010192558676219480962837906125849376240066
435296611601077108655100832438692033649719561352369238010299762106259441647159
648633204152797326388747683308092374919738894342669324369965823242820541953406
295482318147375339253650705473991184910746526452432635265371159898950067176017
172589776449556586610922821256280271745950459163618131408532252868921080747224
973203636940192078282525950188036914669245904585137351611352360944100882314847
151119049653336118775738895950847037029893860070961989604716380679077332047280
101445103077116503197496055643773195682885800399659107750954843810781822503422
624067432820942701780201676418085346073322765455942345215274247066531760734219
858634691717766363311217170115278382311845336353488286658097882456491955709816
622671236593034749776093174935396709937812859391574271139439282407608378021625
004868912853169411251813440673293531405928398578494843560850305468070409839206
931609710425004916865329554934901975663478684472223464287541501970957490036089
988071841679038510683319277213505647697957685743847877630989515780162512751695
689518172622751528492777213114006471621154997162500066777631480520247404665472
448024107458241695327252743082639402296176654752745020368949969641147332462296
057912769944483327129655565354064336518218511654567109843906547938433874934712
783736331195508727142271093914184898808701307115388483614690032188885884631453
643670568200668951945824677507061299963884877304810986452469879841685629196321
372093096157099167939641374889328676373409866795416067495602988083992898990496
801602595084809960565078844549112893367343129483414581363659559996496756929570
625055834790722414284323734535859217757982502804708905640929881670808142358941
382571851169570329968665187319234919977594741823987751309621116883819863325761
259530005861096590910112811861742892831868416930470874804588253094250707364329
697510670029972891830175369491086163313191618927178615405886338885438453714440
443763109628251841899824439468198223947164259803794788777780743294106571079693
903790776627928893489008825380587916587254692761499878689701692047446786868430
072275783745692184510654822149259433565481747846756499971839403679251710158413
286791990009404759702208257446599136209699244637177884542366371765876098465129
522040180439758660970710310805488158225757889253892393681533516627063014394860
183652100908169939484931113427890429888005941495797830375057125376894743046847
326723182352663754133773623438088004465463809055974669501570030545202318884617
877166019449803921897867315890801681135710718763712818394863387714730030632644
082779338125915113271932810828524069062875144985459764139307665651460333839441
145140205714755200445262226794081830537827269497823799444887693061841200617032
474908180600588342711183402142561161934928411370859513717570787592375251636264
816723311278467730321921160063811503326407375149675680654685817715441584125253
956192646907590397246178387827774533027718955680544252725597244179569712766974
935158771244928810109924188641122183174554626698595120916488712986411072361966
946670807351317100574399413023638145934222723958624311552049815576936135682622
214579032259779648385315981719262092679097552729199347788691335699201475204885
784213226653931834552167609343355626526944325252411022917264689179329585469714
322464948373905641067890930150496768148925635074849774952116056757338448990176
456243093376240123518497100547526019128649273546237720148708259841324715494772
757104161874488729346637612859705459637771355312429748783107349691926643821274
425351893594200253351662768183177622741302094059694755184842242375388170215011
215820981737516902008795974847548919484683226818652089437006373141827009221208
012999262461707962836529094835756052539822957606534742058276420819991795239371
873485056775544994568571001412689220280269029447712923319679913142965188485434
481052705460655618522595522410292615609950026222844102684056650162602372838899
221016821977074402105133571539127135234201622272145649077355371581710630097697
165481805094883344705368995426704442868811900618537637975832611057424793764688
534326111212692689865022207558857941486556050925512371152620274877550216040597
068327580304981650307186081445422050380307401176545117000263826834112301524713
691748379113901180307386650365662458148156337000685013535300664378633791378014
386926902282629527609048499262971258265640706020671667508639616976592446736268
305497210403035180319284874929875637871293609303758795322377332593704018564128
110800848408355446332576790536374432832491372049538326146528914511290332883426
344977908316013632687380902262757584418549189657287715291232039080537367867957
776689847767022464692329610011419377314469020308995621857571719527993329444150
774209229790407841130167980607020613753101657966061639998511250430490123889661
262625423116731235587254788818223574292234017496143570663957079406534652372546
827636053537624461279278551529620094538693495687854091151613574205488763965695
091604984543755272825730548906763949392509769943310890028364545350343333989836
017226667184868082527219280633443060094383586435556142500205015480940801667101
313590321666097210648708734345509276341091171489755689718600266674769718464325
119764923252277895121897148021186931341600003532924116652166497513756359962460
749650340663489665679605297288436687369822359854611466882936004982818762008615
876074217459999976127819493518261344630911127941521891142864736765507255542510
136916317459033213684228683076555092915027111358389402512405242843706898900633
773381418078376505121041812900380636148838183322786561244810283063433876195025
470747007444032846252533029222634717872055425165586318704433007660171892676316
270477691093472687362614019797110018354441360902484131265387466027413226100720
685638403836974593231335427733716885444055234847746761279990151399116922798029
885527435862487065436415066624701374571069055691406921884943979621941286715045
595224003506433495249134043817648969436197096947766238901588179447671324303028
365246115048661725002558568680127693579354038893491159385625278925449290385551
943405092302458380511753857981467324287677936450952669353280409120574950595792
134114185287238130175228654974918369475797570981761654037370401542510556869183
583210414585218847606742207285161561609347479427146188718922995635918970088432
501758675601997489496272680705571385476697864173046453523138139301123842163161
619231525919363416799148044271575544831846990804684121717691563243832661287075
341446816998384434029137197152158356060633926988874860574780536455144238129228
506272473500484239402666269526919587460623204475552353562135128476772939148470
236715024037978350868324824769020145336618269874568250633369612687242521714490
168780993236115814255914677886349305400919496034008817156342796920837401747469
853870848892014252976345855530289131006186000917049110914317028291950887111816
457546310156822597152196777232017989528561531416196828156034317782460707385268
730432163663454849781717503060060401862748078840608007211661384817612961354972
304935335048672501230088183696574675992316683409271908969003060838412694572390
746200987489445461711342964246469438742560974674348390632876605135315413842516
769273705543037738799459150371763502931296817254375929669254318275604791378775
853419980968413533420773624030541681882497057032082697689792229749725495583404
188177788290433904970862113251705915899234741603452950792271479417418259836867
535418246682103332050754808081790856503585913444470240882272367410972449536385
568394298626886933018253285153910402518684250089262388688715466127020263950056
010413646029621150217306964085875773041650244554255876308109669830410297851574
741637495583329670555133404516644867956673956852797037368268343855915602837995
770792852099664436778177922321183886307868112450035128888971099714919043336069
833121092311549683624004538314300587207462227174312942950561836540266043152585
183753898616118493447718406131610751188420009158291664521203814918264293227681
285586637056690327286810352482295015723802270882996573276515600113771968571737
343489893520117224539773793769241815451576306782406378996819941470490409154042
084051487738964020501134001075784706033848660011369893717893639855864966714479
200002759559467837623463878394310590782958253353116741369265359762019502414103
857774051385897873696102157227870401517237656890317549051857295888468881866314
910876682166173247254042866503823567477493994495924574882299892721767466221461
590243751449503356329854282069770690214592527631580014732726559838210775821923
587449553779536027317984965339625279552503400007583583063380346880124243497789
334641092295119118016060408918897556846577771322881587109845787605965302603727
784340855134887574657289530650663061158617887858072849577246622290448390104381
300259201473631167777107569038088283298324229008438985782192465545810654783501
892285884651868939598870918187956704358923235961572522144513912422954187297833
601094629544561228938489740445843242753472291116723346887840637219064116525184
789540463156439333827912228127431823522160884864095031719027268050650480529252
372946229484555884395168318061511703397383330211602919849647059037948667353992
187279249528031708049255035068520311967139029195336613750587173021477436208216
086204276535704517796129796035039691479493162167003069033597797693833828221503
462746351128796260746905791581695482797339551167770754574678592687651108651500
700718229061188485831402727869943059999026648569362139048224810009307567672747
781700902163600296489846938434742455410609706901798680836221248607547155635976
860412015393738139929030862464325727016006411365157290536725044495034624007645
514943435171774229548171796497857079913624184929001577008411876877376481838407
657573705567895199611652075949728896639070531316051892030101805632494203255376
104419562606993175198691721858152842993102311715480854731391819201554392410065
784936682813838557108895835776165192641257926603477563353870280260221777844225
599742743996697343668797654893161577582717105524959867593150874228322291082705
409084853465966089225854967838920577220040202351713458847738940058168833000510
250095225308618077563159514647955233973212784954956768291892615752775543801514
119281822172902587675281914489044493370334981979118468161936984943773221734788
310101671490742980996285512902943231665458520905231164260444341219959404669391
281606113541076986326039787913914010632769399152413456447849104937862446826651
588770389468046245103087618042126156536290853996058829719473552713723999201847
180501862558935825411181301510308191600176866427122451605593169952962082489519
504178505863812454618675177974153153339451655949478457905543525348035167199053
314697117338960031308394720405613476276528306871239818082807236363889414519777
505675017934224566321938496996704309632426443378158995691818993288228433030159
591409402963721769374456921170831015048713710339856905589909195305018303716199
923939161552363041383191583803576532613746856403202516872694697280107517713888
677074562865963198697299720007655776371422660761951332009525835729245171257279
808827013448879517330688019066271563271873846040770395461887381441565294759700
971617589057983471359632198423109178446922039208101294734993198794133895065992
247740477446684156447392507783225176910619012202931798966476023586243089669965
288542063303697147505165235518584673515994880077812765303763592415415269000965
053692272600910948652620841076662384323568983407076113533226945884574460209811
335427375055817421334270957046939232724258963881447596614631908175788790202826
850115117772060871307315430009001289815915500917110446981708349663642096655365
283545255506909844061563672135169535444778145318183411738501608311812326658582
946812297308251573798410016341427381453789378519887716277240158272819607998358
869740090464012399505325963011137752485671819782313301591273021745982645749584
436441716558268494468667460297456368277811861766092693437292574839606487823506
066135601461395690659705311034702649709600835255350879638277924865972899372370
527005430263830188909652971821092727959807958508200511024068278955402429294505
425256656813873776501028711061794799745587624778712764231353337928894659585822
405342485245409775513548877530949615644131654332627679076107750683083864568458
368194565797538491474109660915871641632306255055397952838806737233957345067156
628185424553628921513769516089762255899310175923191934110571131656664816429098
355823277602601872658938576949233202007415163725521725109666567174122221221745
647299195050457196776640003236178873754197085311408717280276078707860963046623
991937606407461207062384486300905058205791447235829760197934088672471898476421
148005244998372121621427779009545927986429068104050479078888193199129397910446
365699152741000868516960528773390992545699521999620279475293051109687490778362
612161565224885365780082578381592245647189780176019974436152319358364457128407
257783208296454959444948117053589259332248757205146161036076334483371623187750
468459632586777914684427911569525738697339373509269309322016448485136840925727
396961098542902676295634988207058204944382999312635601472463534449913042707114
720514857976519587924695751454905948298979214289225988185312479240933680737080
528546079872715754367607581916563476080094596767485649481935734687862631283913
468500290461372591214336499275646347824460298128923926365386979575134395941451
563084106277392756549090012682702789337157052764502236873828259975283247288913
856234792084988518192175013120904680343721018969804851789703342600821434861245
084331138642644163040329176930594076078500412616507533256210356986274145347033
334573810554193433704201610782597493285000224930185807800641619850002509646359
751615410989286922729837475929036893007968901948292925863385516219124264610442
286045099121710898268545426400418419408495901893433683264854520145464373820924
091784017027962160200277987948282520450496256340192564770645862696587704851405
476785621680252623662857959414619456316236351882692792071430217868894342462090
537493890403828544129713618953721202670549898328521551766169064031762103080071
948596956522233328297793542313662581353096345264434137261873366883976178406220
534959366368341962072312872315147046565255649090019351453056992889286422094229
670415254798309430400161069327803245126778736101752495183672812706099443377940
765844844609724160494193293597564493963968714696335285351367559659340530379027
654637575398859298847171563137390046052705437447550999956126506336469789285863
611738600484592528602770980069057344348433472911969131070418864476832514464115
684408345571829251965985806952239659570127130729225202340606893800723714543738
417154979846065562601261429820442292100037606521790213407793798821984075559938
679373723175564284408545046699342342816006698591087047674878777984974863432340
038136173372109155179633511766497124785560275770949326281940131856463260022883
077175240185880678997896762608206544329594198684110156610117681209382402788298
653972582193558824864293448402002185692448281134450877248004836116195687174551
409723982386927378779175767820700494581308385681525852031021759556548817622293
611064641272806549410781750812446763352807313266201693310248460352643819088200
460238046812732474975093218875463267420553814477039594827916033937608088393350
278635972711782653692013624057517175945183067501251050918887937165183893395910
483735960807769176671374380925689711700239162994996509027757799859517433752094
378401175764553146335777109498441621475099914828792282659044940023561184797499
803005660902779134136210598623502135727454633234472342940705810843701483206464
089308417221051861779151429293816892352522049218080891324377797483073388393808
447989502814850543006638549277589749590394494472370062101712784167423810037661
382149710391071267573101210877939414069849633309161850104922612123357045698503
394071609953282206155266123066168270160576582406279594518306699639331563340718
111153546195170413332505528983343320819918997305377054181360245840798904361992
006938982602499082930098071006162752048742321104943165063406272467131464827071
328269293089958625111030440428567851879519226115617399274413266035307262887288
204625733821384603396783176568865444795294781427047653280712971418906967545627
932570925507783625778345622437062470786375987470948385594508317489168937783305
995682536271403646940238775124982384091814609088326172904534794086140514312927
940774534472573805146258255586688941267679554291363933172178958759993243526528
696166593740757358315973292120038037797048107658955949226097272209460729324408
309307962688926833427882130954882162878119165875691220304550172363945928806451
414723908506234469296874916223540379306840714335555165836580001554692142896148
134028459829457373497308988461613383610137734285557974682336963310219986519809
858564684872563049980441641705805514810992346945034122727418767339068483818641
370469818407171540081276694368692260564446620757747175198172358356035689267833
949917689878770165790792456271430209125284993828068315393042090133161668931491
007182179071186375195912013274325839074053349624734729619886589351345311128024
010217504574450666896636972286713095371599720895893352649509950904272626897565
225917075877857480323349199517955742229469425096397501480603717190507068278519
570374326958282595771471083461737897065613743893076593839260023188279625290330
624031112431056496446028704377236315547150330498894834244431709863043136627048
432721378985398718409080802006549896922886707119888863149375696558048230392448
856949014659513290940234255779764361768390668454842986927112049416670086359567
540558122305377275780753134469435362627705487598788445370820421424442229509286
863414187741050881494054157700428139670705814797219008280001499043301096853207
734564423210742588585031085897623515699455191686863124931700755740342346916282
001348875512330602552575473386778299105837901288186159227448017419470513145851
805196322297353745821740519671146364380504774012961199096883625108276868874949
203985612989358888101941611673712445725875864754919630959069719004677749356919
685516177033132092547809784388913622523906746771305374334070952085108153366830
566066258162444027003339761345736160468284881154219107135109968615083514367424
568864642144034344339564270092476443602100479376593245050421534388379798191670
634623519474864216830317219190191543564049419778121259297644371460663788020605
948210423798984747430472606598085337878462460070271793619086491171715213819201
081153493260235626916421383906570899629798576240109408391157621786671062289364
936186935060472717869077714300219597901284912853663668408215225161275229730572
045363879106233000853917309254067345863224793222644299887128047197550613742519
585122871386574410146261946643948623798737021687362688297510262366836728583888
780695942243589443845442058763177461606389331150100714511927311737917200828555
463715882353857349669871451922603299766557794568670623320394919266004557281395
279497715852143828722677380299207247701490972369873245708479277420027639707304
035785186737398360180422821970118814292813920576758821840995548254609727113022
193443648974585832897624690224668083524596391011245090946845764408474267415925
243168054103190016855202886144245652817376839713290021942792044610535389249022
264790093905106280669697619091704348717077741732266429737229118166420774816265
545277415551431607459878875126826623656913881905684371230646458348933894456008
426849174320472018495598068773032876080016610530197836775180125500707943060460
357806116778996770762287963456515826340007996671291730164369267881026546350172
181294775922579572367248752424309367058796412119696360572788123440865163525167
932567732185615376973723645079211185557597937494748110866298619544628491096408
450126346391117044208152393545042983840652250781191967188155298970038221775275
903943908779889698498271808173148163251611481316283664052820677842918825321004
442665338388603263410511977217865788265510906264848006793961423567277984241305
822419648179001625851529305700060866088854868132359846498937618901672194815993
903935861658519845082363401300528427205402288503782080581815483556604932887146
470637727901984283245913193991424627356151807794658968271880185003724328791358
730203671324442098459661761293995274659098680972530532370067352910275573205927
332777965442838342375389560933534945393022894918489466979955252322696865060640
003289457236046488592291806470658659799750218469858764872125545926494296822149
830276070541860872447417325459030842243519061907922842288833293301889100740404
277832963353883035663042091062511848620657522339878931872727717819340275115434
790584855894006546879420135137633605659155860086888970868871418519969371761207
741307400472931037153114754865256448386611996501132383847124990601461569680548
049317497553467468784117998282308845969473786399470846825939198379773743648703
371490139872381501574869831739913522734061182830005436771039619869832562722068
285823908498129775766991230124180717380930349134459545677828559674609351795121
766753807428361115074922236989336966089211193311210780624541780904844013285381
031371861324933236851572833550728669488006991601416560125575809653020662704611
568589932607634982745354770933338972805849744656471706943199806971704547634290
163731027619189579370231608178387806707731828805784283514538916391931965362624
779121658175894530103711028633036071239745788704883047795560761394290382072842
690356430097301860104993218696202550645516986627813498404353718823868182987113
291968024124844192482916035774596650992134153538439469590763220172222333638443
510508355064891338678361351586111178750238632822740024443074323704713050393372
434157700457156608890422520154728066082141465652734268032575343896406574174806
415114362549029651442080023317923610728167565662117780505117846835447978029621
809594570739737020098593948830389491584131707567622034630040850704885173549044
543298483577435201456846484905496801861753488993033780215439719418350342306380
302044477987825309175048429950252303866839260600370384309183871164436649717540
937399662815735953906952982232946136778038892343435954926489820160711553753224
712179369245169600717758346342449667189616367392319155418270347819869280009634
451523928851248188751923662689461965079369593350999643879280881272669205166238
139866371201753859320438655687588121581592675334904580272142511134365192698955
792246739878442559814777063064268593452435189896990338232797191407093481788927
962853440467513306132304057747450737688257250520039813268159248031528813456029
409916503944856629911749040896993399065652815273058128611821694474334392747649
693986832721939147041332595623527731349734359073038157496023825324282341270687
971769103929670520967279090778283619722511057704816793105086143108450797157325
845515951531723989940384909614432629197879775118567215706003541610515934376276
149673572824070631498154954320550378390072855584360891572653510361750898463938
149515851162350109508018536646227641794396985965167568287266818226472028410821
704249562303265860039276838386410171704090619760251226408656426710328290021950
751005877512688070500120576173094102255625312776555097882500171521177042744156
203019698733742937330274592759065941256582524937750575234633565273803078763173
781839260995719904856012772120416681304077259632591189851828598558455343778781
134513790146737589341016396604411887957721873852283081058750460934123145193829
003325221939016805283732090678767591535962409078215918298299496396859932469422
552365277896473873980215572243958580253114853951187799555348401039458117586611
046781561671634936014506397201085684920170580595749371136552858800342091651212
640223494239751613728163644125926309851356255072224596434540024248984029135575
400755658840528827845017037750917048281449977452680681141847324398167628715333
327564283338770051171759960279644653077888638238931025202994733827552335819903
318595723229919361722184746576549489441715479440016767236556383965028214329298
693025294233029042341614471474686774761618488767844214029579452348126772229944
633076034588163038738054895559652137598056178622150284101209937820658373128204
178627414933045608391779029411081207752325430427399727766261857553284725941813
275744297402212405178865085737339670754415867416485495803535885031538624466939
582020603186744617644787009094000729391057529111745495187322590173044033391648
161253748622009209091343934137488681595834853130756230910121378630082196685004
470346353960706284408126965073158608275364780566857822744431130088170533951035
535097780782736587590254078711255243015971308860129131398377509161007116569612
206739863615248444070763892082153717324643673913303165241784211500499366800457
681095551371988305542514581678991118755407557789272449887752129824092405380045
042503835804202162974121128602876382341497025511437964182393170036234836863307
160539973597483693128666913682437624811445532556875279820856059333354216162280
087419508143392092634380853554063462357421345514819258492575677777623251293056
697395223741374059813323855604614849073109486658022081006838886955455035581625
870552580147415096519921872105798832000087428851290740205441308768915799214174
765033687195362815670705898587170344027522201076904345884708378218165926146914
271621308500593521860678191994132951035921959534777566474759740037039867933256
241177978199314414863528847354960807135932698184238297465060633581712743726234
961068072412890447790676059208386783177540969553062591570483702970246297163593
325959284434494568939707376439558550271494456758972988687331061744747431934181
820628534816876868512099796712822871724788832234066410079175297419291369004207
136734200282938105221388463538206851452454169563850207935322761803621230604192
924697946233118395971793653010481216904504653415022792894519189766781628967955
802692900324194858720978528806887914305127678642250918061268571971221377594940
271413715698348088853999155425159532628249517856645413289867676058341155381362
966181508449771926728296167192507493021701967821209327022030670960495557590337
074094736106999503030884724974645302771189704913288503976894160403556978901108
444180649199632461318001023472580577784375589638433132896977781365976970962179
092198047339024334698420666934940366221804205320985051710481852649830642675158
551172493428224198345863374298806453976633576100500874716839237731466407643962
122292949225832485286708706686277134388945756498226311008681589114905002180767
263340846921297161147278749860663994532069348123416564934413330090722426352941
830447783148591294898477631318436286593306440354278882934634957254158741743867
026679299267074727236753111043824745575529837771580033949535740533508184637517
292171661632929630227658007111345200660230529087235567562236471370154716601321
270365288444172861660542135935076759777112681889033334147903724149086892396508
902674436643752371861336262505390658537942496957182444291798037250821266783308
512630089139343931352230627123797700452765217988666273082325319876373405711905
823380169030998917191332414203224373839607435416590705848775697843069413674593
911145904445481276387478312117818551308541078893748200544424394758126731918756
345039042813117973140093505257672849687308283209866785958248789857632084217624
009111969615051725261923415652892854803213827547582432530354349948692194860654
497484384428074454905225186566187102451560097109146736554042924500154780399171
542636925968823924372722922002431925194290802754431748165852835103397979991297
494829408724926928383524392042884129444173158968916769204176057943501811827544
729780761627854900171844035328355543744620806798662948528745065276362906993256
128352960240578009184429035274483984372603800052999921289425276530237747434309
242132790339012283408559768308362647968251257467863230835249408390279807214302
675734135070477580320938765949351325485231045590853423240700356983199203692381
705984800221715016277636447363280886568883414775783803199273113643147730747763
873077732164330667906223298735923364526748917790670292350803545634660000726296
934709690601752373075339828033624078353769953177609158686715891272219147993378
702201672638227059002594329698733428918641502907666033495365171324550441672892
422561317163458630751883364231183309765608720049214758458400948445975207434894
898906523177732650672036822446810205194134372907015059537061611361560734357272
901228660406915645803979636363769330022151335637780418439957130670449023546337
945917909598125024837921378393580814409222822279603413866572691764844600757417
341043054772973096186947646572157956415747084578848163288011145103467521914394
292467087439908199985964001375558605498685317016464246519891191629397877272884
114567344634982451324497405320075503768698424887385166452447174579317932633180
169763892302206105707595837736908751901869054542056119221775906918356407792154
959971784615933554501539510988855171704314716640216854528644825892415927907226
876833912552760544261378088138890889170020928007285889733378107231314030236913
439246163866732630180287036487182263701183119308047994434604985707973527698615
945474685065285799665319301408109371813741024677744720491519378252618659234788
052124642728888176850419483231779347818957745436141340732394181818716686349020
764423055964155512817243118544003829396639930360111334771357938126444516752073
073846709431766021883274048124648220739980296974808498626795909207249945576647
145185985531566101045831275456059781102840173006318835236381626373729282694879
155682182166275751647039551495835245142997194685047710377734123858883010555194
442708261371437997912061353576788784815613282842001662016227802369702064248490
816659959019838519478997235964692763674152111819448171556649442300404682857263
547379486401239124526320578145109361341340252428005885467657499546143313573033
768039894641695750518991578330917110403423890503231565989032054012754746147189
898476706294790016445368151528371408348573680646593872294894486133538030595204
066004979208247821174413370200354490696355637652373755509103185643053331068410
166403282234267292588709621743464003394406733132185423805379285509389704367863
142038822281151349733755380292097268037885741438133499171820125867767517368920
061801567436679420331036080550286909999069606020749413504452535161512231271958
490598865840215138265187422951360771106901710244719920108580318263590579173623
756445975900002419973222784514517714613218593693328967757683662441825184273016
540235706167150392327253792507048385008138180185184899256978222987340870215381
275202551874974981071080933836415327455808756437932535852774933405442108666902
291988898616328862286863210749915854338106426268988904087423235916413084159278
401997112398642178964268837999740159683131534828873529846550089793094584674379
567517995582150121878416812406991680388686246747643207678203817056028752298519
538526200199170311911291138737002001448281126780810334958491268782602610104226
313363100736635548285631261318151123915604754051018198011181423506217032360987
135430370415881522916649489874522258533795314944072797791787747759534897219584
265564039779853701470375589515725308764861153075516425709322596000817782907478
755401489060128581660709017282348216098356781197213295020283704316464437636294
975835419436964268463446411914369134775641183121169260453086268271920752958082
980427685008215750361088001713048340998516090301907483626729672039180490328483
394020768050516184377620526497820336976051829846481584111252526587316634423628
359789325629838845273329745888253061903286534368609400156263063368026170238790
340213071602422311544586813849457700694203579380919944677510852809278840830602
867326997059477478465641054903722871727197080746315973977975586424833343983568
215717877382784640121227869922017407001385384680470461083877838499141776123226
717337407621105805130919873703384604892123360624611223074988086223797875252684
301279643314024690319146317001944757487002583590133905418053210990416237649194
829304079423376713869437060273643846110146922160497254298630945561400218961587
053578355116091821871591727759724908950974796625183552456972339374308420615785
723923886023598251020402791935829114741322563885304173217167999718237006391052
339845166693626672936100628053172234654934908563455286943636221479004044732431
174741640964951201844152982780714306302322769682707881861987253620883817537720
391411304106286702168551890710974006125186623950724168310418178412009883713091
379146172514021837385009970333971923238309305546431650141625705578972927174752
710752058544325672921337089965685371889723575818732750640892502849999135317993
615538668110437173937059122258374373206148954303652649021294816107729109485771
625952894790317209080288955427327457876402578502765804758064191791836792378412
489080596013766517223267619622588045230263449477671107096896429303298335324097
707674514098958280544913859104021545172986761415377369536315973936208066309111
475016979331044511839384602303973011824022139746863133829177470522425194792545
635994014594009002846179629702402950090632407247543210497455620083349388194837
172851155917349373065933269878666675275790726451582215096724640673422554833748
035834092156196183026723600371235145880459919604131732964455262618151664878158
402544005901186053810430262294558986099409243269044543613345817571639189379543
786889923433492839220601894543149554101139739151075292281209713132731125581728
468413308448569978391143274704761905127817276316512779250789639595839258899137
714963149245109414769518305311293492600128176449996743578390130811060801417157
806186128493733641045856230332366810982721170668032909642788497454290586207262
657764975419204851019109791977896711333562310260735857612921111554100363049684
879904700907879929282317834087289847967404768414900537915585475654470273834941
688248868667570821969919280814225931817111373766897871947699575183280310226545
936361530664886858281391854766762980448509672057242783878306184044421028604125
853110815495633172116144174461676047145820135841677600649603160903197882132888
025725648126358932388113222315005078654952105552065699910711032358184532386060
642703872780224314302106936008514409704601223072315083307327654314419512938902
901959177907356009909736228450594383324089392397618746432065558581587415308227
847132270346662155435733374040575914136492004630683022241999899104702845498283
504764652542772439264717998728970872251000433987563256587554870581266257576244
740180715589373179300395148283389545046456612538259356760620904296227736685159
759116448542819762806521230888757006620134989958363116545180047974752002688690
333497756475992409716309747905281638960352939464496944764262152226625884050456
711159101620164122570815289987772205986860757113442865909346680931951342572580
058071509518492980467930536613311270903438177079844993153265945754959414425041
921638747196845641662237238810509347498358470915754846392094784346717940665011
423530736105176120433670499004126194091724714901028689974696852656228161154995
382197011626551902820010668466869895524357561273706651700632944679404691239655
171659708943250725110381340740927893266509983549993678531959833774381693891802
302566226830302068280774990117854403771125261438164619352626414175520722245632
865817525083560883662407170201528580198472723151923797945806648767024369395557
945390279598531002623826786414691877025826680399309936545173905884703247815150
767854009917594757357551345530865566707172887290494713193356131922093123717431
118553751246508889713103451117032783412820370954687455570200596924500642344287
877288102456975965343617411062456751448747087923024245365061863589572940400419
835188525980357560649513705908940424032713123886125794698632424116029205111001
547729704023297538394356786895793425853793717629961275137513300670830253189670
537882566563569809479269832440118218705677519800628197543935894262536136013734
427008103854411492346040687121686347703213678224497508323219775815838854831260
764642207056162128125742441789432979409756347913585743817164271084215041459849
075679328717482922057409053998451320486308354541905557672380331820731337926694
387350692249748824393340063399271666605830608703901773913444510754660739038848
000195485921542341264615158967244369487174055728626281120277358701165498620466
113792549285741505265659722433520500483489997709992519247473566022632453419267
583512918541650315357483093900736463613557514412528256060162897911274911223675
811467053277249151488492639094304608576913894976885028883997490222971601936301
598962462912434504040943376149080701770137056304457409267578227715007250183536
594287500533300089641427575823270293298232041561456080044949041418712329623007
978220233572185720933715464507045315239670301837599204175253077325367980833071
233417502502562165968997392818950747209234980581464698886546722958412704556231
666287956888181404154451572989812883063865303121945062473932516803004239971227
592022424758363755358288254933469692221931875124663208362715396375111689121907
915262614301969220923185816522289741447955221033147812753200533489904073507863
231935537375044774896883988610961285637356755353932718771352541442440807931147
273619179169475452239364583154494992640228075064797094362053729800561809067793
546839236101117293080856223174596225226105704318277598927945310662327460564488
742574941980554409075925581432420016077594213813095249668866382656046776730251
407930004519586561339933569288476290613952292887893958843533095312896147402889
087299457685905209843382872832549366979020305299982172250196371380743642420253
633614942391553658216505631115057747152768340040851248825449033497805184793785
181887109940837732548521986259994495789241186485566190631913101104272337934258
325922432082811733519836294259579755969069647990144066127560508791011461262694
837205571129690911821323669329168619764506554671984942125726094355636044460215
853566019058248976632091678665061243360493284560828683831305316580026958360094
789612438121839776061719007424336711290517558999972177601342426349034743300625
206859629625123100296865215371180102632307784487765545311332094913012502166312
187647979009644694560662822599362044978248112101077674081642800197204405371545
596375914192548441475559771053050500378979876624877255722347702076449390707067
987885863983639905206983029926270638196752990313078719179521429813213234427661
342426023907111645392319979615830639881514402909002058055155462392460255675597
276396834573733990703850387934569735766017904900585279838415855368976969875949
040857144815222085710596263363872196725413447394959855363675376771038117297035
022559173869600879113625780188229873308701171580065952150182979490657052004525
736478036172018421927151206449425925285893423107636117355528783797465769197728
090874385761384646778703774702396234846840779130446175564236104322755628688832
629366407691391816625741339436873943266969812493387551929602821120552024931083
341879943597638506066046782052971089069172942802523749536677405941419672171335
442877928107401293600048110476948337164438992236082589331183385419170108572580
441832278009705143471108608221613696976277017036528652302744669739546316893123
091176961538660646602459796787036400648153889641130586502124886425290601128490
813661311344121106890784027946630805141723449874186789120626651873240696059633
846725695602728909476115692838253294693932141388892337647961598430460293656705
985969147980153481571527716902800337695065344284469329123160981288520759223071
395510594599269732688577433016090364297408220318313143402951046812010581093477
195972377838317742013945555263965117712751413040022105515910218722130451681092
056023311917846590769510463976940191733443952006155669953627577438586521620474
095863071325769544659493096369044491180525175127103653034056834906474542136969
557886393895125308629272837863102237145876967949996837624775754105612866556829
168441960442059327845979982196298178153833670924340678048460850866690233930922
605112558924793279208233291364519826317116717389250766875351625587867794319093
635464550085116366577982545014555473184416416301313550776317471043303201308650
429047349831925152160054846853845787024427327396883966438586200277807835985087
517242082730416267246046144387166541299556464109438305152753673947802716851153
068517833320780946042484354548509725069080566545572815591142952038017206617593
310162278276203215020006150706443924803659292261656001516949651515033880607728
993769738152774952907442407033447169882479539366125388923059318593323523671742
308732923491919833753726462666182028175521656664477459828598355088910125662782
983056454386496924686667225162623346398388459508403900344079194985134824581970
986883814159203098073263324714770076929431356005554935870986039179389326197316
059994946321900619696137995216343033257369178221761497286136201904147316397364
905658417981380641797259579278269868984406636225994215424908435484107413789785
166962590540044025049630957604685769861880792625257574500308355756265115474964
982625155999893851895448844006689395748788638944092823834928300782142103855766
756251457055343871012640197359981085270998530167385397755618605672448050269411
332122278946264869599899863693751966473145815132849490398061125168403512150715
504688683754888554704737380946987064488894402580640174115749311614659038554902
467526499750210853610326233268567384760003930971405880642921587685502840023074
410062604261594701844610900863914505773912339869457144251306289719686435037625
320503437010340446762560262931476428828796039216121022289504864553212440906612
108352042531688483191184510100922897019907558182643015195643690307967025968899
740539143755474580981128605648232676574058659720810707420219444741761476503820
868544166165177222242063615187132242201007430058377017730696696231568366586018
222687020114707086498270451637299282528361079505788460944787332449151377547625
037588391579446761465124681279740632364470312025632160223789476699359815985031
647222436657757055795520912954777035567838203844249026598064426957446610631281
062759544141941078548761136442693037416538826039138904757449642839302634627169
745685974713460991335384452743681735888478761950510380294226758493689399622750
871793395515033930934970222216753122953319787041710883971697464610816923788547
653820225919846492040486810220736700952067508819941450123429046228011925439543
679706721429084021671446377930180479109961869579245002453679425177195132644268
369945314352240660107624005551746657410171742276426512080623594310817260656817
222221527190526160756963326723891268455580484794852750556462977201933673528566
106888448284682589210795908168536116720765725547225866827271458434672924454356
911424823340990930852562897315701656786014157951425484746571715369212566687291
890484142851630872635288284956883339630549493752845161953005115826540734675938
806839529732196720160306172782614842208864001575140536808518817798281105641561
251913483699584832054472392319662403225370662411173782137160348023840148422876
646410516223658915816364868470996227626802221443194295235219486396247761100067
951823114280838868162600000647330156642053053672954101199729122540512590800812
949188561610539476210041553486672759942709160738889536017253563018109068962311
905456482175092714093199686353414561859600611700107115311798629389640497390932
713084905286237351102385422604039657271103482457196185724533035155914358765793
621688878559007981706846118849109094779459347303732306642367232648069746479406
721559357016661663546803730470399901203692929116036604696347190457618924855467
210265751091339937327667445960779096775119341764126283902952020832943504150600
492367211301776117086428566467239335035034241607204107699186314209433365831309
637179871780427680152032774934654668275166653133963236724199554686797987070882
809928682629852993337249200069114965881525734835739222064875592940483260771843
825248173605985045996353062297929519694156770233454040248164138239471442907570
502812211553780739761677712408127713177963800659398994581888877499071078418338
738590825085243867299555651731108665558185307967151747449070286447524993101635
382929722224296658298140993755135457370284920940531166016138155894966931583469
579412597979185680224483226542236277944573005362318318967867612584427851983052
177901078576548550069594012940062731078302289192167110296476205040538613045624
448007095683275027660063273933899324978362918580220818957306251048006558059962
384898368122593100320748998369601084959730594928779343438566904125916718915641
984004267366517971871276785075070857256009299956184073541039457904234460039176
285558724727496022279019489758962339993388227028068977533545162293962971868740
415795899605862012866262093692535435416631551489240231282020935745677487820916
964457236484571540021112025041855222438243140020344502079926350343523427813231
622823265918077957607543552398466416410755173489858599941764939699108019257403
426298181172449475719963390611041662642654034800832626090220152059087104326046
640262706720620223189672557997373324469015755818000304809390064244375493009523
241695740611355094352289991890711929360452889166312362482110391896142187865408
128909048207540214876931984882993729059085176665338325300882750121302987030585
368472583860711619057625047348487598401368374701946708000085625606472224442591
104054438705252349933350829256173551626873161064245582787334377094566828271206
874905305622675084578138285851192024882484991401807672096617425462847277812909
263698513672510276126848413442120354176066924400251012582172459887364813922731
686062505108039987147452890715618425966681417143808982780626958935318004278912
262574415117074894490418469565917921589758458451094594792489113436779351036782
327524755883114433400093605578017250912480442140060551890634623912078737008465
358444674182315782164266690819493443546618122504964762905729010119267669115769
850202688245309740384971852045584466208061464857479852816043731648489121678046
898034320350704311274192189026526349655230419680967686065148993392854235433061
402419620645259528115648511298104767680586098528861602794087743290655853552242
350386545861924474178341911900961942950165780075705834721465351991848664772633
660125126181650481005235998158836592897883575993544757613410508981118099986121
036841199964516006830691443185735479399204087545845722679431151345766935973368
032654450338548229213779510563773003649919295703715170469792678239617431532911
986161958699912044812956507301915760777290707065241024514605611555069793602338
949799929274293372733732780624109596658292461342508254705042036382737689850096
506826720315346781402328048684574123838972693606673783564847602745456114251452
762305767960777835888324016963572002156692798410653264584049108021060990491070
107899876842724578794372673946319231947833017315750136708609044026437513426760
111460544164426147156041236267494215369664233662215604760689578004314201539121
695700418396421714536210170640721416778961241210114888999695888658102014671756
247860865550347890974637088170553536690659117435643352450973159923667506902463
205711686916436952990889020618029841763346357495291529701155172842524167977895
716586299168158454527778869475631661150722788577537264095822534027635900758444
590619861978014876444094773594141925543610173040589832876070006032918051634238
670974370764635198068720147734223488576898380119910176491097122466541482996598
209512851210857159776248993259886903938266230596611147023350211445667651785702
592600340374537807949080962507020672574464157024681640016826822597069013033122
645249784512852860159756292632677892637005234454016584279636737486595095256611
735719012460283927345344612037385986219606056546441040903957605778533264370797
305392319723698782513662474880470302051661564999566477740946806146480931880214
088197139302842555456935209134402938932533778578374174003889309911459471556625
812717224838208308111720309002638123203666612705364280833804842728938101129956
510485572690501260193031872440039946443456256376830555721555819514256295245058
896822673571812945439543757682842320775442271076394047696708509286041780721488
949648887113787952610038366381859533667661300710652754238693850247902623413147
600478806270638718889676044880556875190470980642375442562509607319055100075164
999964089205690382253412415438955326657053528502160056234974123028302974504193
314501861222259278165992501100398097298730357769421842590091575625748846162945
585331959007446594636475699948607719407506773951508568266750056053521168158375
676865839887161839119218433421847131653138532867293858033437757415150072428320
744125547252146278554254220077285963469185492531048952515532071976568092037672
862901613586461338251786568908004996424402955997499262772736435801445674756675
698730965757059295736812072148294164129377404653937734959623817504482481782925
400514656457919165200895440842910336990496072627230668338209019484671850467906
385624416199510368586092797069402564698395661903009576774661543968128275859357
571357918858424272167311687593608884472329324487538475682274108765006427505755
049182865477635037345290830287151341418255390430298105826401398160539906249718
786669997067319494829316645132801393662461104092292539225442149138204093548799
262609077082735932809693846817703015149990261295425267367351467789851890544458
990838696625935425542442280338290857932258839550169593967920603562064816378071
616561605126957247605207563260005557985397238602645632491392008002707676632808
162193708566292801613044568977403318406390199396272265235789362636881769030609
441404431291107004551646475923969979553420013945906925407801588384137396666744
758656754284793404948868141819863621957546158379093183117005462170581489524517
571454618224702473467758898778947495535108986442566570592468759087491625018106
065894104292497266546857722638399693812986452981267053519091307847372350163108
108845730533018395094003524098083585728036649722301443288249431890294528180325
746411494641335319565947800313318587935560974146849535412295579415291310884878
884903287445847442152124392576570074501167538826208306653149079864787277779303
600704215525325167293000494427716120606701839184310275269201473127867571049905
839039639922649901548006048489931709655693420137249006817290364303813467613254
474859586413221486292932653905305316704947752877461356587665980170954578057704
142128551584119012409461493977381285297609029024841545176640781245384121747258
281068400887237137355644472634449235957121063929224277233820540256795934947419
761941122396077973054749152505217370215494612473471648190411710145678789936290
021114212334685132328228147850466002210421334680523867061653548575151367511220
326240033243612363889276939015004226249479147743455134731813607207124882098932
542597005860593115393927248777919968772867338868323440724373383282868373870712
488674654168568764649419424108594399422480540104820306327358861255249979198511
565385448623029637621965026198456846691430423823623820894271867093439505129543
098654513363134143512592766826243270120842382370198976847852377041492674501716
821995225204198997368045298827775880268454009746921792429580454638786785945305
044072211161847946557747857421324295823119957778573631713373969294930051202625
755456457545308862889009272690752656181166990786416145433632925914607989450181
380989261727628784364829191828698755358661820756759952628386215717488518466386
914208981392093193044128268095594197661657727491649713673510027387705404990901
812382288179865454946308235471443516932338428210704876131675287959655636928412
878858032735348977977146759784030028408753662768140317065576866117870314510367
966712862537566117343836550678373064964263625350070973792715822172690303045452
635085413255084427906479826647244696187692753323375342205463790080754859512223
070263482054504840125331163406117896646444496915958669734333224820945197405232
589310389919933452103526818181035009340301370205556242138164564084427993769119
467926961132346209647864194301299698546492704018428849816858867580626401657795
168847183423077746418117453402607871454111853656459559044192735067056669861694
010781990757968970116862375255695242528391238086826532036614383913458880672949
441316870626082373982718687222994351867655140443684866260855323150057557757042
756340635717693476419218288326604149643590428778754758746169425782405798547099
311983105330645159104802194666686612465656692314721306906501342365859603887147
556756437929584664048103869269509708584570119044035193651050080955042398495227
866732569427989846633017192747546619910657592786037970380646764102047978738159
958452495188177712698196673279893322120110146473220019469585551837859851150067
532654864422320092249926344667984220450987147679523045963655846847181037581485
186899201964162940102420957248698078587282117319192742830693603341950132532069
284158565934363225987013905962962815706296590797430526526221115878888754324852
242349483679880262596275965789649027087383116067166297236363007956597698102924
790334985886173848116015323378297824520629112658931400290688847225159378530894
419294527644636331111716612550468905684150176539512929905104582879643129882140
979793410493021846895933729400382217540894162559465342748973296676169464422774
346703811715750178092222520038114769049575926528770038892035907786440369662482
488850270758428270700580191284234852288810196768374470417800340024230803568000
094351958950058036588637898213836620988139038544499991580476952410264997646445
797602877763371307675332021853166821802515272320066058982322363109753684381061
963580310668803498001422053184699462450048142271293092557978368182457094635623
060891579224041144429781244812362967934945277875203931525603350142957137714423
334357875555339501724998464372946393307298792474532919205888238112230761652777
383333937353673438568911465578456032180413649256671132638080802441250398800813
607288160099791483791634551358705365014643789996010182674933101824615984288429
056192081757581377784207527056635474882408604785104383743837333204969768118365
326588475678606167566246871061442277134570308313606146049043898163558740108155
956176839086085615415311770653673443201009800411338755767612357856028939238391
930198748059488728425136989481174139545893079031277694646962856959395371256768
286717492096143555853887696683663542354780838186079351538614616965171085431874
909982576808880509404233569691979131616057847058601652568841958802089618549572
362738243938649248416235220871999197576584403288574668137712626866567736724846
315475551732313662684416850317007509979085637207790613307820290529890576705350
853942466175888377082322084354739743442706303095348199024261161201042329149653
543132117467421030624836413122986535025803472945879817330091000439470077071214
394122082720415538048764159075717561392413782567725160781391513000943766465243
762375225996849278822127188100795253157181906804776874300483345211133718118865
171500405521991962774326897793494832943588501510230574976070281179652717414251
470319383729634174284983075335543899582343827713692366852607131820450305095468
773790699513769908994596136040731032044043477122401601681518203626899049472980
955122867977948142052742579344149280479983333048323031751392246391872266856540
600539146115490088926137571874149757587061215011989574501323623469815937606558
077713149509499805238939966308421968332275089822065448030888118481162943969630
165579386881793848256411236374741662794163827554599922668442144396117915490376
390063612676875142912507558551240013711314641976430542296581692102305128489186
012886440916562500066604021303309362821240001220356527678485569101494325033902
408859403824883582348053179631247996678848534952557263884349303698829767969088
506642897911455150849425050558587637973402527793690921182914648443022273411744
486123855664182262396834444844804955034119112323702132345257536142657134895863
122868404858197674073393457698309428553270500980078591836722670680290176539191
637174037389108030201663542025119679079254032422866396576327427534235786198950
370504448830607458097548072636834117091227592676643410573646163187739077829860
463445768763312482042352517858481063915237306481372957715879208064489748664295
171697279949107227902754018488959825222364943273542499904313908604142872658080
575910795363275123704690018402727092648600960714768157972964685442197946382051
268804064466331833937480366877133327973774829555236466580281984373318856482838
401994170928144152304176534842951026619240906257981408906092225372128276391264
739501976969218195180756625718595578071200390732101161425498460169976495106196
126382307005449897086128977752730891119246465579512379226271087312252849897558
679656669100126578554061914569413516507131996364481307902300691546640482071501
636667712796793845083797932374144145302332021336675296294976064371881688374962
876761489887632673684883942164422640366251597686487603311186863375911172578244
160639943134937521368891936675184257411560025434874423089455395530964831154469
625223096319711953123145846706856801150025084937905406891819853120854384337537
242595119459919976165936449967278739238641681011879559127868448271290578906205
811337220184265976779970729717036462184599639017058882724180334171895820044556
209444508841179076446229639386800417700668222891158548814785545705465860369496
433236495059376603930226497891297545018556912294342805205886255530205999192684
792682618918993984125426008532366649632815537036007812644923357233357734803541
276648512582749536601433172552306619373679105353769175269286078979908549025172
393674570270704378395326541815141548868071565472080943437479351161588846366085
929494306254966676418063385950132825004965888023471747149299173879430263350069
177735133360664592862819325317325187651297902522398051609026389196370294558580
942301785763697911089937985324989985933249480353545519302776469087679175947605
072632507946992234064815964461519006254699172346443516754414995234426327218608
197945363213897105522465294978662776990816730100671881573508585021774277315105
126949842977424865466060994781976635805477727880061538282396206106642917336358
838536987578955279221665069992536289608948599796239434478376779356983449556477
919188901667590341808782013098391825861619837881824736597741181488217474671645
828201669860657468101070540118418369018917578584399977448108538511490444310468
361155141598432279441210126476317866052061095966679826808357919544790132888036
126686444723794424829749495534584696513237207372647396372315507392706587691007
991784898102975006260677948020423592050627095706823857349840953646543331830895
950286497191254641231750367003971672003759784576774381305006338336221141415894
465107334523464693984491385116892942456535134217206501809109530340523635119711
186215917188743699910024722458230230328203963746829410106963977084602626677175
843428938229526155836938600909802822536000471361919002178252385815566893309427
201789392905331937049907125153618593522233703336897184662612469424363136119924
396661200448104543119991081774369773389783246670468527856642249757313269763183
077946674254784315092330784569496116127874403793561382093110017273552119284111
784789246864277500631948015003452269621245240903705596298100829895541158330986
517383560587061632846235988554216790051671858403156942966506933918878730517202
093216490790188717932492254493034811757084178524334133816509979968837984083367
406547162207148753941887433830540179687909172556983253493412462341634224171265
702492268818821409405005311346805806515227938495554423971744576039395194943173
091622677341885306469962667108790690029984964237788022449074479206689757101008
956466680421673906708098585617317732870810336496671010765715902751482966352773
804959973721678632513871244310351649101830559109177482344225114022126792997185
951382313840767755898394091004179060295923396900057759514713700447293770398726
690820758666640127126361948515293663864452286739042661512661544754577461434834
536271256746319893306801352161884285453448955032056119018738553065545760267626
055871932288525713356740565144597553396038724865376616509522861516514883129000
133458056685140372693630339655083190167245385983752938745164471904161616131680
050541303057265804360459980595908967373091625578871708377035728251435237184949
182798346303482834074810395813045308319552922098978980016075024843618825122402
063384899640375539092571401731468536743274536273624937297487171365745224592356
490149451335816428481342276275967060122667347437808171234676148241595374299229
530330069759797414332806082124581516355674749993106154013505314341130801172102
741637297561908938419901707507936875506573624106104113469608795067620702947625
722977099269928878439523724223326784904891099226337816526106588150131185342939
448015968536684317643180709715712251121462584405944131049931400802586955493999
633409268190168942484557413931334159952604964242550971313544949046323726312640
475708686602106130143602691762743387433817542612917319085830573153083637626066
817369271973285885275219000739531317610484786183934159234747958269575036663796
372711529985731829514040804087840437796983926535858687603605838240183064805289
431950011106366612488345562312843788965827134756267941227002146027022230976230
907678630877042222187856196998741149285352659848566710687379739430217273439240
071809792533771158158118346411051404108582381349342520954883578374452616695285
691985964315102523911485516270698676654976814428110875990011519928063898385078
479464427058783807267699393647076341650943998268814045099583169475011847698300
154141117813611481600372737149347301992938422050934537330711305423598243006798
890180520849271406160757975459453437020779509158123705219275846694188158495284
337762375565336917823648501319079436444242794631189340358389158745332177824101
015921882461637961685422201412482004759842445234564142605866467457923510296084
909118915335207572409962889969971799949365509257258975167034195512365389603971
563954965330183569843080078546890154123061622108484284240323688185289921680407
799068992830877130242635367191967668001241981479708094376782652459480282564207
642319099898932114338037988671949544343700504955623216042668968161446597087554
333783243670682150380428187128900931913811821172593754085497446930806452632458
102292775136373440861327137996266477052693476093785982374085956362659109276293
799539353847292352704597682995041695417357560724736054346059952712574974291956
734004659162665046718241988230313725466909896618855835406337872989222752357425
627748559891406599446762307898970717106190685050625208831349049814159124759170
551256111640084576834443639751072149783539573807886612582758232804891614821135
809889317722350268353997213428564687071549475413646216518354329122187040709468
055201722747005848951468129426917184288204044601856618848896040551346304900447
928304991359571342444047343089603563948927754064117766248098375314507374597506
902407532079640635084090202959938389757325322254897753335848146928874685429630
553296813766333099953576747732957047543860594503060057982624568146422263458911
181614989466644312920182267602470111982164624076829129152204835009691775916808
563399962255729240998793652056347734544476596826992486074066097540529787572182
324334714336765444476393101328088336247470772854338222441684075004557086735777
328334787814440837386282796772201241249409843286255408854170522836908312894573
285225237622023972742509391205695850417185949764724209580427288135417540018840
042674792274165729587131291517311661198092169938184967271397920441971231167825
685927469498607398789962450968537966934967294418324014253359907600538848056481
904350336589248906705825409390381256822274297619324243125863143443598922304746
738092833408118103913548467583830405986663877817771921640041422360066937383256
561075630382827058016545713033093219395533985703609933280355948458087881302925
898095853905487024823833113336397094711372795996193628610808643641993692683789
842650885032341939822178689313498724057432654767402751432262200160680595514604
663906062241351424308046373789518220352613154114331150747896632061921000783737
399163465552882340837278124370804826993217509356644062722806135164067313479551
943746976589816017612163705343709452191623319661100902693531259749107717852184
320761615459266507276359798793546028084972085903350032745080130048043914265841
629467165537452207690975278166535511032020995309268230364754863820724754273654
380367044714633136636348162833586029585375539079080030432408290256547143577386
516059300504222343015409038816214994133273137251894251394865167645767621243528
660931001769397247391239676222444592784184224785080061011289116926703254652518
154193436179453243455315887726083898122161452123717666076616516892456396152838
835018580154555495310109852064910881765954215587553722210486006983057596206906
724822466220556080046066063674059913483599496780518478858686764287330614612267
911836492809653547275065884445566571614920558046974981965575403727611615727243
328755203330661634674688796900375237261535065605366081306488269666480611695987
185959725494659811220761463347014783834697132783350605986720529455886024370815
215781578361803892316689112363321868601875761428187994117001517786184602241699
750677756829174169532555513179383594525792146686795814870982855314663572898222
907297325997007117799707145414291689695212673621068866617771943516911031148034
484850149771335412368387692606352160455569102124940753380068373600071206885796
203167441198432258684233134791642045312230818733550624586605945304393195046199
744582280465754546447872513618277853425648422151910123277601682231222951823094
717209136832311218012404373957011862483721921929125619919688661025809784027820
327257978693962220335082047988555668898412124659013911902603927466301940710098
445488064422103592504388098480622396049514922915385225162017921331201794162369
814291407548141229762819508661244824267200373138846566437821825843072161052584
710813539871965264564201911445893856439419732728951790874505390477791790487803
725626147455103364649851786467607918285900224261776715687941092494658370991051
297756475511784749793053624983135789488377813288109446296099779816745190446510
547857700535052712114234816343678746119655863169213672737633739139417145814705
933920485954059595254225889443025599668959992821147164692133558602221293462644
537402834774781725679003939848312340412641219009687274547226651871077795985222
790389862844372621852209259849543745365405339638009550988130031003019831862793
033559910462094600860364632221358414395378176409291775760564743936474015370754
465576677206998123715406434291663761573311186950291336837954039580606384555347
753755009284559251753401788854709783978527274283148806425445494993643137850635
572768302650408666634263941136183084716554297620994959113054463851005845001733
416667860494808323059166757245444652253080173921003559748364612026867377758117
865866550506332482346445631397227898889672405563531115358335277543433310156268
167951932498890750909502648658701840246771058884860521618334286641828360495498
660398237366208277310721604845242121780191123052059014344481092064738240411812
613649376430802391696243375181603986981139538662242028462311451872387495733753
973020464485634471899413450842904573802955669353554642379569866564334953341000
752756569437861970229464647268341972108487986701379186665772539368982775408858
291873982188299493445986278042290824293702566574045696864975655013831092683697
592948185981904677271997174886644619854516100528168863463288466044854359082294
802198694824589815377681888762067794830136270987399963952199541535479154400053
916253526021547482668576659234293094135548916452379595749431510272665640494765
639561993948282624311492771279434514713560124728264189037427672835116049593228
914674932799623866503998381514132887806693458212880110714896301484512107869059
043392370461753979548282026649734453477829268110068849394017489950197323913873
063780109537904872343186023517255013913579818382152447338486035691255859698703
360678308400423776162123932163872388721906726722325547359166343272092152871792
566033156884428099347780584544603420912770085587587418422740811500592178715271
697651216821239079874550927484235264455133834231796838194963063776223888474086
201836042333890039798063437680750791998376653925028418992138349204117279223261
539353315896378888555286825419633728801656777214274823517387263999940800316566
593555455525334264365892036399233066641035973244955030581728902251457462204459
960857741280984198549408247124120767200289211478076392093869812081937090613700
127659898984677074996097563286214979433469618737215076814917456880243839092259
514958190883992297425623428529705992677841652595721943278510812076324688088873
247496045689308553383199097116396289520366166635225139608164654197677814788254
162466524758894822288408842473373223320163407597682882742257933137573916505479
295125118683404294786894549173327893642290624301638402487991615931678717050847
074375551415126579078386218068247337271369732848703902005616712009937709495285
582741807873725557125649046747582758986272198751999095886044187206645876499905
674391741797005407742860687241857482663749680358920160589644746737158050219802
259468221536194068421574770545529563356446889739344476834551243049286121063439
781493704225587208059977411206655278049697389519659556646217667680001457941846
397170828028724253218957235743141401829250777605982183622583628100429130544418
942818459610466027219107912698577433583464203143669362977321574508747877390492
026765638698027044313147568590525335044105480587575825809811978414553078115098
512910149045804014889391015311172686009277529497628941399761697585833084341414
912486439802275962084765487823405984409744450438302311685240236368334090467489
689080286802969328513736020760248874911800440247303338909339133208216028771534
215535388050915249373524694029077054382173344336324263833850825005864156949679
322046917254645356249152105925932327973950549212185397625840981755388989738407
499419714917735493230745878353719743247042913596498229424623543730596115786835
174090392277169772623757081270882839332797479991432441316527869211394953054945
136726435898354295106369839152404535981366641816019007688489908976118126016811
990427858134369013599496324016458422843253410783892323955002881301880881615343
715718101203914683250726322922162103543991573897290071052242046541553576609071
264347718338100264482641791819114355666842184541178215944344280282167711541754
319874408564402628851036428157281225105191883230859509677528455068741038876639
198478436377534562559608591874441179454525824485499450594552478081861280782217
500247293522022656607235596641133819209668503909262736279133069627722869215945
556653749673054603265280681951072708295548315822664004202078062166631598199798
737292416560622158038653538292088654345969747890496336528054925849865699436139
590678162619774039230430973560674307830690054197792830074668452323852560931253
409969505981646538144070469377418234967000776657070661620804507449850380962665
113936123741185196199915069842039199291375047227179310141561142970063676199064
263838639773517803878059780033849029144551216187298296423590136749424760317789
842072273097188068660365849372552881572000686182286483199913604767020467969098
768980855385471360201668629381912161309708345120746646291037713758557636457581
381585754726511614005066989384248353933498780581525562850340654596514554789184
861069552456828843765015310817271980377600466172656210486922054770610666644629
231905533237393467499078518468271051688068493895903070931590451072773403912639
272399825734167742976938368526495211363884645355228457608644829936237376586193
264990136294726007380186319180840340273421695413505873928093274674441109221749
563020958451749379383781303553956499307886890693346123226300249383028326017133
276833824183727134543243708491225368799781834751426280334011902028726764841175
836403899373530080822918811698849406332192600899220605438731119929991254809510
254967262538895442658987756367507628119248480449939662421853363473573277332838
173580294922528493406863970913464983103189080276151998423555864845465759806715
146954738821481402534882709384559651576141250697212032923627327394400455894886
223243667250079254655407717695459245950459226915350933388194665109068125335648
450750900095411399833183062185123309848726704886627115204997353962888533816864
590492887527917883981917047230726966030117694813529193527660598371931162865376
002116993380790413742822807152930214704679625341632802600602627507704992732963
658043877528810008230694027348201980118546417175497273843561325464113588919790
324259228341528435584886704937202810852526898603086777281579705517367608149491
756053649957093450177656790037968844596073912794528670925311364817813855522881
920301255320918456848034234693609348017168196861155348856322193006210758518033
706503926385588251676917710016299359689654414766094477036240520741638552023247
087228182612619430665866376033064338500692668810686117272597040014970796237082
362215237664243619706083233680670065512158415270910426497754075476352425136524
811919174438205132785175504320599973825379173765425162651306284254081154893338
788658397396521214232918580812825881458491273992502044342428637060524727410254
691703710720065930749950279425366650526586218576765075930594642482756025671619
888038112914309890585036860815329486771930948414663352028463802360250087802627
268724377522292773591178069705048473487459850674802950937646499915848727175271
268113179363442333452921378335500026729698709444973616312440489894659125645472
185150143189229752341031663875506869444116880779062444843298866423001852723921
185923873268811681617027748773459995798749449902362178998789913422461066695686
675864456550809444003427678714706609192127167543498975250975651686599650940953
293998113828677960883156755010954091141567994826122140242336394538775673486282
153567961165786521694157970504774325519737320832667258053446104978398272117319
465292490663726296952507411111388996891734906709305303112123940131160878867067
402062751539480449455473901355575099666509874819986864727656913258175419239216
253646796877217734454502439026150906413685863655769721398383765155340423972751
368648697720163985412857179712884231664570063878515034962316877553251312805791
471101161920326931654160755546107166587904454713903273168892122614461718138923
505539631531150097858133819460331701935615814296999064957379095890960011206349
904378468833161232510517818327297347732455644941030837803186113139151433871953
766384662422990400278818532273643394378332940897446748198171396567896454786005
551842299611718414184051303073740386226928672805392117198140709841224889834613
700474798736521896492211769646045113267389977968091232694985300314366628705370
219352690594263669596295020058784692686183985082273022565295847565243706137825
022382855058955442217753682092095096131420875619318631966138673676969717492066
271272191431565408553434375394876283620434183863437641694200620776407489407577
475210987599895599706906812144438544325907816603588291064465182920193734788362
517016486525483350331228132303889305383692941243411214460210717635733323871496
991184275757637530740692704702897735917826085624128832928600594685773483553505
827978456513709492562583512767492879061242830233868505456349175314417855168766
080735257246239968281025269259379673172113152880243332394144585449755646052096
531210173028804188601799693826482040126751613273303371746097287727239550128029
327674233900654191117891607948489393347000075017753185710545665800967205418016
694243388358044846861767081005309323226666381797924245891594639340630271881395
812492844438149952676045879888765961046272730714471751792266363291658722406663
349744449373765360824219721463013858177442814909271128553472159996902499969701
112729171307689445473847117963794012619519040290863378492976730463825022329386
847632870837614433635865509121742799420860067004609338339351023219476044319710
977778344020162847619146703356878341564086447631786708606395052735484046748454
817815229353507486294963436239952037813132476988717762757105013342274455342058
280120025935465033491497151216545447975296582375015486357762332703116149761616
059538967069080354811729554576112610138135849781377003179066451565115667394707
299427855760177968310060569311351121999337173931554291984106732948680976290569
278524878344350441590982570950246942430762779439369528869090972103796720081769
190177750663578389144579958985700374992477818159740574756324148719824780538590
890577090505035074789027819351418075236684730368213916639951442778676884439912
581588246256610121556616122358554536911956641242958165074372330742088349446391
974570837489495985467311279960615007202705771122490222440877769112355677054263
123268478706070189028613672613877717506117564808310195203161193143035268224038
940060392010654516667027522126972980958113506912730807111927687168975449542367
843240955579875720509036161274234094312178691366835145191928118737494700140516
927426442454225769064017205757943059614335021817228186951456807321472258446154
773997460278664005143465127378531803720140963714234432075394921524515812477744
409522040235115607355890457196009290857443578830507852439524212439551493908227
576387003234658802516758081395250966844616302470759464184968604870741486940516
556084562499982748456275713645030823518938528957802589946525192650104601126725
537448539076409486825700079750081284404962279937220598525620026078350549756525
048569729604875383600666207066850319414988251940573630570828314571064963731293
273907493829225028968241562141200936449191450915535315677476042089881734479561
451254845692133704915838324707255638712973442108268780703536861776478907384756
727097714649513223118110291897809290234539386819318923322407195337350109485800
937239903895360792028401509705870231140166889964076260777080866801472186516812
599653263932954944180312560318779696447890153113621294849988022378172937528235
564931730935540079998447321788075805489900388549746798797906755486037628648280
061083091325752586245456191942230170286286041792799242101542017898328560257927
052753879276869032089019950199594496884029553832878200529719738706250069702926
338577401753240561109356384876221355947052491593272015789463821993037428547409
422745499377493879294203163519892912108044501394185492232652847123276714037038
885436470119692953989977918123357628015526460163629876431963047629431532811700
240009332755905566052229260399855535436438689848160503596343848845422930359927
691961739853794384435798084759957846831975384590008562609331225350052233943811
329724923852494518739666326741827461962780100243101957037008605006112576949718
235802902510258953867862902306702560717924150922272089306666150659179025692560
326730024378690021037029808959445423482167927505421930322999231208508194238495
979878008795112921903619911241653007879604139754984632313026736839744864400599
733389934820007106155377097454700196635941166751939409016537055372972891151626
489369422169269377286677132465626636008295257805670628631309527379157715873275
796234051063467929836948078616141883699806383285932408659675363829235982271289
536731706479013156680753055955790005989560007388843990497347992215853922309355
636598824713899454279152835504182255651694982179302587566056699498619265648029
302593204178784894596920882588110855535590270357927667161378337863803936702888
668210125530647462988017339903157653834185429122141323546887025687574748092002
944391954930657945043223376290739387159424830692089114832148167684212497028002
746943655548607389349843514206852746706910066669790204844444655867654539220253
910198737154598165017155568084837698581103896884343006976462855667100571822519
499589163177980082253380276578368507833530277918075400198974507740200986787206
629375636605054955908705321234108187223798098780307195538071903128566064279655
298692540125815546829577350847940133527800636637379886604965815206805939915053
724693353183723966840435716790531665532427783651306719054560264527175872776807
595255558222197855173941692019468950778038812624924043855278890745818226813868
191116551725083151413328067698361365321647170536448886153073840900813687835043
822165490759885814581078006028546793554270038869083502612682139698625352740740
672688488730334348149460474666002094527368671101900511718494644012866841829709
251880619520070632131233683054480563023488702028316582996843385851354837297724
251648720351187707921154830854220880395552781109149695007735313880291161250787
425155351822293833223589066522285335411819428068222404840659035531438299033289
763117476657099485473311409242456225258145972174350405865451068420348555859975
209726152835565820594545106980480856070450834316836434964624028164598046629300
472400674794562732097474992357841184310029602877633376457597994025450241483764
253268943111909371783851948240300700162117350861931549571105625390555127118167
177573176020182130348399359988759373264597028813395706408138833788798924931688
895903971563186160956248517072251279278880699061029211937498106008239248199069
860605002119186371020334787169987883085866144869586837805144071748348687429465
903898052268424084618649888898259929960118670621718760871223389115717578572331
277952988167357474596648346165619004971388238407099428608601712517669760039186
758053987712986322636483719545218227446019633979986271110239599576788840463716
080268772061960815739378051836270833741206986982517915887680417823713114824497
506735690729710108245083676078824122796907809551622082876546498847648296654154
319043110035409743038614876463578013048866867636132212985962944522836403801691
041116335258880474055583293279994903392625400456494372867244862204889315184251
104869497188859238412031631542773996287946608777315474008395470386492160256868
440008037458187003943361277976847506547648794688955658931756986138575532275015
571001262939850178736707223654902607149167617750016821112292210365684601214553
092071963389344242668173089986927140356499375665475096858899842474776792775362
833064870494829379751723679011909927672730348678829319422495119676189732512478
303329210860768173045891386092097313212880039124386021047946339541263576127566
920797750226078280519265088564890268520272541058242899410507866023061892287762
497696277415965829249647400079181612521208387652537754787059447209013021828220
840220401793033700420061487625013365987037790891017767895699395791614421287443
724576084482142031134933154870642165523333413253063981163716325685790049755205
843573619156404516403436164183947775536029665889379275702177907475063150797538
849824866322980956427161878802188520515839351243647337462715579911714820576707
107489413545448364536933432151533334217671950923300157369031872957684783871216
619260311747143012699951750439201060903766286415720206456717814930142589488887
735824292220553453370029392272232184214972897823631560651385900735648310044672
200262624986134759829897698309880768909508554466821111563499117615811929500025
916780357568130929652183731667123081973069698003772764302920037737545651803030
720553147541272777446813328885677808957205947017688983573648791359406964871751
587624631385794535692487853918586593924640108557715303136840986607216670983865
627627824840650072636486394380353662945708826354109054957225314190365008968340
247615520947466536909713800506838154471754980436807916076087712011461208616914
161994011076504878727456373117296888014465738139593778959473461444236692730085
974528218784240710554415676321115532675519070301017942098373351387233054284954
087058844010138753326969734149035621109289710233512865466997857974830111718962
758857685820872710064785852925955648114071901220746226218211448603186118573575
240852498147551916733902215069686361503073281469585917520737718599557901051958
182396919795901345608635051891775002324444553816259433384564482374360088272045
624573582902314735692367577057564755893029259249686509740758691774379872919473
742638907235502796964305030602025967840879853872708038624703817166579975117090
411121020038243405548165722517620342751646045196593903112590870262358019404952
251246605391554971865710873880828028871256070639485087655081737982465127878716
317512994487733916113978181593822472355561074329463911625955609568838033571397
227960063335825201340043839664317669652409350670429028384153104428350090200087
950414186781436680566734255190602641116825877854355383383405468734892392426171
195363488282280598040056282086480286623197195938701334405069251660584675263490
883605432863438159911238205489487757439816337728795483819693695920683090782088
913008546462537790177925446955114472024839596858679916817470661798963268596159
577322740968373220705943677611460386782389827521965540669154285857145876932756
210850855827204977918027396037399652483352600301277118249180202616744091829027
367034475159105174710506196672695518571728536809922242980137829741979011336809
064250111803405002418617905958435358929244157148663721806540624607653148872982
781932028596074566092747832222877463748138902385831176220139042592525051356249
192274913715809555450988427134866292590662181481033885958403600594386979182424
515686920814160986352884676350317335681331996348928167968194102477622225678672
726781639876848426496123066069256159913334700891316893872952419148196012936641
234200752143426761194267650946328873071813023392090793689058069443492434633483
561677828306118688173193230399993440552027917186723716550664390193384723901497
272193622299579108907785524350597597713650035144434868949304740820390858654974
902614542379611464166462428843525074842245058250703369121223982010837172114739
255443662489690713072318641917836717151746490960759688348667517305240416167028
732230140353295241037182301861869069631319091233369973779669374267057624689508
646830357634867782921369126263612937725523203656076178887224158035734832763118
965190364111634215755535868313283980080525160243980600024119054882153767386622
734566512396377842548331490504991665521746512079610588145552806975024020397343
482894460872937849698622042921920999618944201270329274966196368832649923322582
058329302798051090702455479081372797975875210991791812866182505151989620357157
190396441847775010168089626322185131048827787746625315552580057849255263634900
153314195211110600013449000543180637285125429325008206702999052587629458757409
417075521265859585724221941647738039519212487650758548500529124016484270077385
331691355528880043762270254426415364192893019297123988622436593476342760334335
065164787814024728466823186805538375339583535595441223546941557212016511956864
820087398621719963502011024657305321552132514633428579833510081444526830050412
334485240609992652539562609978528501993919691828792676867262823946752830411611
454223697822614832889447984278509729538836816993252470085499826393179005732403
856419430948526837681322779477867252496153391027523527149350638588527125472940
583024113078128517391311292482367888068986440329091799814420571457151052126734
591438807037774966233214611215860467971277956285197761530641934956105576393569
042572641104500285911027677252037378797474654318340023390606073167537789301764
318150665579401524568916174877921040618211444937256350219543200937464418232959
327011451641724955547161552020703824047293921958056905794902599417971221854330
923878665988146724823673819006097258300496519183615107573702367419799719821413
463948842521717510923631768779889741970788166957795160648775628255936497817679
266483166259054447829372986973157305207148144999269450282289785295659310180015
019389315285812643313479320939886546418111189512178264752866209206941544319360
654643538071713058487743300684292395037835785556428567867620669029391539420963
169409965194879727825258121356293984422505223483873712476021662025222343767324
862289394742846039903267925051984878714508181191367330969034300687463226738981
101664436140356934939308882372005565004461245893285436234672401991697769530478
434493357514208989739707186989291151857756372235845696464362861270179433209734
220946656258309096128366955947863543352452534230031095264026282147251302373361
915344966466638208613906679112745726732452323586726854186093427686243646880877
831020102662219331446334146764883642031735124155326298534251978236418651663052
941275180292894053427676135637280067007278946364848920544434087425077796048423
371951468374134283946000335873422689375636976333107898851574459229400932071723
186358061261608682291663205974588513982859743723291256700491777372904415873385
897804613741744007046598197105827602597858722411916018140434202313923150202092
068453538955963485506490008926828178719352583733527623358142318469804191725428
432669149631901116581901097442881447090177748092649195897301373689323986935726
228050961400282647902249886213251187125928477673735421817466622394116408004095
342741594330708434046975491425131026416756252775995717482546701849349827735716
015081337379637144612024785308207438126457517963282965614173068842259000437872
372219106359805138126890682447220429846473086526568835868176528812424024194936
404307007234691508817568791735338559487792445441567334198497252115442153917473
645107651765524616856152597317637143372486921530232216350511505813172806156847
981382220021915016882461636890563597998410034174712381144906398007238905285656
435345809904488047096467280475901781400884534025839126997666795770018425028301
992539062939871708859105157961001800129985018738987080775378077335275528096760
349144868301096184324015856271635573386789719989136097292090078921044543717986
787305077485012880512452248001108586114636257962152810430271170453107132160474
220456657018305223517488920272765633541152190749276070705917277530449466809626
114263480357209820062682861547367555035837167244954325258263504215116615657756
569891477827324312321861235188479691372463481858637788093818099473417121380086
745753151556321838810942059159653902387843025817865650040589487885056143685650
113877106873748964123061276562638701922280195742850702549104482682796753487897
754184196284250691022998725131635419034929363528845231301606910671470430296789
453568526039347247450691705176641040157578013168562179335073357292493810596301
533447537734391303028779328933539988667295971623755614554699275517574827871414
285803914294237680094796123694188074685464631197236771758438225511638746954342
278487053351166818987244538438401785541253805451385659250760275402071784671449
028753252203406082357691524613000513300374308303580260185721322785454341655470
579590864560408418076889697489841641363493904769271291824249525881123257878538
202092654590720691996835884668013860858806205754466159777344652145703918634360
344019605524739633159948521717441724710420705002766897393245733125263194406609
568007822491877676212154082595962981011953455015488006715894586079376344154369
508174664417796007805609450142454985160078137741991776688652149427418583466681
764873518446401584575730576010899131576175213725774988787490792763683986842211
295404110079550701498554744220812309699072080584574532318594304089241364823240
094137420986688087763574627272895068983927243216220123048878126361585670838240
638490164932952795923146978077533922258741535837006424493246344624342671391475
505958058479145368269684311477697419924243710630680635428833231970421131275225
151559859118060585426426400626505237979418492443208463321324555178407323966015
363099020372873923549586597086527778248468334932135481152028755891752777463135
953006391362705944889780475450028933857685281017678466192801675203751195344845
705135313797921874724388387322243797804722920994970996068246439724554798254737
609931775955282378276239983750930812714545735967660568266919402076455440477082
039421934168478606872482467011250130542440395598174920123219197663900212899714
255557603579510223707538600825373475555795963866477641334871694308813938240812
318972710515980623245370481437414772142756265468789929649620387481923367740555
718096807839071320958861725696345291634919338675464560989386618294218530784552
411227584187225482158630823704764643850231517941140391110739358210957348751471
684665158579004734296036806564670564047351175923588496963305199681392352408560
823351154745146007293288316561797454012560185408198999823475290539129524390844
702321486584229331263586550093983628356575875522880264675254969122100641434785
265120783059261794751954600347959205151288411182108500493887479401133606572369
412079233135221699868984610830548189049193454188193010139818013162515012470474
849107535133464622734321664388786193659839377872999830539731587828446711199570
872481084897598391421080772609552458002919762964678091054044292763436263325489
531437939876427533612922464591538072613191171233613011055681684711671123711165
457104095312366307918393897109497540167135748606253841100040787077653863486287
097835231845298991351051263176057879182782949051654642640246020764971207021559
199718766343384727561077975249912213750419007628723125186087080970841783214804
283658172794483721776182789011350158923352339107822720906289925231544388193701
215212519683668142844696287710869301236966155439288833037122119621053833644832
439184304132756531527594421266263750944559001077854883828118998529885280268830
212036652852219418964965589477119908468607501340587267777530529726658594588298
064038965338110979197738023886119987356363954577505037846534995916796615477682
610084179275918746021096922408294643449443067927444951829792681832086808349281
551532552856496263665846008684341131200717196216193645292712428521656956752851
115657539584205566015173537571255702922932155902859375215853947338696399055139
232184326321689902810948082525595485214510356389627108087813227575903760760136
474286593850335567985556000640073685986814217369884852571375998485757192541520
038691644499438649264507718199787550028217194595450270759700904409812993805890
482090168257795203180764545643843156234931880589116815979673958884355429891702
487576747572725619084045583617639033536583624539169635561811072883327816773001
917675258494886446324165983832882232305035140194381531068247137518560168669530
957474403972168556033052318883764569686383021089471785954468071473149567773983
960915206654732503054248801935060152555884805474565232296019579197342026192901
367877744301460271980195663402450116946118014871586404398013280456300944368033
480089798578987374370236960452072055917471830087719150592369228811362676131047
590004149684269554535396248350189344581324461685620693763409826125973898139038
851686773930435698206375201747345632350969570493746769519352008273092328574536
211821567507049105660103459628537213100622579038639896739259590352020351824166
349685964539296009524029797897143093089329568000881954369471470572039111852634
326073651339031344773161736680984074069433559334225322406846077852024425005234
915722610674218511960856790514181473300071638951336246832686986829541043184196
854113541352240164507405259871078080986173889398280369166825925306642960819999
004011762002030058957214220425913054203245402224940371375459967667708612972338
824861281494066138388230507619974063772920499210872772452107850201943710799776
003537670902269017052623762145098065542239637015761471743100477748499201011474
854748276143251577960016030413963596999519684356582572968507246534359191111950
891100613951127441202487180284564001594538399231962224016629450919366024662382
971483159046026819773524521403081060401638184692942646744322274298393335121259
917001687457922517031398394377473079649291804035457533365811662721494012514450
343582227314702259218348111936200224139117474189665045781132459306759774692793
592025684867433389496500038103484389056958630888079311135042256569257579253593
322632691803244891056599298608998766202336080441794012761285880667635515929208
496431949502110955508112422865809210614873927851700578557271671417163182425752
581859148641007156387591949642769649983430144772210972909499666523832898359202
333774956697288795117704968481943094329913260108608780559464420348003788686216
323359014527755506197605653712743767773356299935195618638455825215692110632722
381650365668472585311357305456540489074426628261623090787550951058010107193165
492683241088493272941160794660694674770507127025148844120650757398151016614958
776295917983224873211431309118145522021775530048907651741261186759792365517418
628386122305329676879333050041213466056124222009178549852999394164202460458097
173990165029385835049775263301016199205717126386287118707823751818364333421837
343303192734833637241875916808075110456464501005613110739008084988838024977989
383907847045100545302353521601256552236113170550140836329169919769023419266484
346774121588782247659127824463414613563891706474935865015171438682954266702926
088010852885933810853809906775294234251543434289624515617777164996616441438126
851544162027108475997394300828271165186059728948890634223788104450653832352835
960384383519745111567478378401338346007164018917318047190193530172611667905362
214799099207843005275638899626128745685870545039674068475886837867511202795148
491053466201015641555028658836587669288385179246576946078394004251172486593172
459017126346976121576247714583798564508629544841997557561873548034700505920047
105562201464448801379895730434679156643827268234584439027627132666843284123932
045861246823146007835743693738518037207220313746473231163913741986846846173882
919902091122872576405817581573532959594600402121497993134458956753184742212815
372923493567947615282340631531515845442314805449975930411948317220397078126211
888387311389592316471744968815908471847695996285681813588751932716488499999222
368809025590600822922789819384725298624368832280224057561805365583657257873929
708795181972791928075705595600337173068958613620309388036385796498089342024799
590137519211995380778050413627426062592828038937026076327933433794474089592446
770176177764244465930948331532752770635340972173521649521593352555317744093462
864689077233912760868716649302100264307099764875312495336707520121236972203754
893475631524372949163794549358987926989095987311213242719307794571455999329708
830319127363496169899962600232939770541064174909635974837379760911361672455860
215436692774410310757462516725944588922192858671683768914672308360473773039140
136317569011132804287407268885672974471629474232245015625712896074040397736627
979746953575132266039707608813847047638374172824693848707683469837267976547189
758286442493882459168127917194900016183682231326969176784581001017969608518365
869632683097274170577796229271298142807946347415842874201276449719177589077459
028220701028843349810542676676309892582555997891146358503278580188067029171367
723985636845935537099914719832789332132391586879897396538850313494015831265596
322819841084809024436729361807347997337512135018690120404798644208873792530569
620181160447928686859154909093288430276999370411743915161458208648124765580880
567949154831611149464310878286416490101498977113164554742682767101314468647973
244415979809687072872163876448975198980132127946325877000811783734036408504124
138391922275957384204823661513198471396814205466321846185237024123367555343239
686607901853287056731791964822054936217636912792371354641635649427405945648677
409586551451423123577459651122182466967158088269840668364068649793792493311167
367464400502461567407854860960763155729956940672012416727995680206725931355348
146309275525478838614477626268831898387230437524962688035036107060860546846116
027532993823648542563848700338640792224449569567652707658512913995322548308475
229097344587895081892199889438194972078937405308025064333079955124469879204055
452847297804425477641154236871842565679939513954168422090097669125637421760627
063521048471169595245261153152002065857620548315699487339782187292397663662518
056875853023973440964781721462817868644188740425942561463847761204121420101764
262673454984425363904161544342033977407181506179565397152008833587530713936963
288493668626247293894652232821323445098925492997995462881500273466347041289873
090158411219668543350475184445617808118587631475663230620943110921712465006738
121225919193542733734330737531899284956619603095882356950494968361640633184886
117723808323730195722220790950506712724215155212186355730116910138552724928484
756168293448047483793150776029022414177178307395546818907143103521423490061348
822771627911150219616272557465892104359721840076697550219641428273565474549918
965181337474168486928049653875641663504424929842395395710202974107196978897827
822371221010346036208201052306294414504139719818309039765752605764936562182662
508317830767638597600239273073533111140244426914440404667161222220385223502218
884701905401352803202213772241966197351316269956148375000334473104718474917533
226462960026209804072561465226014490236942437972994661562390828257569467282970
659136653072526388772565977795802994884861313679962128423868710691416945190038
525503151852360493109205907831370110690401106348905767863679466469184231411646
209013279402684262418153018747915012111242221402158971171493448576701819716943
661985416635277241913612815857238556838325482703832618753742273675445761799548
307030989554675316561830754509621270273650486319349190924846616183160459182904
868284033215776766829925848415565903825914056432575938553335742704983807280490
225060716962024740725510627469135402820454671518909739477919458045042993424276
771789884661085164109874607821410049976789894092783271523049759249187701086382
255212055785784609239245076536435975298850365966601704026214332433133573353978
451555838063624024494570929056454297769192910981854644301478658338669798892806
621113779103585470694777598713840423331542174672321817699972378033588636868126
212632434375928816264849450137765167323176367518699194705033883822778925885191
508485362216788674285871314958668624322367875277663776078278810055618057653809
098824538873748384895439227160274148386926962572446891554786144643557814316789
357244596978319891458653895212077186419764461080482771494038110096498649026832
516720745082092951873131824195022874451629211382931527200842344127336886690797
582101144590758553045228694019491489299473109924488148020779340354022978269754
293981893117689845282437551672634906904458203621302268742237476971256232181023
660972644153505879339896279964885319711781103004304670649491869603408612707609
124029886110802751619231041978920958151585803472900847576305187491144505257661
299463548266137151479421568067124740910809348811417729757217194555225299260977
718691440462083320863228669067902339376378241892405871560115662161794544814967
735782111905690538144908571489279639125810281988296719752723039167992827164470
639436803861927522259038437573991717723968919996086161186823494804205343890374
317900991239583317156227228164342869736840371603396134838711094314718121195536
604249425430873078272946976375481383904864402043883539375452973889879129700230
448086797605399180599153654230775015341591160940316989077296996997287665338852
581503109282547495640013296840899173735907706771018706202797245274959177623767
849674541650511022478448042687991580334484896791730398329287084385560915901184
127857158651021110801513686263244634035843346072730472691149655384428735255912
850759383850481156917447710976765693173575936452596993613235570118152907751584
450008304101525100574521301531619658841081439339450481719361245288288975727736
518735343523857369816948262669624406194782622593135151356035169940193506757113
990497810123312958471475277746668076453143355638403508836531788491744036627493
379631128264942881148020401655853212939284012692740441689324142348827115600282
341070397595304290051823737817842720765739491879918144073282378449316566212304
788346286207021478824059030870639707723456057511070713262682954670106907368735
724584263481199417193949493557095151633992711504697412649680932133568883780257
088931319274930808559532428856926114314991084134654810639895876594277200343327
383051408860774816053602668815724723663794589142266808211805260766037603336982
874749831808566521167020471250429598661093686696059281577796013464007331542865
720841611920213849882307204425125758172014609589333673448056843796347063178683
091253728378141372156397820452154339685497860504941261106588418920703600462129
214423950861955921397204814345075074304734797015514638712332119469800158405360
398890850152619128927580111502493538611351891365835701767583899982164357583011
159926544326842233069372074276082513539931145059399883813784072920445777922583
636215023949272207648486676289091806264138775237383658857834499851210192522683
218772153945004717205927014633549255631390783670683766290878021384224172004482
850027641015959710008174476787522444235749025309111488024690750934087120750072
980189204521524478275772634884750650450332209862247956090628828475054690550138
292379905531143525537665689344132887479540157736975063190558786348470786066585
583694359991333927523896905579372321080629830263881385114114740954633661476114
138501442502292269576576635746124846651973018564540119496070141471082086104411
151942532588278640410637266743567526691842594533237369447546086878850419687126
683128502667876042249020235253455208235909896080580482675222365852357656258253
512754125170389091572499743121812394116302270220291967326006864257063311735074
586042249208808535570918047448929571378707647279951871331726617167689610448056
174331027538401306928528049398900011808035572032536922558374172171848952621636
216919393433184452710653835095737578324178330316347715456748161883159387323677
364280004042442518089735599697523421696949501853084323356913348096677443568538
790817348555846054750841615750778012845746268267871516555105943303419034706317
356452686515458470278116955678308138643214858157614857326002630880241619809762
213932933777493558826789750749216197183039733400552125856311027740295736121324
616222227304410406531721559567200176585755354444031377861917689695677192473846
311480371209342454324062987416146640775408504598400178909064094099002891283695
840832302771138118611216771506045165104649668031485324294289332317514209510603
933215003817240229231400575555213618058374619589272089618258143503311341937512
182276793797209587342412809262822675363090209182636199030131177874672441507969
313243063384671670524278366088453699472902001523186777419081527936308555743173
914297644018998593002257430376663827653310910818874351091305146208899669992382
526623331653642898602476530881754173797638660679909032326560148739101382966408
676243770630084042174959553457389129997056253421289300013177444574833421228877
548710912972988551052745351450388473009178631573268105908217571245466440857079
141493310472015914246334069289079235637335172419186532106110344071980524093457
274411778361235516626781134122611414756661701266067214137434395081192312486092
421132913322636606468895272564816780174213780263021806908682003075578421763836
089739415317378781449194111205357837906447155577668397223135717220343092672209
829240589266306129369066612996621491068635062940985739945747044835411649509349
295347977965025955370239404272308312903852458176905298122000518347999891401727
808264678129636931564603246350530250613270830755832256158569183660586965732654
087500380312925808563832264542090482795043749771534809670994431041336287789828
977110222922492023889119105622492077688389194767089497442918398861665381326558
086168483597529529442039313927191351505570143866794433878979078916683020144471
025957533910182264332272812189399713877348435400901055227258793039326367654204
786678658645045893465506642000801544209134740724841787184622812853249541258067
026430569490731353871260278431155058434854894702785874847242841742109122490780
328083978297462080729586321496186064388009511056703207273762116267300957244239
147226440125031990589428080750762826933694184949801307442292644772912357930328
155192212844366652971071579178128636093285860692843433034962153046706380035460
966077178773497131749972328069489315293282899090814447549704460422509756633699
014743381030782227420541455290163959672140061857890868369044829796641753295498
240224634598854985047682436503924793838794552193035279953580251986962686116914
249869844527715600909829874672304161471772476034922669102041003629737229512266
964322475846470857479123192396887683745031277084947045820461212260090488063073
272485968170826720066983013015786648858252613555039644862162474556092340403179
476283950014284504917431568147109775305289709560305298210365716694751066953029
957898155840129197872263438891504458507499773231010783791334340079146288237738
743139909379828939088700895610514410018619588577923231558745859979404347462431
344385431036903526659464012494245366966302591716358979356331657315271380664458
493140909007613702499837224236170354524256053737944410753321122134702731758878
962056760768686141925225762415445921362786625007393900255400838317213416227792
829579943501152720214151428063378790472371618026513272964521357060512106751120
542516023829077100329363518051509404292203297827833715720530264649084083336379
066261047109499963862748395672627742910238241485410334987838808993025694241447
259996690171246726194398331599446422670256741854643685147071449095110222252938
253894667551433748334879349273626203045622330009032871924639655541075328427505
982488116016441309730788994982399198102854691475112095302371174098481659367808
828227630384098492600399835019262434911757405399141236318130004455414212617280
556517450328958027739571354469458651543345351839089980300209227078899155506074
859348354986335525631040446736673348200123650802477078639567485237956445802602
695671114000191103164360160943503041007914598238477940604502992621933345920421
676550092760212981318020710277297930470613032884427448746623588654747295486403
860638053349860931446756468077539702785197774531365612710915780461023193236489
567788374102899533065354721354422693908595143954973867208573268477624931279279
946090287463575577642653634935805124779845355763552547137285787725970988375061
996517957972658986760164036479773282943089354250925064200693237534704043916472
088985495603627371641510809143723465463425927537549606674701794747475860844521
985436391439622119037676800248001577395887239730449376327875831340758114148779
042335629959452598494043808348212084779184768072609197481747148108537750836729
743879261286035441758770772460654509958488096412283701488484098863792987349311
338850026015801979206682243116634090059315203061008260527874516900840655619570
938296037273439026490243192460367454340722028953669842412886558847572297087045
824383190258307578653145518399516788276835357439563056674651295375085188724914
383677389247642395248363473162517439826602070664483069877225278108527655798669
088046438123848864601998451217194783557965637048389681396813867942411686901430
831396315797201889425970195293400707189098628860700711890052433082823156097585
368790243179396088608259621316797402620433131533604916618438442816172677682320
908379260402493199177504142401580866052220048778546791943468967914555999219546
623834640765518122253934485271200466503204867898352933280531572695042672409149
616964672446963794409345521431631195017916134637613221346017228154713369023059
363352895260233234907295978146689459095106033712651208017380838532006673801280
905479672610055960851581465745181424376275020696238566769877995136621178776676
832580692747027024883497609721408583467191377176403320958645104968033627523791
322861842233096304303878353928333240485227235372051038617291954784826500456878
682193295601045441122533952935030402816489388802983076684793076962163192878046
822807831036584075727302668598491213530784172541819657262811014840140570321043
417535280655494031926068433066573564949795914356254598243182265408674312852442
392959067702987884806464149288327601104877614592606885762514108986994082593508
300212327429271967062762228408986830035958152522220887529053744981692783111323
209452207477474807473692096711240405620747589745377780196947086623883367615127
483254870614438686381787045999507100290462738980623339952530785354887742401941
962834565085175291591604988322530335912223063922760455812272783712406907104742
611960393013957405185668000180785011150095041973137951951783881595245898039654
179107894557365975978528565373638520888437747248973759764311353872226551425926
662854396937829570068268425099582409612952353029175509370264526369348845100214
908424564323988283880459965736696587311563273426586522610911577162881734302423
243072589023958802848654932175032358463443069255302745929369200227428004461754
176287552484116726092816106424514869374560737358080431516730849451688475147633
347871062267030626269987455394443560059770416601828521606851686981821152854420
051948724271516719367558420765115360680683487712699476492594195361008666437341
674822867983927584568528407193431149473849745601593422851966233057317932990448
812975079897745037430974887622573307424482126612750194168364486110916631581335
227395046045561511970773351231287950382582445230729907217887754933186425831267
420889452370327740290040179777115917592450493800715082948908428569730437023768
453410533117489846714426370777992559004825280871541817284137179394457644757475
805500965168514812127361383923014149876219478308602693035469059041627309476201
901887013573868059336283461741615387046402511286462065677503707803066419012001
005302658445134645899486912002832738021422983113312393052903702429604239024925
615948551182362438541664583447435830027160502409306282917310428107095596152010
930027715686311150287926599396779689190436369087942062514911470234390548030479
757993804765254986009529939089237220169818065897913374613995196939253248347615
057052240548825773349123956126485552906174532035528767540637486546064788754664
294407328623917678075581431902206408845382017332510842349971153719258323699706
227535437606895650729598978894652800177087535125061387363456063299124098360214
428048472877657704501301174145432731237984062315436089121073017099212391898544
567644701778110013761651944485968586280217215654513185227622081896462119186750
255959055893530775783032847928336850025903609998606274113794640985252962602685
470877322979089770592700366415024135968459814372097823366539949795780476668523
844681168166538293216272706057916624100286627117637379405868823957404738970562
963073807114980084967133792955420069921206489531870015360815236894560884773219
114542272190325228489847200496741147057643824674533686214517207821843339323803
604024872486846345021598495120080416291662491104972871632038444771292197403003
594633819996539283571394869628523217450150172139185119406434089606491968606047
101925249660753161254110220499895241125705728865513720953401934286676607810079
851908676508417296664729633387165005918337652343028669010832474460218841808873
227775410109590384112577012060844326876683453023738269715247938053376455731872
716591611236479236773694294966317660401065472563838613442362304292055800819788
033813061978367837463557996662719622222477252505031651048089889775370364362099
177966334622020519170489501149541494771124079966174708260234895634413024282348
124273247857579063039694702441494699128182166120127350655980333137603228430589
572855484743109383744387504298360108907300053834506142101981726440986594601906
961048694914164436455164380874995113615926895670997853211087632210569757581968
852828484393366041379051594054420643841771344197593697476032501850772869648529
547812813534088174714059845074942609249044762049286598401349301203195744773369
804994957659902497569556948566931643735905547537903169752139235340305909784493
674784495787836747125300008169184274781854536315389153955826554838380097839956
129123522077285094356729240991531194773414698829018973070188931831656573172656
866285762364553529901105016324553929982041657046490498263895088325152018366015
129854486364237384445342354570379999801355800962611755396078417556600102928000
570689047897454662999045886691312739484346330469125086720242432644040156562769
849366575162523536010430782723482673569138601731069154677180878527723757422443
046103620375056395688885200185659957241385844850711896140662264807322637052534
488187045479904198477818843785092920469543253945635622798322724870194540263925
891871959826862272224030359445611621841733214745293114314286907074947319611060
902976250836831570161244780452946226460090333204729692388433592215985270982445
214719313410819044467475273246075684923102791910001891737272550636901245415791
603043362843790448625957351092678544013765628670793827909622051751364338869990
360516445567831852558327459312600215381246529674592652206146766841842740783426
294101419556308314871267885482353815041057249329884035201982262987926949767981
392104384602605575499320947285056710420373564299990591677525508487002182835126
521209733727003097444025184544407720851994466255182125226878565274998706834702
663390442286929210262737600853311375393993010326150602615326160854037255064048
045899222146956605257452795859909369437502179699786197504306762407205343124960
874252307359914278666215511344400429650681813362468135556063610164807388328756
568749748232807310348968828192611001926729738864175774187175365819392923526911
355960153315434499403533478130236965837828932394488927997944174837328360573400
358363446640352225669007070105759256827542015578590507969257376303839409050367
880882495629927231604479482392361186607243655303238363949416150660342532804977
511515014947881195884624590259869119204482044384364423360886667399128341860726
483158049737409950597178339974196178052541229344800568054849392930557969622006
170561239617231291789766953284620666739417415776142009926441294448497251327606
820072641077971853271767880476330702225350490183655657934502520730558591335867
273966201780050240146122429335756168980712572622670605642488942434690775268037
900852505229204749516033486777476380135328714598991164690793822771385736688991
648468146897109130596052642823911099777616108150241844399454969983082015994407
253225575218414430275130735690757879660930012195794844911045615516044350417514
705599908601544284215305610712036614058715099965507535557612573414473744339633
770207237567722596491902471744639915631963500933119067899648202628369726945408
525756430323214081199208563207827019799457523368117289632734140200435101072141
611811442726801579055016471493991781138643463336243639772349137785201624633283
935462359376913593819981205067642497597454158449214521552897173043420349980949
900728215161240018390740818173262386278819188937497034295813648950560011282338
375626300363079292133739262199400428063763652231649177440738972139168249916255
308244858709003246781611796609772539945878532733909237077723750347513257211441
677050573831674525112692675570823100608478342496957216276980359861951966993192
376384152575686454916879552622595294626089647133733549392507576349010770744205
012120168180220217988231572318685442896363608814127523383790712197272189020520
462345875088868808510306566391767125415454355063517192379320897526979661505063
034320920994726449932828893646795819868131283641570936727879427868932609835126
242576395189943989443732500455034470483525279660748109106256376988946331048815
734303295902564293778236673363141286473416889142345724452387615602617487985993
408036313514954704740885915181309164806390461639684174562920687797637870183321
675713512215142025508206197949454215654130320446127220087032533904669969415387
626112891021634998722091275573983777327843250952184143520838679404350537919238
439436905525486947218178508352825007521328117063996925755719616877475323104817
897420396765728019310843835400469386654044656466708817686900295462558595265687
582518676153092227663618717313020488395812475261626216013512026529858956404762
031958240305256270106090535802472189594166895113803925933449461167946448667041
943264908160216405383538339666486288388982107312579475569141658504819627582131
186105052847918567636238127580544343930716583583264082566493477665259213288113
536218280915441059796395589099743222003844868644003026983255549798877680614747
463819551073696842796478136472477945745587214269776303800357202415859224874942
602072055673559310983226076852678706465744809094188797699805851708103580124766
786231760902885082929384158152477146918885872750599839721372922040445973777622
105536815962951110392576483508973221975473341459033066622911556163097569099385
612558500079962054980657968373187429199618570491062089372760072316898047191952
321838820637450313512442280294008391972787261849236089333002432666497009457611
608945378454727294291134123414432593842622714260642487042479184317578249134114
094985815171650047282310341203992191960356926822697454432089088779215676799577
774827436790195538219876078944070915257101373431957885133986158373299827673831
948573171847302403264507665795497024237541019539226505081687420116156940926417
863183046722206683503179148900025348235444287317079973432921802858359030160404
093246505539951325981943568401869606986177600728066314946607149178950700837994
480370386188157619421841211137028498181906620283869256723996907576275839922651
789856858474564691946303718641483363469051216979866867804624256832998600624447
821693190627635739733880691690015078566511468960291699615829828745987052317137
027190703308036616393852170996864378836754430995998145595183235987014617968676
064115377714199892450509114693475661431588384756901407122167685606579129886537
314107004461690251326505733761166859646428678187795963021348231012041596893164
620626581676917540392890226704515577245350846763079205364807951785646386057382
728572283059833264557809139493264113626420498236647656282187127805103625767429
057215507571841674788356541442039706251572870094883877462914919398623939506512
089081680311153589168645243427503646423636780722534005683669980434775495661707
997758918080181833971223734359568956540164741017712832446618966790382346767364
316712086378822173128780689725822700915543214859342243391767705668574572142605
782999215383656982587941807521965817050506037130052655159667848472148064052382
042884765010567761663735009246534697156889227082492991149477881969255847607300
159688567582760678334862795583778957352510505757324695488740412918828465172653
156864523032146029328849727177900475772621809462480424085061560558421824694834
400319469357592964092695932846147808091781737264327313792141374208786028465798
964396910840883316437610177964181987916833940342137771448782688118772778936075
543578411332357869303026007810245444236259682068860918633207028949698780129110
982527465996236263545934445297260175642183196909870466069819491816700342324580
828083852231168145427568054095360872965347403946294581694611328553970165855117
298747717700961912729134086054298302472218709423642549192992339701095095143820
280289119848484391489236633033134383530518796390528920618595221720401069255286
832544368180818953435282828103514630588027226598709518245316659353222269762263
827544426850585948607763006484358252775346987662285214554999560662137199775414
085044139165110144475634559502357354205284953355207652184760901286333974915854
761810120247468808741389043712635149473610723962264188440214278088400678379622
093341059433259912989731843213651337249789229308190442425729096651839520192459
757911796969957125041450013372440872280791874617720324155295691391755753568131
884859060223757663609563687070280666995079951727325704416947993493159817121288
370555424748285880378208705040413201207500987183380321464661129467749081478809
248341653865990083891489088012833084479989943056300178542621606874086595306365
290494384565180391355481750889789096298877173837865863780312615198195358487640
296626904623923322541230741098295932331951555223600692951312923466568652268177
279087005373582637804221008253777614405852870292165669588301519527324328971563
795406192898110126204090469974531844789906125318038997073409509392125224824151
662759421690871811875086850965930066777603076169476331686426730259794840082535
198825937946064296924972066441343424268068809658151757567956134344767259415638
162375119933605510177493362512656735173149591252377999890545937097217668313194
680492278711327058823605729285439296839056386071911590183501951677725543246277
219575335289205487393296266974049369296522770660790733465856680099183389291621
918569486422212532656773088535910864950224661085044623419245549837157536381206
936651162228722266130473006283552138114649837473566214527231829199835261364791
873976867298894735313006203076475068348661226007399078961064231960423178749562
509982404975684139903610645907444736119251748325048785895321371907707825772819
533250563254733363354653108014733825119938084675290373926063198045185474288628
043446415972700857973843504689298232489321547214165197416814405659781105997935
174801338583258266993965798522228017659675965373959395467926558606615264446841
552116418799683599171734644092193939839212092457563828061533115945941355555734
311947087288550072824697762455445460043242518454239462654579770111522771038943
965223399509803414101440036444482272330252225672201602081356280707837185120384
691960771551757253604608859579652473556604643868150127729145909425385479071148
419831643946216829174888288646135390926952542147083828637799148576690185337223
378167638033789605070268570286063162919412471726240867137084362027751897966931
946265969189722229022643081203240041666760462758230800060269665078321170988647
277878740267797927281032279934726561673031019478328656015672864303114877292240
546122629279185920882210248803698916037730279749015992693447299118989128053705
244022444200377230744704955245520761845723548720374407536348963590854090275123
421981369505294556525747314120595788960942383038675250425321389394480012593470
424201139188177851504840834239927963037633728213771943432329893991102542578315
874548119455754639343524420488349605009757659543652542301183082734349928928480
023637425490979834357404365578894606723774385494347222212222610189771858079409
271078622604285400041121820708237943756069261974120442307359158087512469112198
183237561250728100501768109799109240185496034426594822571274983926155140318151
055282301622209583260629682205597425911287997861432133703087707094558102175744
676318568468138789447632644759886064984117132446697259640064718428876116353103
636006838885707688714577643293550060549807213230414567667375976944815303619862
256670873816533412092589580845422167825627323752256026613586563248440613695047
269880626214079440546800177062012802291248537180848722179253236050148869625440
193618291267039244142525524849373635420722030563220439776589154846171130487414
508868516748644383048836387191360963697989574282661791844232932003347787607331
329464817251136677976452404027294881849028953817424844032515021445730072552097
829738066580195554840610547133574828334865889431628854056559768459600233516890
849640586342531089726132605197987414705513719825696848248136719734475543982593
072735713816899072862155558797902279432371239073396793528665562507973789286320
773029118447186946421667492994803599222553478894373163349705592564255895361963
072046574423915874043896455174157391438378014789371933527404343419705531378529
704917604074176843971821567166589221004096706187894099270033310371068913031444
256065434067302067533048929741418588178546987359660186153602187079264219344855
034121973312068682144567417620141018070248503885249561815754818121398681253999
359253322082247664996344317155351508609193314198404757989941032385805316965105
495637811248750655267460551888051411907750880155569690129321443677285368843389
409964480194930598460883324452361710940359658311295606323599667746440460583116
213713419680381803148730359205644321921934259492443981742706188006800783888326
530090642312340195928923880762116884174896552601278910252109708231845723206171
425130996238265785995167660604915882719559111282698495591284969521464454830161
321466778535088194129675444511571607270804815889812387057911005426558222522085
230259156246707042010140102724697400066994500607867964621041708138309340318499
361917745436073051605788472176055153583641691214920673559864040322807257913213
897509456859179431024536893254855236903262805806217410142419643797015648160937
978910117918881355838730195327287891325472667995920452759124251533960652774738
140725510104358547120580399412351721205278789783243178004230482941369273326175
836903837866173654529682848005159849396586938387707116594873287679999712787816
688314843905075595792609757406947644234438672343849356822187061829460131806891
872605798959592267483202770417812653073682774311965298242104425560340145078166
142860202847304565844270627575671837872383972796213379810964552407527595809752
252255413034755022092743344311741141372572188916878080428566636741006376817257
929585176783896835785779514875840251781217601387610108455279370558969221947365
207210707720658434968787765084128374688317269178060001471361270939223180012873
515629127760404874431588446378132924747166999247005300537323597431972677648568
169502296057982867378176747932101418475303263364440658405146496799211212109896
685618851044196468452986978832318115214435502571378094242985630905144484583671
705567183941763984201551568015005973973785845446844837717402883381461951514059
599692753580818635818741843450123757624252754301115366695383983961949124932052
983211812379780048242609446822095388416410980224617960813483267590533277941812
016508103666672072679450974612017146053089174031265753603925288195562000321980
702157786141479391101723160610530492418462583748768920528427374052506140246981
230636222038884406641536384316352555176578056454710272495113517239077506792716
394904769528892845961035821583705938080488754919792416960982175036482085323734
218450264162430051960177391143820498204137185185759642150540358621783195744673
923500069401126933608436976013135534822442248162042254180886557313471263221312
372495819219827976810692643240845461022866024213515320426137635407677105957148
770315735783719788888723665103123795461167285722961658977787670358209264010153
037776297829588625721159232563097905478251093903336124918439699257848357350609
780137624346593837892889773316531581851164762833195403029831628962848913703580
136371231461440908603733328983233200767091724258962962445474935296797688887494
431079298176249372933580657145506972747848031908171641900913485623028795190155
672467709243465945043175999504698271550923065585345725052615183972586686538733
149954111863421771823949213930208761272069748988954324671372887613406589914584
524642457294949065610070165605674477219502570008532060703211997426101650452974
945385262940675345699863976640619847437803413482829595904636163594564687481046
334052496737998637015454343453630366063985203860834098672281230915170349791577
728346980568233840413333083824705795358361473842018801121755240880780976901198
857942248258762592663513822075797818810707084372142769262318160256432322376741
850183884106732147211621670208489260916468531562855558779507502974969084334093
690130827987213102196329893118646077808280845476274616749699830907771928206153
642473336406288883442993925508961731259641007786092254701053757947938159898605
933626937151812566579222144086704083014459324830788258345630891415628319814466
481686100359929303676544621698354173274517785712687772822060682762245371546544
176302069844886434155230344699103165769152383861523681643401585862273451539378
317548424346499014044234397811217633548831929014829857244734697882971017332434
787209414832370665642211090627851716781247958351907208577097851817442039227745
464879949548177061027108381646035391691636391880367976217715811566690445566096
626822639088268036314352450128674027014387062116271615635525015675910020390152
868721211640631921013062638866235483808102216172545980369770272335621455485780
654935552740753713271350522913254176189308030216741947723486094411492124073030
752419520886272653029155873851262891608235808844422409239650625247953376535122
738513967367577114505547450589053563288623948172675044272054298754500597737665
092778559152427271159236761033304662316481332654266136289240726043458376988084
834827144154599688229961627292028242567576659857080260128043306682863482429721
919923655203688985062894566285550930585625753150756729321866750783875543602692
172234363171705944298778129887645770263985069977965289344430243630452900181994
281427266597610022900995115924934151472387660699953089467956320662493421131578
205334849189991622359001674632448582814314444224390291804345356979318345774513
005238879069402020616573141579899523356582447152005247717999528358779742580280
019776444725010952522284621465738897964158271020866505146643851377342590669174
397472236375426923268589494626477192001148300587927168260718896095063545007636
414758225535194971328817317660370347627742522714426470524320827746173527767240
610480981643354720605308808201897314228621437088264558082082069001972067165933
020286788363861630459708068108951951916855485499299612782582133040796076643728
613757475044264523966511600020774259920212824508346542297232512505471554860077
436739178969907538458455713981514273659882029241654234287773048599520501818836
069952285361018264540217074352345948081344854329626480251198491688556249629942
591122579632676775717550574350257023217636832421319849385584733043626137969716
840127873732582103577443580277947041779775110528408227085523122082638094375704
072575150826088983590332954972466176445737257725640824478520832565724690925055
279965466778495174075328541765564317705189163992102125017493477822271174022843
173282312389298224061668601910413564214268556935521780664035448075427730991437
782037099249974889187920981907820173851330970747908278327353139984356175440671
515505321551832643665130120106860111620535568686294372794811438328602991453585
932624681628105684556155366039743496500345200162680657615190967451649667275038
328743806830896599399591968062181395901464951251247256792733414033460437089249
723988347125760458384478065054450053146715708951445758491590292843537862276144
603442393837826682939631021658864274706675606145219654727014547726261026188074
887988451092555109906347510350777970219224667833866171616459863965074072452229
635064330626385910209174993267244981317935583277220172421622173328991826710177
500208422630448045349166607050603344676036706790037412993112664877990436760032
702488042543658292710791042443587619179881592733024472453652482050869252615506
335739900206553289759113493667263026456375816307657611928995274809291535196343
784609296344030469545319950483555042765247663520412673291720876162157376731496
368998737092181084331069540291726636082587054410042829563221166274703498471274
160921385871066655066226484123230999834267128200797197692057032680259740752839
840381619165936114903358341931826209381952550869046127137849456094847963359830
270239882065958439725741643291269807627760977069114277094575383663034506354411
499223414645077423088157038141758796235686093417322408320832664529102164183123
534042382252794598405388571324079202801717907363822716407326522644371053881018
562809692465627365158208084825784230289679146941977207752311649301286315799290
142008037913613238575655272776893631110629152435969405155009678080416511319147
169674893393271133230045684392653697187485150940865476358278094991572293780662
181851857665013331142190771878723138352423713252254767621516492783228534695184
982497018844667958711484517139760844936925318646050243129498688665271495850494
069924112997441025445017723090145577235523718198123856774640454967110912684956
412768324046471229060362359669309751297050136925183926382077120341630464352956
092063670994129808967944035860119054340298823071683948649662444623806910966438
991158445321585923949463398596115596969723844398946047267041610015046306086522
719457987390827711991231304267620038721698438851397819239530901745565250395868
250052541659100458996482885424707797303057735847224693611058212488587341482807
761079608923346851421778925446343786259794034678293246378262297910647264313715
063596265337746101052887570549762629063035499126797567980067207258353508629829
973768447520016802900131957190249681455578675119233554368965762114330870374734
939649453738546195928121867908261180800517736741256893117508495163520453763690
476054284982228910995702432446854661803989086100450036740780803392176290457508
690839740122247442559158312014669832992091487291767894372032337448350873591780
978934460495084085148221982840043265298264415426123600461220375948289250913409
482187711828859671414858991169567461445032072023652125568824806152740154679600
947519843944414835223610412508542957887227227091239228563211062341172341468876
466963785759136008235015342423269435408840466239534813335562814221780485540221
531868645787970509695556924048650804707938405341465777100508349589832177649289
551990957051714855119608906366796450470580317498557374107438288061822507480738
951881290899386658268461038030572186662335310141400067744392918667959021459186
572577942417364438135280116716251979287944498756739622505722638625569591941700
929410448152821456752174182133986903032575740342860544006666762497751942922328
697671295879259417254534757753204099512069009647305356269055686808098521001986
535479281172942024913318246496817216552512343247425171269674936307836872554317
967826041083556557053128871109814772590943852397254455774004897557341779095191
025163574173415565032104985267521638326580772267097565644847958823798429590865
295605745277256549548158765415930842967271990516169904014943728619557137473316
755351249496453090796988910917810071162301670972350164035425436120144962340615
487451286391325231824263901693828009349990295715095358966345855439984327136681
341417864371262494769528245856071269187690754414580778118907615707225606646073
373158576927878030911339098929002726204059938833605040074991491572870760621182
799137290411126539237608521846214166439396979137294914767939602613385429125709
438268275446856467792684322013217004446787492940835200032181902796333031604718
348586317348868278048050851040135331311479409988519669650346548314282726435137
236768913285329473859953271219703056470096556882067213225377329836738960288472
592992045593449866135618625352646056467878916260320883665749507528389121272725
934258830580206089188054328889500893704155887176724937295407413614811361170578
925127501461854211165098802770861492120751956828684518402582445684073530533080
667817027147737470069874441660314957610498241050644528955990083624877563226932
676834781608373728856714000328976928204790652000104182076683135289189547296085
435552347134957643176598682651322524847189899822049990148464927808546618007539
032156775630704585471842765306778444174618872041776917955015564275829551895542
192102145688478421722968633910236084792554418280181602464361943470028194645150
661488112501431345376197781850699725470144927500627519579967243363525370507888
359443850106131722406577659354772567876694946417374915592782932255947681570956
754082224476998746574228036424512037586057755581741499066732685254455548461190
357689267183856697576352380009194833047764743245880888434842645944402036583467
981037823434861234379358299431044614699531418224210901996270491178430351890666
093551007936435697462361552537238981375009142445742013907278181534595557252694
665396921738057796731245226352950933631387263501136488799182578027275809335512
760254808566660037551088059658148387879061834711335712759066955782073173073462
513479899748739192342191258737929984084600630803572872650709144542956542377520
190652922947090338646106034380638842486105923594902852877616708912405057219529
151518937122727519368619542312242062727022242563625714854942315066799197361536
516078255641412083485998724021261740048896630028694400569097982646163090665072
306856371369303498199214602770346173156279649902398021400601401614939905315135
667117975871413360051962166921371082901849975775562001593317840216481700800910
885123986131256358498229155408518744566097487197404944388104727828965992205649
494188097147121309647076103810358724704012865553795426269271592905851945970838
697759107936524254728702414978311559560178035485417964635390384462932195494589
526317158570268661815510072341229717437354906700693972845061282628095647146220
047582751477222727429827838360197785754284881124443118098330377265134902249927
682521642198007180961771472428394878311379210242261080925131387948773733569980
603605768381529513477233141784612896958592697999901761262839191536286838397179
473375680564163524419222511011161633372152841058585947651371091239973843238163
725331024854389254245924839725064585507323206525208515897210795175051471162676
750736880300192574650111891214668075407794056381325078383349771420525367663998
033144090642252632599783129124981871434162589860731793460901985346858746383091
268047392433119234266328135336790957949200954387531005146560632559925042406025
715533705684434661730170040227534105106714312497403382530987397198997811479841
683819234249372797045017661264095005579286152933896137802374996163632816893152
764282023057974945216705051778116918020735417084426508681001655315472191201657
831393914623713197272150255238395636460261775504364322427776618502828206107446
427937374731415499884054248967695683584561147985780816466154411360167466741142
287340410252765606023869298090829464659451221048734305868079299688419614894026
025742167914613732679714650965884934148116003167084796819588204561979797023690
899140278469999832373119535564660847171272109198628247745119710127017279230491
356025462543214180233450449236083682577535450278279990508011324516601991739434
039742183401660727115559089405030882470923180848342719497932000238943700794234
362452896703206967887505134760500431687330873434134887204519429673862058436070
666302577481563692495398897504774952180462322997144737990808659374802699984205
826088307213342840582227427124209557751198901458756871321117472700093145500282
553187790427656859829200414379821436009834799322740946908488307668734257107353
945660479225969096703356133432889608441880073727442927689593127415401620356695
828369272707310682317550222044560035672278454008195419348026854792825884185910
525268243353216229999147448049644724778283260630030973559847222343295742916192
635553820306048926011963839134154326669929408508659814616730335908980123094559
278032599954710656492091538754202967905710907845023606950469177841390763097441
562404543959677945284251765304471347808264903268502695765587528473897674791267
339324171433438523402778795742617806188506670990586698125061551207465563654818
500109847410679754842111386744130384322158318547674558356065687908187528198129
616298058830770619587841887545889661204339378432598808680435695161809418082643
060372037588565866279396985771136230205509063649226950000779697600431196400305
681361318927686559651642109722497211481935589091038223421468406731076360981615
219949661626383457563296338245050851765402229024812333065508898215416050718183
328818009352826437056000617296517403553295910781059425478004829688196609289310
831679576070318704725258922489323254755350978524537548831329489489816323152856
993967524234343700854051657073995070440025089276932205871651052238285753544893
412133681155072090262580186420474002381425480044530363631774761573820305939902
967883927075151813260913468679647916313387182824517021112887431090842870187529
649359136010529455883084843848070229698107234709100596051936350087813541971692
969329873628374363963937689747612281943287845044444142404081016387324019792436
398674818389627919657295563839253061510634930320109518226003384547874662742097
040411061827122474650684353725235426169236438302445550253859284838934621082802
751873672069426902553845067140068122872061037387107399282239554782034281078065
601641143608723322612516913007542626922345727137826195848839706484985817991613
237257593813766776373280170413620514873902154304559658724890461077638046371502
781385141396021534988658822673619243891655089357113634329654706695036531568769
543935539582809082044707925608444778474435647508830134120994931249351723755286
321281863754635556604362095977589271190884859047154772000164749804536498447690
830048991792480605196870639999959480955290369483751954304613873851910994154289
875660087876961340173653977879209940064489429591720256975091902623118353619209
346904595358380091523761281368738753464289680050561376214691661169380421380658
612446186987961885961026388500635671241360579243248500085943000930773729501259
340317571589482483684141894609000493897191258714515588784941891126197140605591
885328036414152414335597839213554524026696519059060443795991142961522020702426
336169050270646530997763149142634263047899242245675861940565171940220029146688
987538270715569158577919336111348318375485477357859236861106933923691512642058
560717360125966594080839105533975277053256438842462916779753987961611901889363
527343437650807296767176418468246417646942963394042398029745636325276104192201
239490877262595165979183343926563538159970348041624288028061479321023024187494
745780272183475532471473613928490430062214895128657597181876426859975552981024
833447906944014140028762643245649719810343453730693357909948927123169787623052
540015205010660479018442920074180457298854128251017937928321315154513655215157
285190261424911092470372511260978956035425304576775482748505645625369627507413
310823597811732043635077379215537260245034483374588302000523070511312605225999
877901621629111857597315449025165019861259714212879967420599346010365492705778
593066400442729752448140919424890302164134352127477614744649074478897862343757
549673266239604758984789533453686032563362950748837247054825407923191621465661
557246470013095532356494106552193954061934740625661794343297934825414020740572
476806371646751387201372822044927565788318430388690318162359284833130240455255
999154235905177887226330739839170179442857292890364374661530117533268294101494
664650708801060087797316205529789133719668812797324837072981854946012980982172
434546843274810469487069390261715582653200287485178578417573639531526020818105
973811453097107228294080195624369171862894229715872061558291800342217154570966
841625125746600323911821497379621149053028269084102563896604552924208127705507
039663221659070422739891980871513361127441275068329455758309989145461889934649
448090475827637408420006879991138943237333557488178657484840596739034442135909
212820365967362327314531077208628577935789843253863693022147032950062985114336
559521180744077911021524825600580381753769694990520121510673841025973445400414
188765539800222391272505732524863545832523258641322066997267808915978422975633
771385174894786127486138258474731005177451102503016084121491629871868731139032
475848034828643156672317881298726345382330058095536785342605003876593152773855
543023189737854842067897787846195365669468389027057189281717673425631118924722
053065039752057796215369185997747692805430236547982002725869437907932175038100
371671733248292373102321907061584967555382927727405372873557311036748725100833
548488061370262819488046596401942731380517737627579251506344502570271816106792
228664672395910518178910644589512056064470292902362376007440584939796996410294
364214635749341920403548967805031082497830901873522259624495458159947757233236
065657359967092532276768070872912704814854037484758507724857059741500096598030
569896240993784785103809623655957941584419842075890652366699109746602867312215
802047433931934527859939842135053537871654606242251664936466068018135002725265
049829665151437583230572510460716341312289956034810219521054504113383515621966
546040110148253680673356992800296200851306920255374238327630441223832758714765
369403357944639117989640937761964738351115977625913195239866113012292729191919
117062757213557473525564215948941806555672499267774886310672852229852252431450
803991049642101630995243983761438910123037235662691545256319437723389755741277
365523528237256382171275146513721296544382427621380790476993142966540228745985
517920361407436407719528790163193245019140977344540368206702610678801943125296
430585996557143769509075799627716267956728961406339116892790472175212797511671
544930738822070680495860521298415816320018701357447759700804951561794771343145
655890385924204823827691404978833845374997686705758242084375713185693425310184
140129895979584345060241993096353279264340040285080413133344654026025872825475
472136796745824547191532866443377947976011419194680366074899627205316245104784
719948279107484951063746393098049088048637948445371227386381030266151527755660
360576856859373115902912541279809597820421870626828120322554742236409065948727
660407463141326349613236606587268485018139716817107595234897481924769846480650
433381033395415274109847377813710858163406459349968198779904412957400165142053
496729103451717519742160153643972627093477435980460668040206371823849786411291
985081206886936096779262319749302200499099671526713194721370360225179364745212
841291154444227558763946458317312210055265028668684413844952041412111496406193
723949058517851086544092609237774760778874330881203295582291808404584743532144
085287091950616470323792794597967584912452496223823099086860452506111883362550
651239592149737379653252552681221306442286094731775225739325251231671419329003
111549968297833587678296185326161975797302586522177392518906708190071671510300
588330084860040744321012228511512446442522742465260429339124885310439849540659
620466127090285159774809487968941306434291286796458356596865425027231166789468
552560153157286067820147926598354342652062469620496569914039810785871537512408
740743132998062190854235935511091906409728812437729078396284525327240466146187
285372057801274373630122964465092593416011086910432628206983552033517566210602
110851280061068275114104111884070768018997985327030756774660669293268622586940
303397488747433060866235734996075720096620100192510477704318477426680483247049
985241622600440311224509800295207793966227380961930279978601363177121124401105
490876306381775670311017767004625536681850010007230245232508882002727008701216
175256269010259427173945238910318757753206140203025327481085660476845134383085
335690862081961405245672540042980935924338362970764244478088746592052241676979
440322973917898774651556429510859980725105920030729889600220994875468747156051
556253708568272953226818025304839032279251171392043154639918577948801607237932
930115702499481488911000645215101589483922109801324274516271483459835338442918
401582293493239159911963524556611686347339185301602488189141987106323394620564
356686459592282990170485262893971348032915853371891759421162129161087378077437
977189252934602980263215051694625795813779629214180101085320034291381740808663
896859130374278324716065062861253911036634657119667558438564114082009079471030
231302275366938023538709776791450015918882875837820418660523149971797188396203
478256340883604416639180909941566078429043826729720817173981554248866270107476
852584476374199408537692080168627860040778175965825143323961733783142790054023
518896778270374113753262325822528986783840250587308585561003435732837247130658
152472190756751164378204991617437407600763736180998017335964456374656204984621
686591232046767152526818655056573820664241308073793079007090844378273445042851
057581307597891870037417272090562587291337173313727876860053161488373219832440
643133795860355171576382342771313562332644981429798006777640830326943887481381
315009657944085668504765748593629097897856066235982747692269874694324807674394
064232728381798195715623057592531346435680524405794875981867190183215941478184
965902508604200696153787611812311540829233538784104325976945445770079705331527
423033613446220403302986306255422689535405333770733893226214829224988301799213
716783904403310022655171873577041761765495440508024159808097567726112012361704
967141033572751378134169338215908478828342413510566628485336149148871312976824
846431476233991008066156080588887938887564607602287827050443242050679128962721
341710191847102998014475942160254466999231671236421169424490209845869006199400
886742484174058473434584095170702738454323688979341320657374875329956818612073
680533574676610134703849594374995996125135259865535742660606369065128415783749
321998109890577706382870445023126768788049288713957727930704745384180610328513
907020621416218256541191168173783284396760515557646175769594900088544345109796
350334714371103491867489492308275134974561739100812527012072436422520783283330
969701043690371947477374886134066645333541256898658916552607042288474932199995
884508736471881450283676060506619167249159294249552670902348120475057058582908
202783991646941891137808240579002216404096965998192641766020816271539199724251
661773346746538786696326125446494555982833064720915289222852957034703946765001
100069170011269600050744383864319973450483006096007516142947516015988523400173
126616011820495546327430287812081009072624353358334940962281162649670465084657
272908970030313061419285437409435057738595315491233015409239300268533833814411
243321916918196820351792483881298675776080303723039755348203308811041033208856
580528230783341005489720243025161407772665076087856567702861193224980155675987
793701673641353541873802905814810377699956554506934094302897709611238468887121
340872120435373444895941905377822710584305138489622212492804602067033909367548
598805801834673170173292272545487030480647840027336515764633588004742149920627
611475163636590966952569471460365203537509621263746511309477593492416583207309
888845206239882678625124100462592516209777038460162351772434782794417446064988
414653043060813407717264254688840076066531300194201931590160354177193006993175
293440862772237368919516366433497741595902829221825974502866904270112289040266
970650628186362728072017669218478452362076011831194737635908189949121762141172
379024328475020199714532728647914541921838065532332594269366295712386767661404
638252003255705643943738156770900809987927731505525837659738183850804705093686
890457360125620638971683760052339697195844606489152413194477842379132923526494
757380538524375818376452370556508264697154567981189555441339482569923904949623
562087366246681805525193290809707596614738535779557528460122064022607443648851
017621502670746228536773401487307460517503946429639646433659009367929953653429
564937985349447927194878668148709664199264222036709516529792233680025094727591
994547894109575977566029995247685168724814092197878659554547958039091150242843
392067916873702034056238790103278464363538137647763395385798963424635855961100
528399883673302201236413669056121859277857493496400263581901907649024150803962
539101105869213137410418271134057497291177378532444335074457159792702509304477
914176730864025618971074417451939907322782219917116375104894418224986810288077
451025207558816128334703301387038030557154102156115920509309483685016957508890
469413224536991060298311475212865756442951735981912161346548784766699522755074
673607880220443378282471198189090293062285029252186070449561707143081167844855
079117743257560386439323195452768514803661465568604377558852080656289169695639
554690245016955528548677872040703339379846601390919800991810022807396055141485
320390943334673690847653645869416846274650402408982379008189935843395098998693
893577914226126782400128732487929414065002390170068327475611401840448037634264
206806216503574067252353215775970815005978055286433570191677871087976642946019
423317095286529637421851939240243039434139647044465547288723874440872493473194
269483965424121388480051018924173862614415805236579620820062754525225930153424
711632431346144230987937190604716187558422750653001968471900586123231598771618
335657278558526657046272540484414948432224711847585391286665508811609799373419
563620022759498359773553381718009661622127929337585513530947987052273411121613
926584913699073972189687867684384937720709685926497330677063609121597700405369
050895903681317306850127883654494671173327170668756072910703093056696039513199
970771710637779270097291011784199493991696683984555647124234019125995361358966
465653506708475786399667801200079006705701011857317574201134937561716637379116
319537778063600415558412606931242112528811524764969280057582291239082861621977
068687410386242448637723610003257457471059364544973176761047260373082230177141
039848488163595437851379491089266372049368652088602964797379300405484545190297
336554185548463517219209645266681682733265664472218300367092763628622374539122
461162194644342310231031461985637421695077091733839742419594870051251137573956
875186904598718446114091615619921883138793894618832346854310861520217108184888
779910407700829849537454782561395561491903970736765848919587546111780408325108
684306160038979518735195720655743218097180834378491191127130553295722724697275
733656638062236012994947446742005524763905660354083923903353605249759885510917
376062176918395744876170931571719504320249045257697622559044878565067242990630
974725339211669095283065491355525766306670175368220150432337944618741031716140
446804697372411326405256410253896035818441608247479875180923445406865823074142
445912079955431022197053612000737067815153099311474189724065312911510480850204
193735944789281565686908923951687480736599241177356322530708181181269328667784
034797249024623459698320490692993292965133759490580855856238713555832854655973
898515190453311955823703503887605115529645778408220961236846834174441699632162
679912570808067755755000423103155406784920305777334811036436551141646505494391
016121748725951831494508010677910889014527130725963330298908905397657170866049
121269755715287717525670373150261335411370848611315232694484840849858523831324
329491671521985464270255143820236860056857449312067839171984418215359455507179
132174079969501890609278955776452197871680101220534731608588164555853855726122
105486732154731707982969309326402034361975545975506027472514840267627074093249
044390509665317294581598353259940835688307726519035620539532018185076570893796
769219408510499595562392806279580454964482005607115342541916593953873659915624
386107942581493923561880575427553236412123684812019761287406462053494500870086
018031807818647004262292746937532168624999003375918439820536946994385478169676
009979340236896478847601623697721307385752641849812200365282855395042175198746
992971119567439126914356039694290990071097580949015871818944373550278916250168
210846522699980533230308079945550274280971719661656630758454881733274383606555
062161375832065171510745557610251973677025737619067194115528634467936632993693
559247411771111372049649448410460858347911527064034696671568770100922380464581
224337002160254686114880752671561785649225601128794561994307019746450298933401
884263849416761816377357473066204337071897421319801739190089690374345749781117
324113047474814861750144973359241003746959155234864946140074312348761800419620
029215590503264913622246540505609382881586912637392266408651470051564809733693
731395477684220165942419167749322144068697877996970298274249473373729294965497
043397823844105683975276143981114136557483728613555753815426900158641979537913
612154356619562348634701209944592373488948900324951163266888983115758164411901
218640953042675053898080339640336773261297990815368582587335988489674450185085
464333453197962694223469468706299178571310625203314790404240147528166803385948
543211668957811838032649605068397742803069243795849990515455567605188611222951
983479715174595449881615491534939398212700214519324621135949025058224105716662
891184459239241394589722469488594785896277499934940364080964876810416056566883
780895793138486429561737344055279321090284373933468158821742958769820677127531
328460132339714785498806185044760296295725131888546192880376908147402610311297
492337594884456959630081586057712182024318524430667088173543847365964025651560
985818065089084303768458286609402401987323714607921403325173139239905593707406
949643049788385297053983808093746949540927579668845317414608908097018712666314
264269845679306591706437428975357606276576182986362824097837864512642987568177
374336587990462374447256693827551064732778891890621112420183272069860846159180
393058039805906684167589740041348115761759034051585554925373605948750511065555
636159139912271943699214345425826696105760022502326369291076529932519988930154
359170358033086380410939394944820243712509200135521788813143197738578462944433
640746267328459797831031429276469725567981063711515490151898823638697098026436
086182460206355019960144142230416936987075136787088459109113754576112238073230
551843214530586510023515458865955256452577619636606712327595238927977904055222
345107834118673959454832953811539988915968049499679583281258647241252805820340
628661077104983856165678852269145692197058987757981838751756555776279763487241
445291708164772717928794807794804575183736382815894932587837260465208964287956
522747843011501763058506919212978308925255006464107876669222147938054593083431
483920900871302116793902924568989061381009126088162345826457497650807442853871
899819384186564321191474375898691340829130126659075586098845182888653335618811
711498896808023425810221764265643293341539115529585318270940916031862894720852
038088150723645694139685623148245841031438748768697598333334514809762086585203
720017359287827736392390734541439135428360150500139902276584072301131698104029
991007511548944708327027814509222325847431632478543841940543846516711836054193
923085314445039477263910296581053560641591745757398138477228242758830025152007
432221922660167986702338748894363179126166922035158323796701749164989546413639
559991718142750808582318922542194656524750180870346906732347659755326854258229
662282416651913954359423860071833864757818300394787200163395903262795701640398
133099372702283253547182065956941369746522864128537930575513042145913926569400
005491620777404020575021056612796774308384602262403493340330444581225486997881
103852137759071076406133206247838804177241303664010587959724513428502072183890
828595699869498123946079400632729837376283838920650865302091582007182538951176
037501836561382993819478304096693056775539634935066610293499889931667098409671
404961223847679004522096459306418241424056228883794253766294132238715810403147
851423596872771877306461752928486936620937194410466420510126426194284743088234
284245652343532761766089295683745807655687194756112056803740769592847335240979
683568826953383024564878624627152935881979438258730251744060927358091251872924
866900278893242208725818346661670203592128418323362323603650289550777327206701
730387964666868309517282432808895062855541245346311928505170812542407267685999
195983382107849432574496898684680698087120959979997759768482421956539033720904
978623864312322204527509392650828118957976765810523331290965704229291656146740
530626476605945027527239741138112435868866314462134783951853592200629072660648
331683127056976149346383510378981812058493802249501065564254018784534197978379
643804304856296427995021498400097777917392603100737022901554436197889777355923
928359078008754045559403786979944890864083095587507242160538998525601355126321
475656344990505026420468650147558582968782424635916457314064443554497074469439
004609351003493520619641731574537860111660904003675575243346699395401776346953
932971115027483602484060600992813800506832760957136002235864255871588383754172
818372258386650817454800145220869920369350101904060891060294135513329377331793
345886335238919835402063404309065554576609338288880390466026434946014530401788
071910044857072617854436675728742818498508521276001217819109952000442552876769
840607524290130162628733276540189726082173831826348164785249315361133985277293
641783230649243747844994180452614371294009687521295616064849598830527229454645
731484373231024915262145425685710676494225980369123698522821702928574860141458
274622148579090691501380839232719710939215845007605057928135526657519180111342
934397194490251712476694801552200274462076766652447504370730337051860586012473
390358657974917393226616042902958584818795624243870774832043101707909626843880
867505650683993817700855516788886923547968198142737182276339352676067011799155
509088250501743309056203386186505440686806590190542645843222666781564389960711
459664288426062179451207247587037148824749437259467734686200029331422388934734
305358647539802074164507775949268949960639575652568381656556182812325385661009
145442535020209656191446339277368237540178869812957087940945531544156344508508
451571243647271403451959291701370664412043301823155437599338695796678638421427
060335007145233833209899841959486251596759551030011510545765258691772185390142
946472668090289742060516631088857786087119741380417140842667217591199259688058
666314699704998934820392160685365380921319283660470684275529663421508265645929
559603083604899446000968460242190723935180093238679539046303628680533403722699
414817535319486779135829822954804195858359705954840237891123637207292521323908
969696408505071018520211605810353690743721752846129978157659242621214253967003
867003394519420315170631742765569077837329384292239352439255369485373657671220
730627557235726870276454433258491093010376998693486120502746620562206389117887
123776142092049178271543225816182568325037510091691538549961194326194976933558
591046605549236434161102060712123450557502636846754616082958126181349489585161
474650319105446328201687589843749189667426898588634004360061973865936793915143
718491444199746771593164437359006816518023902176356581559459636895029215208428
389958605298233092549569947895330057136599591578493403305933026217019867447357
608510637725385426869813345261355519535265018186623250306659385982656241742476
961835427449320477184844888570949138560430005891607739464917256079439863221715
263126831796273739459891530702825091103291314398584722354839129423172540927645
347366771875736133825311705194943848774030281570173554049346317113624965085324
641903050931644377104655612350902593299478082686283587377064382962301012208235
186111195649509615600777064885721221806840495877803309669503642561847224336682
900155580967383251179224906091159889445644772888330095283638067671843740080403
501244896338728756908662453230351424786064846958882673573257357916976889071663
028847059985739683072939978893263792595089559723087092707062433578190045667578
949731585505848773518763596810468948790593212079515607608305744219046975626993
105362034522274703097994388211275472788378622405254175628761531942985179172111
436646443625678536161814641165365279329598283795839765343051953369885105047436
178840033191628064523870710459752558668620921994685466742161162870134356395940
118843116630913244217612445771461963066575557665574380473579169488882397615929
161498436930739205025113458262492095618180528493591771316658683232929396911911
496087443001412151551223393027792661022532550367578246663664024119717473156384
028299926797665874392911936337831502700425214988902675774830644818168891346415
480989246289782904486279285507598043320709153892842167323214521729876850737382
314544610228849665844244272987885064868366183075309632862332548415708821813458
527393182088543920583537884926153000832718522754488990566254875551062414541278
265166359721713976109919127063318591776788827746742268186073562653331146150022
808735137254006150488418325496351107903478506732900210113904655853807346846688
761722830034816381031195809527403235338883558471693757145101478663360188097452
104869509667485535036484898723914803747954379323593960937618761214358734499568
908878187609461284776560512810881871849137324463339082088841238882910618366782
926339586730668475566352999765705695245839403780770403626620188029050797001532
921200249914325848276992411618026478728089963039550429161074800785920418670408
202972902890208275420653771900585246374629109834128856902843918247039736752484
187783987399670826686268400075270501369838701019992513894509319907295391930898
223268692483683848507660091082984421602391040802392577372466782190806689087028
502545331612012492623086708448877014008056120835529961568390693822720438710600
469556202976816065902637270082980555182238956276514633311422715822705743438403
737838433802567425691723526377759865217451864106591488459293705860731172006246
644831947059577080691424320877717965638994266113028409661671614807240118211937
884151084542451491476553185390258070787010114533930208371450810662545233201880
571562910846800284198809763004084802890723954088347557021396286824478242090581
344414405861659986019707799374019768990822005403706758104189606518418301758350
551930374005280878176321464511204256543881414055459898624372840868720975094393
564463775986433946255756974476228826606622321539184226305159553172994542286238
217083554517326802430798903551232047210304262497358834507401245637766158023684
886600264758433930439875941893331972060058078548555375509827804018620811356781
960565879177524482717034116757924799144757000711580383003038949896267628717074
163604690180015490261357476283059031379887336470815527576940477780400243854138
611226851978778787632262715673690878936149785691299641773705065076851227155614
477066326266950498434091616799390700188540488396834952677265485880696589019138
572997278989190730337642440006077872399375052752894890910100320358845750548222
560889140533556177915307035972252951410461054958885615697923838063528740207697
639897660759198825856352740166185741909887120012373714825363067549752201252492
827754327480953466749012626583180793896484227069309355504832531731146098441122
002761019155565590197949772607668469096860551046015919318566930542515013033782
989070933156942045271440060282309581398674763531122102989828067851893434471273
545679373915205395139940861523313394618464019060237945799409653605394693176183
252560099779317618200060401538545774985537258672616125886919007435943675263655
328097762274496849603362051656607512499004114257410295682449191629644336159847
543826084372407078103297670661803060849656627156664542365821471359557140485892
216527560861721348185511426447673532465368898257766758892955564072649443116580
736534378739233658484059480604832905008041615550637831514799752614080244293498
265368768719506749455998147059562176269878398637274269586602428610101612878011
696042464184005886288365599701023842956342113716581280156992265288404515160306
959514581413031117046759371604416565868529759353240827131756021130590320665786
087039505322902253881288307952540695386043065180757320880734951941564007798368
542626287936082775556020303185091564896802637609075135150825391927892071189413
384650981012227812516736645340700189081510550453771928908278383246595737324637
230055604924153387308126324775126987454329818770784155675653375222988517626971
750030864970177274693241778852847213926142679264044386047397643562262245745000
834577569875597022026798875753273744343485559676923035482730146135509108726569
861697959907034867264733275608472232344021387555570854778731704782633638824561
952190832121134508424149247337143338339182495210778257401512350747547356358287
065539578207416207670266995542448996492435213884745271939508191419631745998162
497419909358889286922944366375420709116567560942368708621063949625751761864779
562340499240090449620385299854619931111823909364335768055769744051452632963565
075847517049836698495499378066156557858319963255759228556280487173860690786548
601857701907203258459378249354761206942616361365826497918754902575953005351906
509433707088671166141315211134760668840259406777195713640394418217232469037324
821946568157759709669442111199448568749344757275714947332506544936076632029984
654644252548874565774411656937175358794370676303611189236698574007309949171009
695991905528799561764482546997550608107253696880241742859823598893958248564171
617438493308214277088968401078082488927239300809937056629012482655728059335478
910526322036533241717990809708811322446453390142547011389203062935384662210154
420894148913702471343545699277899319884122584299104240062107641840273234164921
370590427152047864856109186530921080253782188948976763206536578053694221693339
877268594857173295528027479344609886326580091312255394940586204863892786706461
819603242909897586530536678669950715274007640680664696288071629836677276938928
147511171915232334810638267916930124933409145990040471661768208307238841278530
759436472683971109263405995674444991664705465365769840665924670407865095640868
741490414442781522567230477187276504800473841457878074399327893850448460060171
731319728436491119830378440202577410155588047365254534978795201765471503245806
271446468289209868776076552099097607385569546759329734434829654136378890887727
996713908628234079348653349902053296793817241851030903964598838556290300722600
914665201628496345955964429672351227501789350116788642849566452900491798166297
288569260324889401122898975988177241196317086470336601040808447459041625985762
066274202509313619137032714929223312279440984000654722943023031562693978202830
228935536825980623483548314067526337592881406136011448962429841429090478350455
943965089168478953875976178067971894339055992129621131191333549481275866764415
414139433660254119529831515024096672056950810798620563162465682114567985513965
497697848803338890707806827538394446079824334211094553480443844077159664095030
635909002189007951048358612241494732225541165276074667844017059114312153383811
830716758096051089726270092440532773222466113361619944872523332135587516748072
107145951593297497439157742203585413691788898793119504026113244193579732889920
834503834800019017525894550492010990398036962252885251646797355316045881835409
412516448153627288198256463523603131619088255649021190626535231569094711447662
490477934705021311401387481964889872845883725521736662206503124786800841794400
285600678893774754074050730111179400180256995292133708165999029514764946691163
432806559449468494886680420836329527449261893390936452153605149651744110362088
225381771868218505750174697145392639080296933735817666906964531240346453866889
554051615891836845657522216462801488333731123495957926489525385631949820255546
031498075834594364831154228171136197955582159687543308120629751351165072149459
156545825598624927408955600062818261891467081726266250485588883763831807271636
005175609247387533568798729277594631880935821034201702982855906372586065629628
578155730628793157080771493059428883682397126041806974917964123311460611495790
148193043797389084137727597184909177365387949393811716988291895096977470364124
782336793153988831220656596267827646213671817370303001515576137292446238824985
053421247343225167702726530314260308607023261460766286400855742080198649576627
496362350398121183611670417323990334295537984632197884778108930852121626980027
544752897418448289613523135077444065393921818321972384985661903226634753905559
958028796975351458336407602902581729370697826249779283094891119093877117469663
498066181155760664107711016090438667523913201942169574016238123516793495994981
370838979219663655477990996639008258688580326615972787440840904756980513188230
550043513218564475358736423690985803833678589790579662385609063768809167066879
197610789361667251727870860616136706341795976580041003093664802366440206046667
719159438101467243754571117066240168642138902831151962721690970370821454059795
014353953446567797041736930403601552157773969136541772788610791530901359722985
116586322708733078023234180134226492520116382411956634489765523035885258551570
992108062034111103337198490538585822313645879359576315961747996247597883714065
724469744253136534979734038729735700660078861805150350089229488387103331894818
751194012502843313200432273040588896363775758121756731390020208909259041590592
751361790924691963997262756701990120556902326960962803194543072324076499345425
868005494494278750622898443545037947465310833521228676591761476598213312969438
006473114545952131813269156735131514437001299438435342222699039165511911570647
350910999806866244816644743284645000223982224625686604290693311397087158161035
130360734732323259730746642192688464999787720657011584186569277147942301436966
299444988110959837668705685802023272613901261265767070314912860623846416584038
367745709461737961742614235150057564951439925269044841394036521650577674524269
690740813800160196314328536724855796169703810686627599868336712464365094797100
244773889240897677804406175630935306341577291211452055407955468774827008636528
349762513537301048619633177371376835012658100162809273320795212959526672017781
434097266277917124958729790017337696079536442210317628711782910660722877071259
906740050564530885390577000063859026558036681764946110210846736774901579543891
333360817376746647376357195408748296659417772329589941524418839986243653367823
421539012805071475453509579135671137725994058417133632162030354384735452595603
325766240009497823512894055876831394304436334232337385379143961359404987079989
518436834363008379325702692069791665789546306383566855682065892434010623861264
951298952639018095121531430538114377819025831121943251250231381936016221250922
646416593648295946605156452115482534513417929026799963521027554086524559365271
325845376692147941878623412974688128240007217827952944090494209677638642630262
213839386218749252573216338757802841861129573893808925050478082235382290459201
800036279095767804622005748858548510222368987269288724953979797390421602950973
630191895428054980339845327763929792049625132711830845817481736012545432522246
290544151675350705415460108349862413898748281979753059969083829632049629306097
281849352965788563614662341784984899563974763405957607010119227276858402878498
342356943204583700394141601185557439844297601441462929975427014693710559372009
136907681008201829623604723175264877256665560929818079571531929247865797166779
351121358574111330349569888022665785172857479295714612927021479954077637310295
912149733546205288365651787824979440565602350742064259207887386105092940695934
652721561718765633363567489351399839122209730557535634013104547381604017226043
888275291979740059554799998981685094773987521882648425936538728427934488298627
173186602483816387871814270778577165533722093091799710825045614150990044056283
350686597692922203477525229970712123460489709215718911719138495745795616350669
752272764838149422817013124405881517731461474601505568806102458822718824911376
410405287787736140789900473599166926774203758709924548707505389323943422704287
380342092967269772604768330799406214074365421777236264863156482643652470929294
948352415649385689364389677269095224117263867990510725245481138680131817065841
983021553682597489063505723212689777001388562240451644462896173734918135918069
299822949813670265896805723495644699283237594565784833652824179456904902027634
889245265118854647673911228219751387141838736258161394588674842997972305856832
325981237342728286440455254694932560551619642205437509214748603374103516852650
820225454369255361429142193804276386493535907245682010595559868032337070035181
574649702404774562240184400046801896654584580977896130480395926187063598380077
093275092820946512133846601976980540210935646803549849565122330943787877275858
262138672799953388397881048526230771855436218032111767030073023765779912327293
220303538006751971035441130733332988850563881060594977368904711830399430594283
803938994289668638715487392013668212001782608941311697774392456806918736679708
658323911846538228847954570768816267259966128242424821903628586319094613904880
266953345657985746669879843366871968728027495741266796370373238583540628155726
606741817325700853227189671311866204036668228461566351616475729396872867053696
511643623181369494046500598097307418007834137894909077523988348763972581951307
740263575831132257028415017760486217886449962375290165974663288392393117523806
531172255276560169580450342854089758904708006522311504671705773192358023582850
330706234937522048437534154570320741979702440275562735406162249378636075443062
485756049453448998013992751367809016651191402819274309454844131148393090599192
191662387059391945408648711135754853335620726188163746597753193931322555212901
638187494591185719847584934553411966856314385668679226791943409416104979351538
396901294518035116330581448027081891178767055481564332299071881039376412861164
429923726604145941472665402072069413740795495029101893571504923672012534289601
698173689611447683598946580154655940190096042884637537601473933067512337845762
597849712784357143446786642205049474322786009664217900379626614803805849302277
177662971133604232296055753644879672369353354262140039851108533620821025417482
364813107765906991050129405053192602707808635433296557269000311967735727577313
974004270701564746707560271516784998965224365919695297221217876583817810714531
219420243435546076356773791336158037987767063424052904197031613796853960150673
545684483208364739713868860875482457984089911900363377280644582147884683985651
619668759949443275373334593540626252522762156092617661088651523739365534519477
276464245960832840491402885142250065479527223009695147205623977864497733046319
203037753827863190126088369106606697757475386180318168970970031501416218183150
707693706796623081382283725573090452854886258509042013206163532458656794466852
821277907997704476068588042944255273626485089046557035903976858874550581563249
047332255939208252779542287067568254633423060561359903547298924783377214951634
211838803295743737242056061969902919822393373784212843961433823669477510829748
457949110670820876657434219546244569618995301523792794231526388313012462019200
295805201798502074510436086618429985545703652926503904795524676305538254838384
068748415207132274836973044741886247401207811443562864371644286163294518746783
318608341921191736579482278313422614942361506596674054676731622717116708388220
661496357856839846753465548926164303754512300968699592913872429312374886696920
221057325309512319611985360817686231849230378669214709257984914984794735710121
945425871517735375155227952366696898799712547129270934247769203307909300890175
443464871365771672926843855905293996492999843137018267290773018729159472055507
464689350506947148858374650150182792064712947827160985799915091515159367986206
834916045228744667973182444793705283130978159695274372461723063563254013592330
187295086211307738381380128435340925492112291589766642633902961457459272820368
692020430142002585578032998647848799857662316263710340311273077605225258242752
778544217981277410213743333316879018126156406710592904716150288767148417142541
702286918725614178251552266201443006354418933567938684146251236103624339685748
447351813465229591841080784152769067224594486332431184397392332418751639726395
318166916094130953399093717635140440977722106175221840736942843102834695900173
142905995085546057251017386197234234504130826083488031229739686847331331125192
298006710972930416917078279073407233925701713478619498163409882496942589422056
983164684975748248139602713286682455313495150111939286603609810914761390774844
784974253193851950318679821460942790896790208556852116090206543123255655332011
512483364650211095888129647719650217438841123379152647835930912920959698676387
004452071830987570013190162900872389162445514614148048484977320780730284214992
498793692270982192966408128348935059265805829172502506772015247706807271532814
862588648351812735817219115957280108030568471097337442232017128805651370496079
489816430675291748617987512947146572646732071345419373094630832332147740856895
528364828523090174082019807626417790346717678467041142516033360982954220589385
016173578946488282784594837281310463470814895335984662497159807701579779588966
537097199277025063795076453997302401006831282442007339972924543977278348285303
112419805616664438176614533838880591671067203893462918033313663229533014459427
528831653279392965556434572283240810623069606477986163944762872842835692051131
101200889236371294217183610019430530118048187596727573612094865355988144978196
548697330502098538297784781526557991336355515967641277187456797350202967337459
644710453530200801085958626730250537221064025765978645831941677041437392798943
909275242926686564958841434651035814406251168820832229055852633219763869112102
075669335896691063673771014126589709700745240157009830656366564315108944840419
666801987842460151138790193133098524703475027507339059702956302646607559298359
854785388277623535076142514076322303344910498220009131164549251144342132731434
882957043836629362867995503026557697316075048963464019214335137860873681210948
686978672190056093907016941621016759618590203644104731331864976326714257971809
043401202964717920890296680906347625371546453803712553497576389524781547501036
983218775302124695577478225665467946409776908994876829386841912503645821349816
695022450711731031730965381530038104890223235703806194692093378983799998242675
857156578779821992250244840977374684018630021324569593431629302393779210407402
845991522078008966967345106545485126399762106340210757340973662311339719681989
377353034694459632124626669050767078120904440956354135593917236129054491050899
154620548096446162183306725136456833055679154172087889060655231161203548880075
952204706320944612358864534688088203808911625962879048740870243014655008144504
415980700214318269611361482027359763910847631740183121741464531851972416917150
837751188191737465930094302273408284133873946144750001431904399497485102050968
309608223891151927047182190851951536776290235666783732219928739613784839656916
959066114106399840436966663678213334033761576711053726754929644155924413539199
669405940617021707648121884282637668132760134501766645145102987855860583301831
112527721989496297135756934644264494682957560178035971946667810810123968704376
751895001592552533562958235477142526831503651624052552316516352741825382867015
591885274875727442949679963658945119414747004639585574797538970767799896727763
142382477420482940556169790163477566576888549548950196857957527140541609486385
000119141214591532332582907197078990696744135781814510490955092505569209192373
824368091181798521277284186044126391000198360999192022142103276440222559511410
648571884004592596842154741574155592161670895759207691017105527659433672970407
321675561050064955666215218124995105423259418886500892546782749510636453505521
501145677608368638867073311580017395142197601504333031318925193258656472454206
260251670309578248452764215328895281436793084695845573683345740915737976138519
047721554564242036116585414866932620930045713088934195713008552405239133601272
289454444827033199469238741190170814755608672820473239175215646438849753143397
679161551199649960703832438910069790795327742522594516323968406279618285106681
813085221417026046254136461149643387871026184454260733337016126972654841461997
793509412459103277638262025145224782766559993729431807406934377035929190323028
690611973894221876694734108208516053037483639218015429253170185713224850719123
416450755936785688750545844652824575286987466440385797217259061119349882775674
702386802804378110216625702429602886186835871041563564741091725817516575027120
196373989028456829721663683581900351471773004499070268677309329101387714378228
173445947090852860662309131080275350195643479435178883987541436128715379988687
828980940742829239024558713854174195188078660387207952695513626427151718710486
379705484678693503852828383163603184007458217723989188150122226299175696840693
075750932618274089495717002762892829824593114479139711570502586722697028805969
046058983152188451537307814865359144788964397865905926884666974518003303823995
479156008599676014745948361546622146133058831022795194493107391789320106022705
000185258673200873000391927479000090340020526289654038515584519678114471348528
448343179170747455809775109676877585586175289612030085099999729465898217073602
353864262278091890977267730176418631208805550660313475707229090739956458234957
238508583318513088965540140129603271473756018298220457189389493077606480583919
931229038992164272720743825557662007217516155991652918288030148632440866712706
105012066409040689730529930226416712911912193956162387575657871338992429030783
153493661576506482410411033149190579505515023059949593632465172671960356119196
007913879355037302124140913495391723682268817731640297702550597572908790257611
819379587714873967036309757739511723027119825965634744101244157265535152284522
100539754036707113423013252130130247759019782556862938659015927041808846010346
725379428222024787423703400245399039257107875237763557655378688794507309215927
193630399357374029514415739349991045719250557402228823190908380104865248021295
811540366506761259490784891417016166280115281583789569267690426894793930087989
845689660928438489911400110007967757031564836411822889426520480845905800658052
290065066079014338823469349916987744457372865262150083678150746841432954058653
594938417769818617623583394721982231595804323028079193066417031145211448310212
057033501733719361442463109374730813745687553520683901062530847197303319203554
843424123348945379543469330015637301867485444349622940973511883795614176296195
528859985510911699746085549945077244494817539890906823417955304962519101814421
196805535739657185538638547495240154136954987590476999471993461189988050029177
595964492410431613878774537592003445540522055842218172981853853134878290715185
923468038574447531424281978649934541038101255464488342344224343617058951973904
132913483237172796573228960754005594541024320347671178512399954033216965067744
767212422294830819848449980993489894702377099678889625437203123352829858930015
334220488196667324121584881127945168279298835130594407493614186583918962855467
417185334033712169273374660383172511655520991872534553813442897099847644498769
457810805154443397731629554506952807421483355280432623059855575298525725894393
620457530577269492942957875572961879428319991876982736385253726625484618983697
142606314072325571329938352250055462930487493258647010876317204783902205639816
749124070843558253035211898794668227411528805293276547971192853159729628495997
524838714183462739474758539992536118778570101862910079801756853350573491417480
795023484738114345711673174986068528204830951741717348485357125384351026562777
799111881631978954135061657981415458698037382720033686699559413319837263570699
874332639490456700017509534581253477994695467434363719544981324318305861184308
457841384661850827578829617303526046008299816383527416934896066035431923475888
746412430592281037403253135062644801920296038872456071181885564017748762319421
926350456698010737626352549879530747000198578466698049842602044058481710924334
629268594601027223216587998244718870496591316251538904246122724357136444544119
947595360549606904076900069107579854535662119003099453207238169799558224142110
994589759059733036283323801147754501327822198440335870123290185212814668548251
674003389568232260748829526840788615781133589509901490369706973377635622726379
659763887295891182589621177188443003978322138651598841622170822081673654352088
329736027033164454691121530223225539253059708610237303997687618606252972777000
535165296671186440436217541838254171076510200728345402597516469572021161814044
702197906894354046351425692846079366903417531565744991414144964284212150649909
626429111349447189346258770881065108448206260295065036052167722520771287168451
549319017407203647030339324198353608443620402342550407608677148796229155990333
352912810296590286492063868108079795390196370102717022837819344582586815043842
239881605858494832878364649242108909497449624202998965764700882219941562335194
142177373522864767404612845221652669901021963667540272841295689829668783013661
155126925986977174247381104125761284228034197797229225591806117986901943470945
637066597465011413175707015242302209558848552794504751440800243050954718398174
849059373741607102300383260023311122571518974827103632362402003665244166324688
363117784302460460319060030044640235013656870198786466207574885046990842826220
379533066583684552915301926788239368068161242738202472667369611945309931624918
522830239138038138287452412038296064179623273443009411455470838799577524702804
187569923140331876328832793209641157005017740512651809287052904434803583731673
045142440462718613734863025733505512195810119165889118698435462934637740289490
109555575223271189471600162453365471474312165938220174888768541649604806082218
172619210483401669910923213572333006607941218171740657351791534034145422578065
782440834921425341327048097437492035700630611004002011952875618086937612499945
758863815397440267173726688438105693429294913442823901045932599596106897576659
198408881113744680984747863430887196631243617096090402843037787403625372978733
495902427797866859695075261551317323197517090592552429117274455635543358179984
465522698316668530894669096133348597091589209129295612742248595306181546515845
510169603499625568306887016125197332789206177885790308948731059532433226365211
701105034044164945549150944024089540282771098630304731614186885139593766469755
183266685712981358478288377335048779394376744104089493025765153898495344849397
059764479615236481874631069941534331773476445558571233712582805337355309688883
420976165281286810957571404643226112444293191877582311626050581947609819371041
373040628581623322142557475354725581530500244337430071650034482817563646103491
460771883940837569009296684078210346226317975242597376656489197218738819848517
180108549084222583421670971633307747812893250530431242588959029932583155667755
555298882282032094520318804233908721852912571789560729665914258355517718498260
495691672689028934120173944927518790473636610202457817262414033545370981044789
435229036764294537735381453003708235530666055779200086782234517150031484975313
667594158206504347500210889456647598173346803376814494834703676419970667547915
977069205692955146366260641820363364185947986348288428135405972132935079761025
733810318295187949372947812850591467524989772951346808339288673346328754252465
010253868868590260274152449903363220784862757467528556166012175063117607504336
081785134782690709637177844716158805966182338272554179000853205461516909585799
390122454143604038486483379761999399377457493466662459510024133013007318309811
174110931106371143411052675451618809793664166060837112653453159646670026334883
995004388450405392235099598166246509655847795905743979986542111696424856687512
465596723883204680635519540708943150678347279844101971112014933595969485776143
985821159416226919024738679816648237581480006431311795961978471867762557306256
937418040554597099515622550482301519795907254642238820337965782958422936811462
505162731734158952217964248027893809112533643788585920080695808755342667917906
418765841163962996777881899649833894002724833652882713364494441385826621988341
997912138957256095932185086519699862568997504519855634927430473659239238931524
010011922628537703548018522230639745889038880005985404333710790782953880636145
391642489661211593466223229545099332887093642601227919536567311224248186266566
378990210211640160423524642866361666439936021869286899925989790059164137628407
366338068433817222648896784005160179459935259055590644041981168502804634525954
779331558638433511108901045898328132416186325064682399858747868771917838153386
849158151717409304942750178098409795829405533468033584821154774927966984451813
074549982055568406894583087319644091352879219272527876216203969874435334680166
291656487971528407161216100138393108593145821306497771738633021121826964633537
690654584771459357415165522337841053391843261897915436483310842239095516751956
000732589453123089926839700822225012716805311494667182418331366910828490786553
246711685036883884645176416366481066186142617586960943143876556000375475800305
640598691140855210862316497933781763775353936325702995846775283853614978456961
202935023191177575532648046471961119429933029816923641232168571870099412825095
663236550805921804924791500590818051611762903160084312854293811208412820791799
829833400226388308785228009610618921595051427789383166578932432271803717160789
345978398351655850448724796159794736532438727515177581792057900043941918070949
476512004570913345208739204087261122821117812947251418823394773029742591764314
878698878788768298002549154078233100498582517916199112773937534479491903330197
732808202909479315148560936967544784751789600318702234690969659158780771269842
816988655097099209170085808358040550760824423120757446421945699702986707444429
401873270586934199283303540221236048449817133022897143679019238161191419466178
333263065446296365430050590271682973148238090917660153548937462881311512974445
031804463836383881098080999366841663978439561958808771679523411471685237318838
097132339864936348397634768354604117186136786922484371768803731022720888888100
207129902508089118151750506340700994884610206480137977765375152306368773222743
100625505515664007171595296936350178255563277346260667485728683010665102697044
290446212354227799543077368738773454260887294597345825668511240101230144480821
611424878345129071177378578304141484702086342797456349735940188562267722011073
224537121617683865891440916624478254646439891117854218808539910187387815303946
609768197018595151473812245156370304320019635280795861289605855826394850208335
177042504796644342252139896651324122933798197472601655688055765459773993084860
253363642085399627956627325980037692888206540413377909347430680517047856014435
908428832986959518018428500407357683179587010770954008037964924676686871997684
944939257484441580686642551591537773722808628574126991798231576902258223821680
460767081076928162132389013665173458489571085494032694451057031789003490752983
570514366109891845515142762218491066978984919235485547296321294446849822077351
939023980252093915624525349182590791572214310795339888770696062851685574683649
970235770285869577608505551182509857509401058937014418840251067953599057359865
659766558578584010003418548006045274575110553155416562243012054166612165177966
204100544765175361228711137293694345179005877986979726992717956806033009250452
542724401816112229328205393723751870278989689910691321865852438318939909255311
629519424016045496148107076790418624098643243735097519523290745055765831789030
265597437789495897295886464970310518709610300660285463119841452035665902223554
164790558221163011431380650953182217979309588285720146000976261842810486177807
936061433137767008805083031455016927083390178933978321226961091860537049568801
300054329345672742432895083361696298792384992036673602147461552999129821783837
732711386371610698062587627069772738293693079593445198046224198535286805446770
355531759383515384793347629197650075865284869771711535830721746801000488233289
222517456727279380960637811344589987915518160995541903560618217567355552081086
581124653145089468314418220882352138608371880535487784225056657650132137301754
229928641376005211182391346430359085218674132771973204088913895002423256795298
082256220387868270635776147208214822259374197326680370952475771149691632430551
832977325017814573815930074481797061534790227913897675033301515161843413364598
551842341959332350545134820868516952042608630885366719761482313046845999724768
976066789408070255440854483039096196930725591291141426099318669979689954906717
058191879988159675587616248042816560937895625144442935119042631769861273103692
769846179931667175042160639851561000299207241544021783708377347122900497515352
314222496154136870009805145419340639181588253747595026217802016213595582146819
887603683413826073519834951831144497242242361566492817004197727811727457588530
295057662927137473106547788534992580489522197358116049208798534358300406086001
449084443339565709805252020673202132512078067404513697821519422388027429718703
982737618490976857070112993977283218360818011860235674032004500919415961822065
714341241475825158478416276768871875583452682455176349979794716801582626256899
014125525544102401228877789867443580705466202322932795883739801057679748472709
301150451423728953722915054535038644415258430749484652023618534886926146052142
151554338383402294757994016983204172533480067112345278985201546279593759218475
855611001675526642534162238798507098714048192406450112574934282946685581452162
805464000892720018838724478180751266848930839276985468066261231943421469647172
242895873910299713753000074826361421282451332037205728263202513946751212737989
514634187856878019438214969926093214712588595913378023807520088046409110591968
399593434839803052777010178392334779212782714172690658881122349126840225088855
520895412954964358890001882329627668269328149367998699588699243040481937276224
563419080549041643781725048603827896349710130353127227027005756116245748743064
148924519191019368718299700303227983630532000314479928628927172685096842736940
585022014124958384873533068970056492748192265410767712115841787064139352635995
876934180134334071515134900658687843457486692273793013581883647305383208995642
905754597025578026942484191817683005427393312343425512775104978007332683125055
021097934527394391027798866956764775888166524427187829271293397517809410488881
568617936290833744997581868040949807875675183712511196917815766952287263525532
457383697808636940607572919435344484142950475415331701101172214891159320698289
469542334244891942673218948319195818891012895943718356109853772798739572251957
206094710128576005846564227106492221529798903611218611975915652629803827364850
063278360122977208364365367081076480700042026010154660441279865242844299476401
981837936751016291516474555129739206373093304957903861204294525034701052092846
569379079320505929417274562625842328654379435268169638634082929704723577608711
633832400932257819971641181769116302508191881091778326485462276830538590302477
865545434844992474699685543074839955646054303354677623612372854050091517891089
501807991822195689520962490406510584633011699928210684850622762968433768223606
587088740312372969698513827473270191840172659237835195915694539037125518032277
766842677045170419126925920993927204771132705719251244679533121752568279203021
558901810939448307493048645369069542057670444858434012770286641446919355747337
323512173327730922165222707049476402768973919102908028155235510736517101674600
565106817145980523717807177876628611154630576705995897053913701682503649353106
273573647047557658389976917703512884531009721609308356516545517949199337888985
144741970362751624744811977816403864461139197899230647304000946978524035577931
564214363581417957197453426607505959015174936926971689614480934696864439471160
724819612400565977760902114134735598941809484233534909929670213333507069862663
636388924343876007971771149141976123485657376430428637160321206833987054241443
548518054532196383107659510930751490200356866562523275481627684909259743975785
646356500498451596445598381244807575389420689657728993206484062941070799208372
405448143508171445339112388430509714348933406839121261069738298793008038674998
367457803721252329215571162679078185360782780790945738196243230876930735852306
151896347948372606346547921742884694897145036573522012004854956953422762140895
727516304977153472306046940611489886742597025057593281284583169880379831724507
773857400539033901400163262616100772293708143545707310608313931983164559496951
078350602355311650110521038952612564366855731883247944418979493321921876982397
248519467252186437427552371466583826304352747301346722188902330506888552272403
897532218750185310246656994938270114259328246346633196432526812647198342607787
103190171931544686708827800297739759277193958029809401036774938582681135291802
525350018437530785452693455911368837132871895455712674043818579814089910131849
770875368424123789290046436733162496979599030800406840852745429456162086611666
536614189139016338488492281773439094312071063801686494727610062034179121869203
889521660958595712532476400431155459767487612314194607893690905728357536568453
070870890306212800124366988276599694252314705294712842200531831344955287709076
104531729183387767994708333985026662243620668285771686211590255158742543956717
948411011160289290614786942628914894183377547823310800071639173028565602360039
103603924882873867105871395640764203417299480565354138828707740820097051281030
709206442089858197203554485935019126723828485397958558394110161347344749393728
325332490024173318499244647733657714628315823111386514121500392332599986468493
209655398895498755985617559159387443429368943510976088741972187533924280526060
454697924623860077423314467600948702439901337445325558846658631201950562531851
499286738519706807984289387903353869423839492192934652815507364273246771502609
871411372719039532479332229848874540962305676494151479636066730651351880445146
616721351117201682262167762533297958397979398652296652606521108056359256027950
856726153462480937707124446663805161933393960968516786936333229223535844864693
332115996284031230025343686915853700266272625344365173493349037348771215909054
936738859738851840673914615000568180052652944947576391275473159670478383968789
183709293616687590419383819441060288432999524765921737206446842307236075158233
055727871919646191364690023526589257909147149109497988236926410980757233200829
258556473933756800203903471219332021377975214585021802919211802181680390185514
293612059078010622648256953725988988734106459832090570573339045694386490708158
862738447051204703571811614204292916849339734988201097439707185196042207456285
341904121938658459476644509254731517050906285772628248318844745399088533260593
409182147697743654281031933505917997224922938400098333628100711317897105493739
889169347210877869734578053536056934023641886635034842063332687279572837537701
106310938982886773526629783816507471440666342937270054958541678370553740096732
299691598170451805868842447398011402508921411300560521861552571187339846755213
382670221508635947941402415579920658887540456095781741168179757702313663589220
181844987207151842802069128643718100055471490955826892134588156370515369161975
766585118867928459308112485613888990403926731271461674331314616164387284901658
882054878912535926108991561017008439239081919994896252040190524709860194584364
003041692353467967149017380981378950552099255159830951840507153948453593799581
172781936061811013118951089040572169874030688733939960998263098038507173990243
625420122937172221475639749809949950905034831141132787869343727940877159754377
619169357792139371487089799642358268957206743076035365854339414130645480698584
385638357530218018299791775736847403269226224710710818936082630121916475274449
078182334107040811637618021265875074928702715180943744895298375030889286639854
622646181006738579150137676724631288241082886570457920033868493724243738114868
195699704253489567814724714578225838513952447349195680668648575228207403785375
082257184454855430540042796551217138628802652840250238364167867046166743491476
231786980159499364079203027981043064707567015680892586802161008767647882308181
679857860354431136218461079214451696714262005062718530468937422857512771235800
439646003727582740723053784246161438616887526269007455888378479965361850418886
758838890459920558131978168517208016067149688532021902212345559653331381219251
284843473433629386678699255679744053719653621115835978862290400609317509639602
390622637962672860573796989225056394247679026676953779680216243948750510712909
370622570523943536961128631834437066279980156515375739530603179466208382105031
295689006816188604122820043538916137833029670162209199054413916763256408161487
584821907930004455583079548987883663023233985721084542607217674669247586285627
270791972483277457387167338940277812401300908459832502274016989067021579226221
380870170293970658146698528253778425416209339691896265447238480768764945554382
970585530202230710767937284809020695463419264942598698696868922793758460754260
036033816204051982169258065648293779662167647168826096926162312891154015534702
506191462318704833467153674392153121910246610448983253669732338460774257882307
940673664030063627191434496320506601931221334051530245023699997155225353924599
154875396767639319875543034461784800188971390076762576554726118608642011109914
233871498669587582586815603680315872680646496982166944708355580982035208969069
785905033784557754941409511129408054534661428721431749355558325851123482879027
370469574496127304704145744355538183945141024755048502815310914152409173384685
104057033564749636466043613740298840265864691669540680336827357095801888217239
795535932390331502455279800960413776957741695725614385393993650216797219533969
999001493591166592786283408608723150356904686358782061294610370441676701897406
062530600735039887061927914635972434415436580585927383533850523826778645332767
649534685135653962217996876624230125541261222388587886271629943019645902901521
277540889922386289394127804246002754388170363609754765318679905191492778037448
676700882524351484830228422385282130564406943331222210154404113093396533245151
208163135544855172528032042624233104981777694128493365376614900010153199658957
404615452105582793419317646680722070684247614220785229254148143292988230673653
573530543087367616202457669900571926858939545948775387579102126608231303031006
068576517322336961211375103293494638248488806348190577634892276382501505881365
903072588606697239160787046629846338301365410959138748023486080801619663557014
216745991230049624915045975135819215800193947263119138031104943833471346200555
168325596530673639861494849306006759239445302621267394932135333301741911482340
055808144591078660981865476381315847714270897844760368147968834422393096550460
635845612063023485822737672738486849990138804866219138742777952575865009801381
368459496635309609081815716509284928181318604168878869978763574634893180161934
233351773784391555614821770608883087005852086997608541189821906081190110705553
294136254758014097322782746529319510061950875565047749273188752096295177513325
666907254301022039940184852081883893832358366333196919370310364936263575619984
542040493323326811697759580927055049871171482782695128430913955805031186299256
190047422347476892955953859686576711654419216194875706290812833195021479844342
151482960296949973314082084103334266487768870864772342545837744932674652845584
026817348372226439780464165077198066104873365595961739436897926336436671291799
452221873953480061686014340282797385031042411634300906668224137376217751637378
871679156444858223833214271520056103097492075081629638094205702402025178925750
367585669239373213886098047144395486773461896399966422805075726884960695844510
262554744368212912624634205010717428264603477111258712392026347106947053023450
114858930227508351585520503686678243022868305297120307283202643299076366722247
857863133876604352291115926097846356718649485216392692913738444318534560132182
577394107600427039737859104603393159477239559595974381101105267872519356062399
878866062537488275070244719488333372753681717591638479119716959107813629589291
934092094248545087865762472883216482402250188885747207493031329554895444353455
702310048536643911998152473234368028448981031824758768395640720128871279375385
252129718821402065596655940788047387553321757718495628989466633788157703701387
384867279904034380351473885774379003174722329626200311546749715128399622493100
725009872792199296806925649365965502474223859248093113241964334222777135352483
572561542498987798596652443653963819236246292902799436858430516498027187563728
798817431079837311156373779517051045068967560334174676933546133355696387576427
394440968116342963005898399844320952137298090548254487799693677550047257277546
742152728794531413558915610693252432055358672117711848340629622086443288676121
645659464841659498508429810560014063365599312879217203633348699152605669908224
570973397777167063522973485186327458734198184258553159329812183216606454752900
180608081997935394623939738758125724719682421154850084224006538763668709413804
321201190070963230282624561129275027415104635584856283051491140073322719967686
777422675552072749828899400468569169733451326017990954254454639500631673025464
886897353054074120671544161932935823415996803242762841207911845526362230008752
798204263033345387504617191051726327761408989999720986986494295537650643528919
304939191888368237201344102148639568016959089335309116187809551572701398708809
042909123975511603749232983004738060301536460411693944355763385881091564776273
267744105054335564819135898297603945678507388813933219919485146327807464904458
455117980498850221530503753452798367715805916316439960416762177917552047572828
979383072122824179647333650370625855471174778664153379235917587953650438673689
664404113971519569113919774793655650092121132298015920487109774220160194648047
018959859571214096400928270401667004285293639142811317369008442712139181732166
900434322292812222642545019513385651849863207913230417060741413953653239335838
498144023897541859216903331863061523360618743390902482937804575921447452791815
685421826029648720080389886466968623731739296934215485943293764498104878535599
198463644256026915254604723427465057384357291419950499636373286633776758888256
588072599240674874438669022129183482261314597167837303658641447789816379820949
739253145003127750430862857510555778807673942740371232594013875164486392706265
831386438435614386079790125136791129173257732439267139470939346283406782007720
856124795763777648905246629458161319484224285774484324212069601143906313741090
316085892398693753057991349645563017395524633674468447024665405726094444943142
413706006302842597124563756461085002222955034832148744808930350597651886121325
478628838275108393110213592316573901702438065275389463016185797291893897129710
918252193782087733057642369065473323288067096598668135836113989191107403520304
289210075149479615989248771324507178424876775606735423204687108089024243426037
529062306606139369801176949248162042275061043584286941529591898054989499350079
793564969670836519054971205603679847911708627170515712956228268852178767017463
925920231824468055500658138732501675135885546630795747489357504773988438729388
573506186629962476508444904022119954093678301340531540126805407627686583066645
283696268778745253651739709271007633453293399648183235853571165342785134972541
627008588461461812779274962909873852835555901599666435918236857797150996262789
811521256891962158303873789676078734822263729411992709330381284553554630413732
159653891401861497745768967702946134576055842400474686607372945190305101242974
340749503595127647554609462057911040194830652282976613265392050152688474357808
946649007053977399825399886938994859722011506079671791277529009260334293421580
427693640704043880598054381379024053766215672934489114264745785471906352159915
001743582124784849833912032797615338836152433432027237264205338210377043067723
335839714865100430841472039365857947131528569332542091918640059032862275642470
616685828474650848285621272709020236928863022666785596737018460664308753186585
576497155310066127448011715667940738509332452340601001951733717422467030291014
105285708728972638758117052203075547687893924589365206339869523858741262025281
346032149121160071320842491112548332862890413418488500272710047302453251106127
545031807538063021353225824356124757848440997854205222610639908652546392234082
309421569167084001071419529094935392570808097291944443743189700180244261667989
195988098882494288425795971497952857051350573492062281282901132029715981956623
715325905187096211778434167903508780376541450991615408099865971172051482957304
786169685112629699915327942078239074198272695557630522193802182378045193600187
655611103367528670858089974413195208512049726967626455385039585402719137759400
410186275074568634342255506208722534005326349463445749453585928666881149737111
469159353373019110981574395045749629505102365996812738170581997408472894531022
944181026859018571278816555227183713214590016668684788168758960054126269808046
007356520484125006093119859018491349755216438322888467439946242930708048660694
772741499325607931259036353950107818850157683143551977828366744250669006093976
948216464614973120514877357948948654736667226072219006157368491266219373145647
842215015859294754719400318386836433477970660002194476112857666872074065055239
669582710495183057756804807409882345442730647499860284680970387381942154478268
516568624509837465569232816499814217124527405236081636489678055971125338499683
582280929979427893706810457270088221169194150052506215843051588666011472619198
603015616212123473074942930828489778673199997536981286287192555004353831389634
473783409102606133873260977014237859933344902954847139107761155279558119206833
239212363215061630793701576916721251829474546539754756162161337673363666402005
479545133344349800609446765929155227559306743036432716587156500740370810088928
798572222648838376169526452158895980669957798411148364647226604697010114379890
109943316716005451259930436580189958116508710061123777499880155679359957213184
810866046827195771605124637798813761440261736440824484706647947452450318487757
414082440588897384212345686928457644679588723355490579314454784572007310250848
053535604996874357835645262976302463584345133656505685797441392328579206158243
187519441126195641745970603753887669377144157944432255197983805277018792264231
020110436214015614688162144745843997052930810976408663415473953076336951171533
569328197048106550369375686310871518904273904218635893565051666491169492908614
374270752649549852777926858769524914341710979234164845910724681307736302845171
729898659109969959061328387363310755802614940466838963128284685590797231284956
268764808816588845029639708300082475210179957911910064626980425779473526380476
844480957490401780091891038595345868788643755128676788311081261565019598526115
615235760126861916409811758343269218020665206784678594797649297145165888209490
151152720106531001782133049357511820142287260051149613483284513651548083586531
204103129183746787581282271549203891236667620515617757587808715233539364281450
949593985374257553579575708706479420211810805314747825792710070959252693115377
467364211902095954425246557977773223809913784090171496983864350201985291360200
912976080246966992129880726433377497416614363680785590501259324990635716039291
877739009310577945953763630310150271211624032369635532625664994935440781535234
614338366441082775416592384775577173263709317499604853248094520039680611892984
910799632670918905458530034567980381944062563567479692147297566926648817255804
467507388220959606948944156977260100770913682836790904939470188736003949208067
992581541592744209298151848538833499140419549251432669007155817374850838256212
453262581259098429164153387038740438203009806386486400670412752138517299605645
201879551692071534456043319728752656647767906998990939432792548726725748462492
714251432296567041373389493892476320243780696689131490193255974260703384962563
964116589140388685196273250990672558079825140622814302889302838315491932948836
577250304407059109131525723529860266284319666621825224951251093700108495496804
598444730816002590153254899197208292507059890198403963223137773705136776381377
190631073746591493332882628937005518761826745332975502057268154322490128764121
159856100580801317067026091214187629013515072821559951279053965509754371137955
356739548355363059411973696703975048996624323677178410857703803718540921872012
376079713669550680050959844220412844956281870652395124563113383427602146489143
837230141543463647356761889926822489682620298169942701176065398277720230968878
303382671651781489464484186306666381068391364616499056713168019007135326840528
351900176553002936023355278495191266436732688351794396658109922198393914644624
930104422006425247275226785318338698245162150154835100418092279560812695997091
569196634706470173312808574941990703705431015214463115854139675198324589352292
315211382435428853556724954015099132797925767079010923024322487321943179388273
800852284861662957794759087972513923560322814165091918994030639861086654987330
633024809870014824284817922504851997899369191215431628572434097771480994506620
498614104391630145904246774668340943412951775242357786779710289096368898656422
720900486264776292868973390871849349330374883700051341156318153655905988318859
202595507582031542935442453446678200632992173597834296718488175294318193258481
538052447255293302788002206073211584011478367722487576818885838866656669408062
566994150027094839853966168535949587851709602439119254804745063977134177906987
930118019919073305471113714848357795732906744787790886394464989695118578116482
312864474862728637123049363986577093304266019915785226466349698366991038539783
733529044353688163905896864330305593977850917465137756343169825691378004219994
652405059718384336103070205626465245825333517887437304199787360746589987855657
665871901063887390416659160082510874077408405279651713894958792341482876660310
473474694157781240624766983081982083003585254310197451011284906357877565977623
311105893066484468298203988501435479663173222854190890921185969282074044040221
997160329902816118075840926143339613191401344784811311990628920551677534669078
730618307603820661088151358618370426767155925628754996790489520125891305273297
226205626073531130662097836340337282307663127472538606642139108494966998774516
096441010628806736438109378652349228610098587967457431656411222079191200542846
700503163981673714978696306633401676514638534597172987730882064191729175520380
720818534154672959083560119795675738143202999772613048872932488842835999878588
630523423757312016326923513526623073408891776526265013502758246394928551944221
151590285733832038309579360798639430253434796650124258999143132043831030302888
460132079088294828392810697232540029469325081692164691837628337034169201826301
652396866022584261928038013832356615670390991862027185366939344724963144467740
367885134392024888242745168677006747088028099548786408949029992073686920139391
256722816931774331205246325697304188491538180647568625170568698661548420997605
599667590197755253774678298466723858173309210632533724624178037397333079049736
984072442239381587900041896589755503746375942228113794199267022025595075642370
342064869839758461177959177835122301537007891464682555505580682830229992370231
261459897839755700949757949074729744705709404263784301717797252648090162895502
619102290638345108315369698059888444843602539200688688470977081550924059341865
847661368148292331490099143451187303798750114820878598594595803363699684835888
649462006504535058989638960273959081303083168236534758466963556940866745974438
913753647311393842192193864433398869493349354758533445270235808730967865717381
454445262761693778158412772698087807425824529034375474989840926386543389832795
986349314970213024424418947163796807491265533540514791155466421263603773162065
285577279586786140234676730610257970383982668095165381909523822232443158577775
187502952217671984109535183974807996501859993469249017903273896668135179890825
555153394137422834085695447159801088382923873419817071674902180402895602733144
478993223816624876245297441353503266221299880702513531356618842580097618397320
074110137022378501119738884321683461867713210506031835321501766128183389334050
142952151451822839615061310728087240009011153900218979514965160674181490191495
075683289000471895496893113063546588993798909794060598058575627849277472289933
700968471000836608058549105567166707428068303102264742225239529717132275848663
692458086018405531038740491968935833709854121933053925859234820831132572253721
200769137450921420469016922859600434847847359794108385719222816927426575787277
581921406566710649296184674226336577378451422854783661289173654372483005269989
479415636614678175675706672523477363606269459491430734641866499446826381606013
864696872869481869025353440109589045885365290988461619246456851247590586907868
631261241252595235384779985222408779026508238668346009740662095084841137457507
454574676646725544705514920875807209096552151568984959193534644888664838733223
586626171290439376519556156665433942888096287512812632784699603557362089524218
559592912485947040485552206600062729808263016939763590469257531097321878104631
166230891322070377324838378398091745956541600456667218950690174227823622383573
060995146023361981403052609881051652488619757129869168710788983695912879740593
691372710002177826186262767801149721207650338550959708560903900204067014046946
060188596790108405810573563488351012157061599226633753608324013386473738215098
008727086854849800975406274554134515441553755852372222516091740674509771742296
453046133485295054510064750199580903757326336975046221426172088734669560935767
056450039941824995457869759379036384855001683235440158875567080460037719226482
499111929863613562370068173739140742007013058281449378858257783494260996608258
816447809729254920269745000191873618011850311200714063216585564874276413657693
655436428950419905637260941078222019256922380964436127770931648797184364151664
599067829195486614773311974229344264798176986981844516198756600890887960525217
377057243997952492145564791796764779767975413194642702483366082154677515004857
256158155646865652642741368078235006736118226988025441571467130791084066407585
557851525831338354077088209117634950534463372446590777188747210296274966950362
445346666323912442294535387211784642898496388881211136433949083783833973248848
287727848775696950449951573846741402829945180913952433551609005426816867817517
943076181420209384008360126575826064890708774430203926496323595909887461453917
610480651500487358696759329431254086654172966179420146992559644761856171807090
551129647122401859304999834935468629724719434989541891147201490418068350146551
025748539968519943309812603861833952513797292805987940626365860603819772848003
393815774540463976244139717092748141982291081205715057363880845172161609715903
581229596809168084103242144033053534901662764098360443255013824057023551087953
711434932037667269656223660083848052329254550347408159995738277414810779661938
213141520851596925669380692192474580226245161521825889833641120533833019422840
295719421091962240083133101011270255881675302754781155350090562718413088323119
074016250621212113691874791472415570631887674977805203431307735497372228219330
646766910724286913240184825840309402723943111168722030048187685543995852728901
721089197542957015367689131292098045971652653871953344771735435387592998371524
172868007477878916394735213797741688786643429398108739349129695282998464737901
391718226231751426995983037056185719813132505813793568871784049880104945203371
374758059944696920665859508280257530034960891458974344427316109182049538930450
960229247361929264413479003007638739995520198054422225759959178420950173561847
701686349445938003897423068403410202423776854086174118295590438622122409568448
169217899182797589657156530043068424215795675835709506204469062287256262327498
909952634496853675305241887771171687451794778538049995516598869639737606607496
225356728978016613921639585863535506214333821596793459096549050705317820670560
986237048913062630774105983039802993675065169238300684843027975000609859810265
149059903325658453906943455112549681734400041621588205668163903241013380448008
832169250156755200911749794353521689976180622162848039537243882345865438837345
629855732520307358372184762704591017416533709038853512147677193585123137576332
889767817262643451124184576785075449025697057645383027146198045459986849571537
467918301778055536464801510067724517296304070351576790471647890106887496298603
248210027385494889178210645600988520842277477902169119336391420894913957483929
130857395063779281026253290966320805330891429229799802200005319483131971910316
286696898429582320405227927330721354791810060352115825101449469784729491340649
022517578069417661276614445151040531869700965630645110700311514471170553423211
621115661507604003919360532627642075989284320874029218442796014885345819754969
687179332494127436505037675004772357058813678605234424787612094902884490930449
600775590698564154802404271013351568825432698748647434735150152458522640760985
913389875637374388108573968772640898694275855378396990631739992193966167123803
731463055649353995909010039141867414724093781082601468186818242330359242693819
991033728319622967201015779657233947312821634202969784939552735988253826100361
209038913749703659562751177716401404304161121027561668661163332813317091324605
413493033714536715612602624364145610340533674717020306395828289953704997939854
858127944638898062985297967120310929912108852446631612273932480304945669499130
320015613715421589238442003907999361878898627759035749199627294566447324749756
584401684725358656801173844740788555963758976425247529583031849909133736471740
388506225808218251221567608213549971907220334636898643531054424743421690630877
353173878870197684326033582473910174002012115461033006311532036303752705883430
168080490385251136850743165713171973888866188925977664269664662310632130279726
258758779052817971059844259068887401170517398592567064511721731457239318885473
233533126729097845935941707560849498312523764013138233824179386321363270343105
049857131545552919614057672744443762276572738373650450145370303554403102714704
327216959208965803513933361243729919070385940209819124530896896372043932052767
258707349593373630728609012842306029931929361392465830468353562015611038884420
059721424610955753846914679144398055425107360714344722036613924767352984380544
848745481336715736676906734547127855048188657449370201157033256473222557615104
995493535004814639735417020838428324254923103119915234143584412725441653254173
842758370404931032919798628467130748916397791884997659563828065202403742664299
804149732737375964832212098266626476252006244397398989490370255937158661008493
021440228498081740581699731864733719302585623818618009636221866679382732043644
756383448979445130774242090048144024698681767863672688137292438831123551570066
378353837504115822222173868830227076203910248701857395130453535817736709130987
228971884245485791789104622635944124686348944855273961125769434723459934352781
860075214661014448751468515663810476166234343607439700786112753222204679883016
991637748109391666347143737578996187501064008558641741475240994178401922476745
489745512516582804428362790787882253553352165328930825384212288236278760342252
635158562516098102320065036036096256684379960927172978360844472339230912057545
831003978706887173801191594915305489172666064968795029995636581603947452197844
564957923799450891555669973718181272228924613096119274935109342827729046164326
192228847064200244299011994920046792191051530629187874930468833915356493934706
764940500909149565369304893025734337086174548970695684519548719789354723588573
741915377300275332672711383514370799828719623490296469539726486486278824351929
995079534076654799501706489700484473140358823467351956451703898256393332736652
286358469423712972429574544754570342918424832793410153920209423789156680743605
451660935976245241439338283408205534471101538704563027953274027670841489232241
283906932187809818346422121423352968112803577274926299232531618855434810314163
956845629052682867688936059819196317356020870761914476159981175319588543271551
457712732963994763071586829449489818385450768424830592377478717047716708958578
810375291217946231267519128886553198656137666256660361905013538678249266002042
902860407465622693095790874066843839539556433571419132035124306923880286971601
270827977812893478898964507432411806491710163853865000198561009002885526284865
982523651962272754864676888384045123925698789228734184252896592352228104542433
112332172646742322312354571087588586210180677455245775933019563202782453308225
464369959541638025685745245451649613316106844885426379850672660582774088430767
890204973851909813686519225650658800837041233149036321125738213747801236693852
201098915472417726686624321459833155706481440650653653846049919719153232921244
933463155465039214768092792031745553158661287234263172699653521067386872174584
581214987213834138269403193298366520783866278825871027904900669311697965954314
258302055720159094488546155790943774246410198107142573694217553508595439831744
819469839088892940402048009739069769103225737704189469176293946269192466880342
051668322142005646709983378387278730583609760787917493212243415215830070849957
746980904417393662395233101162286815088502254946620762361062588716520265420444
853795336121106630965747454518116532126639205469609661460554496174458821140510
263163756149365605217877352973150393250054734264383388639390657422799586846090
344825278589955204361923787398799416475713018630413983120958902345790619697917
711881639610683805762139854096892787391892892514784096448698412701872972112616
109553271991006246966631227588922457781939840618262120550937158051223643654755
539631167035876977516542746420493727936200255694389081309684189470804361168201
567252606927480408013833034739488093069556384456004187686496470072052868293027
856424501428819052863443913547932921882658310204549924618080456676047423060857
141557440785717234077934192452328462600435179876163853916692417959416354056171
945451037514850143307090413470940612929663591206929610376999846236549724365654
887014140763557646559616687444526866396455010123934931213285248286318521648190
098136291261466413643074121699631714197883999364581225359671579129907237539748
368961644552831021019292325906210738934767786602090616899267604637475758141595
904068429333337756411221677852125044786402513333845820832765509024349111464395
669444192339716204438665396576560791970981390416537834030555410686604355697988
319831258519271103834783190797208211100569573729645089203392947290640484383957
969721361298360313365636170139954117631202394590851798893869524397971074227606
624056795355094962244544360869999161856399892392623412820596911586705185526421
213907323187511762751969733175031118426005700947676484743358965484315134812437
798093151919712854340888088435825069670339607178654813288979197533829784923786
624668751010193809587091900926989586873107509596232476978107769219221349059692
044769354164374179589432209439327076656246059360586289036700079290488671632325
973224295369817669287117938042792472985312586050595069324781283550205176849226
831927479554377463517322309660676420816814210088650109046512501035268027734043
780330624126925774268295787741421917688814829550864405956370646401751677564234
130474250823289314034943595406466881636392990390038701054879876989835574214883
668591692358287660115558658268683502572481794908572276665467238140032032564959
471059733844262309392038747241539418747463079085772517131432417202956163502784
237681019658423397396562444418879022587194379159821390854705102681899300553896
443935422714911982544023602378101111657239409041811571036983160694764257835911
692569520281477371780040954703942514526423914766307098965430610414408441931656
363015018416360095621045435171444827455904074142453497745424837764331489628156
014884177999434846020482377980330047209926754796253560638770875832995063577152
527086908011547735570018424769071378908690253528633018574201566488763872788124
220079567306822628290902239963757289999474876275721649909634114166450384255386
415102393303071012134544136564269464214312399493716195987910671093352424600745
873941806183226047627042963650338876701000605598042329921823481994372830331112
348659805121026467227654768400047719836172442596804719776846593823025750345228
708935445238060738921193773868592873648760743354414980049031107922881176872105
683877452720484523277727036084866746153815539508261845146700655354576727903626
651249938464744824569795694514327446108822908922924503998480040350085471914521
902712937168039103936249889226977959598670719633216896522193470072478632839509
303493982851660177407140805488173455653697162459673881048928881421271532152210
646660831957795160192811206583229881409794150755170929182792199049043803164094
503467984440352371660945834514981290917445452767905076347461686306986299034285
152995811930493084986544222889368174517450738382033542308118550746089212395364
089155543519843803811538632683556203413167594565799681244392920972334370609315
795319192808042440260307821500643263584339690423883881324185641728564727430895
510390748624174658852417707428906087231430711893003691109049406309139143479412
413382608459912303632281516303601670164728818830217134791353718197667225154494
501692093641174276694252205932187194456905067144563947868147737506699856179828
965003614824749374999631025573493741617966850305887175435457792386016411233070
309010881385539625237190460466304987027783855708967553142084023790660244592171
955997359091840838839104371416602477607921862795447803447626996921328572556339
771728494788831471110592634612091029815634625205258896717156654037427813622791
812578505500705725094739675779727393544628012353908921258668472793985691565274
028326118483823177559882105227246559710407752525415108688299008162036869068663
478831022806744486934263510979139168240599244917233115423151256113513002514624
077641641687607214184578844806487110320309166259466720140025193046460207305487
273013050370954665689432045780605338935014562216822189427409883016423444169139
518553022353791079597490515003062981761791123010710392264441652397195634501309
753957155421097701723082038539467883516522199541857736345920340605998881003599
132743479807468374752558482523358387073225581113562490976052627424531032649703
856417097075111713230353844469318813344045425676374630192857137022326327727533
321168341183192126013690394902884112311906914502116809491758901171203634984422
643269067567791576360468570927656067194459219163865679971764587367442408138756
808336608878083654759361041469913829758068506004789311219583536204021477345804
457298214248857026198403672997945464867141533805300953738834913835551968989800
388276956244520626248979233077416784385747546913640065605150182317911376855741
179913639774899919710427264542047937401319094047947365398957132753111362319674
987885460498084745825264872868675557264354572011571501975709905978128111947128
153447948331517008322028018668363416495304929327793909077330700262775124647920
918598348342320889945879524074421529114737409615014404984006504773847364348900
055919254586530047110329927905225824003256392430591421286024611823067535392038
220165874982755154391483575344489302360026890110314550027682249928241953653333
181669779731467034211955361269111545629073114498531287551170864352428741508914
201591481035337110486437793462420198465848292232598102761019064989177697840739
528498625498945136993409656635358087715110788815654535296339169801636001188236
938442381376250901649811354752358361689960425757579554198458454738314415638303
118117093565349000935915784405838598228067887349800340763990252367990209887093
435639261933148336326327442831836102546570456271077029233284739590989391193587
935290720104622515495358545302310555864722699908335215982005796834894680081595
421188810251014020321067776273096109347797155856211170923095978613274816052556
294197157725174360317980997594538085560569131400931354816917984943188178630385
859669299888452949786971790939660349610370396576409944662685648615747438493838
800946708934024036729512413516255651325327310871347616201035150292009348157920
123156076090064754107534744396961086672408159546849267414500405910086947597550
170566606429566686027902056254154638762970928502449838750426894773282031028776
920080186813553402356881616031202720181279881096956815981903568011554129869124
644834381236984585649498166597150662014885039590773788656318138903363794421455
150086453139648080726327011596403139338548004196457353839128373446299781193897
995007498034011009730614700757092663139779228823170549538461200886880140937131
229834084763517816772779520386115813077259136975816128371783322963045091766841
035891492723233253923288665924434252953052896768344225185106341151067651338418
936080661844480677990696548415148996720394994513343338661010771159692744604008
645530498800101635425045774813762383217360434630340044195724603325521971444644
929821684422583004514566832819846240071454673757868415828389129854201438604003
895629476204235020763156105693073650528739292367164984041388741111584596626293
062158371115711685624754474543126737707418601418993612747296803774944127438709
850650372969022400387360398327539603875179598402596886367942178478466708082041
574130470754600019678031851844481514012014479168426182378217857586381048240592
932052052765006297234402817109731657733173905540924371860784890581495314147166
873511086567667531323686446822535140340786175516415062541626334981184912840786
192681518964648066653129901948032431554225151144236727431814533938381842968019
907214048027551132885532691384266078008285415191272923167897729682842835974282
642401269006480092878672760292226974370336727621658009039235583210904830679385
630258582687580833501130855889716052462981999961383726939792840223365255164596
093243929655332828461968412081005239440883125123357131830514567350312676432524
760492675964265511203563704723307509580618669560653501372009510922364956099170
333973492030135959674375234981511409512915243950971163171762373375335242571129
198532481002715886400136286647259983344595438358177675029113588204518393028387
081211293936570238876350715526741867673890481970306574873366627784365076902618
115631286659853395107814686167904881851062986606890703463833443093148440540804
201180628830467639902315478673171600866360701128621411592479517726437752376297
790558759981075273584912220394361888880805372117119927022411263903958687911829
187983348800774101705473373127539509692249117832611723595527070052262543613474
175954715884561152356421002314541124480544073033186148849158987442805768370570
915599296697639438043605434140871346152049639625103443878146832812482371899450
028074304822172247547291271335641838821137735603095694429460707152942203273582
009447633503848147481903844958622609927860137685262333468315064291880953518515
252413774618800780699037311259907650181637053441827153031930279349509177549419
450828152683567229297201573653889633195494880278826072265866511953144869138962
187386213461764500428302964907314167793586051018748371884201718593153975967171
695964881841708467805667029041569584639762181240433252677104385476411182617488
960538719869166791505437206220285769615183074465368134408251126586612052184867
623997042016945697869973473673547414626028130585991252707864701743542216816828
340874961001821915476071138420883314896248678193015647681655085636184448534047
064268555185259777843920151110723733579934028022262287205790829518909223309891
164076232980893618269826208530228218238266802081092732415325574702520310996216
985188862536531352392105755723916904372607131928949170713812469895701812375158
200690308218410835925190251344427290151658488218517283014320613166794668255438
454545238879625234230705020998630098545922184237350910884476933832001945277772
380189407778477513625981910388808302264171631258929633286819227116411524573143
661827609744512009619934313967275643844765690177723687274794390228971172687999
690402161822387570143347620252505939052476021702352722028324214428504697898881
544386419665949064509983690071110857378468197285470142368938534590459560431271
701353782541617648366214164597522821874604298954896738572563603830655073437382
784487627684829055071858230676250627149087552619488409464670739483140859199174
631034218353440997590418984081092841123156905326101576049548391489434981907863
856050660609324814879264172710833699310477965795944058285972708687308467844196
186720249242750199605987450690831634727966850314640635206086866163076151731165
248947756620613309118056082163017494415934506030387980336588942088548436489950
822911942149808471877494210755473552397843655604023369734189393534976703061422
787094530029777393924986367460598848927159928643106727202902901090231086574724
367357429666019564461404614266989945388059442997117042087640228712679106436016
883645916906101882943835871246017403131033872989732992424222434633544559403420
077915153287089619867280077050705340911457313834379884551382662793799696777027
581163275305952935007764298985454187886021639209945140430051488571173059382727
716824094608139712468195465122196531500951357473865782921903909911507407760710
532043486717399710929097938113720250768501428405539080520759200390086792961984
329713671378325223310108911222570491348089002539573802942976745809580821377566
081654968106439591010015094150314769818954334931410312079273582640283815325856
126932916703557569807025632674739018326731845083894154995888495678045755700307
990770032414207181794447889066194462076925434605608760182705203710170421843138
964259453664082526884478817098503928912040943290353104783079666372478304282654
351415525521609778179069026569641545113392605269426731702997529784360614896890
437331636240309670188114428914624264781934133544116978125483349813277186025518
800229693093585854961837802369922438790848964592004062031533501302684403413554
873640177486585889829154286416516861394085876231154320046320780951823173283733
406723821011353518315036090873305808398823368642155138302672948390252967969890
121240264671370495719939558583171247929733712565144052891704012490250413380960
683359533698819262583541237100254813893964399504543651810533135276866795686385
065641048127872541828513454789716774462342041009321459723089968777527627924373
235106210912181405997783364926891859891217113316750649946139715766997417444899
207256811772220592000398042677174386107693078493088231968326816018972169151155
985106429067363715653969102328771574710769624384220293847783403875653491531896
641634435313253868899967038296453123532548630639823952062403779858652732592820
305137687133110228072815049785851395817223563851162685656033290562734363024567
809220338247079535366372299516529351989853224124680866821820603443205186446223
447971100580946457945509780949753745442946574222942156365138528955258638317155
940270037801657754649255430449784077552248649900393217892965203854099848593177
254278925989327469412127678513158938767424579639096367092151229446900314741157
653328019071011989195022402163673442014610746612990059963747058953215735740546
738629187484611661028678623376301189521040185335366899656001978565420855030830
387050716985405237241351397447044360878292260031320073406629185135888282343442
234484724599303080864512518619375331504167444993384121907282485230828054695202
806627452157476229676793778776403731438586283549212724213126855857832502658023
785250584840677495394329349965340317809723592878589131102698592002856173730697
110864266547760959075439004185203734148744392306034822056583805056520062376015
117471308302269462942785236763472726676152222409659470662528706157182604542894
461476365446810882188918821549865020725653767523965958553614570450685447134256
294836550802305859348744531357414312917471830386542464256715357396960163172974
381163422157137192630595425695917115596074994332947349004646534525790352948388
559516032987646449735290236270095462711247404495352454061874151784541269229849
978122551962166558549538321585028026517879244362801905189393709681004667661306
781094521169842272669836669318451381279946768872282882818713519320808445332028
647932204611922870153882349312274862698350333003757759342157226702131234363447
512382699764472056526097436447360657327024576994824033954629156330453462274192
505230101685814071985432374237932315181680096041986664838913145863681999063441
687287528553419266842585629215564881089492391686705648696742756506657600364139
831625639112419775450480743058031886110140897919776838700711384283836011631061
329270691731166924285080277059555455644969994773161387019098657108497801258930
265771554834715439445989555812559571054915971846305516835703545863379677489016
941565993560968453837027612417776180326969630688866516516889635617363350889092
025389370561143861550801175432067961936289376137920523005400854588114540386920
205497255792027690172759717545168707902238606082099307153054373221188739974371
581676879769434343935342088620902078480138805960262580693482618357848779146990
446535505447216831866659399108457273138977417653262244911689977669928867354230
849196645104500514855799154007020587520173996860093968446619321282965741041530
783357497530841717284467676948496175605285602272578451276230877729022132383656
640530132369902150645253301961225419915615692022181485430861749895697170658139
866785071635286076928251379944971771173449763027349051540239031125242227527909
929754535565810861884598939241789016302022077148132141008365080255384925361480
623532859318412746020334482411857234287653738856706838244104190877096175327552
672916158666056109735428039078740127436007321055867856289388845132197948298066
903395881446437372379568745575251415929256147087923382432598003741914580651071
500180863285186563881484617478853959301608069663435883702620286278905411638544
300326254379590966871124495358513924496266882203880357378136031754473673855365
648946159583598028893190276822500991698547090318372785243725186662249129047981
852212398962971619432748531562188401866267038606366038611878842966841453185451
373585031321705468458123927266822089701200583902964779601271395700302599755920
260720754465788316253290115788376148703153329385599166541135736539383736346728
587927185030888022223143644403955499729737893094427510961660676124608165977946
818670194339559606586776733418969933395196868459658877882748404585927000767739
127679518271379747487779807237523430264842314168031009318197826677746184412438
033757490110731725540606418187625738398328604832061757202891137817926385671332
451798377238394573354879596731823490327108972596847419532206615679885360794927
129863860802272592130678289668215042811028234463623953262214629782072396741942
089863181995183517692829063577672157522309289597156592742788213078464739332790
024441095151926757060404727264829827011774334116636760670329245682238947715375
639022461441304675403737483308401920961793190272938950309777855620121562062486
421276682091114028299403477026957800399867511745810444202959433305522849805204
308311026190458399641114659763046623347443608390450983361229389856804648503307
218688710595684481851474137079153619838599927822203870212306870945261356853044
247042840623400756090157802925539686817259043261915342876184243835973668891693
588226487238147339334422074713795500862307287906559333155328577364684713144749
605492283864844075881461628846199731236483538372488485782958001686977863399330
632677896638785862760998759654224775305617543699829237388311763806086421065190
411143563578119682407739177763988841677783800412692293323675351459520993482651
094962208324016539187254852526395256301744846870385837229133918892114345881509
987812469621435856276722867206905933228146170847149048434288761918168213566315
608752727655470850605703417439796185352656115538527389628171324809006309333909
453864550190955418316230128773512317227877167201687124037911319332244005746403
601023192658550803040843470998490346467956940172871294034997122994198213322446
963375167190537796118752698918884426694285251899673762251397938435502081955042
448845941911960815115655985285633347190039423932443790013742317853229200934519
588037890689872490776392031962114394313717433395571918561852500532178743556783
606531800574388780847756328988232095832557306555851817616732170716964267406599
794115371727611428166551160575388872491201743925883633363171260342118448177785
426392011435300697610365976230635251031471997752614863208280280339917019570259
735285589397401869834436381739361603826354550013814922066880645869597284194502
476528963966689293618196579398900420655283489926991371824551139091847513853597
303561100422116103930984708785506103743093732292639790243810455955314711372017
886743523599011689708987726475125774644214814694862384620609144941527343481173
727997469880442269151020083675255447435302115221592946685410283113940261414653
690324814709622343009047667903824827033581107677495341875539558506667272440667
831339920162086800356486384932424264787916118239004507897198810441850972157881
953896827090305552248753129194240794362790541590035683637482680289762748475635
206481211942202132923992706814884771018665353113421813108247433265415882638341
210556588352810570398920650578865120133845988103312500702752597337571646165423
396368838121480628763740992328497954624777948504132807597124025368773676345831
002601978785087501017165819261156721445311625559611984371772944366055466209054
312163940476259097766777650767730610908154951273076047853055137925773453107257
222975187985589652396682062258253865993844946483583289754045525414263469236631
112925206668691296094646081326991584318128091343402023084378278226149032771173
843317579443932959331423568439005970541783702965989070894503335263243356308163
271650640025042790548091499609846147290156780140297168332090840329572201117964
621702423416732289657016813550753770328594968888199873939803848566952019125547
575342208714980662076466500145596429571117795600435988220178188262583862132689
392468178637912709337505543806894669442828815775609100782003512203044860916711
959004454568915299331693434338359212153062204424243688130274260261094192392423
557603395592007175358943366331495013657297794375342037103379276966772452869905
332131509157680720318929977882849315486180204170429479706504196399504014332731
634873323938793458648382889319835128975742838915953596339506360824098095926537
708319444600226365764716949585977214282900013014796161770095893961391349284253
409653043246936741868946633706349772661207169071038579006510523398146197723766
842894256031471649792293569434495009648803269621422964669689865533947724430081
213258242558802301307184004724786800725307211734604646372404191025074956814562
413469278937607748776676065443239020440080785952121551708032503966345737678224
547740051437390033116239188060786772607350490966690336646292987520362658311606
174857697844335073581354386145971249963048224110180586592712978835991887534249
093394085541895692212611281605048761751904759911079012779025981383537531651787
552176598988715013211517249309294924126001353147503250159802364081280044209989
804929610872520700245548632225561775299317563461774610278546178484921107573365
025273952766802198363878330345419761292264899386592704189588557895356518767174
511011952477238328301356945895715561906749600383274278695738545689289383439207
452928311723080143789320447188680513180674887920804309775904904163610307169671
512209119629070926989265186255462726857138492626941244972574590750510650199840
847900381929212811595786826350776022859897735963894204766443035815165308483022
499800034391835580526606155422128486615700431779974912415378356895592328361959
966928628073833630794933243453182530425114811314545702612700244251407161208107
541214893359112124872636433524297527235969967181985669573795824774606976397604
466796432817473779317798078272336049111390504645798476857691940017204929437852
390977117967143460384648199377814184511590833780174365655712468901077575286195
044318299740467695300034382178242089914760454423743420526079133890566898591340
873822956477503407492018196808012947591486784729751953332509388249109434884041
008423914668465671124373137303214778087013555825970841228338965466279617167911
873849561539453437011395125569467544158316111255527671504814661563032394763806
483539921162901912647864823198152405297732172635814421751444320414636758510020
921761245874056778715830219435052392868212886605242997402745383196802453501200
464827177370422971914180808667892498490439774784457139261540737789036357626269
271731240041085413054956155425509149460624345596931746232423295410797098101420
645893582246785975317638067938710134618756630155010423019948508807343614313560
398779342691170670900884437008742391608386582724921078775683800422191520313209
466352748766320931796458224562222184036433664336933057728717789218378692821190
793028507560526010697394132808723966415856886076394575432940302035034001738434
316777793216881849298346508666657060828649134694108498061221070856576637118737
432919772889458181411355776931020700796332646333488901605304085087356951889090
700304930615916979339274152987302642510130258656701927252105631341085030074852
617722692858112909259017728065401651187255644456857979883804710874956741801747
157096810808324161332361573357257066063687656792847668599290518282870669167551
534316137174431545490669775177502692205480749397866092076661046868742519082112
692055935323184438523065770753393350993134553475074423951264013638665892663217
487780061048536739841557203568990480440389173304412067230605530403228923462602
371004014359190595275506242771980125493292106525549937751781642238142038254354
162357478738418053758285821175216596546823210179117885820700170852355565385966
872976370242647329925958875275809342865385307902310661788420388479555154690504
874024326843681532446552903390273227372161490284898257346380760576147895139660
305295387817392164950354047015792822925324449865832866923315295273142530718796
474469209737583816076102209365653151382325986412829801991960048550985925522044
451889810760716125528003200849894704092381956555364046849014062212651674653852
213284064415395376701863518078387615884412801838817142278027135381627426205642
884561410440030983842074708645415880685263664380159083273634459419900347240759
321160850674429895498250828047834522435144059128312788215718208817592122175397
631433989599170510859498022183988847056665185210406497434861006139618669568658
114400101755013610023474919960492714092619223406024098289116151991515848335631
653998133061311290011223093526614396806916636820766422133078350318648326249942
893770430058143252394975599457725669228402468892142499768546084231189086974988
235268692326766307945423717728251058702418640483601875035276221908719120590792
031571999165750681141443441141546776102015653512528141416069487744736168024398
639945596253445278403656972392252196098389388091491726526987510808750456533783
660195206850443844525109207169996913347922661602206468198961989489593130162290
466505218728420413154927228318926551196014830645617838572255262050649987354146
802700470525930400139235820190090310408322150656330537314033318533190693491544
513150576674667753281361648294215622097753655241226185451759081897698127417353
095308853687022423141839118181822141849690756937138660998803340406737901625717
537543831205303479168136504778012650284323387250441298628639448487253458437402
416684064318566263808371101185258470016362779816356872182866134821683310249943
131390103541517136195936188207196232865800356795797216153568977938156714452228
196727932164852197852858707047743455315356536252658222686521069066249733162767
053130665570141054453319915076069669595438670972423549872413972829873744540714
310291540280693949907754338823112669498150715415099196915730177830371149109174
545704783642959416493490744202652714291412408013863497774514571957353920353623
040685906294280041412374571470455319284292686114366344891194864403927703031376
434849217060169223755188001582492514729259984666779319342732496620591725669377
942806410630647850948987852231099850483575048228252748432413384520301283887078
246734300321672491320511689178389417697187178726659619278485217380415595350205
784701775800867799173554397715267850347567595308195412038925621647835877560279
277880020838322953653665170882755314837665847908328605472129809356173628817820
770434074392252071892002360995091321200001829169214346423296158870269641924009
605559885221502463602993789125104671590206057365132999458218568066175851664174
291049532411816954226944678113876928732111996252632767978617776243979279652683
281269064730827851263601969145936684003356550028963156921634399383993577795310
948155706362815733281141571006116947990815976184927795754876910492806423333147
502931392598810407355101113654053793046098349472900718838735216795002716945285
375652402611491231513249067665288032122205864165626068333514457412471799016380
402914081153832854560618727399279319341314117131421360793681285610640853969533
489411614888492041712278087368524434034390948760189251228672923551309549736015
927638102228234733761609201714992671753822929201432151117559443774650990647981
970944392761949749400653058431074958135508532287706801773778066955038753478147
551291170426426732347863431116654333198397423289111774226099876948291827434047
287401305838840736738506445515238917591968485599980580195323964094150894359268
825172505170647395466292551671851220914209173683934299985861971194794416093801
447011350898937937272649350958861335581760325324725820928899808549577928317781
866406173840721528801598841179075192417159775286911971658039661742992243521934
806551667028453735873956683665151026673353216073436255758218346900626648134313
344220627214215786568419761589992204443899317501209724461283386080591376615045
002073281960977112944955412489668396646089968566441343882089446605321491455593
083628189495693450484782792244634912468939348821268487349235900908920543247548
387211226417452609943208384101618788215617279410562961964330169706339821437049
061189503859085145942891438779068665671733834311749848051819049722583865766735
046569540011210434655933094631098881170479340785044272507816566767614392664137
121982233558178558216533069624026151971172195062314602419809374872752430329565
956888867935929702400632822027334899874153643627730467535812763301834478016766
716895405758443481712499470576796637620253324111122779974342127956244418224760
174513135507828988038997662999356310181121027800760239232092564725455263342549
440535180103700924624623723134147349281329684128935117365318285290020030895514
808240118673877133414545988055497901022328458413471498544940538569051744203847
184476998282916647435693347723202981269655640011474151046887915730965109509010
406213700704714617932685106736304770925364637187000475690402231007695838098078
548633048088509449962159995586816385001411645401344059594551031353109729407045
403499719109538205518468108112256036810609097173676022065755638533738473184735
567766582975508728747555380078006808539888143745222438865182056641941443944534
882036218624232523211233126000991878144446554092682829973718648249205412213708
620477127060658761052366998739547632225255927711582987813806755604969514773857
580450148378480279494365745000234793148022851368257632579165262728079384541648
014331265100933606249513329651951587876465084307192859728334848358268475688942
313620736876905139385833082083503081418496228457572711284380790982879273795729
460331449592472868752473176677268674035429974530442949224792891939469048496048
991006762096943719776911005562969949624424321177468404634524133985091284212260
126637128354734158875136640073337492525107426434180900587106946645260793299512
695791227747632627777052815720753415236459112506471031948635766375393938921050
051143364982357545266051772631828925837271850661147635322045071296479442667943
957086116011930615330496406597705835204226313149850130628665402567584386951851
142002270102202632558221359437089446161454592276156867653960290085526079070894
290116991556553422178597584304001305699871081661532125094824785036922997394949
437443733878543168276297990489302152017090398231868419561983378084017363328520
262736345368763393131219362391461311371315189144060592112481136722300259530281
509388084810299345420510615510071678088121780307975005060577512190568701931682
125061317043963680602723164868735663110729601268070265936863407699933141925927
370057299404335140737924724410488933448903527329848225997913308622824794746205
010232672640326139305693259074336431501505331116545574635921932339204898998289
411699049024519595413813087074015174705637591211267052738687337522195963263723
405698722975362457007751169095833674090849227496861541184946626713771516632312
858486918239720094557993236588075666149762619112220929539682414407265989998794
443293374860289734375944157060839637635319699472984734444401319737399419892524
841470682945844039027310404352368495068161975472955480744885971102400122537692
889072992111946491177334780492341760380353141289512833055328453095186599263968
111062321807285891848900259577034314661540089454181402313451420479167847293518
341623600097743448375777826169912166703813759591012531072109152448924332905317
845316684575179893275987116835541284370662546641097653377690558695445257320617
953098975902574782573235564980799450059280707047546617678999433457351466654327
369448647203862658065458854858294495214633344806399554101505774057566215673710
094323508856094638261961867707246884316399796478679688332606676405907386894909
786098199256296170465719577793976712830462740226844863133389446494142810908394
194825922522532041771966575936053829653559751566397021472150545871889003605359
956135055993481566748890528014590992283279554015496564876120120605973852743997
335951511577044252736899054723057265737451202624270926850927020749643990897098
134244332164201382157826195663747348038949647994506631164724845697156873566954
553477426014666695116376419534160010170857778739679919728796546535700659737258
737301969403777999133163461465448770223525104374127086125735589630833570788629
353918966918324629815444427284410112852877483725839647259660421870613215433575
249829230018030626970742823315183988029147869295037633775342755314232222966252
994983451571963007788145426007524982280438169851150707683992485211446972716740
366699841587377070324698818900777430808602484663634243273389119045929932512431
949361110093889619862213480472117969149616477335093608247521060094852671887181
938103827284881442376835286780973941685966168900180067619038213227214199055043
687351520988238386309182535946622473814155727111592898909683354993677650004692
876750775800292208892999432081900686832406506949933824338397671126413146009274
457944480397611262094278085386659050240083669791501459012371090423734007790066
946051956837941134183860121634611594489052502423900743780298077153206679786355
753449135580460285049034558236692158003779078853531595421957467985450848274247
018213497415620271740684642795845594782687153840844156307794069339000619302286
196898521814047582533279474587889100173109280330657145135581063988019467655143
202275020665426904254837226510082890334918902898299967769461569883290753751392
647097246696768210546847581104365643750304425182112658234211389524401331008434
355553599284273023301903560006421000664927338895442400420156909348333210931600
417679545380809725408949648420287935479603289296019892014467959620109577963386
631132587083679925063468647418262593846540455374096174330394047609129301341022
216499249864442337623608121766449323074397103277866690773530557234995349163574
290810373718545061053606355848720993448603790800336028256113964748341238147515
935803413068016155780733706609582085715113843204082245381320583688889631390314
339751442312024440618715769515163221117580578654701423062340280295965739690235
520322974599170436526166539055912102633302848069385311318681500257424806513476
603696418932911288560140442586486249641802993076516762422433228132095186357326
354287436174421272614047694195916187651843382363633347671550151788539229847773
921416069545118856122612895137814870935869666942050327531296656983528109947030
323644237303611767738048464854946731483189570238430901230246801979101373481640
134006047358562275970068662743127795005061008326540035846665546710171863995354
302224063671625861318619194761714215109637896131915213343327811365463346298884
601264549609028623052237518334461615775613342091233017582686112353920128002096
097327809064432034748389767450250310223092867682119789176474312583953422096557
862982407318020883355317250001125072724956668461049830878842416948970639066392
547970633017134281174700891487235118848848848086789959402218161126709957705716
616628505851791197475926418013610748499716557177741945379393010261961209440674
232288710378320088834301779481393970966402730534508114932875611680535831100241
450827915594557842224001769096822000375986148917873746892856822445515888956074
565084704289794981656105466601465524599575624939948470444581399257740534590062
638506364537526309235279028732578466573384836493780124373160709617160569958924
182926062239448042994897311348551950047410967886443392243384549018318767546435
936304462991978072423333830343243382153605370162702579788992835549240534843981
727439723641448601322542341284494282837190830579013499529650043638885720985930
363645844226302711071664608614914942534804597240384563075195787312126443558947
284899843699872775220810995408312568933208341747762279905132476806186585492028
830287282759344012482224770820921418587799488409650096777463761964951419993636
218073504896728054161760887244510546330937233509774140531562263178664403053886
097544048519245065248533967592014331827197127395852282833656573360998399391820
823241110142671868076903981631171989982643909245536596721578448820465649785447
038901541985509558079116235040218912212526618631190802372834164290294634055715
725072495442955455640531520907503582716317211193467173896636178567612481246079
724795748496638650872057320224120027386449874665619859918672312008544889473378
650190224788657140740685893502025235743437972902344290303865395143206326686293
516396955250756189391058838743828636628708195699535941567608763668681050550077
727984622979811103961321464400807613557025165728053968543740369995022933039862
249976777777118676050146307645126390837320187409686379277736938913245735564615
789417291419645204779547609357569920470466585890222498558928167159677440004232
104404133480630223605601679681726879328140702164367004640791162120032277965329
503554296411074530169701683480774282066437791236078370828765523163222704476469
381100208660089327594951217666344156034804819434410654001801118915016506612287
776495819043061033054764209480469367524969116359986968943172079492955185079804
846390847016001874109740977871803591598002552596482600661747856729459616666869
078691731454965136139709386246764428568445124968487191688462833429328208681881
717389837128784006495932130126640323596873135606174944543025132609196230127469
294297082752140616381107582958995434206541060788566448559745902949605943883328
462118022133112326222675428634114516373204606111416243979387589867467926338700
514053885687822850673358662890858176169637688353365382902961956395577008554342
042317600723671583855847999735670351798918051891851846293010689466476506542598
555906974230252195123425221132892911071008865266438879335472740315645842378846
785871994574372634465763436373452302379985885659872594384782734166069341898978
863366587934698908860149349566147001909467637791329068398452199706370341750630
403182792485173651900851504033511617538003056395455012996532818235698812331145
163976607055763368844017818301721770181140094450857693480950468177611048704828
168066197420460474790809974404435909214828193215619389854070865405729116043393
420845061847067336148981824637140883032834428964415469191175503598504611780065
533697843551972738528501901030465551961748477032673375270649307942349460384606
281936163596310463484514181878468784244314311173329184994553544748760386069540
801684056059316257078804272604921802786366754904783522917479860449871662036726
230208212683269482999768900118429222559172544663088999184410469447297051707875
689076963638811328354899093539908426110182987346356428553563129712679698261710
398584594774497001185933751731962050257726840826741291836161042548177293861199
794384149960670359329022502441500136304118093124051829807602802175518427995122
875417485121821502071494553893466159200518859659712717263753686294840381950246
217704889598233487434418686969101127118814734246036756902746167321979109132701
239809497146383687658517879911910709102007917164918579808046687738574921185014
602204532120737466411965961057740820431087262493591711629902033173173014285575
918329654196940458188083205487616655463143345921700303682610765972664374018695
441281694645948861923987727714183613598315757844260902919806684473193549690662
017512485695736231666477103782210866960563302529932817591095673901814989622424
508084599953686904558368082650840938924849771089640308847799361946238480576340
420723789368443950580164446261490147197995742144101519878462962126093005818526
024493792356178840910034610249873934410515494508925287013600741164065612239068
126204781221693871635107506409622482358135225398213454872332231757517269726904
305393557646147923320921265712917071648941969873875509786386694609465237267292
376232100507215875377660181588492994024489692615341458726509327561046600815534
485469729224777692234080792442090601593852078658699400032324381006831424770130
278914009149699113633339929688001330928933339360778546931315729147827268264150
491383683023227440569952013242852634352510048957673330533190881239610812978880
519030870304391585118070441174129993870706944977787778789701926479975281788266
780396144510748958094402279025299681503654823053056079533481318930973482354577
157758903980915152065829617004224017634976240884383420686315944110976950047266
266940435957222298740603064752868565658476638889442235789068733402934681250087
275279335115389833702870834124892674686776560255380068422768660104595398722281
479547926417537472745338517598863304312501920978235490299249482650978708095367
895154071707055280846328255679557640153099316252338273318449870688130303124031
914723153480102937698957752098644173310212488604750935831822640940213842895637
505315231299319958033385940223540314690129608701483987530094485497250958319323
051263004381398198420298876241289976244514358033435981978909893496980685361736
939139412336353157064539375541229389737421975409306045865065894793672843858703
281896235834123162275150499375202887793926028005987076774244181530910285112571
138149571593765396753578353791476260191960203968978116381791553712683679012411
108720859483444386388648147587877456452759960373501053911061011282526214877965
031799812111799429991817750185471836305469458995730781235498963495879145176341
959865146137426163364470557473104950498254910738860523765571774957725123902204
668014995657735449474607650528079227339645546332289055665141137273092458558013
752469235952001010979436131711308592055811529161935209347097298826675722703520
434377858233024292665938041926138605640379223086412674759411796803779633876548
342703107280800244432238371819205707845303292366078910752207877655020757620612
258483844436829182806376021197617632818793899140713431706790097216267346012244
996527188329042130402740386678826233006387562035170306504870850975729468048935
822951296285880409621773878055862844370556803833908043528153114643094947825176
287386593720539350747794650713226085385592709180918953320576815693223640410457
924767588908025943208926699666761802944267310303358308546049507147110317743107
867232311951316673925348944422075889574562037234503706524214943000620814639081
142360846478395630535175530696190428302744328550325083413004236301994546346313
345744382103850149804359726231405387111781348778561440336659851054304092301776
835060373135447286816023979058463046517090318146730717520311240898141676765606
319962098024911842658574987999188689393607793114934576046314577247239758762518
483576345501933315568191733906146190204648132202729727609394034763778382194095
351229021583922242171789709401190091673746279320673838276264051214705348311499
403318183805536421820433684966961726263899496907881135976989387474888669543465
970437359525707229311352234990544468587328423650910171980010140422984611553614
750043678720481191104117991337095236532589751763445981881468595783308825771994
168924680902804426628762720584364305825697668298733086477229020124845032071419
792574951469899596363892712079890874217107758742037035220708836075322893628302
087906244082733120866265389999831377771015770817441481000594415614527446726207
576993579638868598331349790222282521256192239458006683632381575394244921113514
066741318428180656100319407778525756348584763196118016977516214273374799789613
460291175556422210971468254721015136464027035708323985684926943508212244007530
037146640788803206636941211210640671991467788293618071954474591859425697338102
822269845196066428779368448603455340672746599628198579737651699643499091298757
817485200162116808431651140072100756633678367452949277304646976294677000432598
653699342791344076256719866712569475310840202833249112958405589573237069543326
570870667862947987311784120104154604279542006571178771100666301576099806633233
496058676102094744727177714725890441692581294387508237392640255347003336052525
651010117453099891215362814717513425464382570376488023521848475411005946831733
373868576779837906315004430669460602752911789331643573788383283162366171928963
918177870656774017754891214862638358816251931826719837388763960988247617067775
294684599246771063976407285810806636329707136232283050998391063594675604156298
580498837631652669917750495836909304713136981318690038842182036739394400062740
744000957416167398624291625167070099644041241026166551074055812191419442974619
828914633608045200065131149740766566517978643493726555383965745761583986402243
126596612613377598753837631712819130916449192267245619401073253510906318156350
586663177993900327297420792896244929912688729333148711171102035442521496656982
711669380102328568394782294878359411428629156259920972467780028256939750198283
154641817602877191682769262428160856285890264105206516415614179273944264896440
918542557138231138154745814079338876492692097197535613196869367129143443623059
870969327901052947885188097386604531152070743811939785462595489488529475482460
526727985538098044821249785742978083393182647355458270331146991401373307625789
566949940928101916304825109043927661424480804287222433515352983828968297885343
099418531988351910756872227682831487306034839079246145898701687119268136431560
741150358461995784852593893869978152533677222822221627571562303429210731162641
480633707082329321338013099634056925459122646042230320049947668137514298616996
990733583079016706341974273317179975239563950960691481502236563683856797229994
563004206795157760631063244569831802577794037887718455762514644459271378228457
246748172242432319271357681116237614002337651722480230702001238001537791400515
235889395694212531295838650126003149766220705689119691138086076503753094810928
977048140205595160458667746848351763226683093663870362401748003060138707056007
340633232056332553253945651041286936297363924539538816614252220051743047011027
692885235248740424717046397014007116125644077924697235158463663706022009349548
811363222502031314028150922990477064811741829432681913660964119455253492532201
371804825057442435701590098667452918152374108357263044541298689613403667331245
050474833871698260245798952249005968900321214955050877191079686780897048201045
465953896955267094488620419843625105439803123410116705928290873978141706310972
001085837425644329359406821095665637825903307849252105842941702930805494300595
023073880405284857448952474586868213114334