The Project Gutenberg eBook of The Value of Zeta(3) to 1,000,000 places, by Simon Plouffe

This ebook is for the use of anyone anywhere in the United States and most other parts of the world at no cost and with almost no restrictions whatsoever. You may copy it, give it away or re-use it under the terms of the Project Gutenberg License included with this ebook or online at https://www.gutenberg.org/license. If you are not located in the United States, you’ll have to check the laws of the country where you are located before using this eBook.

Title: The Value of Zeta(3) to 1,000,000 places

Author: Simon Plouffe

Release Date: April 1, 2001 [EBook #2583]

Language: English

*** START OF THIS PROJECT GUTENBERG EBOOK ***

Project Gutenberg Etext The value of Zeta(3) to 1,000,000 Places #19 in our series of math constants

Copyright laws are changing all over the world, be sure to check the copyright laws for your country before posting these files!!

Please take a look at the important information in this header. We encourage you to keep this file on your own disk, keeping an electronic path open for the next readers. Do not remove this.

**Welcome To The World of Free Plain Vanilla Electronic Texts**

**Etexts Readable By Both Humans and By Computers, Since 1971**

*These Etexts Prepared By Hundreds of Volunteers and Donations*

Information on contacting Project Gutenberg to get Etexts, and further information is included below. We need your donations.

Title: The value of Zeta(3) to 1,000,000 decimal digits. the number is defined as sum(1/n^3,n=1..infinity), the sum of inverses of cubes and equals 1.2020569031…

Editor: Simon Plouffe

April, 2001 [Etext #2583]

Project Gutenberg Etext The value of Zeta(3) to 1,000,000 Places

******This file should be named 2583.txt or 2583.zip******

Mathematical constants and numbers edited by Simon Plouffe Associate Professor LaCIM, University of Quebec at Montreal http://www.lacim.uqam.ca/pi : Plouffe's Inverter plouffe@math.uqam.ca

Project Gutenberg Etexts are usually created from multiple editions, all of which are in the Public Domain in the United States, unless a copyright notice is included. Therefore, we usually do NOT keep any of these books in compliance with any particular paper edition.

We are now trying to release all our books one month in advance of the official release dates, leaving time for better editing.

Please note: neither this list nor its contents are final till midnight of the last day of the month of any such announcement. The official release date of all Project Gutenberg Etexts is at Midnight, Central Time, of the last day of the stated month. A preliminary version may often be posted for suggestion, comment and editing by those who wish to do so. To be sure you have an up to date first edition [xxxxx10x.xxx] please check file sizes in the first week of the next month. Since our ftp program has a bug in it that scrambles the date [tried to fix and failed] a look at the file size will have to do, but we will try to see a new copy has at least one byte more or less.

Information about Project Gutenberg (one page)

We produce about two million dollars for each hour we work. The time it takes us, a rather conservative estimate, is fifty hours to get any etext selected, entered, proofread, edited, copyright searched and analyzed, the copyright letters written, etc. This projected audience is one hundred million readers. If our value per text is nominally estimated at one dollar then we produce $2 million dollars per hour this year as we release thirty-six text files per month, or 432 more Etexts in 1999 for a total of 2000+ If these reach just 10% of the computerized population, then the total should reach over 200 billion Etexts given away this year.

The Goal of Project Gutenberg is to Give Away One Trillion Etext Files by December 31, 2001. [10,000 x 100,000,000 = 1 Trillion] This is ten thousand titles each to one hundred million readers, which is only ~5% of the present number of computer users.

At our revised rates of production, we will reach only one-third of that goal by the end of 2001, or about 3,333 Etexts unless we manage to get some real funding; currently our funding is mostly from Michael Hart's salary at Carnegie-Mellon University, and an assortment of sporadic gifts; this salary is only good for a few more years, so we are looking for something to replace it, as we don't want Project Gutenberg to be so dependent on one person.

We need your donations more than ever!

All donations should be made to "Project Gutenberg/CMU": and are tax deductible to the extent allowable by law. (CMU = Carnegie- Mellon University).

For these and other matters, please mail to:

Project Gutenberg

P. O. Box 2782

Champaign, IL 61825

When all other email fails. . .try our Executive Director: Michael S. Hart <hart@pobox.com> hart@pobox.com forwards to hart@prairienet.org and archive.org if your mail bounces from archive.org, I will still see it, if it bounces from prairienet.org, better resend later on. . . .

We would prefer to send you this information by email.

******

To access Project Gutenberg etexts, use any Web browser to view http://promo.net/pg. This site lists Etexts by author and by title, and includes information about how to get involved with Project Gutenberg. You could also download our past Newsletters, or subscribe here. This is one of our major sites, please email hart@pobox.com, for a more complete list of our various sites.

To go directly to the etext collections, use FTP or any Web browser to visit a Project Gutenberg mirror (mirror sites are available on 7 continents; mirrors are listed at http://promo.net/pg).

Mac users, do NOT point and click, typing works better.

Example FTP session:

ftp metalab.unc.edu login: anonymous password: your@login cd pub/docs/books/gutenberg cd etext90 through etext99 dir [to see files] get or mget [to get files. . .set bin for zip files] GET GUTINDEX.?? [to get a year's listing of books, e.g., GUTINDEX.99] GET GUTINDEX.ALL [to get a listing of ALL books]

***

**Information prepared by the Project Gutenberg legal advisor**

(Three Pages)

***START**THE SMALL PRINT!**FOR PUBLIC DOMAIN ETEXTS**START*** Why is this "Small Print!" statement here? You know: lawyers. They tell us you might sue us if there is something wrong with your copy of this etext, even if you got it for free from someone other than us, and even if what's wrong is not our fault. So, among other things, this "Small Print!" statement disclaims most of our liability to you. It also tells you how you can distribute copies of this etext if you want to.

*BEFORE!* YOU USE OR READ THIS ETEXT By using or reading any part of this PROJECT GUTENBERG-tm etext, you indicate that you understand, agree to and accept this "Small Print!" statement. If you do not, you can receive a refund of the money (if any) you paid for this etext by sending a request within 30 days of receiving it to the person you got it from. If you received this etext on a physical medium (such as a disk), you must return it with your request.

ABOUT PROJECT GUTENBERG-TM ETEXTS This PROJECT GUTENBERG-tm etext, like most PROJECT GUTENBERG- tm etexts, is a "public domain" work distributed by Professor Michael S. Hart through the Project Gutenberg Association at Carnegie-Mellon University (the "Project"). Among other things, this means that no one owns a United States copyright on or for this work, so the Project (and you!) can copy and distribute it in the United States without permission and without paying copyright royalties. Special rules, set forth below, apply if you wish to copy and distribute this etext under the Project's "PROJECT GUTENBERG" trademark.

To create these etexts, the Project expends considerable efforts to identify, transcribe and proofread public domain works. Despite these efforts, the Project's etexts and any medium they may be on may contain "Defects". Among other things, Defects may take the form of incomplete, inaccurate or corrupt data, transcription errors, a copyright or other intellectual property infringement, a defective or damaged disk or other etext medium, a computer virus, or computer codes that damage or cannot be read by your equipment.

LIMITED WARRANTY; DISCLAIMER OF DAMAGES But for the "Right of Replacement or Refund" described below, [1] the Project (and any other party you may receive this etext from as a PROJECT GUTENBERG-tm etext) disclaims all liability to you for damages, costs and expenses, including legal fees, and [2] YOU HAVE NO REMEDIES FOR NEGLIGENCE OR UNDER STRICT LIABILITY, OR FOR BREACH OF WARRANTY OR CONTRACT, INCLUDING BUT NOT LIMITED TO INDIRECT, CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES, EVEN IF YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.

If you discover a Defect in this etext within 90 days of receiving it, you can receive a refund of the money (if any) you paid for it by sending an explanatory note within that time to the person you received it from. If you received it on a physical medium, you must return it with your note, and such person may choose to alternatively give you a replacement copy. If you received it electronically, such person may choose to alternatively give you a second opportunity to receive it electronically.

THIS ETEXT IS OTHERWISE PROVIDED TO YOU "AS-IS". NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, ARE MADE TO YOU AS TO THE ETEXT OR ANY MEDIUM IT MAY BE ON, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Some states do not allow disclaimers of implied warranties or the exclusion or limitation of consequential damages, so the above disclaimers and exclusions may not apply to you, and you may have other legal rights.

INDEMNITY You will indemnify and hold the Project, its directors, officers, members and agents harmless from all liability, cost and expense, including legal fees, that arise directly or indirectly from any of the following that you do or cause: [1] distribution of this etext, [2] alteration, modification, or addition to the etext, or [3] any Defect.

DISTRIBUTION UNDER "PROJECT GUTENBERG-tm" You may distribute copies of this etext electronically, or by disk, book or any other medium if you either delete this "Small Print!" and all other references to Project Gutenberg, or:

[1] Only give exact copies of it. Among other things, this requires that you do not remove, alter or modify the etext or this "small print!" statement. You may however, if you wish, distribute this etext in machine readable binary, compressed, mark-up, or proprietary form, including any form resulting from conversion by word pro- cessing or hypertext software, but only so long as *EITHER*:

[*] The etext, when displayed, is clearly readable, and does *not* contain characters other than those intended by the author of the work, although tilde (~), asterisk (*) and underline (_) characters may be used to convey punctuation intended by the author, and additional characters may be used to indicate hypertext links; OR

[*] The etext may be readily converted by the reader at no expense into plain ASCII, EBCDIC or equivalent form by the program that displays the etext (as is the case, for instance, with most word processors); OR

[*] You provide, or agree to also provide on request at no additional cost, fee or expense, a copy of the etext in its original plain ASCII form (or in EBCDIC or other equivalent proprietary form).

[2] Honor the etext refund and replacement provisions of this "Small Print!" statement.

[3] Pay a trademark license fee to the Project of 20% of the net profits you derive calculated using the method you already use to calculate your applicable taxes. If you don't derive profits, no royalty is due. Royalties are payable to "Project Gutenberg Association/Carnegie-Mellon University" within the 60 days following each date you prepare (or were legally required to prepare) your annual (or equivalent periodic) tax return.

WHAT IF YOU *WANT* TO SEND MONEY EVEN IF YOU DON'T HAVE TO? The Project gratefully accepts contributions in money, time, scanning machines, OCR software, public domain etexts, royalty free copyright licenses, and every other sort of contribution you can think of. Money should be paid to "Project Gutenberg Association / Carnegie-Mellon University".

We are planning on making some changes in our donation structure in 2000, so you might want to email me, hart@pobox.com beforehand.

*END THE SMALL PRINT! FOR PUBLIC DOMAIN ETEXTS*Ver.04.29.93*END*

Mathematical constants and numbers edited by Simon Plouffe Associate Professor LaCIM, University of Quebec at Montreal http://www.lacim.uqam.ca/pi : Plouffe's Inverter plouffe@math.uqam.ca

The value of Zeta(3) to 1,000,000 decimal digits. the number is defined as sum(1/n^3,n=1..infinity), the sum of inverses of cubes and equals 1.2020569031…

Computed by : Sebastian Wedeniwski (wedeniws@de.ibm.com) who computed more than 128 million digits using this more efficient formula found by Theodor Amdeberhan and Doron Zeilberger.

/ \

| ——— 3 |

| \ n A(n) ((2 n + 1)! (2 n)! n!) |

Zeta(3) = 1/24 | ) (-1) ——————————————— |

| / 3 |

| ——— (3 n + 2)! ((4 n + 3)!) |

\ n >= 0 /

5 4 3 2 with A(n) := 126392 n + 412708 n + 531578 n + 336367 n + 104000 n + 12463 given by Theodor Amdeberhan and Doron Zeilberger (see [1]).

References: ===========

[1] T. Amdeberhan und D. Zeilberger: Hypergeometric Series Acceleration via

the WZ Method, Electronic Journal of Combinatorics (Wilf Festschrift

Volume) 4 (1997).

[2] B. Haible, T. Papanikolaou: Fast multiprecision evaluation of series of

rational numbers, Technical Report TI-97-7, Darmstadt University of

Technology, April 1997.

[3] S. Wedeniwski: Piologie - Eine exakte arithmetische Bibliothek in C++, Technical Report WSI 96-35, Tuebingen University, available by anonymous ftp from "ftp://ftp.informatik.uni-tuebingen.de/pub/CA/software/Piologie/" or "ftp://ruediger.informatik.uni-tuebingen.de/Piologie/".

1.2020569031595942853997381615114499907649862923404988817922715553418382057863 130901864558736093352581461991577952607194184919959986732832137763968372079001 614539417829493600667191915755222424942439615639096641032911590957809655146512 799184051057152559880154371097811020398275325667876035223369849416618110570147 157786394997375237852779370309560257018531827900030765471075630488433208697115 737423807934450316076253177145354444118311781822497185263570918244899879620350 833575617202260339378587032813126780799005417734869115253706562370574409662217 129026273207323614922429130405285553723410330775777980642420243048828152100091 460265382206962715520208227433500101529480119869011762595167636699817183557523 488070371955574234729408359520886166620257285375581307928258648728217370556619 689895266201877681062920081779233813587682842641243243148028217367450672069350 762689530434593937503296636377575062473323992348288310773390527680200757984356 793711505090050273660471140085335034364672248565315181177661810922279191022488 396800266606568705190627597387735357444478775379164142738132256957319602018748 847471046993365661400806930325618537188600727185359482884788624504185554640857 155630071250902713863468937416826654665772926111718246036305660465300475221703 265136391058698857884245041340007617472791371842774108750867905018896539635695 864308196137299023274934970241622645433923929267278367865571555817773966377191 281418224664126866345281105514013167325366841827929537266050341518527048802890 268315833479592038755984988617867005963731015727172000114334767351541882552524 663262972025386614259375933490112495445188844587988365323760500686216425928461 880113716666635035656010025131275200124346538178852251664505673955057386315263 765954302814622423017747501167684457149670488034402130730241278731540290425115 091994087834862014280140407162144654788748177582604206667340250532107702583018 381329938669733199458406232903960570319092726406838808560840747389568335052094 151491733048363304771434582553921221820451656004277872284312593157496270267304 159187882844808613877768225616229637413137570424559948913295258584021479358378 231977711727847817204824366665712233037329594100572611980138230258805920629613 317793764510957120026578048806093055343632850973613180076093526414330221782797 856481792788603312337356928896592742526047886788415664262199137166941109468248 113231383018176762836385435090555860122593212536293095784104529009458893596918 985301197730725042459471429010571182651185684483171262930537094250359470178961 704677361236854736935502847458619835295713597321630746583008740347017107460006 100439012858363763160751662717695571706509879187894838668780959217203483131914 040549191376306285239996361170125553271770779153656145814857053682260433185195 901714535346972264639307321412037516079871346483108139881311788903459138832073 160960610026741465441141544678199046462871182657177549836773678551049586037861 558275339882493735245692433875918043566496264742386629024451305246025863179480 168019326347584217645714646906364128639612816315698647574003169670514700712425 041721468910016162338980106201679112210015737046542560759957025969830610067925 707538397665577058220101748180714779401466752322431614572684197067817338675361 752984217201931314477235681966403938164900201528293091972769899039911891518355 722405787334437857499022403139300779492496042621805745602278124602157450225405 723396266294459302450152198339305005536135307137154779307328834045706449961358 507221438630930727396441463746364890568996657709964552685348551534347970752239 101404337653818064860947973869958914336860549003740396493697286267999888932262 754489642625893401613327534523446818624640873695071940103268916939623216605195 480366172270059432480808228029002882550680281231515143831480620150431882417182 672063962265276576168533242061975370296534957924757105522684230474387983453231 920441976821781724076791729146256786601324599404822567058719364794201310291864 363078009131237289712552632198250697838333677954387190138395315514651417845195 385723793165112682575508412481658394741889055166987387906101718783016520416941 824128550417182225504054299104819263280414863334802699627759877373029311023887 323849837854697145693411928312494773729679541243164191461393315808692683575233 391614259776653520425957200603286673514673267379776789843556850849245246369790 745339591587071180107159160899423974312948074966756454749515234412774380539164 936674995813834057753760835692187165300125405002346411649918381761695400141636 182787573722582235597549439662309511092124869370733207281624159520660984814444 579288900455710931505233956350188672127973279095609030941788277269338999127363 897916881100136267716086394611000591972764043416337673817827384985149999813823 199561879111770543480452533156329659260524837121410745134131922487232264611962 350028814882469685753932945080233030911251410281702699619622565411635242651321 034169720343085178487621528781191177912966824290184331811248537436470741975212 781681145764781295522335246860151514195150137051891288462333516109424488268630 970948578601576345443466939876341751075809184078247837583763877342774777543515 086631166782213996775802412988787330699036852227358144340532913767827386068408 563408049677091869230625018030526372715487630416614863468147560189799723972996 710815761866163327287497453360249275650150154093435226296928754492997981840435 724912098429580091292459468942677326456178078867183956615729215050883038891104 104856296135235847472029960563310231570834530790476873450580685285643236239733 904059106449673746383069975500315296406484568791879477799768148805561528918092 959238036406019845236246427536896328866823888035635356964461265747097017807510 956123992589550182897497568635283952863729667116655365847455798567334999925269 859462105101033471957012151014353422517481657384737190649686321535935441849671 396416421458065477537968378088865543025981029078135745751894303004748727688672 469270394250281787859613623914815205864165947780150392712955326782395074471110 122547982687295875593379900492674240709740739848216695084191404130223176898360 277108478140562224423660775963727964569611687281388000645444162086285309338317 877944835720792404366961380170161246306791696534826753823851083345439520514218 409463343577761965801465207416260489270060579718730680781253469022833318714013 024195179046076611489436658523810254506463868243668112750721342106815030595828 568937647721408675191867200233128554097780643591709472412914542136485277973568 288117076845816830651549095199058233623987615692774435254242193792159036852608 265680134021973082363740127364403968496179803126623879929668114336518333702126 718458718148295508218874624371071072622923806575430201109890871643838123972573 267390967627442695462277049880608777284401554052021883291373114482008725915059 699871152835947478828443973952226448233893510676997284078328038437123695597093 692963924577094157984810270067694542518337504706673618737182937095913073104459 083109604069724472340835961016703865496597040499435802867304015896352789977928 640323959554704218328348188539956127974197079219228850066352456903153119283796 883111977067898420262769284544623072677497533237060403833054226814572417360189 654937587920566977137352945837845824764169446476798987468055028839925093742654 879212233297179919685036007341216196927488043912843058085069673674416564318700 003330475976018406523672087511519181434845609285642865406771814544139670339072 301592615868763105635427832726468991300383498424155394140210983287067802952968 635010478740915993572897722363997371832034715265780455096130111146310117985236 275628496795462690804609479518855793159125048273820775287222755141429572008683 606423124282848081289067471998183681419329738763359603725959771406347299966492 475079294714560147019540733434740490959922746529089625246232054077548433725404 063935301219144533546377987471151724241434882482226599525114791191346927972612 789372056406394508913005218507028713321130369711073903858496150425123657725229 486899837581826427227388347325673534161086949809041948517078119981443825591807 147594722446301108050571629137304099197584598014499479731534630347305105825605 245268370026689658676629785519645759670955758545982819507209601175366483188439 291330111607597176977619480752403906601171988225967302084543302230175933928024 987436310205816657853453490882982294200805486183049048389104640476695695631056 685020721815576624972019252048562001952539095467127317606889001350073768764673 887900831235837829077786738455213859356845824384330664208454602229070278989367 333997334226057901019111269663167438609743522041865674052857980558668202601387 189558675025481536906814993616909123950813641769999766620100404611599961591305 369423430027292362929601157148694790499474359083770233171044915608359023935944 487114573733164088578985089806185929245088672118007691371577762470747076826390 699308125837273311309312129840029161543692028488866736554088635628553678368488 161344477147711141772779538859117826873871603552027987354878209670955926339572 311882270242121601043531077702614067248853447317073760527361731472728192511277 238916050584917728981898526961834594247014960216724147785589555461927795867842 297580150506102190556604704266636382960023599588321095188752830842115946032948 801253578737828385215962774510361538755566110040369490672024629362477042682035 564056693193775598640669629966117409286685530806587647091520945826999871718656 920302688534657789143207947010564001951371535146032597486628462412178501003793 713599757245355441739718284799584548439589474514197209305119808758783516262383 015187058443044936586753748027024660823215050204456634649144904000024429946842 377762428304723879154250639059157635935215670400725561403623860535453153963266 319375620261645999765047904652608555791373122436419508539793276764788735649759 790770819424984115325655809663489931243598035008611554810097335587984119677779 787560609311872657139206552939794612569581017270531215094673921087342635228542 048145259502431222731902698102799966475345034816220013229202482221387201537608 783977208859220951262594561279091136798842338154939021292677196352930251480235 627292231895042350650839169740614355584385763810559403988929283214276643928623 063057414558836227365177639225280269169322765200061670688044923365194502875911 745214839915101470849401158981578727467187806170420735856947603119046816048986 990000036974996691505487790550036436117164680658553386155310376586678530625786 795219456990632932352378078989626959354963108436168541537325081619730084557850 247695675494499285422414029562671587098898369297085092303998055749618227833860 738315227951497560037532066095794843105386716854177227129033381600586460708361 854985565627567933273879888323130840559531416044887427106507775375535628509962 462707836989093137176467842064606785699561109461728917510695654489462445499979 147675438588074569610187605248674961818333475531798600370515824172043786369323 672892880950786825291345364081340599319973318459329979381355878987940081402677 815388744998320766632894746640433502875210741455462664865099937165360554202096 220653677372784113401425675425767486640166980929945715900925218751525243494479 088042517418678651988012574712960470778638861053173951579128990671082981013544 448164639022170448528006112300567221808097986153147815556830307499534049770885 325653659871343230939990342638098500972536956594358613656419016660116070441531 517633134180812248926265282076599622931583713473962249021772449008743780907270 735876539815275020210929121198429334555634199115791310892287214323874941400873 594147222527246255350426878068728249442478386540489126230707724131199894058838 134211185732597755234506208276646680482208065067144024288476234374958531981024 521892124583712629352533480825545422667175681022367044608661119731226843722968 476828934869062991536502227714842847621998639714330342895904729207300396134036 047912754480041595800173985891047014144464620239413976929761554447237842260264 010570703000706094293475905755617556138632772310548708029930086555396201253616 168335839952334727194178264146850616326444059071687455779502784519532807510635 766951704210566533997655497102360989101304025511268466378259038557321513926873 504798855363172010444548024159421773652983095752190780831326003251245789807877 998118865159094998071661984869126505273627127149411504778552602362340558795342 488471862442699929683728878668068197904279892198378195024347507952879118183618 480532791505550633888370888397437158899434262439142750165135868039056483924138 853303145776075206205888357758963090355583073152006135037855362272061789583025 401620393925536605918619422003003103354854429622727927894474566294204797360332 015546838764455421009657345387307828938989177868152936408181607543408238462409 171516861308342517533649228072644586223331169387767254267387186148454493771075 676546110437594503945367588161608969581399229234702710223542629492845150043765 143963038059493307092283797084389007608729273270981632895819694485697528955440 551957776661846966195270819464402770552772897727293487031037998253892574501876 886729692014824524453062567081841691250676940636962219804082098108363810475109 338833570750243805492836423777208346748120052999056421986904783805804012880238 741301207186988959913144094760876909878024296011233274155002642460220538586588 345796507997640459832420944077868981551823081681271840720397874799565333337974 229104408141614208672673452722589461585309962791885951334643645000065032275953 821305543320676625164796481538590697981600536082815482876190433799014241026687 319540460810557795876697316148809919018196537245331193873543480836368165009039 761170910431779758765596247767672728213186397807895178175957779016151093344432 612383293195619775195075564040413851022251839652563182013921629110501972042052 716967903974344504290520406007793127761768946965446959088914422926583279813301 801768859922526698086207402144264240129386626973595614199941010446746679675379 604760235839305815595643469150473023905377218669831262145651902257581257318241 472865268183470271269603258593842173424898026741284539794939606736330080761980 688628717113622752731061494157091728502297638013093756210877178181529729859911 850721879438819557291379423473651513036785691277707129771126429314007228008222 525832576717733586122020658373511404081732745270501406803653890965452295083935 462750259672041851199964170779502188649889123099388576417475159680784970853749 167053817711287830396882099732585844149114752202288510740765169837647025234042 499611809224116619672393747158272719616155885503978590022844240168720345832611 484856278631595501612568118459100760868569737837611609532527887401617537089189 654903785631913742346847666949117225978425207253996837391997836134695766397702 206366377094259379654249623484951844664734820573248144376254321417230507899919 055568646764823809010791815646365853518883479612105680098821189432571808175827 626223703340849603271173275485668659282240724363751247453884721399862559838579 803058425452530490934002949111513121634482276923259832129429332128017860639530 025311549945190187089168920208443836708995663779104251527781310661078367619465 088757985625445422235909480393079910482187927870201382756290159779841586518567 105233889870420808454064156574883203140773294915423714974233844125823119762858 952953692454501598918890991872782194213864484238679240932229083134060006951489 861905736951403178852067117550837242800948196540108823245610098801458684648229 103926191531113074018877205158802765675353221282806485193774155797666871853771 946339374285521463252307858283336618778752326411964319851545236923215260357297 719701767994175068822033648480847577748057555539787073633311829210510659043002 156409260115577979384799980119022808516991077579859444820842362556208772166779 158907874881631228753573922797499826544798554546754577789203361001614908054545 817726754629520474820374498297620510964707108164064082925961359357689719124687 324428333710676775559971723349663362382063057320728111849504069011487426300071 930820190694079016851646335566692187355809739330360327245247857899234414802377 001322342426793973664058255210280932611587014970932771569278575134953441458265 478163313221045220629613679009604108555753026110616443037364859372300114743251 716341680542215472808837031572269070430810821208819578466564981063726472052924 969325098442414256279330174742637357249386001850079890429688476224112830044635 845941066640962521954189373232634707216331480821229508020639217228809376152667 787485915904297997244528783030226948619705415555390360767527841328457248496195 399444651775990274585862331862989127738396989448804620420596841665326682702920 790616835628976161004742685073296022992248657237362335755839872489796697971064 300562629760084024142621326033142848684229409652614561406059106901074169104022 485019335519093560519579267190646660622532440924560684166775639586353066565282 534797368748882498251162844201764047353334313403290444183816937555641390148550 410854177329638797738990982047175631104061558556276542318608204791742196754539 733204178819749737390189753717169147585628950674813384495444493657099236040397 885220870120598111109671866377483740604394359654361748623055538108377744516940 540937666654282784043547204458920907515639263249128642180323440859573174510595 239125945606121753885837776234971777105760673207377146129166545062928524277550 493800053990565865252332205291855863810593455798246721940909761317711791227385 828773866635287925184108450289041807903806320467042802391635505588135444841492 648238039696343728501055930551777197533190285419536046764820989078255906556494 269800599453724702179436999018466846449525834111641282758928337980159522694821 257661843980156043859793333918585456774223930147095529606367170334403961893047 724518349779787628392837023900538979054354451681653676544535200897100660451537 584917291825403959012732786693576700138661543162924301183408606252160977693453 238048040987704407030369476874963871251978771155614461997022838204596478110074 608564352295845580465212019345985587761950649004900078235862150661650578541644 886859220801513786358269797939945771086445434835056729012084391884558061673198 269270465491819608035769894360062583420251360356912598327526627379541471416112 219840079854129270545565212580310695872224888819614970181973864389628491327469 998322696821125835387126231731607244498434911167423891119876957249859235671826 705961049968910536111862188845884809227981338381717234599166074632263346116537 273464823902608266862288046565349334274431457658968817269570020810727081644409 019216537590605770300077040173546984154965521950069269586912571607388729268086 735576178660962789685440742051768524727911861549077660630408050540158326849218 302506840551772644233103499443257517338736093328163071788315466565320734922946 550058088067932752521345787295827853454079994737403763525934264583174448236181 714161479791217279141154744185724980828470962263005578720975325969929775109312 359110615917939996102180773763314699579970924654407435571728531718435465261430 171218102083081944306471916806683281785404354881217062931915933251992784780922 252651052865242326761354619493500450354114385486626356483644049624110119558775 748165914442877587131036614661069489505935491054730941327027636533644837420591 766715260752158564114677586543036148435408288746417248120408585506861429507526 725771388499357464261932664825896548627750153021221261451969660817471507156698 234145004818054097636761949088311527773326668467810495588734174335108440793016 511445610376989887400107761068019086014207103726788529614621116236429784188165 230369299549389638613978222017717601521117618908345312935388479032593015706166 387517813621536319720101077055320634103164100698996887065083072835376366159463 681637845317735575873994520780334256401909983429695370168401289867811006309975 072847593046883837514532443336537995480685252025376477430539652466354740237792 990437135071159575622554016025047346725837523007295381986994877841602037872144 983714144496376480811989423737121866106287427801998660055350996094429278793843 730443687776590320875983631352038328983888867751906327380111334140695108997632 330273175671307655531752538498232658848404596050490110861787078004316681946640 165445277779764826957179227973256074933827197875674328563030317898408705286825 141217192266761637166504627943237231941841442152729469919465305151290675669113 590267961769935975188347643781529785556027728385514600680474483443878908732063 421186425499468206417170047678402656165481980177735640155963896931824547596922 815258094735658282957334017199421890216684980642432389514647915988056798058952 580619367162320678281841079900798658197746121984850575490848702295032775295456 331344011863624757751771187038628410990262384051921870068618377065480911927872 968818383351062516979912618583907273827700218383125993424199912367163919170121 962055973834917407135613475607933595503342610716958787998939271238596920465342 326333814077109114310718380622609788016692731958088136827613315790297267262178 758132691920686365286420303787577108962329933072723883358337382816844459530170 885033889935637596509145207101675121193359713584121655687092071476531063943560 413636422602977704188716702185201999269059421961748354534443776731636105911223 893088071726607887564837446650485385873656831150207445628331238744181424025956 145643231236495215322026747595929132505455862457163391206403905528410781980156 149915890527151547746364327728244773083268101334656195372294314227327516423016 516056025046558658831702704845301209423683003189044316353652331894480505993272 394392376863134172891654454244506445212795868232599309591662351316840858434224 394535727742206609111110739321850845928474470184100410058258119838192859498149 659993500258730105804650762808442581674014891553279072828325967227886556617447 678076311670446304836907077095206850376112298385889923891029100469994060370515 595206318650375418398088966405811572948189818176374267625894567254509387763841 772959339369857612753145093446637806246765478560322562726979886944308364916914 608500608726356117256117294147522531365682104017965978291553355085048097264608 073170873534889045272816524842904844677352672383738877461379922190961751081449 507262760248260057450022741636675870093289804562470363449260249857054994471273 104171860680691668471479357935541840994074410783338401905972853088839343292753 858797841978875267301212218920480697041587749257581713233971379525033267322947 621529241083810049706765018335183625836083914532877405008217368935259035229789 367499040651436746157513886894799689531490291272190424199141209033530884565831 819149115552320988798894097814951103949856769533653906850910490594613924454797 967882078227510834715789246022114552755909787639786903738007266756187693310093 012239574926392897507536097786872347636990801783471837755260458674587408741870 583281616464536586823895125150667270736219261137095379503389137564139330678008 748479849142002509103522011333767265004332495569654802194656602778865029995394 060241502264420841737675493372125377666121548168974285972855027184103025614351 066713140124466162034797296117580961858091752453168278334410980388660836556484 732864285729876392201694086117244002127589102477383120870374915188961218615805 561155815804638882240476491664432019412319504924536351079535845751554512080855 250893103742719480677864326732770367714674143437291444345288728330710231053144 109421254126667838154931737142699680197220257055060631432998731067397502014672 787232473319322123905925215649042490699456814802290780405834280731350465316912 435468518831462437036843195296940793793552320291105235816541061311945062269011 763347614557395472461620620114175546794900033794323204783717732307964501350433 062953906940198900968088715350234908732312419939299107559125518237215070390313 655208311649914171041770994881111594618231755484055422813694661761789989174078 041183637432142195610221937844554300384739741397618493023040815139006447190785 285573283409752841767817722202836110537227907904402772966568533985155451140320 710744304808532637179388021409496339465639366171735762069513571965998054585367 566086090592188575297349949903494397829783215077658369115692162901249971915112 140835428554718211093537041579102179451406582657301248087301211431001398739437 341566141685464653124081353320145506529212266665863523537998865986919380348927 099542136333682104013521961895171605803970227353999879739010823597239204970654 681028605194321538099489407811171383011588689969356783524106217989436176928290 333185746532986948768407572639427991320062834713127522967409046629643749877720 114105949041482586222221164645156820762804568169060003481659731995916878717377 038507258451753631559961959725082762797067722476745481138487451164617976678965 870260823702854099528849853122118075028308450248757295024568224422598847006124 715511210684249942776566925341668961438385769020641547066665466449006235021127 275287614198008348277081132593217056091029141387015087011531176509625057517693 731101358325538737078489479128544450810867848709421233951223230118519083603950 467455049530471768221569280386915393839249376414608390791732427589828638655700 447798186140149652797949302956633374528390470788009865528898734666533553588969 683070086647945306111807733496655845174038578957968724277472485886923051261128 114259811392403931514156299619154287512857588744223626527675164025744177558629 119970639543829392728449964423307735015032992003321707841701800485683387049801 637926020206445395074794800637624377590720171305547594477621377055142003954418 188175686789473028150263031547875811685496423650064131376014566657252703137358 293327932444992893087252418274786101140703277035874356039060145936644714078858 035414166382216807001295265335318174067895610166579821993517981093771224586764 175615466216628201328700318586599600508890712465176830252616392941687013876434 700442124952814074368757218667894710227558809790750040300180489169852121574507 913825659476264586432944894119327830259208233310110304821345363344847588805948 774630919604546159343382738203993781000650011445984223570726901702150453925938 461080929581641208274320171714620600192803671768477933568151780165352969836778 654929486512230275883226374060912936990038088175067052602262363450721175296483 891112296670007498027793092874996400805229770694221237424603526947604014723004 083040483954218005761943817025526821447481631770221469750181571218044899854522 768155091459223313184660047703766457887872740412651330022242985351667270270926 989418318912796632093635883973816608974575922373206999835422726720950588696466 130825041639289899794030363137421513653598372378867330595030880654269506236554 475795607831214934991097235463442647564237752322156831470839338579893704363318 428508322265389143508714548148629249982120120103305645714314558044793240773251 818665618981371121525471552531129803441408079587418268259557934979926698761821 528422789805398782483471190783751915379411562028139352094599380651884880420707 310008065445958591030102110191443182862034686797800909906043512948919991490901 831524879455962297033322040303164501312925178651668686379717789456272768545891 305022577289327424567629205059797917158009778413637824337559679359756793908814 635012207950223826056834589815950525219798807818706042119819355075570707523921 155747168160410628073388958334075028391663665640534680016675737158940621399541 546578699805602485213314708985121802460361550595643374028752597074729011651382 594837457665022025079359151620728138308062215514234558408444705899269082958428 754246559507906348540061874797325389340757441327915324201490813682430852195637 085920193534253854675858612581057965991407952131704769825709352959551435455770 072108614760581553324846539861264988885493589877650903077325489210690316813646 863425488121995472652463900709004983374491826400371158759401493896137120669924 861066426643217862993563835354250802513536380305739647779921771436970698095399 001885321789046386400454010576454914019272989529329091674713281254395559470687 881339588662489014325537650745147924568409631335006400866675230522271206247296 897183367388913698608117501311725643129403133282595762190208972932479877719974 655039584571976731216547615741152831986236111390150633299338500307235022765114 182369473120552042744316543115978811933050447905256948318606050395423818150396 188478021405138425361156086009625219259173862552903401481896305268075210750777 597763004966616823241854366248382590739048877841667665284879693823731798595406 508933268759825027536919539755936037510632082430622283940656662888481508690378 061599468744299248639338062329488461604287366271397457538945645297096499530272 858181742391352621071937903024886483884088694601756417171172363303596252296069 682589244935563544187939234745539802340745477441815959932250204662842451422006 042816061595036889563409529063916465378885995384213262422932188624944343167239 170318097619759008389058118696749449357763601942821246424971362750825954916196 982516435606159241332716403094568262283904045660914694037447717943047772027842 569560353966754456708822555341699925037832897755305740671232581849931441741761 105021114247778890822831689459581324942989356485140294014307577347027702674279 528835625309905823948286245462038196158027671030933584989785270780908079359989 794664761755369745663390527259530469442192274451441359158430794513037232457098 988968491558651511661168519996609775051395412373449804548129319792472901829131 015550780310439239517065005696930102844458362587116624192758757232707580930718 186627878639818953836905330475283275940311279950797129416147210899829401552714 945943529948990797137233024578731126326321916823714456187368448680586477567505 380405791440614298177067415556566543846722561805234797041917516292371611879618 953590777291620070270810156021076259945918361264919485446313655327261212305891 573273023788246114838579454590634068285047573587577314403526923798682690046497 952616104168442510351209845722887477336228308812439119368876847140221337253592 128898577621750812958653543197090412341032922661429947085702182886948445569085 788446005283307876962551393255060693455892289330484899478565446018425384583515 301806988086708838909488187719987557286880510950974789636096919014813995681320 822182633125328320087441418774867768706913466120581272307860350253256790957265 601119150644607662071442717720083000097741610907177850835352263180482925920342 222629917653113255958433057836400973224709434546993299059908522349715808625053 945609138727303074470080374615283367554967789808648097136217384682105568536503 405015938485192721170097988765401761760849243854447229458817350926930460029628 984193829834106341526878099366993645481250457144736452645414483334132618153528 063959804344926426968652120151016510342618397561606217387236927123926598754303 809186737382858768003763034512880152449414450092793931737083549845567216914599 866962717245110930154393494655912243173104287354111801912017780963551149934849 024200264233388204079440613194957899607880821624379633619211014371078055143454 737736324589795523402688487968047609298353276006079758537628410578130342667297 078449990309358263201083866317735247091621248129337598122865642225661273143244 417947584536214108726834759327155519622200370262878591253156189670109726932674 366638282629872527187222922071972148943198311586857280081920099774571767213270 480795801599931926502320108082961534895513175304678747776287697362605314901063 324429321888561961841251291951719978459863960491876250027386480848296030770022 346424124551956781515124505849869897310112865739300178356632660630598609872662 474697185647183463361716878880972327331399993015545733233744997995803334380842 276840633107718099854246153381455658399154286793180146056198683564512080598358 746175519341807187630678092152354510582995073797423589703354640499377448899126 341839259318959148170870357327062333882106628342804970852421601622490351067301 044290312879872919456805345186372919587925634789847273229048778649656110412627 365231700410089014622931879941969447500429727055814911660362306774362502406861 787913567107912793744063938017126580713932670024005484296735084432070229024426 197469654102386162950324198461010306615212874758993478921115257965440390373103 314529785523847340330250031493783728860343453739231468283840120164276049036305 624278831561735339474256928459263519045522021062751472131383783264629710685861 029603189827330933147331850294993683051336985693372654994726523268758048384234 894975012525400057433614144760706861197896082514061770544484415203403935376985 447368099233549136787533823648276934765539237021087684670895952368106460574079 187563498655288311296565818356308026697113956097185885573192128270030768526946 266875690396867041779147671463835413590627599672118471598690351413991603689018 052261511279609709403750958622331290299544484954035859360830544771780766844122 072251373171439744755193685226292996022447977454659701610223644506794392904561 941576478369926727796150648153212567439942655362749098145677108943142399274175 170118011887294072154267714730590806965541669157317368136807426952649732559952 643473017273421334572878838273558767565702857721206360810115162494067565398181 152746726488142292982862014211517008735846189324219985220242224060541355717821 647162702864974779028038615116977041392181327409814144578319349671672063712131 717266819199332336099756618674826425845851045488387600166167893888257196561879 890867631089931575768389647345276886484668180241538868802645430005686868717728 981634290431549462425910373813390961029869285358406053341042776624088578231897 475952876588393058942463108215668558417731564220457623729832094643659193389668 876487054843556235211405161451169588789626774041888181981782314163043060722637 332895527024592212345355442671307973577776970263894653621511397366334399559624 791449721666926302560397244804233930930400450484732276291057098596240813302522 815576719873581974395108905381688968564543324124856322093197819033173386344197 311105483348355488323605115532594540563847953817826653941420567946412731506453 437252004291807729836802080258385873671387832447116512496119899086049414365414 866423875963730625286358242140371088454302690220576607774336012597363678223774 467302893312983019757171473109025455406323851382892624235248975958686891615461 930774230262658345600857510865402308785979425285073377564630311063434960641758 864111461914186738945355839609025382247747088041935833292895831970576416611054 257336478395541404114840986250005762705678666766692652816201536138715234401847 556709462034437480185009913151500722990202093481711159466534393082208341515911 729076100700335937875076141673807146121944949260627292951286974903033176242939 734995240926470867022735144484065389312900183477738648050607113541949779892142 424068426575943656303150097447560337132305161864298662192426866711222334327699 364863820964542160392631888914102375272094108454096359040763562650923299507283 216535511678161300231426665483211550982267287769317219454127289956946423918843 100812150735351312279079803778367529325149893514316527276350406497722629377761 695306608863918463629258081783087029430634066112478042421376145564142747186418 906336948114101583300818107753470987337471887644545964782174479784005062874123 602427003399614154056281533274628973287665711932618766477559129982824768014799 498275663317440434818270453805775314559180238918506955690588766896293532540770 498319487648164078109050121540065897823009282866216650049980161406986944432667 911608053552721196069063762921429696481211835039246721117409831997571747498641 748369023914233109565884991402547938624414044983736930416015783709261651255932 851418956989348609202764085041205743848636682387740412657837371993512235335574 928121270655958829527448316925895958878058044050576429946303303806865270741616 539886487281307230594260556951437478364930958035170737698954747686523969482153 001248400099332089287481277153509961860064125495906354843396935152185542266548 062135796146017618343541364662870120677508652223717735730291163066890257214370 386038786415423327458729393119861438906740316715338249381580129908212573205525 265446014038685648533085702228418577468193611767565115453585507782579160436836 566038416814868449042799234825384085899260978581314490764332170799499093272320 943139026411519109665599660802187874477071477679489958513682775174044773115190 266701267511097783049633348379757768782045998988502263001523719404974098634130 016533863281675869862071245417577957701228921129486607329803927075513027057843 614603709796507248323427341189984097523562838203713446479054920768961608360756 439891115182057644228584795377550593998488588898140907878846613135987748379257 374729902728198214631041936184971598208802737702851262328721765503537354893195 980347960741183281634045245644286621439196618087481875180178105173082185213487 469982692666702881030592246091488791745789379235068779335121574059638430272902 385455510226166331532486169572366666458800241491487679079122886331941026680899 552976634801501025104875062201394680519513461917416215515850819293948062632696 309478142784732750409317315726582707930610332298814161478392833850459487200934 333715707522539522155820857044159240453436902827276137331923486350006310597041 102386932585265821027728110362511902949729482884273900922524764689069667873790 662536841499152709070343797272952993068142221146138644101086516085692720269769 774126562536184260083796912486561104881929678206257574934090931762584451475395 772493101696515722242530012474516297455317895041987904548176007311907971762041 907810729080201874671536679291081074906003020656129501326861881291303037924121 666834483587934899677067562826718824886331591825642653715456422688210110562619 184220544555857373477213481818647581806359680974223192430827216301234267888822 429455779646853035440455894799684485593512811829535201147684104699351298035879 530938172197442751047001693083114381994791755056378159951955127224211090327916 467774789142719703333005778992101628290825036642591004229866201567106285937179 594592202941545707414191178764923990327411825871668057258972440999760956415947 789091364921881621390780575277537606485225369613398306123905373077584915096029 307699987748947383128516562532502676447770984078966573097754673312869582803408 791678300402517556664509693647074892142187918174724568766096511480210417892259 170824235601552574358602652745632700533339473492170987550510743485913189509243 196654230138551320135667044931673428013128107907593427288478242240100339779152 675538594720544027990404663448981780838948515769529045613970439517775111989109 872496544636014892640777298621673495205065228770479082387448953908631403282260 910774558157280637874870043582549268984279877726094121647975755078086002335872 275378472117663152447950584626517242021828421015833418787642597941809393871064 123639212558847631256947019541823623594762755752278978707815194281320261865699 739610492077735460271861000157837940874330299047575952909783370762980940878707 851643571647256998995654332962238643012207407465149724236317814265433387267278 366752276121296223763708621075959263968587255436810177089065484360906181415103 954201433147511127346248587233765571964242792196164211373067050833603932047015 713136738378783158857327929573440128912534507003486393406191733236618891189516 628762131119503965917202545438524884886721959730160809833571535105331551080738 788363036669628061162366232849116070534064888743792079896269502605631887265809 539419301518419023950544752313441848877696662518935806393268071010648149950250 378865861971804920619302038064167610417431332671059538294667222369585142793848 141600184165283417977603140668193064791123858330831078384478227186619046164330 536425446174620473023261066845148369380404331399279696651147380686761026300621 455881391137386400004617021132027727364514816511245785025212420423259101021878 305609670124345180050400509154072825347673887266079226671206083131888097372051 238389780118474305577947374854987157540512887204475223160400502738334445159827 694099123792910613685972505751007400939221857710947579776192147106686830472125 467984857425530672636752279794346416671621583036756126116993465781080064081363 686953300346538866143908855429655073754213632412407963071186444515122300492940 854787039501513634632139624934474716593345603995710072137037759557863778156904 433119226962373772727603591270514340720561661673947327230092475926046394040999 249243520356182814690592916373907484022026666463259317849003285048571807753467 259313720870608184856777194256670441717287284909180856630317534864217521541219 277356461115068763628972654352444558173508545395812211965361602544047958205653 420992436003112263844338583314878358003019824078292755560655973603659691665025 936193243830119668343681288849059432896125359426252200465051352350018680800666 731066064432067094254073305842562000108990965974580245651999743857120252089971 898362743767512043431086387875764747829624573680958815060809716906813323444979 983933140919254879105283279866232554149907322302458564457212700492050062497081 653571468633598051715138912882208719102189805876789930931051397441973908653128 192824516943038015371065781246459565015058358437399851110920747596054739499257 231858100896241668248034201726348305038736071227306650859951095836952837437210 734320206051725190759294061783318086750153893842552674440408314853418863409754 842277033771763022055355089039953359456569418817461775013716614679422292126608 329528669202083479560600902561128860731070846461379784602647276501536196324536 707802748031364880874506384612576017817006499363064951365722737144734217823024 367693377330771513545218822804420992299475329641084823542611364922830172145708 595266319900840373985866210398295933761774811324302664403707365879151540212701 891467856211029136072713162353137681278392773003352006341631821631012909071867 130044076322569565431046062102901956592148679303804306007728359201135567000882 043469556813622284730872105329241564769331502360001412952304466308142722829853 991124142158525747096070342266100509437176305473656459695964206080781876120642 513490873549123503695233568270565600723665973557137407665174977064765892206764 197944593346087805540900511643676343147727203658901747471020639383566796701069 567943627362106485841137610657905028275480575244673101356940261956553227270713 076217670805510531209113220483293400296996682501720984904065782984220985009053 133635502069595409198598748878269974331650234052428340262830378836614255739452 219006509869020265999933624548305869481270147196771487193134427385956955450518 768373555555242073307760739959515722404068558627432891012449040956139056535816 691658279418064373369515300720260513862875678939182897095186689674432142838702 199109819700825043951469116137159916705862878225710605870996585934693507934719 413016644044262937055965747031151588848870744719483968292722663204015300644828 027013621308785332910000711429762491312819247078619992887617636192117797672174 400369951217448615050270238059478403700097577793145783673324733072493328459910 902042789430003872993475693515027652740412031767660554314824657283531451080509 384764945331733255188295905830859955465345304031409778326157639628852341216518 491242813743171310775135041142322529990554576639637679077623988159999722375184 374964464996379417783076797053501679515148709688300041442264920429239116032633 234075435005766851369265163459168413117831507906266116173269631966966001703763 076263147508829547290919028835298370206602779467689701191466887783167421204630 127153831327120756808795608508199938115597690154201468135379172650604275056925 065696143444417028740000120950453846204911398654757127988795841778417958732642 523984872931748234940493160264018492215972372593284842253447405829922447570173 491817001727528027679709013962948368768660250364537220768133497443726373203315 425328969965435847003187605508480226711577319317838739225931141706829408726628 500705180485704856566378235118734183381317360050807417176997579782219172082973 927772593410631365704405074925248072995283784737867180370801109588344975314507 699280347364778245344917581320179638195385046125099129121345451054473270776398 431725888634363155653971861807322636518331139591987710437398149088341393020380 472862864005954839869222575752257328911141577875537518469674631715442086570684 922516211583406799665263850345417915666000327322643854178856174263505486798572 474326636020522318541580119561136800479792724981399226681194324539653358252374 032973335224728035796366876183735282180978827484945301997031512384646029272570 129776418565837878135278839215587652001770909548594070938850689527035840672438 887982726977830711418564254129962352886239408526123849178009660691354504578471 765811318573644869529080611820882488850362915724649425765800124422481943754267 760085800157206203146295885295572389488211002110740577494360822799394458297915 494356977088579139067680363480999040342174641350568487830524357594297134807093 430098101175084030867377768822740967154871796746773261512395292039494413797695 121605070061277039908583616511815593993362442085452309000241330098159099455210 491602434197879466699215719769611058040146389123607240584116851372538263422432 541201533856328358293571267697784356895385856920681023642814271290358759719691 971682034662452591800972654339643206822777280598330005226779593994947137009528 084079605484816221673751655294684046968001907021355858829978652360722500542683 156575090274494194764814055874306563744116778767491403269475263722695139994020 850468499226017455040348697360254503359097205542326058172037243190643638967291 435320243147489163224258362687872842383020837787562219191179116157044262292183 340077137054322548869977622345206931013112507913869446194850000865005396286653 546619474350155194189626998059560922501875086346880499075896324264402263188508 389520897111917842677488274109876129399694406961881581465196931881016412936944 757281381008960046516513844740905056738479053723755919403700421847569422709104 005442047451681006692159792785023153975670530232162957924342862204886438452318 436930131356396293886562294001078758259691089005935313755697278285709656968821 613039463673958419862883902866782439961715736022860944438957780297996384425719 083050314054413226649870421681848661302753271957244697988674637417543568745581 838891278511800230010124196795439260571883126696774113747721563221082236069479 287189509342519437877065926133127331706447343735444238504488131456250149303552 675459249904714931629388953089822531365246214004026076566727003359518763963380 246880889196366817388639208945978106343588619323791197526853984437169983286227 340102650583476679338645293823106308880324041085796602613186517744847448042902 262367327006502825607816704469110041142267917569041101553386911493631887004538 833490972862725193314993465791787767019631559196054904988438907656952085996962 642413595166947355583148360913630097196402877436248400990966403143275219884575 517456363889860241500797777467378611116948438601114128964377954784491906371244 234422028279310990231008681044940936338858774578448249583227727505064197441193 868825130558048367250729158330630470869446299308195322390509442488439245874872 376478257531316134755185247504898329363547922797767855703978728345764242873828 687463371351269080831829362445181747460208425482154071300299821215195283340775 566129524180292066966830553431950929971158048661052847810526680959547653093010 330103017635574289994937519890938853514375897492214012975189094822109577077951 704030698013074427205159589125467835965524926422765758349459107265519202193910 457376206224920177587221097234973232973377922702533657716401620770994616868928 762198612313357750039135657288838500404369697803724699624503514842059359044796 399940598526282913871608945494221767455724568303936786186845392191461746244340 431412480898283650444379053783609301086020650921188183977778386222666461892154 875155029860104753430301400469113676340446436992313341293387444478386395179713 251618564682942737765467066852334707293675836660764777607861230280234862712192 171210980154879950569668187257770871256208146638684264230778200975954974122458 589438897584015733784765817297351005391788897763709700697654394644385929736689 718952621013849156169125139235498216599650716205422833659309053856046837379080 348539038657710076381254238601146278085106402044011980380700347570896818178979 209007020432555694886329860180082407507389076782461219284890297203050630393572 722923575374769264627766307431174069988380253413459456245470511554941909550551 297403371911546346201243016879166265312047079901209195824193451989476846361018 576574894449758291403404062099346586490564761380110894874908246244887372570798 065019504064298697701163407139609289475230803645471776969559122986915239681930 092492561886910711815630291846593203817393024627815487597214486427772434120162 405068686029821146592304572982565862276074716533984715391539925617848937685647 686737706655062631351618864498366340346104276084570388633846329733402985335605 266189050942398487581257148094416924682013116642291637937023705203698602611142 292972625059217006271659314831208425277096076176483749227109132233756179971442 727185367121348269678372485059373274133812957128017095534282220056943492220228 853723080963134407360763044164299930876361683933778303026524202274575241200807 515746823556198766427489065042993512283682046127376580249155990227155798596239 865939208578115170746968252953225323647977940476682123617707959975156335598634 050719824056288843341880518138155657079193857207647327840858195519922852421848 390811331241059783116897612881665885827359946497435924050990999846870611422975 467018426879595181166820391101139525667810240557713998963863767359310704252962 840932051947848865901898299159983405358115133208903485172992167297680865488897 767127484158274880221670178166927546956436684029985127905069595714559315143243 152252362773717097884614009749653645937988038110995950568576392697870595228771 130831275266074610900413536507591015640066055430799506253517040809817299950967 349387067735201127451484821692130705722809050463025592375503481263115466137209 639457705712658981572529192955951589826346842410262491914959626788508514649927 380451616265227206851148053711544307006267834129516036466810314672265609175700 628523002234914569901272401227224284618201777679744885317340717010416681075108 909906938057666365138648518337780639247054887178815241738402107947319883967053 970139610618446342784324186276362305414528684864723393022400469952481884108228 405402592308037600878799749992067314735235666170693035532644363019982508262015 011782465888245838862186518987913970455153059079658838567654631703703062560345 448863650026140041854817872496921180935352634377195658189476975473837272489148 319224178889377169623278400668385414854846185161641424083309604920036414676350 710957934699281822879507041250489039911560157567181314242376073706558940843159 984494409795387338621408256773477829398078629030944469306099699645973756585625 218423839355763920316632770170927226482046009804995224123974955510034727584583 414194964021640127942420645782120347924684394715049904864917968626578450296286 855007755800656298220376001000115698534253770087167132219545870217110513199580 255909112420558383400741541496122279424700429239567562099441464076811044201032 869249853891129405562665823487631273795130499592102019952517596435006961190902 980251547364930850746521021741487134279530873862730761933362801844708319744479 386482649860174135173193963446307483885135975864523074326028570544686870709710 619540999440797312273588735080868596583047723858994560888386705368120266148209 952462406081651991825370640265179728522274786751553549391385010325573976277091 105057483186917657529120706847425438493695055318057680185865309502934388398429 705280010669012292044018438568932649975125593590762873149911387475550614674982 849229857527602227372336386481483579492889036421395882352122723597975707670105 084285911926413724994005057740507953784726349658511989345446664335528875927344 052384104840363702449756104733636470919558347104796209390888940306138892140170 369048841017289672768599273960920287418257983992322362727466672832720031852655 642761307225181570693768712120420188254107181451611758063457925467539000689121 216199324006118400947616935693181130846730874514109100653273094423119046842293 307548005337535554826550763258231950222518795862749277732819324861720952298309 224905598695901376901924892673734365464494778465153057593008714158025074635913 868223229464121459976819468002308377895769548148406343032473689235241778646392 911408223915430677117910407932023625256101617384814693935389029176991379637257 663086037393048300429328696248543299041899809388265439182351427856714037789137 907835466256166403983160849427982177698328351590317983013091774545926930445924 260566328455331691158198208695414396211642711262626630205091279112562124196669 677537108634924852343833106632282285180230227705238192844200562072773754701891 491643899412961035801811371403613142270816022546023213869103174760385952824457 745992285672126074228905489191604711478843833535372304530915509597791957890088 705969195163766316016235099757967351713866477549619980406987359455982802319500 914107495171493765290307440801139955950276453391777802504760436014418733300351 913754607836768458659570717789878517612124205212276866755723450959500260191157 128928177777632191193716609437532146793535095805323551214088904141559398069033 280226995230116230186014652436024383329930658368254375667147525125461950573354 416237441853715806236403253621487142734177675025843233188923231336307577017596 258798142436449780032280379420608138126564164801599185495304752735280637521047 924942509375084927867948422552732174534985489497489214129915304928150433859698 540637622973967803061425527331830899066289961538457664323391558121288245501544 944110327425432540336357104763213215430296137422089509251949535639905131033943 179272355010604403875270487172027022017407065190382927394679716298863534160132 244151708257958905789257655929062469135537027470674852117428926679225808385598 823426321207849852135163517554970876422568757214338979493267251966682777817045 379226653190053049218664418406032843647272939876206406123472173978951999850887 561265279718993644505848397329340035700200731048616115109571194473770980249125 761439634336717544780610346601777127617634834377612558862473510558574828063516 674941693060588677226895762176246569066275500088468895686362567339861775327322 968869818952695295970453030816805150235989928957915382259862339003457331119709 121638833835363388477599916283548567552223367816947959394356699892935758535064 679777787444210757771285850732321533229618276969798130522104278166802411028124 411458209933102924529871972652653286686515524257674338050769847200165488667527 847816938402596334748433460689734895403553156862575931761734141097633485767807 197929046590325511214786465072034798236341782613733691077697149765210223706811 368309940944602631280065253368188232918114750876588476561096528958743339990795 908281375629512302301184498388097623642350981116264374916293576490058034829338 571061145362316359656198822405056844146528407242448902148310616963614734712612 728148450077281050316732942746947847473829310705067134957510650926956450119502 056023624104145626595592441882547462819849477953592210904955254086411943913856 447176263644281896717245692693568187221358303748976018165089669715875263086202 458815920994775198847769722736548261903309147856506342389693693627647747671477 616241508872508093735985756241451483024027895853401512596944042315018041323526 882349509930724223293735787319705284444423664520922375025008633951407290141257 861279921142581284595069086471467185686510330286234836667274841994913159653261 441473996812991907103191712690436836676778946821708754965999573373366258768087 531991145679531317582971934118983721251143832255418813971436777836109870772501 948055893074771422281460656026124847675698289864399652887306345870697789457705 518903634976440161881741973655659791322479212679106252423207060803475354016306 272829577199756341461231941628359633471471664994649881251045922265036254677363 973820091381788957636053898539528774515703125933216145308261596074762227447564 860011295898438155676131731009628855641485515215142063961033162849849921348295 781332096273236967411744327973080332704151224737057540993161690714647078224094 828076847459733232752309106054581993532746521705087616339715474971776337671383 093780999196749381993493713188698804833223579415292924887668175973600922288474 269906799052978211060991855789568231401129488500104307733182487272025636648031 122093098331262780399137246950806711716007956937039302888896712347440142897996 864668356387377056913644198216173384291314374375855239771567189069016827031184 541101149951581920464367184817768293774002232309685899832506384471329867301608 278266509192087824581462431287517446632806378825628147886006320114660835056455 465844696895309868085559359740056034152736763996744289235466364304875793559520 094786069832713115946215115979249356890128606640987109429349819461675417860941 992832757427005722375758811324531734664595671323839991397474420711952228293094 152169135577469396528167838471364820827273167023968787846275275105586071998217 941117361054896381943147977484998486701643825606870024639520623787407821058369 817008428937818781364220735487143260930470788347744875805596784548673007510001 403385752369343189163387234950276909018430317260375478139377930682238928834254 090316915565085088326292159548113339776060611443713997244924515544112131970431 110827528645712922390030327199332575998832322075867109285853414639947203527221 214393884686209061033456632822440183104146429054692587657941248932978135374017 431752458200524173286895362746770383937021522412435093114724566630677889419783 215552334506152714587373804271737472944300754811684329573515450068872872018340 812079658342237451310633888037375863454819802547083685052679033669359264698585 656629745476326881648352933794333781248670225790444902721529825501470300921342 077331722399206954573852448524698851743416550760940311631873755211529867139405 927221972313371310647174625348915272612081013308322135544752312920692295121375 668495766769539255561853218063106736490715499067206988386970835929848586588393 196920402321409898123265044299794016285493557354681703458844956304687261568684 961396032655180233396879660330457370080469494428260494733232487482669346163927 066635632211234143540675779276566100088123426224005980416729972406630289104732 730148209604960349776997712179103128178114802331838486915897838114213749627845 923658279847976140321018268760741964346453789557594687325615128426199102257760 946847269762218118048942703043518479552040444247563014219189399711823655792513 058330048140336921311664130592110875528562960698230937547314611008810447299129 371359164172586949154519317473204322383809672241552080149761937446387109931707 232931032001472907136358571029869093136295845425358429379071573437248815589040 489003875063471918673885210521619065731853099630609603811137981076794877916516 518375520451842072608767444929743094763048287294914754872846293224907912989867 140687651961928556859760992714015301397285457313757154977571953219456353687299 620216339503441047416781279306349569419723037757236619947447560844036332365857 961349573526879661696389354792058581735241281834237525407272246368173438808319 622460864040756671137993553401461236846440838720880327489682647932663699933471 592669637799275592608057124312704550008060670692172732982438866264519793284144 985108552242391339188016751264076663979985780219677702197127274884260103861637 690015390709194782761722816547854105608684708993640956937183517982434857994151 111580779540947189323458152001553916270269810198765131457383709411807090926406 105521863235188207912493759514464897141716452408901840221212909450968198953945 909850615458852381993111262897636251184956950141809644412506225848837189091357 485594837954138733514793402054368497377293757966185850116166464373657752488433 004118979944203861241449250597552431428378191211236633286533739438379899907344 258576589747907308392739006174962857006766842639894970429374296981631198971677 083015411896607289922371068497559813090055713479802240985471957308012240183703 496447819489650845980019868663084764739536621848508413832442074953668013434360 449892611565092958911779736851214039048537340770617460622196482050948526419737 370552526053668257511009215739668018494543529615356848048318282038509077783514 105943774467840391795132784391162636786588645559453994805374517138666519979594 420803914174113878445603382021365947815604138118911381375605465940317569639176 724993381342778770283553200612890757038389257940922760192090202414425074909901 396277798862536665527298890200927512245246332765231089272783838016722215412094 097744502314667314721300190655967235477198526664806016904876523004793173686850 115474622424728948637225976678771977728028921968105176068443683526907747116059 653413811330569722224181776732779047452420197766635916997027202698888372129724 217321370367247676308447391085427937630299116271418436526606115949753669453452 068387214580468549648881688741805777069945867213445509694154917692693009997227 342916731095270930587761190614287218698243041035202452990987801849726914183729 677387810005146534686454549821970803217152393808313045471485615687172907213810 444900473452439197018963303921427365387443735607434752170859739751739115064368 501979093781162242518121849754664958565429017156876295715921658637625359572448 505433465664729106822744505403713249921100647690350716445893501530225325616408 373470479497680151084870676809448377599182718450048242617387118824871339455326 636492422739081070610962136825544196714169388761777832841028975785975533766636 988173256433161779135088476456516907906646273803560528338793109977198377962159 624596551847278760915530242411789912982733746361170224191976250563708102672331 788018776285997325889744462236903153035671310577345432002533265006050150835759 129085241191303290027929334492622274576310416906921286404618141029025391952751 287762545145731147951412724922067612843041894977280571738836562484398788551193 676452223120897804542772706466934262688590633110290665509058026117340103429150 985485269103136832681240054709393285062321413430233005602227497474541684770131 535044995635078234368719730141575057894804631519060814902127388599452807152481 468507408774245057118833230348672948339661372298747588528232595675548843265464 517663870046010426391069234223893949155375536574152908015507029323073622951396 088775422606901123284702379654274489973007492371322014303639710424136294312902 740296196908700002869034989801770961761232579225147670537391467394432178381367 131157381014435827914075450424378429617926660726335310410336025824207068224692 311783856932179967233993964908902076673812926459535025287507064568803200406044 693552737787665777476743325741914198332627311782892437138603102693985162709267 222318183697837342975674852941790428967319519038421008375199316062565604909184 561394944761164743515934513569238770331607037619218573232581860867373475023618 226839369426897578971233116314967519417581554053517116156490087159417969852594 409550766173159021075573682085271894334619862005421350469030754949183757349092 226183543539583600778574850008743116487976202211301744538088816089490825704186 574609576149615161982408975197029520211507005846848920508728919832652177512144 449954484829562440506532067368533332022848051608003519015461764508398258798554 982778631621838369867570602639074643854782302762561248991215425534560781707847 387090352137880620775784303137305923719228889544154396994705059377434328460913 047427537943208179883840535657455600483797298095936279365463976746536580011667 713061965298065464878362599186046768555699631985205609388144137789275159046264 382470872218783576483494071690700890659335213549536868246473943167030539554367 996904847733930432323902901233145333125205890098691126306542707840410019316307 226980428028408708976192978106309184899642477154615339348081066407840350325636 387656110698391707198140145449672885621486390908326964948652836029266977783511 700864445830306128816940602028438500599194811945288997124770136035990861325982 463938729112633740382453615839632789189710087248429601235722905866799787864741 179877790876612796162857562533894560020288764129739591840633480892183035858851 164084257894219632396676511119948913015239293892960853846063114112466407538844 870651580656990082942119002669085390871535197667109236502944737914249170753444 445447019503157789544315488293494705262930860579543374616007325840935753692817 571866250350233298661002086833143279559032656830501236402960324399606438994843 340451339356952717786878297087088074888061803954240680324592214784294233124586 830197426923142698923455209666604258902095546996766263831224736985502823725783 686180009700041441477531658489834606032501562758976587608699415306744198648371 498912612376675123832685082418504577153254233538086493837089255849656673395850 582999573618551190452246218039160461596725095875863173150323202741391793992850 950424278913609455137437463946720583325110753393612377068705812009806999982616 448395906829514226404894893968134620199753714388276684182856881032954559962731 991644739719318643689932488553609909875036595980746168668006264936391533390383 977623258359654452146917662003321747965610753519695365626040237242967689512412 826455289182884900619325953874831152125637248021402566169207397371394264409081 966577713175625713767386593973233017150680813436424258354477895068593106105812 701836685434616501229598831310624194501797923152839718697805259178025497163726 509494591478098334406966146765747414384729366055650654043325582327680151333748 377035567078153514683820701698251720308611784751234222671914784168500077781434 258959349005612766720415793542846664350237990130395839982680229963241498369232 677260854242630866568699278598936285968287334144983217578176769889616262467421 715062543258052755308329096838134235523071323620462443672150149369657459635542 697045706792764927763171652768484044598223733476390565003061697444945740349348 139529847003258401410124980510543702203900380567622352362720234662459124839870 706475405992154650351004957323385807055492715253823098756786119403137235792828 010743612819882262628284938444574775996666317819557631833095405583107938038646 949586748581858202236337759437275742547621662206978925486439280903124922168941 687689286770107879406678878952940017037680808251387333721094259751850471726833 066177397012334607490505673664543999239978561926035299777870050923566429276694 304191283547861112325732808751891954787170443890947808235381476601095125198285 798574536527057656524415473246654971575307907619672490262385915164966714386284 279310688966711011329815093567538508508717600053677412684523514753337435679754 211264715032278614603784597409530994212277390122643482261520384797601327081632 393182547137659916552271846731166402679408708429824227080481896461106844252321 416157021337172719300122903751723541583124652922568536202256565018518979881333 381018798373711999415046309916087622719581895277747421266645924099574817249297 241249000954948773109001670844982528691939091123460117287739625293526970373600 619989534630685660427566171241015961786890687819506286813762558390149421326274 867951193178952163441747750301187517802816503878873270509191879202685829673554 373785203911617587870514005435639721948536971451698019201016998863065968114077 226184264914018294581017658010218082362257954421681776830250072100962234070814 093073546665649688732762175321399771332517611353687041751135814293060477289863 497559276054610628227321312313976174739063898413282099634658194000218494681290 350287300809088340940888300834334681993645900301296492215296737443424438489864 028461972199200861435000396750601357075366368089386651587030065853636713119160 255049103891106487944807639274381468504393248255523851294180508432550985081508 436131483117814606800988231585631958667737537831799134857616291265422039921300 864982268228601154672460624587064025082275231853551358546646188283693931933376 861188659847874349286073693695157730256378553143166737231975609410635019927271 185323626136061927730004078691842240257482048143603661750877172628698966250386 491060600495266909422305615198755726202991432592948203861685276722260792395556 782307239341332447475633246012198041034013181127042358233317246008255890806513 047948086478891015193843915961863137894156218117693889962646509309390004531317 706533923094056314602658603527411202851881057759666475414369591062067565722786 027626095593298277933489867522105397753829602774842015350046878257282786318444 165907957964938353270040722430293633672528828644305447716379186733668646450768 135143212579699405330220992799698596486225234737607842212332800691041406622815 437806308712425805404409119727933279934181081186290341648098650448895773131393 137530499822460580141717952658290733320182171271241082144973678390407465621997 613918867109675309790835290930600541025365574272537936324825687730782041352081 471196850312976308720613865285604214249799316867421737532325916158880303001469 444156977635432460413796447564113845133570938959055422234198097535421050750328 202972562419169541514519029050271287307778083384403382418090505996993678086667 751060770315918955918950543774592498198808002982398311803945341931123089236210 179009108881026265932875735280877799685636390614154946831968049881263075916186 200857158681496391336136129956196631686141997878681410574595672926872201265670 340300195427519785690755865471198889267194429678838769090608499628851167763579 355289215502118702442104001674720665891791506478299263865821927666731614033100 375271440138842648863997942247831606521766399571225654466127328652828439689071 298957820054974142005021607920135393958728276264437338618902184932311593742093 186738236973210135945453115458674156709105938192464653187923566554313773556496 665478665800769863206366752452370806394841279907416553567342009646093162772389 085052409844455006540923494795296051372461614874908025335028777670651124670289 351340678560480783419594190381091320268978831647320428911918427529365122755309 115207605208805872832291747105006770992702952513732334731005231031380355392854 884811392624207444697155989376903786245595875961441864422129941524188380351727 047898742285581996322234880623023832230356495383791713319813247521478514670206 503623549433870240498769696162125242248048630397628774039386132250886262474645 593007023470979389389373206713669779564692927554160236891022345561114401747545 543401833447112556414573993332783614249259700328952421663382800030800851254580 172901639455952023111476075094254943801871983644569711207561047888339525672672 157686374637149485093930139075862965474346359861012938517029913625922111600567 922797754157501739081218942124455428847659256428958961326996660696344070493921 752567441281184128446206061322498497249858947948100703049612161061923695475178 910781645754682813273572598742946610799608970728217675690419948384078726661767 669636308322543048586960320277635729340025827254659317813270049355108861525850 065926997676023029737668328218489713481794726151051216393379958683857173469008 155993135164684135655094162286738368711450006327598032960824905679346778342791 257619822859296213820281459743541615862014916212731308556817703539626083633540 091319111360772434671620387353720191371068613386469419937034035876619780894815 846604602321252543723013876600924001271345231076856380725496957575752971204618 646887324203499664508981347152580927964649507218865018842124267202493024254564 817903006270781177441046945973195471170269368114879478311607830770052376544979 227097577007850689787766863197186894291555438091296699500295682187257397027474 295016370688835952397021484548306870210629303518021403845498124985594138191528 220764658723187202560232825778550763042940470991722467831388080955719862194914 304712478474327091112052482785193038827004117244420067040078093185445520463426 985945878838949026792299545652437057358296332999684081608477423094927790633028 992394082945921616291905803247977295477155880101187961566629907311973216587900 003944731733656541081883591012258058810810478091581950188944292621349439988132 843808845771397985968477957479809100713258426539170920009732497200518888273563 952372482592808714858873654687603110323837936744272794529165610266244924856671 614275797309758783869632450582305900847707664082961287748980416823173601550555 014846271579711435398675832124375823681265535016003538249697548817736573086924 245684969936638249705734911284784110987624552364322631124345925169307207440742 337587290390554720100548732057705521554020537264120726054485733450334810159583 438726288086664121493724365972074344093247074102489422553421662095314539046821 842625961195333973458599978823718744425199247113562750920640353469623309372474 738805799377090049374310743787037055251455853399323723527472867948069177310685 102385554213428092031150251934916097684144005632794921762025757946284595005062 991453596645741218134741922986046285898434026040809736970210579889762336806357 999154373484972412908763799265279250777095029845630252661731025277842009261515 340602462304705551055312445150786501880097764999243427677380363288317782152866 194527098147752883529782259858382527489500745875545466524353625382600815283454 581767868962680631909960642989198924826147160100754889093014107951319216039595 479580730131210072750465110253864140746773119836599412106326462311154597145010 010453864051385371456251544461298278305673393430842715222983991839769975458189 496549882124927120186144612810652457150679412547236898974354760273366380279924 256199748850163406148341944982181395719914859659741510162569265098233628909237 045239630785445060039727394295252383793272216428807629098453808403995630736810 821405607293282044471554532058711409474277595455256118617131039610629065461909 767143457297404102951058655675805120810552594524655328062995301986083064541205 417615922730195079904741487045893396518110037635576894015466908619557834491731 315695840461134568449577798171818072581812437420799178684500518081256560189725 738981254316827948369245635977269770967368912014269112927623891291258730144771 473914254653047828137330972349999304059758180181374618951305770429171191841953 304725370584679193415167049709596855652166954632366639491856429691545656020039 043260857884283767405450689288885221409952948109192079075192414536017715213274 145676518494926947662288526982712285294336877364395486906223934736893254482233 259145614585685840594346415602830540389551540384213538988285750304362594009488 604380276120868975647660416357484103706762431659936868545259810783788067483091 450313440852029226921724321804121121319654355808057862369336585270355906630350 643788846160397478095393447775857236570559038817949199100290024166856505404505 825571467909674394921493412641973736963919075300864623205769602660608732487517 991548298140316916221383875229022298549243151596872584818567184067257959318855 655807126182160623653009992804687140297315413142369156838546433032280225919031 621234464100299242921072075089264998200806933547033130888826407068594723334881 489339469624508286460273841129611989468703208734688982605344485356410143460156 296998422156102213405450147427890532672470968205245474718618434146056912517668 970901290226517443690251076956177793314421538098031157754999624459281375095852 058034682455555010955823433912748674378256372031433671316031440522303159605409 742941722758546528976433431599436763539321987785493059516648531269940925669675 942007617983698051564996509026235620025757714251152182010550924358003946562782 847110629639155052154144945731257112981283520645304907398633130942209118959298 414747120095278048413301952294084661101180265288116981547858694632929487198644 887388357845711175925414120498003366530496887960394276218473603705009337246846 063473383887132199446667586813709954916164022382644569323486994595169140101963 544076674069664993855420808620138140619057082340801597663576252162389729325432 408009157068332203282140365744165273347829653383933318042534610696781872953225 197107302343073198370111985849457331809749563188551335237929735858111120036796 883350781025656644687991259898754370042776990862594458354403175716408511324140 045451167382294041393947369766241994650236766274778819474658440494617073159675 882776572729373660375256080775878931007715973954796851508065439661408019126638 186068074736482517075070663204373705662927211981626167813165283538345924660575 996424193245584220591347130216462343384137300660509882818430669756707559134631 703714557799575115123846693277563314824498111411252581907564854987631602564864 985057811774346609046032216843074872052307175928385631935723661992635940753229 603594670248462357304500991977560161017696925602624278548949190621128973536427 855684905566290907150676010944511903641270925559092327057364885505461885588073 746350468249867920187048411468058202206582945347415170159094408794692504065437 676648225224474474524072834928156638244920690935694356552761697894172176964168 576448302567866633372561362114203568456069024620909264813726731958073125491586 305692970196743719479308536640111027830955753674651544760196565764597867290396 374179188999136134190686078023261301826349727079591484501744921634007634326808 672629250640953695322476212002761376083059851662625025167579257405498460299902 271249916951995465441794197270639468630911970694950222717804067939920615330270 480829192760693834410424569202731067644017032344566793481555632007123562453621 323252543301396656605098758302888536979983962164692025775263944511958260316700 009044732187236415102779123569615485027743005780766730475272480439774850464584 485972030325700214531577904461372333544218936912977948022916295091023643428369 072576450215833880703639744486051270579834550204802661239191090361170973037761 389791273188740790425414206188391803136191703252689586348539244294307783670177 686746275514617642764125290077100168855685798606156740551144893917049955264486 353919413958021789155199032007449939909289134753789433537808748774121148190276 252523000146084545242591135923972333539771363989392119120755562000206819243126 177799256960488820459072713114551622546385124606185607053202332646934172690735 163610291050022410394021467143863675783024705869941602927404203729453894709124 164317989913265711762736211614700244096968586246784040884423802573713477319425 730413902250246787740878271527917004719194096642017499210481171961073355222160 171066745375181030088366292385759034074324251694330924663622674525414591279268 898640172749501685655084026931317601521329698646617399116031409680908031946022 111023693789997831155651057442966198561289565563553120363878520521695889642685 734386914506871831438457475196139105071292309219611481268235328448176520872945 773094514020399302052479724723660288150783778171925582525087783056710161063246 281324101706758192384392314169403075991801065183545118947256524704254946863523 011539548504699673858494330456007975048316688422968028033969799511780081443736 547854817161555033537918410282193565713781939920434024494656987025761550642550 286755064557354781822347234777043324757076115943493502907150867562405114042366 101343428388743728163248153972970860838803932531486353561708222884849017707356 158580427340139561093886908461528317354337177107708601421820527648601266955673 510248646760358067063327442662357398755213495811482881080763424139013294921005 985560507451880375694641384053962128578481944364614572534473599820946618241291 081508969437258258443562952852257910899915154049075734267383593520098705025074 084703134332460581846293317290959219617430380833785332349270200449414191108636 709476153350349535559892389423811972144230925927667823265970605246290437372848 213960144197477156732925663917106829703587798594161690949101473556683137722865 007793838367550106478876749232840759721755095077903664656358403536349179459808 750835340305038534281937417937063492731786982617068858215869370971388930048596 925564426912114924005797691013564255000624133908074187722675221915525498440019 328891706718917946822393860240609132015132761343313616058356490465230748519569 333107770214015974916428065466199633600038735642335410078679200975861372666890 344729386272805530468231534201695602361930127521946300533650918861478271431423 809828024592787517157257083376607289225989439825887285226702348419303119816426 792201023050882648636421972747714422670675367512838213250145366099505086162370 364678847564093098372926950946471930108128643840360097851941616525105786264493 702829739820732604625336909985284341086623333363353634998482490457692628493249 803289727791456617328628294023973013578154328879230469220709553398394629862126 066482377857733691517181644279861281531342962078784151075883274468750582045190 066486243459065306991879100333111447517715157122186686874912754805143502739113 552920662735904419937262822520589774112492702350295703045386083569810716074143 482548011876505856869278582846317037639534725684792355018479906938114517209364 904212167241423297439690047377691412239843765042743124438375776568988658136130 782157666932007618242849508004051029168180488674462126623431438456907541039110 095914020779428180927389164614216247867143267440921707088109240264676315233891 643963501745827603331556750299381987736789041457500172655912219519434060030012 899667172897301224397996494672983702977473086860226563910149931925254472613909 785467385723224931391833598771891166571777623061164090786035860441701967400993 130854124278972647080635841184485172617208128106782604982712214984132233235153 696948080393326159304406685599981613954889016617629535836358436865847206307168 440142764454672487374773738285250660986371007182009691549417083182701804518065 214720224426247460019723844435405879480989204769250639999958250914623114798863 170001015757205097055573218514737303613631873164140539453971538871843851921960 562733054004118306938126231845889669849682170202971244783336172793612679436336 055220705913398307113881681010364898634003369507642444659827255202239035400518 111659938955222404076296707097640864543514356842827633691705626641278404815606 248900997923879310435185895475219169735670345069867590900848574231263023219062 225602031283455472430373684747433289106780021014005968108757939317895109760794 043403093004756108068023557957465572507655601627811173648658165084492933900042 700300742478405901173309157321329523803498872858732693363118752067607793981307 667671250138385294755401921906331545764550837285588215489774137985983936818932 189832191030700351946794375977380768002843357414469128264002689915049731694287 375986190200225069560513971176596866069246885326214484024561977641803728628735 115082124651834145317535951311326564563786794758086529515681675635992849558251 201187274828208409456412746806251110807518676343685671645831734023641426654510 431096324300902151329578224535826498415385338562718779878294611847781019988367 741319332170594272102343713327595284654692548315920333094402826929320198830600 840738033083190264225482410374675008521998148126570758148656086204812699945567 388521371343607251258483738921867504905506653697378062634534171908052239098457 530523995289791063427261969514123455096545854177750095237503668151901183754372 182294489942765305877027109280539812851533317216221878375817680088311655958054 351045370719393649705796623158501937492925322769916996503581923248328124158107 989181320783520599221219686861021875777271275151406381726793478561285831365772 882021797990173179562224755867194057969509966314838124731886031176122756511678 967786983393165431230731647790533828032416337133764381768239817216279507769912 222616538679416423130352491957842282357547182196366984582558852223390400081200 752614950641776326749905771762906990912992304807227241436929837577288309615931 155047034360598366807263365611190477549300038999183141647336406524985518407490 736680652567475869539725484829848716556507274142596904378897898152960012458773 084357133351915274872568315346809542206198258027899111509994850623335284650472 942141609056824359955638810215097933077977418738948045194608138582299725052672 773123589346237178998081166640601986636865467700785233759498155133760195798713 523854593806062858643876844935206024055217446315001371566745260841045495377987 065636614322554872381158598634583365085240568054851002668725285942984167014153 623389802179424463490808091652752750708569564484267213946880368344766416843736 548855018841996680754170897599904297215939533393266358588962861334264752105419 499280511581660168221962421515275038411095359428297848865676649797586259326628 386193361869092655722144181273341746943340619622320348589886305392742044682016 168021265883158411368383852369779285349369706470420797269935434520812997984511 654117873368748143296567819203218912254183885424390350400809750241163888377380 955736858340651152549223773393773624426791264641905804419164916850335344504551 269769885965178658614510380227721451784962161255741990694521360572792327177778 909753103189320029814295753406521012606219628059051427716945481264315078346745 251827859656419972282880072127212024372009831978575194276861756106896233043369 697515940496593113629498976970425477259412764083292618860827179079931665910817 207627024704924804392217302896664039849027852767330155322231197591447182346466 770797236424784170615213239690364581366012038797387055956155038923082025390584 259645245883564124244443224352850412070044069301432943412739686229949976600196 859916053135858636237543708739206910782099018321313068616517464441947687809305 716626606549348404966072258406345074104771152839467436093232512296411961507074 147006361556271399546041440561590876625608133265544451270830020270913087580043 287577433361807155118552799852957729201497131660557274269546060579218052265566 368572040106765659051373808357389756610843186089580631569277610760654618224244 532520142426470504721374051399101282409659123192705892755248759693087215523711 920880401261436771496409663898811784138723997108552921718467422345637261546706 943344675531948599469275360000659898749199989369391525356401330267133888632322 687175834666779309216737169192004868437200846575230202973971418781311859503152 338071789359203624628056232972875186850934730662550366346006905567601708826604 500970944397517428894780304414041690506519995614095772125400420666052990187557 818599981834454269165606627731079605164577974043762378957155143960464569553221 635221343979210720394388374790881538854962279981367332392790573993647059684352 092449788003844216742802789635707410186962275783422747135374455470311143281666 331794931756188347574182187180812419709598463669386701213224071922505277439213 083719031198997813346379972710492016093627393353509377267577458760725885066466 222718011917989591080613185245184431075520382264549629017296755950317065992954 507559548270689988978412826762294346421979537792036014882445501133562342700318 259496295046021048687242332983548019998486251639305688343776508252345742108989 674469141348275577220579948261689843000807371342696398736263080092501175720139 593724878833290116123496288977046908656396991580232645573220309003986404949308 844924349055398840078885815335104889508480444987261535076372327544970376599584 180802708010675108315401684513624834013689625491792465148770333054690204607894 222145272013339297303812870749575678943398142737111418130700502834645461200034 123335629113189074630801663163832483714137237183973453843463897395581484371847 734530658089560597873555903485420795458460361086435266726041352001854091665298 527336709468695514678103612247901102739268751623156943416269970399861410896630 361761760216778397363609108794227651118138111723081331486305276291370136309450 913956317625066918023199778852387556642375199861926933567583507408839223606970 466275986773699212602276095994076788939706939983198128255854030333482078102557 745145489784268741294638833405377625242961908920873678943739375127692543748886 034166874401966091911068471919611105604196550369089768664727481410287090773065 524148652084606604170054874233306540398189847939351633802626660673996603034384 392980280744505742843998262826891650278135384681129482483331235290225093303075 930193518282180440411648162394146728041181427737384700624878274355884810682066 297962371773843348950252079775242184306503868379292211486648380427539802493439 327401485830988722826937772910908209183554807547779563412376088310536202768287 751931535621271836451140834462051534334794648743468412641412568950976402693874 357496133260745226030723033216979175431101632441692425122484329846214876314714 900904286594693249165103390342109046086843348539728635280188102074642594979205 208939191403788442282120302604516114998855682559101831238936424101973907285179 916538155574575774951722345859819594061577285797582675064337147838175913516028 521931204864470371923706334953556533862153237067756385877826670129763836375521 937145989971784909436613433457934211710202499998118261793238371632904399768742 194839853576079785155273893293398343173411151732410762981995369651743910682438 893560873519725923718781775936843612013700592712947181741985058283059644971676 478531938581416178643694967344384234137236929485541695981904096484904814829026 753356663804812474996508125549811880441962230957172690143085819884869170251462 173275588119572595253790622442718216357693396212383816998031884012422691626465 710201492648314698927719633479204147534964718005279587817012548232177598378805 513180172258990867791328517913461446569110077752294215826028660203808600880740 551274985851806452325967770447985365252811340818675520429409864832436706743233 950165635170744789391247106508794111381419848624634939359212026694491240359352 082048986719551064156035935023686904646016046424172647724514643697102626398178 215704354321222829382576539692284052310051375319086784622373749388126540319253 032151941876838173063809873074367294313465248888178604257423765428578632789623 090785646946385854733888212847317545493203138266005263949601273633837205180293 718282431964638369285260577480057427198866019781738145821670011078599443377736 188660985969032251994561977379018196063290054302523244961472304743551052818318 320744857277959408523657125792633019897338051543184614006728745990065177124288 255548587639874201535753657223487215442010237506514183719550726431177674758875 379279248100248165803970771238349692085781410657197521160255256717601481254399 064955450186386904493327919075532723551236872422374591921873954984522665751602 477607705474237692669743055441841310705134189157142447872176416121269318456852 081214533395678945928621649487914169983467055275046610592924792788741212997104 063746376430689616695438682323253383300483170703566744621181197281897651579792 734590478097339055224622407987112211182587990852748269873997033459827425050592 692069668363831855179429184826515217107135985887094753315956422004498419408582 651383059148430496923682260777500691107353066577691272384118756375124192345191 655227286418337964190256103885162614141413163227142736691269679184008189349117 396623851304364807447298728516975232814596751787586363078051292028921478424844 097779590662563310444912423247442772135286264710875065052091790171320294816541 655198026928640119377632026923791227624913374491340187417041726248288805865865 239388102521629540426771894534608699607801586790215399877261484342995963591198 650425000064260708240680796724216160877900281685930753619103525502029782433091 884741088145561450506541034869658464070053533546947502720775155620034537864636 456876448945017289145024701775207519763546490544715303418538692679081886215630 543518763514036559502740363417227886197781509820555638420433001290308839662055 037431536910218092261866762362679549967714509677032601407471062594206329589845 387128922534788208741619341580542384985098562809382747575188924476457653707098 723068307418117771159580986342268137542079134190629298524856823863414812544156 786482700474929530482593616243130353531892837290719268967326960420896619605170 918946131636839110528194575057499152759012544655271867137848785713150529152733 530877431788694599568503702365415694487640647216414271541046276176852289208199 323503867409961762134178821158350202397368656943951864695655625214521866519572 968000214835325197505472023020193937103385069915493412943948088658795454022377 773435086537843665682464211557076827590588173947271922908352701145038002316815 545425890136416929356883723711942986373252925917872291643400691396994537574618 651947513787575716609039926620062176749882257656970091913599019529833716629277 057365252311788828969992114111133612429372063647643267420960204047863609597203 847076576645521591245203775849149547296990562586087624129379774844545618226071 764977129439456001535867255317118575137748887745660131408549307821518555873320 157783739936226103323889082671676743682400536099800877597231380099083985514815 228519264100472605674533357412738825376032955037311796880543279664700167421696 523616986555311582849106150900115478510709292098744940678817115208813226820776 895775220754111751999683926534340194809388799736154947240603427133843872414058 595279040011810395287120576942144638091794032397047022954753639566221846957539 264070846801488390400095105134947058157154626852397980347576106792383634302595 570443579415403009765959250726149549723027221522661158422062181296338106359007 756879367166297570562668055995740174749684680916446190025705336089351102793068 760298195854711897036748588877152984399980957110774605206659024014315079850110 613430078846962330435258597226158698672314997332233864545423838339605040042870 103810866786411509566289744668455727426772005317885608374966963087456560528276 439299322874588767591515180417882543474789279777021202331458704629681005246032 177612425825220663886068514043697259919109181629616190526158193719297541104998 472466143124554710521725233497393334436340515259271556297521332782094446391827 799994296684436542987926195390858165851773428396657901141622315095389789250321 990452693397024211867569806342393936526470496723210910526348046747994943147368 745228890512946488164636359880003715225177574294863943642641344592673797765882 721258976708496951432767530928746250065434867992879676449099835363945099371791 058892824519772376217566063226363601969244119950089538235749687803539752822721 450073679834160861738114464806154453731917427022488446414023695276690083326870 177683320769317372803111637498403570754366504488312984342084765086120243412645 596614411563803565258245846731451814800673616359407956167365400652491476785554 362410917932084116190438864160960760132633755333854653258377042430287935498447 169698353684838884632850517209976560972042708235494535709611634807104125735217 737358960600590252533068383191593168398574955159897448811527977149261513115668 633574730402310429715205836605316741369330399484871886159091383634114480270039 467076234274982184733454631466400014236411498440289957192190425362938567080423 025658928686446994970436287354474606436896759454933250696160773530511325936764 233059043450355241744780408914643742721515831618359315193473572651516610629340 469990143562930418089365056722998617817896357901919730256576951780851346429255 254320302493665392775957258169044478554333281016187254671321071913041541528957 551560289588807227133300466581398103068254802378001587433756957148862493845008 754674142806925186991362395582683714037385005131163537258647418452023338231108 971187989149112862387487352039997202995027498977282622399255999212295786354215 188038041346783988131001106998329205913255999440595754571440268900883216340233 220483413748548801986072453995334685024167990050865506802706030700834992862580 807298247661440836694066044467157643360023692009791707094416918778176660209811 182334454713494041964252207912720508144170756897813017628556042028144675123359 136305855990108943065988404394835650079589430525638201156412119874979126272931 634372823635387082622275607669317610388819621398916168488308123598525403305154 776136894570708816578126848487826198344407264528792790148352902926442985268225 576636660065150818159730712638722221512546621587995829105489123911896254623848 576653963585412279278875243632037710720423150485302931825480982216992840977483 060397304462588491750678160944920151094936004936417711445327029996945134741017 950596879631533804277387425362732720809841385994038430993823603912137793084780 563017659179678603322843118548373279527303873175623014083528953156430319947407 329518554329532952825732318346316241013909990630418504954902302134114150506965 051699942947109894689347188835990000241690785433157336623679491858563760621686 973070490137867051461452166479788796915908876414767627675005082720406184425083 910867130068428034500288233854985796876218382402020722759187458810363320080719 703921014560210714827754309885738331720465260468869987341753661241585261319091 699372443987615389394989169858712535189084700186643317734096610388977852796718 477682152308198814518691165502016343708881293345159657492614827142204768719594 980480174878061801646035446553101068412556782766443266815739444491003666526432 440164325840590986384021240510932079214103465942121247579767424783082899019291 446956269940563614418554844851316061510710371518091623996085427113651686975926 120856193105667911409766840614646524461354405308911497675942276009995113704641 209389909286297151021740499118904528211222122044946511925665223855144368271640 106255792380200233646311367602352321577996748685754095024545634373785051525865 475624728590498487756624108578520991953540911069669198008604335465173064720488 794369054257848282920891834585160895917131367140766048699672968705610848898111 811547758879516504525928019430071388405317889695603904959281442416140097633441 423711177006437756893542776235477983749440697269652319312546780488383719843011 401828454643628766858258866927327330465171600471435761231873550872041598035877 187888182910492783799512174622956265938786261268323670508148402687773907681185 292725753447584312344765101517221845591121307120051982918552963419400297105757 011389223544884365002974616646763280638905520903252961490692480841172277487006 883360151079439053763197293167442017131271437278785873477018097565658015615797 686699885680444897582293193639115471923530617077488916200683712685081209681006 920733045293579661579825218365438024563312286254209408245353346535557382215052 596953319354016660174384123262370281672949911251410288588811464883610907719362 590224415499297523073868635959668477744059870087578485798168192774389189738649 135242317141699509554603966228747690875932810757279627997058611622896965113731 605549812446774191296775142742376646807685609661556392096298366651787842391702 698097560181605898462909294852454328687572656823116232309364964547177067779509 540119572668732489887615237447122340097757407131658927860729817587148761948496 203323054018595678508988830863575408753154493911955506146784446597407075978247 854290295364218440358825627875847897567010369948098445361529084712128847880158 294789682707606950407166531100383598968744460104460056665593568933808347467858 343387575825187985719360166382844589024665607577641731176451704624730849363938 595562199789954565428637340473989050171810700085550806685866417115690328395494 713471704890399225940440647984298413193579681604797264286809597310868924463966 825463211125346833934568147351691324716310842963372664787968919688818072631233 217818680261895052815353701498576443325790034897215985586801772720978561942791 413784203294693577048520257461449619880509244412737587297678381444941563606417 092746893827248726647823645951984778536239509512944908770754212668573002305914 128011472103250107476445376350352896457630209817042643234715208582246748723158 490126821831359205257287838847977262943239729257782881464610198369284423401345 809781198726157468756069063743124000330056340360237739523842638007223882002270 280852348976562874891748995737986709106857077489109223929748896039022284510982 554788748758604871974373033859335066685777911644461717640022755568252241940833 322418188737957920148337870302345271585891153908348043811497999589056919940489 135150467855824813479109966095134436538528803193693942877174508986010512639802 069499843325390024468625613818695070731994257296328178189496842465814628902464 459074462821558578201086634071818092235915901060092777292664013648663603551094 207148977811044646463337062499570177718240210565649607033335784172946429336855 388532576755029547062712899645649446562986630322480804758335184713312793488304 566387197767913393486551812238938676244330823067247803264665912039732192548210 458949665320712069672497264563489628527217818634862258057899586322967347589576 708316056813957184503525394274629482545968304430611959042486683325191760852159 759992401231178509571026457634101249895725692496260964369174356607092924954367 245299232782829242130231721587060371943671305961726262440710759827619392617544 863611613099841585512007510035485701419939226225564945066696192099775636035792 309153540141545106666942338041287154374903015810084706328441964969822445886594 160594191176586367375932522159932714780638660331231163942833170963000815450850 775107498342929343668459276586260701059868733023330230395598998024515699711744 864617025248340261939019778267051679215113072529781701288794929345871007378384 876583349438457259840885030949903797643571633004164213799203242389815814531132 358237592834112239626317907544493655940722398728528743446891397812483542737986 219689419912819660721586906848360896917785700702112797004949155785394052820505 615920023328923728878259767921510799417952128929068536340198115192859936217453 410600929576727380773226503261092320787239021800295749678093574187683282122403 948219165031364381033088578948071765698298620910546671053033732610581654605937 250931970918923153723401920548722815248550003225928421388164075335463513395323 446187073962594629635663421135937348299999487424772788913635453567207544996905 559865459832637879901318904171780511721285695916394907567251544728080387711906 703568324963871822437274871736224081677005816036549960661285254800366347805700 277189181314888404600264516449054383604728725097290648266489655821525718875018 725476055093115761234829569579683074971165498919774647384205529699115900824441 269076461166943749814727591220839377861707724701774090385963698070353270609552 462847974394437098345743788202588403617117942101297684691914740251960171212606 217287922204444806769009181614869624263128018725297799584202332818160153844445 733855481440038853546798503939288715435363020505294022755389714871725381370392 446635717439373972752712558408297356167851495421855231923032647677473720638498 045619317109157355098437791155915526272822758739067564368842927507280538203453 212164886998891879794516701328564635637670039398908108702581476849261608715698 028671269045519473149035911510047729153757216438843724609640941322153690113075 072115974897656108111980309548403484015962514191755528966509820706783183111144 594910894232680797442809925503611436946849095421635151491842185294194348272760 601553255105695388384641938224246864921337546825809324874811653287189188963090 305462306501713175394682032079691881606639590931868989184406942626846275481419 141781728215151904594049984192940893638660039959250008601492965483340396201594 395664820666526001808985857923584324783263324042553877712379050986448382718111 349062736744681113716817862111562452469042465656854629371708641320554732704318 448866769557921253742432401875163151119336379305023936711114122672856158843243 399217224881686309636640457045376461945581615449657183174508250250690665838721 480674043232473097685832392919556628011792015840256809198974139992654411943218 268793744419506037886821802457599864877405528495719062900255319996271468383752 771212476209865926109510125111608242923676005051738659045036446634159183794898 967946933033941970890710873487952332315804472688162198577373923078076449625422 070690181404617336503756224742794150196400694198220100476759812360903836403536 098889466915708556501377547453493909182108757016058060637376293636211072689640 257790831468080741419751294812429009393893869723008765355876877581293318870545 886336209889110586884777051571643858877372485264739746913680054621413742105294 504451808377531517150296559160709844509523634030937262723902785960942240884859 162013965867352680174143009692750230706663054218564112562980815547806161112072 257357144185837622041922531338195662607886111815827787033425429999221449632183 693901073171990656385087452609184477056342739424673879974831992076712128456880 102000401096786743730178712328151114224142354336894167631348322557843527120744 564364118193594771860160416842731127888974182394512188808989716375181210019859 065624746235604456229887574061367398080022519371562646351945558511255946359711 322741174770487020361046150287144216928470970484664710535591005829114830239775 786248050139570169583715596689430726035104486743943696471768454288444040900739 638967205223373067402676991379700694702186603506496071173522599341519501869211 290787493556014608820794947122985705535402303345481607007056280471424219064168 524365252139398422009808637647980769746064383006907056370609889073252539570663 416612980896147408610291353986546916544176171506240090693281365258992775874785 062580562107704962628303876810057928814792364472079635338636876945979330248739 539848803117783068426530422487514843728311876062557381575027504960806699080379 114518616425262869211053413280287995603559174714696581514304470457471522550628 492166516037868521696754273325359350439716827385850752842291246390407586110718 461637791540660562111402192414372174678995588097254298474433750598119076289028 935213896005980398745158910554204982117112421922720774727253526122668466080976 157619102623694327477117613783388567235166894881314565076704639619649188032856 922592758392916602718102090671017480576418149395560482420369104659587114786987 148989478870996995752348173023931425750891023006769550075341281301443847109956 549354561502428559195916664064174953363772285387491816900395822606226612392288 870622650902912020554443670774267982413098585097360617265756068748530706881535 763902658093651608383436611816784639483609593259328761346563233238101751439323 613746876936605882815010715194516827709720999801161687311354139674947740289399 244371045722445922854521194421629430340906304563573558708880668236796503224905 098639263096307597324769953061773060777294760307689849161206002930249608836231 466497693181807894865470625055963428063844920981485516910115469114258501682068 447891041275441852254850396056479133471689347279482126176560857538265805164890 770427662088754696908674841735405437403785862002188483799098794739512605405997 007768251904024452184880343781002551594236392842595579851680562179222616362034 471281063559766915335549334615253774256341586272998574865092180347765907348780 753150361041899570531110290790455545577462021393202708522100076736161552703493 279612119774166773083425035302535223167678860917195385925457469455439187378926 654616110606658990237179634805776308090344870245509013682786080714567188326197 898964661860808880467393596990726570037236191523242645417629809320217608038923 874145981042375879172332348428695158009109640467346521995583024084716888283154 851789471868957907171413825586934503562070378150770450135720282526963953057748 391051826668419026521015914620073723280082714462708288185938857949070560683930 782598675339642064887878666247519204105927475628193244218508863864689494363600 002833844948752682406973607134639346796260494870698316952634690226376105271619 767442981492318728077558458531217400108401035129077106975614051734689422897399 405821878785057276727025760156509235148026633523613162439644244073418290191015 950482239315607549344640015494134254212664846063445248828209280297762772968100 516240928173465900670117598888978288882860541461668801974486770759424693751734 156134202488780963822060296629649939416228930857662052137206430521987211859455 680759119238994296044327117947628341391351634436709404836109281347202971379200 118318015675912877574257578878586782065534620061352301025247978209508524674374 467330507471987662477645732121352417285664000273373758433802027661701468493967 157372991704661212513541694482057806199301262510183092024829880611987494918832 689622964815468196161448903989934523419944724807738059956067156659630050857296 496953607957724957770333312677175189568446692358275473363843166915258316269748 431693170290727982982829387441467046337282339530405203314202696348884891632079 922379067824677397962942218799289628026860750602141861340365150596872577175737 829476030384425370798767179734732832381486713619088019458015070669174347723674 036456063914045443532711459066012137605130879615367790316284821853428621580337 969027695613404395116157470584437445332039240890137885329747065241138588459098 412329988629995476497836287522157641614790355338809701650176595653095309416737 078371589879850697946548286951335550956093801810426104710524865676549039060732 246477185973740547169987460809817991450698820535308400901234354854028129220059 860444676287991074343697461414833428301960437301976724849326730737263679539978 469905106507468376981327904737043946397876426902919273273363710601020508669331 696271049432772474368859271563600353550582193508803151190059599365288928647801 559425184998133523229753896745201304911257849155267952839342660951141629144819 984491777990815112194693847070748374227731892552377576935692639135219309892616 271407849257374414293982647718648203757938084228413068501461159320247658348389 096465974691063409980276427628990312356879606751291160425104350620407398834658 147645391257920914278477697924685450018441369998061470958744031766421387290472 689704234307548437896600050410411055383326990628480469481737749279856196573865 363635241272755918697015620777080556809428710732729252560385614783120216399403 652790119142093313823079324606793003781532805631542640132456602632210837610002 860483179190546816551686584360187089981530405267820183693451069615523530438233 889013661922940837584837824541421515323840464796822955576727387258369999342090 696076265046136059987365552576195019739745940133275204556101466809959640396044 891038287056852407278714420912589351773523216631100123845838314406877169843248 796921734587761565781273806257268147350592243907478161097881284246080001368598 666611363143537948041352055774045057663377860130909806916798559719937963354823 466507262089476889680042014383480043092621609535635458353970642586269993632518 725618517757752350194122280123293115230284535698753652871621842051136733329727 545775959819510033345884168803607704590718493469563015573462955613244670903537 355180833667887396265005877732795727872062556438821839463232178287417399906055 140939556374216305114732272988701637503029961443740009346115059427112472264848 909920295989205282527094088889050641738633792062084683436034080123439548938483 251097271532181251656160620974414084196134445361714586145787600156296456708456 310189363957113714701177696731263127624822441685600699836479074360057589139760 594496235174084100885544186215169197345004404801214682325814480383531443727960 268134159436675556154231607527518486752937924161854831862527441782775788797136 374967770004566130471621897570620697493565174321243480175770805053544238799976 015750979912688543073433561773584162278385705940316862115416751856341824355618 673342332961938759111761705967609716992040800101419606024678472725636418894562 461375637787071117115754564981562216159054918144590976398762008742917201191955 209364918716940454403646888611199599224161686273457810004138769493402797597518 573849437291486110660461631720897157654359623992943192515043608613391984686438 545524315440733738738859002347432588668982929669694798676659042585491408008620 004363303428172919997000396522789515500390077305284480164912712960402061530206 446696249630468245213752508750581862625486038195463808247620445033520672539994 725634070927558028016179312242702150636223498201193828687510977550849151766421 524156375468606870087575018193447819099877358633884033418500655021586925968990 846484081794697204561822986240012204516399381912989372340505977656809586938458 242620830941231535257877522460032470042394234638479874230792814225011692062759 694749300578718240680323205217840277547067602311017321767557650675604260069285 820537488707574641585321903700016348321886632246642284597073560837798020145663 007084322453289105870254344077860776767437741591857746723590223396672758161411 197867110785848324268042604441253234553561115938740721096011276666861255240375 190459789995015774805340394053689569282065555826164576667630293108016732633944 484522206592730769546772768101476322084538784285145526160343037332823079928643 800676967272652483205455024005637452557717420635023484806089144124334403429688 162839118334203825658787044490242358978193004056002808433122293297210797067846 319553249692064674119257165083196836162080791326962170219907323517918395350751 691666384262586143777456044553526332489370623658225163978617074884594719739761 760455245225486311630702422052762447639825536837518012188178619516356068363905 947042370461868086371739618414311541865923941605327681935402253838025886928333 206861978131143410099281242150180974500354608338997689942254525573094640838640 354448623008418285247054912347573729106254822697634750048895211954763055264345 451969026145074198485903803243435723626773043803988479405810677800699169410083 074927700216410528883950490575644656952016647930656247609956393960508102794711 318163154332284411790407828087730527155622652853551392683760578115127745653528 946001719908070323408421616294788076480807276719829623196978977699606302775772 375268010084226769696688336833784946910653317174271536410274800161799063028645 792595380215006828213590985096307269966628550270057404029574826750286592575197 149278466741881736677569362059670835024520942955419814164637409622037393090586 537617434943742893849234675969376666917210030055405425684133604126262430952548 543836075544988742683701098600883651821404069613389004864098517801416264360611 576395191207261630100872636124846495269665963818132427728586401801406101367782 685800944889554745094942014860431766400469940170698620833920500174202092947685 865239799295020133724743198501607723224660470289508117879269462621543075804325 385792095614617183721447378800225649023571474691094693432382002720306125083330 682420186805140679851564801424286564576176757725763335627279960946079424691710 954863535521262795239832625211001342590211257803959018385000493700107230350749 299631327942970328090299460085598389692705773186904966288053000531702276099139 883274963641845707839567946569232358498711916386975608043721796541547776587347 237466210124268635598064510323178376675232138692926579016933499726034288134657 088548500646682071897930251167956467314160653011249414314478723197523441634606 863473785946428542855174973509904440416514738740016953256422340374135626623066 915054903984412192782825946558918157352342914772604799017673001841937611898450 127726884380268262571671942029528409597905353830945326035580303231845518666592 591887328991865323008611037229528159858576267893492956714486829522328021410709 591474881935911527221886497733774808881331477487560669686414453248475191220378 274032749812014709702065629655947934285621555038968862794926069935800812389037 623317687861384955966471099550426942490576600258989393008464307062496219430826 206259568021973578146706767682682200032574123063771675349519060266100529438523 183800789237585352792316768784319688069425139342698270526264869539314467971139 379506809481759739587249648739824472473252461601077547473007534067541264602287 853015169222483256150788773060095952690538699710579723608253682687498066021210 709126822991106489563212045130871390722985615266004671039949842998124254996765 725300883233801433632820232199917444278511394189240549187383515565066847852133 158990729314314137027528280432552058258576548539851568123516601392276270518068 382882814589837776599530054770132696953092850034105788725929376008701560903406 087730320559532429631047265717573583238916641707552599986823910350714586405980 455408535131563819561191698110483984543924756176849870052033999947148845020507 584717379269083373789489429068582826656412207956896629468403798645472342002944 722174115155399540250607623286733762974583703614062464573104594162594689858110 303081287729602872411832050415899257343376621079236061345587182533194407436373 256597082803811309171235733452159234295259481413392134152258398186286423536842 586111485093954956344194408404487996868346496788290120260386609864426278655776 025396517858981846649238386119993221495487342264846037639149193923338162721748 423007089947675958705337086008723415438474825232014702846244014955690412365320 525844474087212915191485698738424501996937081101966459075284108284633000530604 937412280361404682595668256376012241505817399898258073126277964417594633628119 060156590271523998738421181613027823503916829840960823374862937759575852398156 550590734799414935406338228576731024999656739551103090590302913407943415738898 343761068980689170197784560283529044886776249908421146874267021651049961144870 274002501477601733722142276631971761728795891963732006435127264001450530787015 976574993478825041161192873216789804709885683764925871753642177929932383550605 217474478166347952145560852428354972416194631772533284815009050302908131278307 594975514788748880098621184631050393196424708378975660927814762661199347889483 056207407033113631175697029065167287043289778642330693649163569661851256717546 375815028440815129354187857165761918173188665064447126292067331467978457082180 179063498358326627193397608748154797181446316154709896862133215654184692039706 221163346539274190799733116370688948600340800470134641461950904019159689417338 603163540018104794702470611324837804907317044638917518317968445569418994424070 547430717138684201964207851299255123263376502138100843497723614239104709180415 544548176441882492799958695158327790215757761526031931157341173434498398831423 438241841444860419502546136944402610186768040193357604535162399701107155272383 717148053329240416649505931217572957062904646160823267690470407797993251562826 203241436492859383459785189964861130024595394290368285187797160084735576300246 590256014322704656924851744734746144698580312613422782726501044253154088664848 643578742756247954249848934315027770627453026029375601109661285099785858048169 753308673392638945891915591408417809807611316703759376099521079907800446183579 912845613485141726962125135203754341862378422633386276790307447983095385333642 223546493167421406998902024931083025781216111457114300586456100967458679111857 649135795066723296308131272146016573988561900458943995619633127550447256705884 997858122031290335923356805774666394744262186138001993636266046314294993048796 399385404455280560902190817994299961204983680155078193124256800256673684096725 945576942374802416872423924535219962428787929212787198758512810218396330325369 256098908891204513199268330125882769476324442622242463690023743797992974598797 153911085466578945735439045481755505960524219673508162548807934601788493393306 588903325067067987636833376286025325969855080780171376524308428118937495916374 669280904256841384293566576924612141763169414306481835487488850830950218320511 996093620610658421886498726601706693738469067897893214480622899889715302225462 621694473377616418825086122159113374443225620640257472268346610810667063371228 613211338645028275960833988481662800587912166379580017979597494079051497667535 034034610449688207377149338910946853791814519933011180089466621457478690722180 805250550028178655447248420679239315055632982820565173996976448167321855123622 966576940736756590399696866603637868297184672202448723545302055660769086747288 539700424751539388958846640104795062998491851564489616553171330601044584519410 262613824336173512217441306299919004205295695992457291151622996753807229315702 379604749584264945165754033786558947009098228695161891157451221152997783378338 564334481281134351478332122506534946732722442454793688909739129779983271311235 815604861564110699637797137667239130527949563193113597759629528461580662205110 743201875767604059793264418241514730131437913023914386111301995588612776014124 180298348559033917214187810810952008192409913256276606921251350573800510427814 915732224576407306047929741046816658308627050683387819533116843103160390458927 906894644747567217658087614965522575538587699860703785486414260435243144322206 995364390496599012320156756566494995001100459726030001421023298253870225883708 219656839872551164737246313327971054273963006754109005317850814604429011863859 354789353942112538558108386250528186387435544843614216043137680061253505313420 333095789412678151708165270206437286210920238051892161170037291663026630136684 692301056712235398319173940789078684503211197476783877874978849013880238155640 961130545175645136397275091061562782470372221517307073551824270626914999396933 073126361320917097924999124040223969505149352009948881870491806759763713593748 078491498081776947051464584725733282012653093263419407085741182293479979974823 207662987031979176381455246057334127983188557863564073220094918014803282931183 708875093967351976682762763781192547559522076029807256199169534972461440615525 133664556223303690048592720059564269939409454869892697721898368519315379709947 464083822374324002200101911047241552681341865870449659543600656642665273490257 012500028053151893850049019276163203211515720493794259737863874290478058708967 749101406410186149534548918120256490330409123448351176569945174047897058068073 928810219707538747403469183985783967274301481987432644459373668402149692627510 109139612423655193270109542068093916282552978342696234639266350477832899055841 807292328883164490939879011005122090103057977746425008320765414703470454823061 111540611223589761674242424706678734282327148597436359024472344030597609999956 648119694443646576743101766276148090096793907710391338317433551466334570542710 871360678422354228928342595439404230101711807550242244802789838917895135171179 612095063452543206464210000260137034886550353515083107980459983648077078543939 283331444406803292903421078920442680511497469019388988399472255704485399809718 008676080687582316478833594467011612666162751332274736035612790450175413767390 947412281599193992183542021179804544284059964922813867026411599610921053780478 882895291127944265159970748529314075657025409010719087590117719354380667862922 514968647253468345015516934267793822936516178200155809657049604941689282680942 179735714688354015984880111542653459336676373013034349288953481377431758438986 157410351244601144976228764765797409240842805077593519842020305638288775980045 541546960388376087077703516636696425963072510585072901506010407265212356140246 585813988785774285388552316659546706917221877883337900025309878523570506360114 805640996899910667561739640621364351779243108942472619635163552420495590526794 189357555894407598836606803436224926830332206326336137143391422329070823869780 357618111055965244065591511912995493588175976454861684341253116420224100679116 798054946380737840441767212990931171018077235614443133347144643373907770950592 927652156674742273516281934328275969436643284638812462495228088287041573835273 771114813291678253158260783511532759864459833954869989441377286309404831790894 397842762911127998589106133102693459177205390142615833344159422795293705492118 542401485981852392601319305381542116068990880967487619398460303569331955818946 460500109511328372236803981397682421141734402903865628477688030132263639807437 810318834259235217037636546518030687918092865976719994196276475342794102226006 154680812888324988513563978468085629022611848345360394394220064280698327411303 087876763702617642426155705189961342329961092723100082880808714996588942089306 057154903989745296471220296130554898892297965823548166895912386082475606225139 667208612253176879562070805303821919287180706085381485728376579379563949815681 283816372376306027648666581278315631252802407277139720810347909711822577191230 769739351769966321486030038723207337711489948422882133001442146198603723605779 934200081984180061033233884918580229086116334168844556743880239289379469316434 098111014383239286625301534705677603709667454486629036111120578063916583707219 210327199438245056381337233014879173141470544165192952503278736951181751519998 025567212135533754975510310043647052989095620239590305283312493664457193164993 985535232136149532462267694622766207930599242830856070555011486936105318591829 267537429509847767171940927472304016642126382380134969399288969043860470644542 265123201068060830839054477784628783296298601452473735691660854829313256920832 068987234548974411795854173874938026353465874014414249554263762707544854136579 824961510769173394630706109348305106631761434034917067023730238886915037999558 403068852297963481694111308212728390073078102708474182669658687559376285222934 498996097114514463231631502260975411521513739085799039755845453018454143780027 405167892137651037165355046333801381931400021093483601782727978047153496383105 465440893175677851124892337957270413090436404239069636639205928232284065113060 076037888349344480110758832579943678065410787932505200476511534313158398462969 915321581346696190995335297460189141172748377979017730493824994541304859574646 393834586496956512782864203332860579713014033682885165766263665369983275426042 672643349055535064194000633499108430098940929495542543243018651285228003627332 942983036341804424106918834133100555049290816758780739607599669235800986803396 431952738197993096593862088006178847012462914615125781761488921377363629249231 359598832012623921436094134946490121706462061710742229203327331606221257516002 037190528404658003837888744283669897263959558978449295071005219264545452518844 522576560036265865395750875879863913438204768226342562507881641747699174961670 952260877959055263401324817813419785713150295438752196094924607682514096110160 555552036501493807136367156957641671505867705033139010957673017806535866098671 229188959461065514473035028474496745337065901130452748540074960322324561346121 753058155436336387872745234411951567902475824600871575053074242618708357203286 854876700718259770909342087496356560161977544837240128923281453632228073327591 629930523834238632732731256287624502094939051981822858477871554238627064585323 276679256795930937110645316756045298746945655269399231518733414092322928189808 143916592041581321611468295653861316776954941368057210893947973683461378004746 773159485819328154801710393784511486369149039463521281292442010874848303544545 776477946959618767128395584928680433276447762058058623441680332748515076728243 815132581360669771245913654745139528215961897571435279322597905625484042156721 636810465032267562926853916705210306712713575884626991537210333369211358617168 155634860791518540750392411715745004941631049661745614358474596911528588051953 436532634726193840040194629432851776750748703962161668350340554893621690496836 245275228769369175418751692502586849524795377793102305235435816041008785932207 190127536547426482206401359055072406070723456336736085749057816469655592794744 662228125025268467100344447227658448988925216328037403916728904784440479543237 233681375856208649540875612601730600891328116991261654630227752111377144162311 354144266799063935668837385568792551588122831241211585971826235899207233486262 690289668456707478281241879938140979425624995405168292732904451627507964935212 834154231336936195862219233752509196419958972581752951613623155748159458639182 445668089736472107754350084800764365819453567748795818654795478445270071963265 370741814713814705632964561866078592887731817009187163160664442260272108655839 066725263593507790680426058439817230655425568942165758586616791698233511906052 843124759004070907859700264046111079672172667432688090675680140219095603179772 744264845517316031613247386814838493611517834266537055004135507404946143366553 615245897126377532521264615336152730271371458681949398071854239896583152135638 013297817281265450889902583204967313467979560128312724493441096450739669751568 951996022495107828287288137316428426508158062548579282565866145553782080278456 570866702604352487883535959419095912947322288730235297355183578098492769158088 805032776684700679338396677300350998146251251998072090429211360965000901883492 587558523805148600287415795528910049506422489143476212015193915110826206606466 347216152165800353721866587262568198265253605157914999641620960993307270027355 881823658038538547658110155245284776615951234894362710851726040600064240827968 592794805457483797746340907459562695737464521271205297938948069449262669948123 064968664518366530224642946463008373012838101581917555824723814896620704870618 767794938360317141344194571523709285945520228114253449054350190116115188408641 927335740461308033074338491408365992070252012446720979234753160387529007964848 263876188996359338986184234498479567619739397497373437096429671779989144521576 376830459858166030075382717719121230411050199321231981932627433893967062302333 535365712445990835816061503910426591332191638956185837220559609052310911598024 773181337674506475965011756892366923657252043055757414498577866583769007806274 249611592191513440871328340080777786162110841449119534657319980838548471446006 302902564205688841764733330109347013855428815304142519726261291889341880986345 406782028581841750973527990898839215667229008921686167047081031054537978772645 211112097965969025607452351896374634475718370730063923732466433750820125125856 861619319589525529647228091956179834543252426928387407559042664097930421139531 931724877227517831968379999660946467089528016219934622569823975488915313225124 859402491698414462967173378646728367362830238344262100251670166353670423779373 841862134829255930591079488579927189104599215008657811947216638131077604427805 700576620199414727455207776614114035177340029195325566549560297143278033045626 646517232787506958120102567665454077308822262195138636810637991851386765597324 279575488147440261141386848085613654972080425583234643223102459755282986081365 558895948476478195507326621448496809325753465460046943203277035128773722737183 863024748805875050456871445967981755352675657301854528735385240976477155086272 040310252016503423733791918578222173944433870606651988106598359316842125457420 765946005265866226151329169872933648863019936284207412691147595957294641313390 422263207494595547264513395486762354189545464816501809621510337237497580379555 105210496149473398456389020091854080865152602049771139092054574303879858233890 509436415078920691609312390078399486258974221855565147378090456914229362045177 000653583806877491656369190361351340343984603412456454521318887125841037458694 125088109603217451621750105391576048999580770471554778811253392336726636081685 006323794268111939341030358313421457897682092408917386097183129115679961223939 958297407466070625743602307898142006631239988144642999716158929127793810813231 866035347440361256153065825997733576883528187469195145814375096644031526418749 391322121399108815904445356981080001223789068207293595289318860767782932908623 082145259105309395452817294892875947443042501323349825844707762083733175670132 260463397073669984543333036957265576344110696278375935386810033068918005363858 581481338582068056027806569262542072779844725705132384850986355545696668622599 506367581020797503316915586829504192946913305789689602894898164751920911933948 019273596659052883893224147370522740619379257662719475479606999825933580054819 805270733341162375268127478002048172636329623345991804095184342115380288107341 674415619801216628596727892428092160076721818251475566029283654044948146268005 666278989322458449345023578210466251350398801394028821541880778547594926092422 557823779137972695636049438572164309615468652905524075240302909921489043744476 821268341770414196045697185049446472115601251325409901680763779722633571564746 627718498329949409529473894393567288289586040066003475151619283957402446633592 291350630329221041454156419535113617270456569456715425752801431972279220435195 869216413343158450162035727648601554908415326637460716736211384367473817958139 087949978550562050629292864854383438423797990546922435195487142810975541256646 264061239949101184042723653421424829411916465901340861131405664647799240845123 574951081800840314204273677372717554420557048650656367965353640289856756345101 666774405228204350250914987423387155015162379647720655609318820612519380102191 752788547809046976081842706903149159303747673664464529277666230621851322649390 581160827987412137992965255435040149101413706947153377597636695309395800913163 441355510074037302299545758104099982069351623309048026129127955474111330627777 535732706358461968868267100425957712742195654002515060363859193161855146633487 183838675262511755312343502832515458110313636309573554144947605713111148015068 284096201520502901936269343920090851316583368008378895764527942285476977028567 014022149779402243129142332030804654173554555405513710663769409818853266487938 557314695301270486596847585152221713942793054318178381027414453517462875610141 139656224028724164975739959223077455700986887270328515146447053876519752813876 956040521870448021022096518479292967931817240596570552901352678602013221468978 389041739874988260423408878161167901033898294169343203169787237105618249239325 629224844777098945770217227937220985041328162894609359475943073075439784167285 584836101276450106072214140933925799995531318047189977231759687372438683776434 517960847952800828608058640935516082462480842600727905613354290490187175811758 175023944783347817837627426512544120924880525778786406268415927543951952535383 444182628379254043162498422048282677238209134603035608651920415141778946997768 037774832705839590944986962115963602350762779813379865271417851971152832078119 366796139729529118141349304647969326835440510083264224628092396102218222344165 830068310817177483209012268357758587984981480608257224787573145774611965900615 958899196074540419081809712023564785407399138654504385965321781938177625483907 682720993847271410077196673540453765937376142335321288151185499437531154096939 129808106438721489342841078330605269446477931207616962542987340525965770328766 795323797642215843098077034201396517686186860407205713128904148146449694065153 823452144146075930537285124751805600708266902983523708052886174347442472488234 695718166717675338953127887468644865743327644841472544498739038924745417795555 869812021477403106141582559221156571655510237148417955238929014761991252345791 823647302922081467039203621450140073510865561519018429744364743765666765142913 212083010795644541740418057293702727905154863368108803813869769143018041360820 543563697198239660416344225302817556051280213284843808153764997794953421599821 171394149563011548865441232316914951942846437359795145475565551152915849659245 469392348095185249898047591630469110664630377879176393558331169886576712488642 644045583901815479540053090936241062618027012806169009165783654535906347917613 326621273059037702726647288861742600798886956411807683383939813120893928911084 039484150979942761564352089117998932004318042055337220185700784881701458214911 836463541244158115361842460504675024147948853208754071734868830686675986144376 224093206329534883335654244376003801414223807902200970600007856748737371456842 396240981089686339115800814531217698729455306979291660045682231719652301918995 722156828410973289899578513190107553370985300970923963541756987037935108203546 668345566918095703229294973960187116605316495214865390631233320618878484125334 411614555067587084509309153607431951838933885186270730033824217764201807482321 059694058707654208716288881187880090002751216305237365988674208649220896220940 710127733066851225581903265892398107365887577127938484047548014595452602939148 953351576587471194930842130000239735917875193436291526908405669614387273261913 435263350001722960825511599700598529934039122100267318313055618842442211702262 295173584468318283104002289754562975257727244948959855998498791462986907861909 214026059577215858338788530159158815014515490436265235136673257127055182965317 811108960393762036042632717914265528372324819867708311143635427241833592614518 993550791758794484026589274027594922793294748438852927375037170429529020579508 514802449219166732150417136316139605298597020468428779011791040272398903017659 771978235215549060215374327236635361623367818958907223165888343552417567923634 393370037920710296794613287759829208572453305259494318032451670823774383686425 663626759115184844630667674363440589675959753852056892040802427026764688928627 812555387667712744304026536369140084560385286440679826332583502001870945310771 192709685702626335769245518987494160524254526746297907354804748954778069440876 686615921078919518883819891322201162203400871795564002979542717825079645154943 961358046186165804144222336874240393584061532493453871631643338863289837678598 040825636754431127281098566101660119377763348502696471568795428139780987298885 222414941858777770486105511429636731187642306463221359433870923198651952126720 282893254329005757488886242064378903884767298311790136559660945005717316408917 313768818755126641217401433528261289037682968830605714641450607936857994221838 110006652731587544763610212804922017234791595929792411973137604935598312590142 600717999288559340503795346763494000269421838852067472876294080790018196221402 448612825251153983450475102317260670581820846024999563006529097897765713258092 279548187400687392297267544499229089965430965757558187234407411399297118696804 583612889011273738295482600054211623310545806775409312396681765143057470037113 129916036296961957373775554149829818959104626857858985374843919153680228637833 754916143562938970748020467926475281116022172107098324439070448911195692106306 875115116915776761879960774909512246035219642011186310951309059863676301710287 110515172767509631254934072924228183222741784884074625585317928654436471059085 937267958004961715246967388224730883870500935824675809932111924996790063213430 098342410576336020019436650239065048614986581547438396713552115329783863671055 671347536446551434115097230530991222091679706609042666177587733207935299983275 955905233798922845851526404090862540012777050424760481859738127241439730459240 629789172110932512942348784744818612373316139083432340567098736053457653697812 760216798807949946161302328559627522302628936454641881984881541307462381245298 259965746505228576120511035176896597266004701498678298346248893753759710882127 448630868009935200886383741399431009552119819869300821091985871706852933177387 491008381354771636134026915475284639646240050774917403948973355318049586932994 016625532741311178396121099803866000917231122397731129773311854725234485770381 925232026982590786609805011490409326506421499368499200142136874086086997937639 107276141751640059387650388379142894290240639784250694642424219883008014500623 996385283510438920352033744214701444842813748753488960953002624273663798632227 638776785016314585654428757493649032542034320039515561490601432618209110885189 324735017817764094340436590067093915211426755884953321949865833802655866724898 763181587901719235540671190172336841380816075529577880935606679350834772701624 084986453533294136621629289205110120197477440850558810617157213724691084355795 715900931173384244081015750265500973183335436991695027802393101000105195407644 842068252540586730917625748327587671761417314541439877086844580066471732421198 601518603741699397854291376226329973266928695905351360373265208209977558615936 101067070120422454745829731269895134716024828454315414353962161860313351971857 138932443296916404489649743172923269206996791571480668368416125548303669906337 725567095647113255688695284924668515422750185091114047232247790540273957990445 426525077610358467168639893443904446430566401937052715119149622188745955262151 713943477575669017162219482608633117714188831182051485542399414024987321794616 244742568533825660180134448150956114021639374324389810526913697320553336711105 652991150217555025087470077658389156934075124286099837639564256143121286841924 824054372210119312188140077551647936012627126883590936532375167973617744491997 925121978250172207194403381023189224115357881208910173509647263385618634384467 709202756856406377952608296938736818234298644466716696604650378115650644642744 645552080601701717490131595766549786180448280351737817202023130097402850210079 980437579356012968980057846326212337736138819222462450023541353703527836596399 811799192086276821932861894673976597682180329312076380776931332154151842655869 276008272039368243188468350564507780539537026978512245497766470275903179738695 626302301519930152796817794089994531458048206357926155481722267137582798142512 912015417307880899116531830876423169576481060022673555872245834566733579555304 621819290825325244455996373141727858562357030943228296174735304756226810020489 181342514672786426444691919681745990082432070765663420635605420784098315284332 681081611280772368572770664232138093741295857878101060430112353997891289395617 911412431313911357809009732720901008093126320733509503014803940161151661761931 573684478222176913942249797124796563999819113034633209595492631623445040983887 052951549951480749721251178579021749385519644721314115109229677005273054520611 037570977546998181432190587708103365044558987338471676840645119044426656037528 481111495064303581588453669204931422147629455660995052046983532710985859774633 731444844338736667763158155719916139863872256703531559901799630698647532735605 180694452913396518158515916223152019805828041867051731527462861678020385642662 314488109690451813647849406506360359638759975230873019784731830623835090397331 510263308586885597103227422694301799383527888065817479240609100392512357775558 661521382765789593317445671793237350818058558463336027816410883623758210551853 341842806006177873601803465143609561490707042518776888981462553413803246959869 797243791722238768730909469546992553674884466828619057459843678017778814422436 478683238707876892105529974780893537967186498506236347377115074998749710637105 662117660683521370230543003567813684940049279830613938521868640855007105431487 224284687928114874045900796399236565209749626670855693394572622541467364476628 787521075900740502049810774253132575768613767053641376476540356969299941133548 514828395575483661722883557648083021873861720303245706748151945656689057536097 136784952022087158866983018295058155247613021472590912225473296975598688279646 117861850262406501702648800512435855139366982289875885525705752717705511329526 924641983297533447024667379847960262966938587349253031598069037642747395520829 836401148743001893856189061555111842682300880745090544185083665331695618200777 957797863003183028600184203907009397316239636049535545079102618584052480773905 777751617595537639216499254224376371329514373043616381681646470152369374187920 021255960444231155193054594912052871585471393784081220444528617570815681036714 447077459542450278317020614860709087795024824500423529940571712013305885184384 275623328354231987075669913994806373902302607054438171564186446394136848720128 418570935411332062485615429272046119793915300618652307623602316736546565747046 937750330239769327738868765693592547551570575702971417695587738772923269437730 013250996561014395305768442175937853891773122874858337306805756708173175966105 579513499800198425977349810240851608620486630668551705894507928398275274838303 277893027657724290459831634336875701176871658641622596037025361082904266007963 542418222469089548329928744729699685935756618032896951673356234749883299742799 152066144638702694353804714445895529988777600439259805876839439035367445362395 975444675539295127996855891229450333558267533105813988772560090477526393399211 930669215172842011641037015490953938292667977430500800856822619234803858816917 804671566695742183586197991616748531190442315456626844548377368700819972958187 392814864845415730381773471645276983701116145250668318222926356029848390716270 717620806590725367648794465770950739602198785585225190963512179298764550370749 452677801483121845779201192452055758633482318856615186278490882173576955897186 517238666970766411970985666414259876989456106458357275199969700001543948065224 082090813843869459296182894275861542132303405772455186706859731174252619250502 860118364271073231870268127607049385255875111949178350597120766943678239942801 380868643009668342206652969705698941453555833946028166319185254603950708766616 711162229442116362907782689059175196774827019017062741390128305807419133498291 179487660600350718586890878287005837837533934796733523115046335851073856884423 104475347626568699633876797988875420060541649344469462775248072879550252542194 886649082740382137833820469001475686743024231086331556259638828266580775528380 499747522106589459999038301526252032832164461735187736259893713141208602298336 828546538893082086438733624518134931257934965120929616347714192697354119693600 576832539074700735594183867987404471863188309576860595075189035576182783578561 204662695118992505565060950804607105498948051298760190276278043653753702160857 083123405904327082832187684174899246231954202193957428557562732881496879175184 978543659236508433801171314691035546968674967875528499264362714739281983659904 992496281705120161354826744792141334632546175513159614064188876120177406384814 632124004783969122614159380804607216719343459314344780537202268928015058931715 683465423010189201714862766030822001408453214886067667062097503594103219195389 749406005559748083886361569447416498096497923897519861205362271101938728690096 582367741880982220536560804279248005091282479373991807208912851472873285032082 196242248951830718909148991559517989143678493259219364084990412773704766251117 342711490564124457658922043436787290088234728845270801242549534795758280941255 672151730005857000929546812712656123755641603869078401882934696274608639403349 475788675913902914330510337200295209912432434714150282292169295416501487558456 629931990168911270584360789813095888921221936938395069925902528764329510235821 722994535007611005796684667643160864145762481720141819982151040471354395284310 530518201818240688085651269293571861544139088211392281967824073346995208347370 541777188392206098148543243404598816108638698679125009293835387419101581110370 321540746700542334130604844507233950453548750212230446703783393901091613895094 064429130982755919169569926035674111826257193687844201613381650829455152789004 553415831328836711470111533430808247566564484224588929627008055517139849744097 482891533359036803966364348875067010168459500995138873004069777534338349387261 509607663198242636867497821151862315353596981338867575696844392518193513959979 536718793784439352347558811817219158686858820006595146126690806302487798317413 368132664988970884696019930422185694805098473897010442597449979543452471491725 323612927746290367585532945233747620870496385636599945218103035268091745270117 871078654009548253190440728685724883775629152017114717214512335291855831392003 943650772439627583314593023196893687281160991436581921784974340383756914865957 749838730482206513216058569869589960278410180178853629575128265304885318618412 698675227178643198455684765929699901249824434133082924789920912234608078348276 628440359816683695720602613319638883663847541767605223194536765822444583391977 076100271132870191942283410311993514112911925169253080794286104517134435220286 245435706353190285286473189074784471335806258350139441162145737590116228358917 188147908048145362661312642366970111520959241705973762804533434918176721874552 360678130820168860132148537825515937005004163101929635861299825752645054610715 987181895532158120427264542527277649459141048289252973701207614980096718946177 462543538082348049164719364677146643112151930164730364249728710416072944696245 302424645715226814223239864796794394082757122124432831469653885246626847278436 376286410292402139988114934187831175796300644473170010198619421164001891739161 195496942868985044976634976133294523544322876455538795192209650662274186919495 660242234156101078489826322343566139750615189816757793367490793822220871576813 692380008285639617882759505800216813695148933915452144088706378269822786103898 811942187564164932006410175197850993796954131043682726532559933163463601811394 137070969804078802283809481489327194443293294806261047617381589803734490242657 689353178659248029917519080346880792436831867526138088539259689131456977322662 574097551027509024882869314772847323331079921352447007147647979226882955235113 552876966894668315567902907772294624617146493671694036518249321702804625801317 127912948774373292485663001286017607805940262391754888495524189694176045200406 009020785150419275498073684826036580042778871049436163961620831793176137350936 577112335798828657842964780412659850653986423960311724828139912555705597101000 046479429003596990556397584355655963339960780648377108654226989824661029255191 891725902082385141893719258359283427321215976791771801009196479507292968987049 207038647426630132157459313115090092349162143196656256694687150680763580425514 836673860177639443041514780452890358099765986454871015206832952172710439691100 839134945012904533060205710423126026081255870061841155570411979716592796724608 384829639453859616269112675687114043360445347063939325055443126795372526244067 412159841358009227243839934235041083920916195993637054383991497445489517078788 561257859511097597523477644385371698661638014286803523441214700256382663415290 991620290784038054792290984248605213573390695213969037657447889472611959316120 385084413636199142781445000778490398378766257377290683174075160076109212993738 093109948935282133414900369882631842876176921677520707191450105939511208736455 366030111787406524059506628771387222126828037879711027363783584407208770537799 395383609909846123343178755852401424633003798577546706830496094717440748404889 974454028529250341674375817782585332706446429855917816303367500605432661017734 949075576662310767832208687332949573915483009103912499981183844609146833577833 119487476398473096702693630417716214466036702415304229600421875955014280985774 045851256814484067314216685737294703966581389104333370389160070946354172329397 466203755096348835608813084349193614280196415285334575185923060906321577055860 222679681000721028751349982744335763113284275903182877225251144647489152555029 779883363033366178186081621525454489695876245115165182905491839369093473981140 430444453574524995817932937455289766439171075616679599958862485533353102571806 972199898575454218890145701972229197693872277724484201723160653200897523791410 240129526689898640551448782832190179866814979164582951857432429428206575830219 986173912808012146622931280054334502159182331430967276538461049399915810225340 773779682940787475388706327096239059516621229330618468310754759075904057888672 913713846406943135317823380063475928166176646532082674736800737158294494166106 900639133278958729734657415798550894082508237986383552099715892804743529295726 497688585975725340706197872965220826651434368133327322738852501281348818459531 334021748950593965470693317774219865488351327488059409856125107248790519935161 814651332927540885043379588343357110563724994568897193700926395430770070075292 039367275229061574427855525094099868278640649313622760602562248239827805366859 554312646566389303710535126002787967565233158618464521139023380130668136687675 488514131957749964341832325366200751064367783120073438133814912262573107773815 246310356819996765168358825794171882036891815264477585934616309057753439245547 527227355605050353045492373531259862424428116933115494198357618262341060243458 789892856506532437750355918114291016089581496811311987725418664250008061893358 399618718259181536465195634126798324137039847246547810760450135457799540567889 943171962330906833290197759932967146318433750597683226018819555095633667315480 198433531764063185120270451052304404961331171301568124335454520136141218790417 401894304727786720498409854269719356246185105871959385044581728218168209694942 081390104607805154983717291127192029851191646973092896338754955380755223680337 347398751071667272733587092682098511354913358207063175072878041426332905218780 171773748962946378721037506313319150375491004173520394976075888529215841968128 494879685053464528580269224950819251231821005801983147230202506600404740096239 647166335623054275511673551663562985732815301395013399849531089669725098857976 599678084476148869752230634914953840677766252495858923154249610221338760405787 208914493831393715572863492747252787278193785803078662864659562300253225860942 907062733053931395806213889655415710274212569006881984763140366298358837848003 149054581698720303230345898608515535209016580288691744249123882054610913981334 084366861036183519565041039161586797115377378667121034194770884669423688076188 268391739794705326641843702191938384508070381370758431310800838533933308896620 176836547653647450168553536762293441808124619629365752627265713167202847813419 091441496153977200893186941017798488470126426691802167139990001014307288461535 666896877473418406084628887714603924728082352307102384939678564884183650062477 050682016537270081746581685467098145310489172157481746551433212393318796094998 927160144514980973450749925853303828315365781914441856908446010004758780856235 225295658445552275022707516869513557878100433210515551780582275532633433704292 424962431164615469097251936399204345660595141325141495654996472136076345298549 172817994713521783603885146284277436413619381255202398544779126053019095559997 520744518483227237144636909807875674230211737038728400098548434113719710795437 520069991643521452403203715258591592530550964189055167452636355658549849598049 289947375194384729465971194518386523897846197228695985097280055022722838812118 803077222736323517759534392244844021870342109169052455819303045198849570798370 168330095338551739355115224097005345659987210493258268732138320102274119155208 959318833617580856507178110575085825356343990676005787849279968561757768004468 526511558241547277969224054812700463773439884146076259892512074854095202113755 735200866087917829201100335080814709548740307601268557207748614766717868124614 770297101216299086305453149290172718558941010745186416872809051815988575751083 795638494137470431507248593815252631738446288566872136763127261605016801155311 934711791310083695233237777127376559344600055443554839992743416859224838906472 218260031036940350881489481037065128408541995792864002109262629343493695252880 477808248852916028056849259946890703683135106906026125105564686875505309152291 859578895390880700484710560333513174745381967060199307999857394763640688899038 629139435173229343675629237721503594643541482121383032448622082996933062834766 163121931133259654240378859420333995815679071420857379921534153141202251122121 687368329740937760706798099194167613593201482861521887859713104264939420596750 949419511130066650260636692319281946042731380162997416972909697423989745917468 255839533424691259067390127215804660150073188129169786748793098936801367059398 176441421572717914594417373071053934785237025322714284643167436404686593081810 364343204672235866018965496684955181570291866321925427861516147047260393252678 684239966810502892023296146828168478471920499911916974590766639063090473906912 760423638490050623006805067129025168017407180299542515628482670581366140021128 656308681074260796533450123832240989504904463219037012400916223114876676968379 916492622068255790437575300911228225630981348960401407800150125780008018446493 681428642289520372575857338122243151788576426214559157645815334140491803254709 938203329014250704089281322625062262025310790918200152273307090788560692695333 396796226572105494445849536839440447026572198501103496845879757324966327055553 554254582543625044449422669021784457831133571666208802202139747710307183566273 557955621017184537154701035637924291025239064244679457338533866336973567272630 127122279117448093359450629877086072379447420459403108672416767807265264873251 793398185441729716838859772360520223629182281115866358103463700716994557053266 345656453510374347201987877912676091932272770037954992125920600944876827736407 772701494294273243003248140666623176942899236273523927582153964752391107226927 857327931798417775010262695388172530239459984859536255228439676161368640854192 093350694541347604831246390084935278064691652789151842180650043513136755344119 255023768204955623243599545357978871878725760589079200100433588137248021528048 833084369677974963111786396185747012065629157039915894485335550631410341337369 820155883183574905891141149865200670570657754717282412628351646068962458050296 184679620714666103415227957521446484360680263561147888922320617773983208305667 563329009031480190688152745324684140736654348892730238492357825294611347641600 354573634659725907422915697040752338678098238955954600790940475125146423596795 055823505945659939148966398711471382854778114860341679282790217206352945094999 522486252157435419935756269548896344428811319887766418484018137226958777211056 399715971777945274781190186940701857000869341878664886126937070030117480334238 113424130747353144098063121318849351028037735320509964179505651112545927437134 152495439453291300705260814109061547462476225391191352146358038060291210788527 780318798865343715115613441771507895070779890794803109352674350733462489466074 009564389092101640423313774132479529110828374838543325770712886553334818778757 714134921173419447439118400044477928193761269164251857330166768043972343391788 656461661615556651334211732657642540914807885260910467091780562393007778425038 748135412253339937335402568401836607377669158449224416587851922067815935163027 834319050561741312942171991860773539651743769072963825175621063414273163324432 381857523922043726917044462589982447571016973560582180628872307059925448977864 103937463365489680523597429564297118446067167649768270292651467195965888845406 846933440758137536183760400917922017774810384489288779573008684590697985531379 514082005809378745199130704010279436329671834189891472759148074337656491246495 721914110525103754879924401761560598981674409550643588438815365985129471933263 797164776790091386619767072052032705117128902973997194201426147954630431437142 037222231674445693723512114781782865154485139986155599141637511551793086768390 526453041667945016503799227506521040174310469610239925628080646858409019305398 425775974882506363406255614859269220776096467762123705820740338023147318307998 277153984461857741319127397412055944692909009030285578525396016213477442473155 540662141452128753403662920798127999995271171169982177313728791113456703181759 116889887766266952578080826811998541293818144412735516562069109238676123151086 526458110967770228131580980640576914855871755669036692625367182451320116388853 564779639684276560060358215520951511657185280486126499994230909590329357316349 084217412430957189321501633717031019735758898263701532243383026832104034816037 470425695729068727060596993662096997457626824825153574924966831654371914309286 738258077131086821777367945298521915094352402799955043175860993263632729586928 882257492644447982939826915695501515064310249247082604019103637491681720602439 518608204316675154955279323216532809677946301734546982195766216048271010284967 035740315949461408573478469119725573047552551233275255385698566071953321349718 989966041756190596447883838654384061893364186923403692089923659409575425415530 211943646700832493072362998526657678770039278923944952650723262186685031573220 533741809064378634841709319397887737755031101628525234369572222152165024162557 528778851614441766390522659980940201428214740247125902002309392308588288798547 568695819105573597221248343962030424544167968739441135090284132517155394288197 063443383055891907068863251664313151781704661613908635493894491349974160745871 256735623223045491933416735209167524290887957073209354240356333552227612177176 743384648113695555012599428160916758826404417682895186835650791063642622425199 915519297225697116133867948362553004299598308199389013920313654527233510641995 512172539940352706196963279913502394441836049284989671777455008312215864393909 188993789737401454233861757497843722466215634375792295428380092977909028326387 286842690352385550626842166519257231765328840666594787029123344258303431254021 404087352436831488234343338117134646342621923050122627607428497350000286741711 397967618162115811346726474206252040361262424594900997073217889861711891131624 342647229753889775026477553863172488117965952133681922473857157587881086096526 969370434046129164783692231139579146286252415990816876768291833768590568458165 521570575990787714761967098955404326448204408912787716554980741242350801050838 793961228804458612444338328417947354410065001041856754536089193669089570210519 103502557201539060683173013338209422088477483988846708409283748926022127485351 116240647746257021247346213731708192412785249914574704998543311179779228189462 015621091192846791711458474163996423822407490329544223516951338569526379395899 962217161442786845783867224349650889209950342754418721215345838272916914619242 247242515886931942171912354785166815258783688213789784233674516974177980110730 026963355389030849403990739637016876668546177944077063324514762080625877654424 993178440057548023279136108086839790835727511250405263116892203215613541634596 863340358288669929204085874179140581841073673568100273954218299107395077209928 154091330330933151939597337010071278516372021067929178495542834612373729050929 996623267401442327367013598991730182743236880905147727127034060296037587455822 352996208450633629385025357549801376693020447554569128994273457130738342331209 776335567837622424680824990205553116068479158628984973176836170555805252347171 404927447508248555022249732516439418093336250945631838991726059159284068908349 739803845500876238957025943207645229769337829672568792710037511160653848227392 160115165855706092608958298235859164279218725212063370614550681392744041635859 003190311279786136311465927094484420416572331338500176244386763188160418822599 971329608247019449645183742318442232954331326219386187498321385022384136658119 980853307155586340277500788240599528179082928556555825297084385400787505658046 425618039757297544986572228777372635868204692603366508122188252709672969678216 284292657021354505312981868146135691989126404451507290170960011215179300674770 123603704915760396014217545546740104187587400264089056656222976259544067389406 021610262635215798644162784010442333218616479975254692977901956409477431537513 521750899761924594265361467825911474991149216258624950605795947996489363279596 751169134737885756092895651084230221070524444232856895276153793356753672273664 473625956191800369846501845995158621610150774738853938996077101400403773221286 279777672466525169873837036497053912754773055797247049254946157154768625436048 406912345021575070063324389521684408128105201879470980383770067147749395017063 099585088451844110651878079206990080350944752428110236241987353093488022040265 845228710557851721656999051172808884437477215775134208084470384080002090957972 223260359587073125458318354649837650117226804437667129153883094421297514350285 777712569998014365959814438006607155985232494302666491592799764434480593249004 623424906764117054508260009509466719733124164776188813356651655731865019037559 835632061342518504167320701550419336116232544528005768691174840544725116477101 606305075335898819849813081405752114061204181921926267740344440047365266427630 082219726002225379792344333995820711754104387688150821738263322211803366751084 137525383249974863415607710478519995629151470382595581509111160401077785469995 524366252187946984409126384761762923731944709001709956010559549746656539068011 235084916100691856303349785415187437550683390676779278484558584375734897625421 652693883202438392912014696578583356671382150529645188246800920653385172882991 909096095255971072226802898914179708971576320494440370993814592983151526015801 664302934209604537505717453751835297337611105741301614880954184483156228459461 912401511512188986999097240455502552387836441234431237663955482259243575608031 023386346410961075390185070644422081046950414236387257045428463463508996653101 946049864494650244084552643611617775262094435098722389470168813886143289524380 730325108705758899548726335339360428012427299440475493430643360655927802468324 306251632233357147913070015824122486400495450037850381420994287672673404734715 912171245268030160764363165193825380734818070042842458848894498421829990313010 728098920910145224743733444554861336431898784347284336229296296397471399295316 241854725932829315754085733253166929988293616124045387034690922815728786230943 125633614609746753506547931694606686511011666637218540199001729393270602006342 258354090528527191643928845112765879776809504072362399199307409391314268427849 451057581266431335702976768015073968787025886462904587528810293331947230805492 555934138392861897901607132512242257697625427446804356079438314109151217246300 994702771911652186052476248378219922781638410310310484733374370206641811391097 760159368188180821037767244074325927129618494784606285180617738513559918894177 646935238453818469461670751379146246097958927798011872237225261607816805476607 235391624931066393829692915775858452887853873063074189603179869124182774834822 757473261125960149144388061894094869646051752771974717611406497096202464257424 841374717863900593179531022844613060145111048365813560506584381039170474608731 895863864662377319196946091552477031841025544018685274824171456927612375667770 389979453645699176755234652494961567380523804913228295851742597055861056049473 759100955445948052895339825552928943589940729203242166069477050823292723037993 936904768369172948847965511072464278442666993327778653197362222616711701142667 162915667039723591372283584410042992740877233420376486086125563543311526897187 631661172003290412681202954164622333383730234854745887235035580842205393372465 198688599133421684337202585085089726141671767293240189745481233507409327443561 547062006421025364523959415764824887781225490292752137534242188890521483628119 028409959520294899916277879206705615959373654420134070765585713435355629188460 351903436608231440096248851095011249881505340774611648452629128091590845500454 193845283692604319156178149374471876657761896422043187165947536454197387482389 506013688723903931273904458938532591055830694275530660197809760126317093635603 889753327908018660037485210748088036660278892198301604372932791612704333130841 650791186873504643245412111464523634125380098202364255971360765399989939750977 848849426819985618188780531440426723185189835349466084594121071840486415652676 817294797635231752363827985028255199079127242039645278548354633291362160590691 284184467114566209361441074504316027425781227756126479279534576839413805726012 434498892740312218356747171150437576146275306043866299134832558321693534480593 450132592792673204303803272507725743797031837900969676078668988352165857674001 477032924132171430019796329435021973534077841487542269076194493637882674983659 279530256691007005707742231692880932704000501228880108139416852265961043547536 157361288107150244843451580235605936838896202129323264094096273704501316474389 270085810179226615089418545860820397066524693500718492000994821948480761987907 310209778211262336390138542470506546767903606566316182589249725174291108691844 281334595344307015017351463447832332966621931354929066757619427704475984376480 400929591086754225500748525297530839620976586043185225404742528885840699944445 639868688638746405862855684078502344512842134052857375584579250447165028050635 432873512397908278424902647544502699417975654475888929418115385052088515831185 059265877457155979911413592316843113456330252862287757747810242614125303648638 503842078151802189893991263970327193355843467674262796976630555454322793814602 090277505453337580546311037909840152752070376349529498067884594865515787537932 279259978381251602665117142571011564422256496122844480055988834439036101734386 255250335867353627009760574202750843243432063927019705850192867152784237568609 822800818315626127133515760091747155543181544582986276176127581782644416828407 740858546946486498870209584787178905536643070587275544747532819468470961089269 315537558357274170827740404592380433112921845311555575209644366507370153815826 559902650739273973985281753227719443328679024720355732368147884449165852948954 804316460755384524173911950785342660395682171827731263095854419489606412648776 852891163456354246579299630166535194138257477106010388053635580133761992130251 912553681683773649454182967919601126883787164528489963167635767233948178668542 584710696718536340807687632411443580063728946369127624007363654068306037567427 783139771180305992404089930649182950596094140188695237046103313979775752929350 736588207076431037811800841342750065136507724158512656881825778101885207003696 500898535535840500037009788553984675150789500640148754716372145610141575217209 719918912263477999953283114441419048396859191362076232525000198137670623088767 453856461194964568153633804522842053386233754585713621915377802302137557746063 071627232595471354863239536521992331631743585192665259830753524454216007783315 760649312224725285825149496478295340652639741134777499479344626539844474832069 532451218454671628308721874228667072723308691380020121122583565850606118324636 797950337382090020703075690322819191617947159878959034969335269958755637001486 601581905221272255367514696295652684617136869917848616069734713604174706809464 522297727278334017046256027552790935290889806141847341335894139791744470942889 409843651499976520620875022284948880844502069677568904634366691086318282258832 576159072624791124915069060863254369092018486528494807084364939014172855755451 955203210746208618485928573458796114059693748041045213096898636654135233708908 960031100681920101482024099081141696848681264369698037695821283248891412272142 963944307787502594637624440939583860322410871953863274712329230164964739466068 335870784023494414320427454080670806641597937158459591993278700521861600280953 792548178426187479808704057148656405211123151717221894056653035786748969413612 146973906881737230718552046747435335992152254321305659762495018902388620175612 034083873496964370851671980128034824757979546788543338398743401635436530985019 057408697210080766309226039310218941342008436058687992701919529757206103626192 240465541474486712049403277418241977291981667654876620344455885302490783813188 297420851895793012115913482908035070657346269376734725338635096742481912098387 736419227451125930469505784575611853159689720292914784930672543653986533528015 046028984997511766690915481241736545427469040937766859721165815923000532592354 661747729300551628193119123385769730871347858225727588332755623441081690619872 626853851304859669599606562808532712468059964008306341135509857613337528457426 190988390931749786639663187235858130253768978688868956679730184555121363099163 073622680012258732289897386504320484709660265735563990617937683747945746518050 288935911097237752561107547172977999253904973121790142541382710760500571795975 773855425825477207974989148196693772593613772299417112758063343552292258782380 072887249998922604922698216558428452441612939151566528244648493347196721347552 161219551427281111006055310851164446008267727906542746595941689792124259466451 567032414952698882735127465944821309826968198992732890973637386856400659649124 423985527676751373118685273658966249598020230643218460886890941733689173532925 076632163926593185434343244306281562034655061030920706392153700162660602124765 124919903312244086642099989116132315787954343718617274399431266205403232386156 646128732571556084894650487989148901728759010333957315430619444587860796762150 705743369943239979595926350012495240352868302477985185799651882569118577151476 024053712568354243235754515623699822534301246307647657165128348777553280046583 666174835098322139379539984506301698861694567130948856055567434117123044385790 561873146439877082742203951022944181566236218906093976069911456335810346606866 197962605000162838279203459196761488191560906668993749247543750860965942452723 012736282956114461622319808936830603328388599694945980668614706900040784946131 261381546867488896710533964039376825683763431577914020538214695943691969949667 864850425923581736751336048459846530873527633829307077967375681388037675983236 370177001724333303194434781986772827862068168446896757140611766094092387991844 259321871299578855596536040111395452428990658174586668477565645826164075239693 248385749076769401513743002264659406118055429977801342642039090191534941569946 377023672273920261731559339493056309880344110778355427168415399647956294225257 162817676736207810051541077784927192698174283751439374419427452175750074566772 038304045211143303715870086315646865531504656105205439179242230172404847721569 854754814817207348773314559008111051854613808226619692703227642380297649747217 442134510634915661008134174947192154012738990923807481455575773965622353448642 739070589258950084942048475124698358578896512271007404009043959533872528372664 956549261321591292425374615930805311925745326765732473996915561554993031939918 691736809674397485120925615561680162350709891715211930192827559397977600826256 540453554193157067233014126907088629179772596089166534253859749863783081859598 786616446219279518950164566596970696688908835624321562903108802532951634541897 156911783400783202948974569027621189750841177654057673040712871567883317753621 986736903460375185429049930577297500743681186392175589439063873994749166870166 584391127565895511550855894545864695530513871696167328298772471319666596017034 645149359537694525782063651471298226383763347643956756653086652888971879038904 027061217681592259735102477469273368652101363161055998537194986006125691251219 233676074690172467620252733211667418776726645937374227289097540708270333161890 359354268035474946751304482810895009796148252472599130079109548440375501591911 850363581996051735169486541380246858654051080112107854171504781967312194489787 589974917466288258228268744648452440897378907576888818376751664969465138844275 319862284976955532564493374474965457185263841002991666327247087507999463048004 489492598072189017825883016005101859698682637318665041736316183422300453597048 264914604861525940790294849618061460267482714322753821094780634785478952125600 201524662495269862492732568570343074043604787970167720035854486256029515176118 628662836694106363699735578627448545783981889251233745226693023813651135330318 051530091444167572696218828728591438761211776449875447889404007113851522689034 219024604317458726833831220460876624490955100121433600802213934472471979781824 141846560103088143887047560339516009147474836182510932439711264200513058495881 944000968020583000424440769266651408814529622103429953856157449157609819497435 644451107697083290401753794031460236465433602189687308929934803743336109985629 925856140914369301235870004787661191481598982874568242101425763214364870597467 380475378065013747893770765752652812083060598142748568417843717329267037901834 333809434817269794060551860923545244374745760425072880067412046222215267074493 745059442239948252397220162109906498050085585098016458973658836545600379186564 886499615170293044382097519808731327109351831465805092208412247659202306904109 825106685731306586368898845122763341094360632377644066596591277621117206272942 980653578418850196818763374570106128905199237581496467234846363286219150859008 842588737114591797399861018101523356819140708747570428746239375415176708307817 768915525302544803167533891787561102209183659593201658818318922918735349821900 361337162551403988931856734026054131328764386220501439565932280485246235448029 122812672805511933906850290776319607049854122986277613712019345437181470096369 411413572416818477159695765517920017110930504219733981287727971907906981881856 203814999550790198029870970648199141644481773732434170353495365298924455916642 708698020927441721874066738472017893799299732219908062506229193760949424574567 437839480619883734778952881063277218360374469492193238637633244155232523741237 563132370631723476020767774175141921579246358101887804435775665752305616736879 828057398483379875412803078114542440324257480094633815949386520085703135347699 018801896743757253463120974139387064270206304639643431251432498962953882180615 489489644571359202791556890423632152590177792906545658857134576566537140812387 163836844499876779862551740294778264767380303335940014474019616148884249177609 534559914133735832275485709192233729972707551878599209412015560127048306760032 157035641044530300826609349173080196419345099162034668110948531567159244587180 868802408751645609743832263874849638160001042500555372425006214939709991258330 287699694398772619831353270348107740318763170978122612904538559526363271447494 978305743714505833200080146330922606101932663433643005434374798351155709863775 417056122783302286626749925082091596151673075649199974756253973764117012010246 147519690216390800198705986493009828448823370395679174577545321419760509011070 295608128639322728137983300571844340375898997179933895461717979913966991518944 645200801614699470051336560295889348997467921356238250878767144315277962768335 022487852341341270959774986848661531695771816465822447368005051508503202379753 896910998655717848468544550870333025253012442515795878416261481328622923874778 795458229596183842584267580935718508202625620833367582070220134635242833662274 681518068295842218444601418878641634321568051195606832139120495116931953100961 447406284777663420154739233856333131569285781935352647287049465308679508958556 425910615256755683194780787828635937653466488978506459643157154698913902883967 034431384401393597976683474997333378713905633790731251037557659605883463535526 197103246804270305608911583464023840789938367892010952259924319965056194607449 525262000771448122792792481615327598365531854924761526063000154511437962038288 501815327003434023452105493642318382464859121621368356784261542854653555527971 968537185814947215553879866834677782616821327088266009726686756562523486045204 010048549881763376576878558557846588385035918332348120675421485666999614493166 710074975838648120730016091774454449536925540710432356611358972918715037448307 312617751239518945848248599347896305001619445918144990509423076247214798777379 112643874967137570268995586617565098267128196905761036407919151250021439652791 677814230970936834883765665012311907854464569510002231333849149730606175500869 057272349703266511054287760990312872685979817929847196575560867307622794589657 764634444698530106242672104515610289080344519364118771562928332284014555206697 096767158529292783750002553091648423276813463728447490579349896730435153604729 779524357986725451215941008022620575340226747106362624789071759391172240343986 511030030329667461413695869365097792897912134386509875897637062241097128547892 298608538439420425329894935672366274608940726061535406861578756526780177730738 081646757564610698457089083168651501748631894230123200322872537299328050782722 124442482414486966897820957949297174734687965175969029769593783779015419618641 456954571726527692595769056332508052978006507491628969431096915066203615061976 409735619619770154914482714397562675780155370988803697647912696561796471669139 858492333286026229005246423158098428861472784112569176872886542635943416193058 272218961299909250617774249964610969559643962688224921967921415053530906204467 583896507441336655981098547533423081253114627095704720436104613113638620321027 084003175878427095363017469188833336062142093954159226637917763990349891572312 685329928309363170509303942168833999209509273869538281512140124752517798632516 291966088544808664458703381951590879317968192922466121752488056056267026156662 142746739251339187359277453412826950942606317379484730099271485862533560199283 853663522182643640870081924780512034168384327538267236300900161373729550506019 582333897349611672376087177235232048565539486705199282988416008810137428144422 997172372597182110253323178035292818267371093594818964427358964679718974205060 370475453041524614706989037719259010871015039200228066874201714921567715399942 765216692438784021025947744433589555766242273862967612374428014274871873644591 300662061885824406825174831927733265803035496716038581192281541319902864292935 953741765041146864043737225468462277329587120417094744100135044194800115485614 117330437908818731384797639994273126152604077220759669772840757729628678447053 027746803435685925317185899105297409483274291816975074681829245519571718489880 403249537521149016497017000680385865441280311712359114689311161699006183599631 628791846131017364769475510309549310804576133666879977014768327927170564608909 833390335032162001350565132240491030617263652931435516378123348321777905062516 186170901361211501584549922407244600260681292858035583261721257330653087355507 084942167922946865588546728785868750674396694157804737450944516054615538380663 015079515574922587278820954569260085722612269905393518335298963399633702170209 569872007865823598527922882916198898633865720977902576725781764681687309230182 826161601807337497300419650334146696050627153405764467619401165029530913210616 869446600314059952835957915323759072083116650500296580931022306573295917763699 608757268348161422945211546130495577398239154141984710130204111799402824686845 468393441827426952792827060778799971313376360301583883538373859853951394728762 299933625145833677571111941252327054508764880777567453238789560080263001755312 783838414565945728133657229138816545064376042417949808859439472400636921521878 593204083711675222439854623962599626300438944443295586958763087237004067326439 145795404557965582569024420203530838678990594401567324556394000483695122194960 428200384148524200533185217738966692792941780128719294875871473772757208360637 263475741869610004477984246497236931526233650906884916359304159076878091715587 252246750070674689449115656254728867357337580568787582799035387416999210921288 375524655909046365006770242174526398309293141204159217353918957879585816566072 039125354252411611239353577203315079245385437451790529347385175470122942972369 104888159807855803095981480651125191955581075644195202240249659955031829028669 335217213232832958039243104581828646310893618677830146555970018937595404685751 743372185952361048334179932221257558980724482516387393180630215641441216171474 951437842850547656325927620766914933803404624760813808828829608206272707200490 344255181807481694600010748211973867481850427730916263390735431355640408785513 663778406371276839308681349386006764148849242838057374064203357913930619779866 318371119002736256943407940411359634152708932230729868683278659346370508626186 249696188205572072303562599493685919353539501413086375221222186130540150483350 348844768858625848111086527708256665371844910373547802840378600029078376142622 366024976114554423536404979028721940368204405829138641863434642901452827666169 771318873542157842228902853383073299765886433726766281274886493700153878344894 977362323494956858058796851229967176915933976997445611491526863147169071598819 098819389066138874077493323392602411815084686924741027043408905819604958018433 039563862720019328231307805427194265550789688425562681760307912685814920191750 875754693999378546748108769283795501884129005860170503087485215693213136631679 733234156228476904587464102492455619295668753242645641935334666901073649766089 311128830273921621099075418677056560254146135509090347744911902381808074275497 037842083603047560053002319558134243342923804854388565872523386181599963334707 738941971110078084530807938895546956799914638516740310703701494262716075712679 792766421773193411577520629575439814069129088546888319708446791062292677914967 903772892724191403612024969905851992746710089015487733437129316089252920152115 537757881477590258580253258733006998522531376029579920675522616435661550436292 883052431752420701232495037543727266178976307508960213993623514309919634062608 182848470390770654330900153055179527276604035438928665361284939884165233119791 782132009783149701151470840646918756747838270671543998997180830878014855460732 090660352059136179688811595617790043361083533380499539133606977492483233567580 623237463685437727377650201345997505246522647260678185331588348900392771681705 904536890304429293527358888522929306745426117582841243968788428270137474519439 861714992262682373660366370606618802509887961083484236881538730550758960480795 728513115794899323856518249775342017379716077751647727673127882674554830008872 080226022951997831771423426567355030198587374538726743214185356623271655462499 574035214689079342522329958466886356778597023538200548734349828355192190574694 191358729683349137164067588193859040010933854744641712022527668889983919382970 922738527409684962855540539336096495416215872246757057020793283165698771177234 890820345683653261413022015764077953006123360480660987233528721683212271436901 197888786825619591756354318113270487636848458986654410295396686252460539370234 505295135078076601626240837157114818075190845216831600761596744133778601423495 801237331557172890715813087541426434908270348350973734694862311741273860502298 205266385333733072614451848183488170678067813396943328371900474696518100983947 445920427079643579878865665429992744228874766487702596756037765191069555320873 401510669891277878838864928834361499448432131245454133826701000622371615000529 266966580665718719093552402709728890146724660934627423366647917238406175417308 385434673405115973715919385690901307032682746615337391975971827713812960131877 512695773497670241725286059417400048828147991997882637208251805788745433016474 335964713620112512127356365489533312647623320062180247475622780165689143552452 572569780989752571771074023172840835275608821043750324970674631803470520115135 465289602163952789706291934059583983257244758834378199625324548185246804109515 851012361097081117126415301221598597833671102197926257544950495781583204374566 248568477834548894332459923334299149917572300587571363679697002205470879728469 599250455617313231760575824355972523273187529997167787108965983984283008070441 897201305773722081274271718375054279213114150597888640957194297764371994430601 404682176991113457858269600316765135780042714913003208047554226504566141379407 221712686644489237256517968597137795073864073084571772552696505531187416617058 109131500169837579535478214928700901973551797849617823489889881484671815538121 109028950562951101609786675711730701880971529793544729674743010356532742935467 920190993414084451815716699054400785661488541787386887022593607275623500404022 063289252499458924769018845455111937541057379142796705050310973033023864484654 706139128019305650613487974520260052040659306072727308236338345872475857347203 817269484171043725040918731490351671671446341761591373055824397426478434208633 690304515703772909179934952391233166163398026960112195048154572390154790784602 466641427945828193803006578484980459934256464940657034240307696643163951157382 840008500173881409259337854437357029597432891503614848642797773632918557682880 161841513626550794648670092810812560319339207055577521610753205496265128963140 852701435545735643461822666515041688740540582780512326356916839902000888725163 007564227675517846531226156759956438025302861193030106783496730498107245525414 016652608115446104727948031710196177250934652329378441849189451261416285124915 845622230786443772062107492725111937694383236427531646672708827742253234031345 215986519591821029846879234978882133610172745746823782295660798726876918843784 253610819136677301752374008048006646040202145198043443438820903745389624821231 333238051169237132442398239178676098499456531208349847524636799155439778162586 954857252626371426811988728902934865722846265618045549130307909564911664081314 437431138739564083045423719529925431127241258558756906714816938602187028152678 389031204251600268088754986171720827424262814241064432660228571781240322973023 146302923313419604176059478508194337829574506848028637387673153695309539288300 579219826876405188760925777523794373062572428300968315700259092705885214291248 868715825110005834687324770626114501091618002015090621084668998087834425074076 896132062200538489241042224515178459603788747151657765333005994171562233753203 913978317671212518458603487330094693841123045488836228261516588116467191881092 673766846740411705761243177569563894251125635158148892096721883430882766232069 279273412352166160799554003298757172749611892981207705001491037100648069630300 027947010651377943674159038159385861234629060139946155510981529035918967280445 748334786251229407888196400743257623496298400578624219529552967407051763645821 853755684278498718814331057570129440565221587120878948289073432799308990542275 118778461095048157084091154718248168245423516585591167750303392620104448546505 619848872644208468919886740498331749061650601809675816336456958729644662568332 661953700041688191660180410662693845032072114065243537427874156596303339635560 317553607915834422426038245245892924562162572862479943189452267210184150937941 069331646396466618316061009719315078717445578908948997737848426436980358915633 114116438062093135794192079171244499544859637229411068336332839309002725358923 425432278453357937381872700973040484783269907710312970216809305683921009695892 959644978833783695369300025987509980134527585073220579306597736584190533342612 086015203568755626004586113120583850799126980474938725282632809673441897595497 398214226535508226458265232286009380099082463471454801631070158627697365729492 332877732449958809012293380843828498419125117501793003888680382848719164974069 895594530623180518717422911803617532717799082995828822197332980916157594666665 846419063581225548367320201309375701227509594151999475620444384581161125354131 846575500132295494888759581542168767237481370990818042329183197212661108486907 704652822139069506064011863591703749558493618759569264809466938474101568912493 031718452318298306815541960593547291800770727944618800734152780462611887294648 403707773594442156149097015160051226888433661761772891948837593589213795181710 339888583167267208189561270634561109084238063283995886915539579316537278594132 908095814328495242373698672436861126371735419956789564643237469388829114858835 973261459750946176398541361346558073332358509253720722633342924394529126373152 044586736554669225396855005985110681955144856404818133866902669025514460642087 957824020599636630064739543048257871539721141448608608536545612517264017149222 765922147333402362015804143807675106383981311819101419805313744960192587990833 634530480101984574564015250124690984662956912268475335578979629696399494276269 074343115596666632845316379777429486222378686570161039452893492174339402839083 406198972195027103378658203546272128355791498555608166325703764367167096384587 592987867077642267425854299178912341293392283614775583142773392466229440502373 472296775289479034598913383625403445602495821039789834471219628058208956464319 779974309111492415217928300377536934219982644683308081298430537805735260233285 582044934888389519337233136083563136729052935476308512557289482141365217784033 169763316618317375876851173606432254392375742202449056421045644308461704538456 577490551673196195087012634719383246414823105583667492087647016810273493923620 312016719702663250984317839323176942043466140701369975612263677893941248333155 532666101674128901018664855307292693288049227547986601081325417758334780181419 091710164087165427850425758382360558177247159172060014968808386154377683222602 753127032311634643252046487708317200770773453599982580522085209487710645130157 464533912091988597232000609309598128049981933281941875320475483897607572252732 272208413427987343084755465192407498828667164337814127913935452529003892713685 850993807497326346829923091404740921628746658184185819577914666179899531167928 446212043840401344587086125932078557067905649622883563960910748368417123291457 218265436498770708818833891111028852129101168110146058704743035865335340422188 854371112466953280168648059581068535828049094887065306755305122093415026481174 017097938667205342407623513038033710117602389914907900482853220933553407451109 384638966995781815819412725204018023646609749671231036705839513774990018813215 362443332001774694069698885838595946367870116716688387040298109455924644377523 525192398621953769432602220115747879097868145129853901579811316256500709743155 767188650372388903903917218126096820541576789499416302889001979109232219760217 657804277928675731633999073268932694710752441828742645345626378791258618414061 034208022584751442616341437078036783611052137001236399843278570981807737470461 253424462594603139943129069792635972771189473058192796122197206775235878012418 450324737395330572176542069393554542547144637201085903804674725279182373929337 180532586022701606230782558669155717488934363439603932306394691301273744687862 881505167486122637185255868322292030823077487940802784234931000081726403783415 462657885375306649295709713802394325510671025720225319049630574460986552505733 285867858539481205932784220385780717941224767537327356202087692264223091618749 755256845650542517173429161262966303480449683626673117107847368251777609228687 320057554510686220200473481293751033674672160373173901707516124867079705247585 291483510323450718786366079519323242872478854113214163686876135307611026588850 860873051376525266096477356225659488372365623053313909511977373193616734775841 758929990733417216370072689047302143567768973340745221674517313933478552347603 208323843068131026705689589949538065233495667587997091204763323267757377140609 309696076179567020367013385840932084387838124464206041957026960221739985388064 541363082662798733950021365132640953037972537974212530215822859941093253496422 317515750264538133809254553050271833595541158360582533211787638153439569569048 004642000834237394054400471337596703730297092771141602328773468593814794068709 522620599230398042460825814561607463473870305031060735136835695309507886928566 420992242524963596402338688531087146590924746504876341054187930260315625767440 946788856305716046252793841312909439165804951652559776971132295560094159090687 400392390657641435109023651193596857771541764277286567603166895965301084930869 101144583672799701369566784075492447971821700492375229137292106055412645784025 978898028370005633909980693511635141171604615852812266312612905558754189762787 015612672822962450079721560594312692815737773420170950349176894919744081989262 000615456358583369522192837327975003608955707231940138080004243486286346092975 385354873777206483286667783908681269157820327272460826675796750146590556382756 513157561451822843510998100391561425978038939473221104600929331399080180624555 758023337021386577757875602694244993550193302123027801346320738274659738490824 013057226528675767382321664351304248508806851667092958415212778846701293171220 463170269547659164731569077215364976499473633228798434254085752495534329069915 559729004835854681472601176942540093442441366637195722240379595734701413327296 372331955013333065954067446503850617141147268545356932996914860686700090911420 814791238946366210753924240350054903627276722721989866228381195097300379530475 858889084688084786608051275545594579801367227546174907170710037428390214516405 238406477050944396921730838852137017561173991260251482387461522718751022137803 065936295156286829345421356500022176863764308327736339721929336995211395824022 596732404250641584578086766551698941280239796110410059032994582115885068362888 196404276806233231822487745762226473126525965361482257975982677962338501388849 075942211124841418213578050053251595567999800822532721026996153350915012999904 909501099097578099556506339653874656492368240814463775302500913769375679386602 821896181274273814103325681537370477582330456982640357957338931431042171487906 981392873411942862852024061519050044772923704341611778529483890675977927730536 209811467287864686303855446685209038719869182177578173527732769363101729649557 825276749910449833106281064940742382863955999815716172213660724799432983215068 512032561342258675278190146709051035077899123482882101540182658773311083154582 128420486139869465209867349554261670394027329885189518823631748978582906224107 073385250885571918269067878844975944693688061400072157639140126750994599746110 145237881807848472086421402544168890576183284603899916340617086516124762975477 842977489442542569435626607818323250319489529105633900828602154012761846905792 931080239416695656589341846192690232750025316746998222771481846869900329272487 956292370728677136903436582349009582644524753299736208381226893196229278219394 484613160110684281255484668107288468610535603937103401964258449133862157672945 368211914002282603393032074516156012156167208998893516943921221506272967291133 937452433238942258771943218408308688379488424691462104604499861646354345498223 567069725337855933656575566780418611698468503570493229876112500587602456688334 436693487603392285338023385575071174143207227037024863344391981268435120614552 010337573341468694808688111312047818085042190666576794640695678859877006935853 134982031782233012766165217203010071809086732218386921542909967372904765178398 773886505625403208700516368892953775277734814375359917763905696500363991796729 229755615786559593577174284723237800680649303334098795209478904446381395547514 025854769094537638740584009291925114905013444703947051725851643126698230001796 683906018526221875819693855264897195570565328620248449294121783509613042299155 251701694554898032718525989639922149494570756329285149074428690325825481053417 380729963764952388037450675996008479488454624489613519611842781906090077175793 197721675714866982976641769465281134318342635774380864949328087090709708587715 862167562381805593613275090405083103561417969607745109152158413568056081721231 055500519375592279161003487882250210514975732735156620556909523850650129864546 015085846742187099970787934100363043731750387946920407440651287780012429600869 261789584608705690697127919165088861557584016515717739290098470504277147754176 916095550803714189107472141202067896940949862866629006500393675395660656333714 031878427391637475919647234371567435348611979735751573165199280285943678506791 506402166329880276378218423977321758625839583923605464485926977436479444376455 744187597473782389228616494208823243466197528175659256085912589248809852914043 573080499115687568423258991438132602575462456387634278408202651821886624726536 319620036426206341419634812824145182440612696772411234860308155601639645679782 766046519308032654084549835878225717301107498883250402440660437468342995431013 541465043401238956941326358579412534521812092093796538252102589050134849908546 773233254109008912953729286205176341310914837793850010473406336167984216557968 853672761627753329134392695277317671619002665266626858474345220833712434744900 591112347673880866134181720152309002257479562274552806291720012155480952334975 840725394438971817941517939510536404305445906119030047145369439970728395564915 051046257304796122914441892562769466588026693261973400320795813878920132788154 878734112277838341907110866734695779064775211603118004281267476997292173189157 400548527949760642765262535632339488220937556115000147150210442931763912180762 005427118585638747432881154865771600444675232470308242753067922170872561518828 594685747469893639003607882977317207191042709717365203410800709306206858678832 192188804206524097819421192913709830591389360826249045365429310856704529375117 679172856273223063162524843548211783313150907688557183584105673846190922526875 987737566943998553685470629945744088881477974169923373508770858289640085825816 799002155477795151527711614948313994639143108480311192238243895948977476757202 795759244993589741140982898422913184958548298832404078555880359313527694997648 134466239148009494389290733859643396713383417404081352348893101327884008802622 406924978817380866570510596203005947327780937209035535883154310396850054099199 581979467641256749107193458009125759561705929602104184335288546820548176287600 887383801711445544338906463525147859933804227347079408630534837731593662375921 829232900879687855176339124000767051867184556098455401555436275552893137542807 748630093207681647447015220738766194008728755328151719243419373414969376617504 101289626491034826369360293983911267719554393054812852156889866407338649865257 902256626256917036389424479410403796992824025196057845166470798012690608708331 740239596590399329066693579626727906759536736802957348366531770242984578202710 444662252653566226702981440820896315784281063004313165629102935645700198537835 164974826045255184777766104236724064474100076639287294296796501253068209312033 956215139917848814365144234043843225509718041729143653200911659218224378020690 237514053278482257072323043581603176669898661077572019796408448381009727504682 907781872653538075492667487769321074677837964823118033289825824525298826457362 869185070067627900840592284463802141059539722320671961413100000305583664552803 858093272022539499718512263289892597621944669775571153853152790030783520062355 833468833574069463474458643718345424029122462761617063897655939346330574197948 147355199580565743433959443424403683853493965596552653745806748950979440384101 746477215332634372639489813735684334406665726618843965035363253944219504479593 493783171689182737880379768776336983865208043836775811571376537918629187987083 334033610787459334567440937934056816563188684251727050380914161965376154686432 800953494038297464656886096261916087284026705860148599541028024976339503933593 236443068657464487616017901616707966039297973537463764830239302479884165918466 399167964007424699200318849876108052086960841408054135792639414297850961699645 660471791128468509033490396161302313863320108389236693320359356989458993078015 287588599707429596910467158899099714780217172375566986276207460562068289449110 855809261752929935440782706817265146296605428503129634775404113474727417313284 120017014014737979210818369003870600171658579136705117618783937500292228888449 965805338557365420109071103833420901380982678249085358214145190807813659988694 380151334516832951333896684850008256673484189579471199098314604241763134977726 142907173494328312914842571595462302735522895606405751962161940525504207743416 206004011452441652131765322144659571715968464087448640980692334785334708871417 939724201198778761150696898848305404079868516561856441304929885867735877701626 277132196257197383094359782655375670190528625153445831375411557878386938969675 451891188458052249040467174971065871359958817518405581070666400924447695685559 895284083657655679455026592524686596072205058839082252323798707654594993118680 012128281205693278630646436808371968892430889272921315096645506325693858990637 849216409713833077232141129561987747826079212637855777674987404697646309365032 035899297070004454330023818251108833993737256476826926557767837891060712817019 860676916527737360080669742450738101132899598142883500058907051300132741416466 727395405569127360850267832550705533454691286652091723431400624247371258149984 924394010545182472702534811118884390931085974545440812524261762314248551197351 857577790004342104445444398765535634621867209300402860212777214297751821755864 232117934054582834594762386825971201286695933116308570956046290351192664265091 696697520119042565796917418156707029997179027437349111022627084878729187592517 462068046732711311337421395779215514411591271613473225218797454494680753167051 308161945581593957419961828788586097442641584984520484940214949391491339344077 676485864277970963799429637150913922265283796554058614988149810811558169443690 554396178188563475585266964581528476890292431079091223334455536256579525315433 526757158330406903358015469188902838217721177695839972184932329606555552741575 786535997566946226578158901887643616094948109482518480875316880431113649096715 996856429563673888024392389464123376477419825988306141061481106654534706098475 559659141804206133559815278218083462565130952523565796631617134237153426602580 554255654214942196135939925455873560631372213100687539151797715793038561618521 599735069009509263345983295034413506859838622364965901939413236789596425455589 087277844337910515560144620906212983025164776965169422719121446123799137038822 565270618040582779694250140547328375666087444675181276326241714767222799698349 156727110757674298245849738414662338756662391376316637663904045804308929878928 308855661987925234350854241457856010080041857332707695333002070979459292175040 837975138596771580486380256487788187906634395053425754617683530289253674748858 736057377080778825463637691846297684795654628872425261930931721719812168415840 637750182117473491633415704499616435440576216487381684550575296106001787384242 771118658451204485701129121909635181216041054314717812651409616713192769111227 074683484355146415320016743757057687455590457256293476692248863035602172786264 684443895572336164952035271775743548839360844976791538953970572835330601646184 284958943127610384934241558907668988987294878222100055991361032289216138284406 080991772933237417835738765500413620408567279330789225009923860667653501170979 427697668952092501213130352967837636477055424473812202203814219326922437178296 396213544779215654101439624404154033155822250463363886615254223435959886200775 455625350841586623482768351441333697527754238318410633202441858874259698562255 037364387124719784806041857736146748541681952190179721916635040977212142715483 127038074378730344386131501470383162704047744184352696773411315791575152029511 751902132845552439314233950173969553333464376868611086311443874796763759257742 393971072322240046386090999137229321643621673958050671569617193954055799320577 581500421869345056195484756596811568150022700671422239382036790357963475800959 114827889043472880419585381936095218717213193095125450605484065863879709674029 012495631937778020092763300017333001686628123244940410189011360725918612232071 815953318449829530721491563766052842421144449494000305381672385368916732540911 461943619968759516549606071194554889985884926599490481253934201354601535284661 419889881181848679770263171558266521898823991692015678406426143803563938997484 077325657028722821526866571050425229877420081895106257864013278829668703616380 542803908515688560802729592111437343562649494365936787956460498185339965508228 292489064657525421217908282079990213555433662318785145150721622551078395616666 989313881540524700544668006584592226003554135384282055861252249650025565300530 660473443627569123909273410066196230740476285690022852540580067514020334245964 841917882513250361851874174986396111790584958045074445057267547444723126068038 580767526370118687643539366348160427013207025048934849145496104861965919377563 110455293228364719988492156139059057484570255380167092179296348267691289604746 443241167343096881812131352758422636294576130720509303781202033939732659953987 284429584787537825416997247451614788217374842518541488587680256346503230866736 402389593266395161209811975800271082852786798731794633537035511455233253019218 649462360214416581610870136363193048626088199750128273079183903717737033304700 965528077492702760068844311797155003082385033491330190659624792288376834738136 618915634725824836171824140012121402818630517388295124295666154776800676695411 904347958834021657897761771675193778684282972805676368013035888130761140740139 376273505517380958241072539321332545693485539670374703488893170627533319165361 748228535071265526310395404024280801960294474810361089890262428890798020821771 655129833831198017064196337092941910862153845373355840906880697287367852401862 465325268625014612959771225769899374385013278630663356938811934670546951596225 594817652519337008142436815472507196473164476882789295735275298073562954521010 193619554881512106752006165386817823016529503718845710625573071164967647501565 367089722595512035855022232357023815875002531369735158097087760787342982053714 942457577071490197036201952471378706241150028073474259186888385251545954687037 866768704570758543622633960569220506957010786753673153835097008434585291003213 500851070253903493320336429788226138933533438561215216285567274702842373459789 236207836927045190383020816762310136677658119396409079611891909604634784793436 912232110146439366337929208513810680805448209153494496832714096023796152633246 880334673128564338991674702097157810314812358518426401674477740579609828502766 168641774386646357675259650734689104669909113311147544689788574300517328871243 846872576894755764326702809574543234344691073103968299350775561678801151221705 570494434574003526358713928304833899045734367423879604928812664624714992216011 216559944315763759881839253971589308683640135671468752251446374002891995038905 411205662373813573157700075255856718103517440214482401234349476326530135919650 743500651998743781161949839023683693491861969912080215121775269997892180014670 550120839608587588920069728891849468313735919843697217494829609706025680169516 750756933432865385503568449739986051303078720583262547105453937690388709524733 771412569195375899498889420596298256603234590959584633317040795441874832388950 294581488084506793482757249372965983776732675680067312546525105055511383600410 535880589416878155372102229624294441131399354869102092840135380181816263797977 192120777881932129105299026814760539884862350741656890451034136390138377059845 658979292712694541756373168683334890936302754735483095136565799643766140165450 451528385958032386589776112731356372852753807389183367002533848081331313892667 605556454697702150740812579508461219308091072142342211369651423980630583585357 060331899758600087205657409116865843723570736192418272351376184369942448258075 551520938302412035576340401635740821684699505339300795523030517006092246558316 519372232299723299949888961981145222701339402067153161729941122761657711198391 739769336521274331624086488001651438085407244285853265202450050576395291692255 382639920295061356045121391355391314382470438172406999664933131336104383861198 420820247312717435144775962752717233383041216425298697172846233669589600754837 368624898840978748304494691990443217045160169137003288988257693666785874496015 148777563041504301844150345513609916141814947417986797567036050635557059729296 342723703215078920187867882332691806613232560540401297316381376058165099589501 324743338575260507352455234311725062090340077442780260181598477051312556296189 794717204033274126924874032445742676642250391482128924795169119159291319107457 266063059044533874713740678734952511621356147468084798507355075870535428012377 636380008790174042893609266730534337502258601636919795888983685665402629836044 880031440688927153735955268976976841456377636122777286480268302063117755896673 105859239837271460026586073177157852272833345803392299142576014664028090241044 191975809198358800936297192038329601576473954892508557990316959411312794195077 928491822091838962980790604607306424197382336112998664095646565318217850883245 703940835971521891388439997555945494227609844207523138175054069308278521749709 035391737975657731731912987238583996172689474445902624519890023757049840473274 406545059124333516256135376516153444341587280240579587024722792098271135865438 743216517867655704178939469667136996748865240186469699417198384932903190937055 555779504433479695088929920246376472669588789938824714864842275079364471242463 794521493176063078612876036403328431538807004608960900193061275759235704782665 540675049079584727640092881619426653457751262357693897424622703123911527933659 497632853001258655479683342157088451156258227180056364084914114288533538681086 403127185786542497792332746971629253659722196300924661426344430651394132846968 088860801758067980912501297102711308221785727210977789332443992934757436229010 800606700207605177263573975911851920630624328393511034672547260577944953801142 671892715006718732052625703909087689158157329588005077777058662416968056450631 491537354330087281419973686879373839489774523311457721134102788138087792765686 953012096610275425458764807797183932645567705976097886017522739494908754483130 851589539572646586964235674701415337049614588007078862941548617921433484367997 461831085401578691882330629785598435546603996140642084409887282636260197966519 308475739936220467385021548124472590936444023924078413435269234067447802528291 440576916204988066030951643678266642562313153644145424977043552719745775839637 593065301034561555782666031596331468060167341010448605864027458343051484293838 076967753154885845995228839938544011770132290169687098798795749822214752285454 206008120086678223846195677612731717228731643596027076618375031446538873078722 535654465775033953994876520529895767921914582625444642772345869784785352783142 233757794376051864634854962072516508557850128673326425768004067199288876899239 593734829443871941552095951767517361974742217047258605371941755581414447295139 868099702590923438935660266136605798822221516030327795941635196148546230535796 676458327013660575788969016110006676265810612791046706971989477062134035102276 352424118564693821951505058244363509986368620919112058341637173422544592269670 245304989582679822424935954430300338209136770637637910484182624372269547232167 794233341279290304679561837909217748985395457225136635919525556295780398262208 378726489187053301818264491018877570903734919086810398515921641920662734648832 692616148872052147070599332464741372925812979154948512570270144751136223236580 402309522523425958528315788576114448425473533731339101490764427698116173915839 503530560300517803919956381569216785851003153426294114508311462378547542883061 936415790682562745576392366437616207861003970412852349052297150212015554690248 307364779240812579346827896103623121129642197499421347171300867344945250929130 120217250661441544055685766265184151206892422812058342784277257806393918356979 838781930784614665552514898760134743103264151050086803946979660255749626035449 295517818983599140427726247612426056526906341737169217490982204333764837130366 770380298103432834064861119669859980187094162680365865748382180404082224817404 809556307291648948206928938825919213398058405800905760433788380886617247214552 948737328027470155309644634250117546641775004751541974620019943678004569306208 808587535081868340538757019399730830678967030155273114252331300395322487790606 678881448391883495261978049877299105691974529198822442081097245865736496270282 982188682432619687495824443633210366615386978674472533690864678413869944750285 857770956399647752251036966006798153799962349114997831278994274087212883272536 133889104267689826849412016046321354808252499804374521060608382106730518801159 526252012437756952465084079364833399603426259184755376289107586336472890616606 875579014230266099808657404437357677899135759873162953300002909117739801294614 557572545755681056563288179916201896896685824382084401001694275044248069575625 604946113940098030819530937050735168017792847128005360896629483309759933554333 242494203384493830689114117023736270248236209636225940980257524549745485139704 578793559265465320571920497724742829673341632559701848926436570375263360674126 806567952458754512231489364776234451965517964900536744996276833887575218996527 601691769628703906401411867632527600186705008034372002874325904318094623812922 955217621169120782991696443653403206470960563163255665007164216934757331124167 390152095384233989213395451683669406750726799411571964636324127487612355647782 402689793983928862184661054139828005409945997736351529357720778307744023206475 257379139696983494794369824073928916497385933183679738573968660839659398267744 827518666872752996054777626180345759612030308639947433867793087246473559066049 328250096146953167297210668731276631804193210511222484151762347304358336036186 423731140424234568016102799263197966660438951482915010589797069344764883531853 655065623714516565965045794470242107975114489116745518588841418833594767885117 831657174823841468423336592307815255542587143564424836953552853948381138484438 760701729272312827477355143510267941743284381795856586400349266580265178850527 336523794400173134730784540050634378274856660465741128551905562081058597174860 798137539405749680403266878140313664170872020583230912514166423291624392574564 184426712351190703102595341547800992448057028663778419364471008842324505408865 088712176539541104336293977035492730009681542712311144232516420915798438129881 466257574085166704944462425199804347455524594447278901471448737029811753855246 590690235974676167692494692707761446907432877006114626489878731932007788782566 558803057679305679755713692613442459420467951082927775792582863478022707081823 792006477236990245458106483242252896143504082467623703600439513010149486433730 939459220992957486210965437990608920877959150363659241243559927589289146280129 307519873421311419855556659767234891410208739446692136219334399421243973543106 173944476808781054466635614215759976023996448850883818829711888405604235813421 464850765578456832881623729920343650073551525650670391094457340454829549842472 746559650129627907754140908817411053642445380271920972709700518122627363133096 858550193288607936864742242716812992906648502124836485956872547358092618155050 063979713458923499435812432241431065953159201965054443464121387742357317566935 928000738753877448940940575716291216004294637863788784301834805676377652131939 814077920843679350349896083338937677944369240328952539199842814261510114404250 628530518415988799516798026149098817365569194266111160672706607309161384487042 385627424733783960890381802219678223810338159739990050872593502898908728123037 398317649988797742457650059824748028342027574717138788157675268018566663025433 273734299938425115240946643533929947605861735016522434656190603461903342031618 533081577008982249174970958765494478069577118071030569078658876391128124004339 494824609269542173169372966916603052681305674648133803614276662624441862779704 210134003192060369721636632280559605131025910357666904517784115396456741832708 727428893968203371841427005918319337568979895723721295741326423400616937382279 138123649488622308607228264879639375022284339110963520384653757335606870182248 732955540140682419805898902809884102834235860420918472697805818873647075276143 392916876705915145222498270309649924338237405303669096990843893020506060407430 159947266929558522467226193626395301964382122697153212022479210048648186276950 888263165407964184271504026844493465767243859109241789986299649887523372205649 418957898381206079662365709154782735150511873729516403840100903972092547188497 448213476497090159538250190278178953203064486332600740589917224626445558872845 909808314076885115011155229360886626088552477843835336964812948289438608698180 664692460911659375144607411647501295386397588896078708317813880874354327683322 381597966030396435002967812160924586900800380311731890770322620799277502909404 379110201446475535677952006353904744820876266662758799785720550903097671827286 726966591804685888721331189466258880524764890853444818054570663346286106422125 600219186186866329284246128864788129248399641364700065025632682824963359480922 398524311423406226215763367525423094016584711802108904527872557850119928833386 664460774886205899739981530741596163144078218359523567831714875024680363617803 615109767004895030965342342739644023742382514906214187164629699248232171790547 873451991303581537505240442180366393213248156584563105063736443635582783247726 626526177900492211109636329277037695041743130169706935513512907550800338504216 952536954043134766570634398669859510214644436374333796490370260571239222341400 603581554175930012232200009936768069251675492065627552401366783016067512134325 488790901691029907444842782847435518782533213269787359718309676030016149042853 913607154727278406873702179471611877830488308300747311796253606148866481933254 780764856475032309345691605328085555337339055869905266151903415362651978803227 483039725256249074786777339806746606160268480719921460321974308159639056677367 215846859019773087541190821355546623210996997227446584887681455899636188000836 336983149335727071994724113138104483570383362860851641959075632808493526350348 021388015082318449664243724544834865380357818207783819830697576129813754321774 184915856506573407742995136115808064381246326359968172888923505105285108680389 750977825943108494788733943551783426293594813061799721409583776239994077566778 375444601897462436839127241994403769725976684632603238744387924479752465346323 143097767842170570293970801744582109992341218860640847966899836248767287336674 487094207569905070541141847020018893844579273281888220402045058982083265072049 834127642919738741782000451529159930869459918610656598605310765244682430810241 228310151943973499873807144599338648846690339403127129054142420053215646615042 888882985633173867539571372038283886489188797205286145728227202672330473555050 478800883029914336815023420203246857134874396685000354137216023180217196481076 275340393336022813301151402912265169410142506190951840718364432545599450733726 795990958933079702289948957449473912468665269900464275540865921938330040509539 387301054967415304063525502539855290678897452196577222223069731234224982254981 493425862028329941990345837506019816694553834730583835897189425423894219967701 275667803836262734523832927583032383605322255163853510998493231973083131374981 183699545444214156226500063484168186714348358354779718225162333966090477897908 341165427540574378569789973482557411868682642826407850444585874705479556977188 513661642117329919323173977386148506702268592492431800299410082809388885675459 605089384660967622984454150144882100908711006673514844449342125835560243339879 891850230371956478177898358430814388393755209242625556387525109330315688050926 846583439757100330675266476922800332168922239762921264573441081789508975493441 905400889827531217678851017398577325978608716103464817087612002444893388026678 981102175422489070030497186885726548655245790499465157825557209852338337160881 516307605743482035283341182260491311743140746624996196599416114586628689365527 625238269980124098837125120385130146719279411321984886583105373132049834479425 978742689509423536190434503533412022532003769608196374984485610425457443787774 188932781067051176168887093023727469423720794312927324331374944110080273580511 498313228077038236480608561475623869006566832391757673878195659228997066160811 183689253853387838546711161971087394255293102125806348484484482218858928163886 610280434433291351170505117074179318683981871120176271729847218913466466868084 312770704742545851452559161035051127813875912647474142726585472713128640573759 888972545671045754796924900703606302641772342860640690596525077082175775200319 671886756116355330108267497157180252540273738748581968592162084258645611224686 353671468170171784765874393262690381102071507078727208530134395365662584632086 092137587782298476007518488777633970608219676252000190890168503904884993095278 612866707228472663943084252577558085030128111454123390281274606130809808284854 489817536660918415450025967068497174071837948469225363110732724357408256914131 533021204463152750398037412167323780929866496791502975038845015750129431214857 120171624594676965698905550243829272233111619333732376805717739850751147338364 371207821101756487492393941348092749643960816377102678292924956055628824598363 301217361352889847318252295199835108863706216407950782291123337331593181316769 118002000205071999653158309054884811559875126091631413419615421012993072695249 340012337573180460174471721779651224989145627641693563279218887901471944371802 282975078360710661789318232441728111376626170126755893437639658083057925991648 652727178812288366983473913647568004532087705140381045043700454318258893547958 397042694916672653373023365932984571041292283488072966914461543585624355972117 578122038396713902262170370145773529860731737735573447295997911441095911380981 349034713808335665632236853333186168475495024801713420344407485787555946860534 568056002135795469077313421444141359415918547765696956712444321053507954599359 349872366854000743444185903982589876822609959628509824220387587752392523062544 624248091264030296334055258484946085307882162066082439446556783060300911876409 670872917844305557444287579876917545204403171591594435774715693722426781628820 248877574156999958366504720444778784917987928811805198228936981369972964588385 736840473288536650652087767469084283833768502190036451910498049503366667446985 131949212331559553178956256633279261510076446301121796628629824789977341121189 421845502993095353584800138822819153988900860689507429078995866059794086506102 586852950367949275278714850890149036136567184718316572338111221211857593982729 670894497897937722939893079695275570668420170237201707451088422308042838340008 467568495841037499436906337742954182286812970597256615033530287973141680290274 495637552084154963819473224796000264453758118312859097531014740224767095027573 145387090474224773909806640611301794778713300763076829676371400753057000873766 787739488769902735169560802138028935324009108129242463471744067856500089313618 035268870063757454408027555830699068298883575053093336650617579487592129805921 424709764430833108864641149263979939683776305407247979650558821598544901033324 633605440094746478766791306177252016651022776270190176092646701367801318908190 079493912273066120920426141782313752797610030784107386110600199492838544481192 990375474995016746596859658826599121337966065577376040873286705392983027807002 387002925407432362573941951233491634693053832117408962235249151892688893872399 414268566784076425653301106508556807420133184892315066096910455712447093550646 447211469839076123832604817290139594740401944412169884381152385785367484712308 459217417661798841840134168397783701840207301100143115204727391496313135772742 037748193562717517425728329045937470707663468898936472729044368005221617741539 435287186110767671706562444349808338625031970147385550168390511300556286393382 855650093752637545804291797610336115568326018896612805506747465731170353235524 922135222323716402874577351765346542681119834461508639838715950792405401517638 653043911624832016868689081181467201838354570442147376315584553251691280403942 522916333680696407673057909182448030680379306270890213753151506614281215889189 211862921589465655678346241577485895789005141838304258977262171078338983427131 072745095467655687426321717426569059969547149327501835325453546791859191930698 804315514901302817066487260655800628932679838099550634217313876592747899888068 162982416510593725921138008045283466253937010234290101579014386729793357240036 017442703454654628869040980634031307638743228475111344882428761506578731470367 710616343819355009469856303400467494169444818744765773797778209266877095063679 305255068275453373319896969786663803355141247663165466898326972622310901388682 628309774432611713557029546327022638111335235536587082762698489413104731178347 779189642587843654474298407453697214195605107877573998249446315057774641407176 531903242363096226785675829611830893699640014849525572884995353113661634506235 120361705086957512850711546871075535162239799661857439566361524038711318499338 998668585178865851260853306874427167175350683221527425471175847780672094774360 963494534254770833428221093466788564209493402214041700113392719488007894479845 689621315061458881138093841403113574103514667383840833156987451782134488736924 185989315249052785022495463167596531390618668124195709605238610260625105325168 524877648644533659036875426111743206583351202530837840133035772830749747329127 728056993484028720885318355216664697673099989875606935138570601684186025709543 697217474026659698099463197069788460754862586057318736058292190382183486712006 895979690969491350374958202237724276876789093115646187811026853390041321682195 463318039810475659609121396599189359305766517017466250305049136544670923202093 480022013121950442572907363224018212786922180266875822014128290309590367985810 829847150959902237899684883351283300412179807048842624644965618136781256184705 978931098359582938420332925218270247177764646072322654371034939698324713118345 918146076542817362013053693167565918200099442479477226596983012388154523858684 798296384886741383328886386343776774927771862917015773929462270842675261634988 335876955092726761531716133664521108478510678116723419571420675422940819793913 810981818764950581485203153432198415291209871298389805741021380944344373398093 035870489615550318065153911664056278580290188829033279494195835474659963445990 968523990725385875800705486342543785565781203191396576684699346503607923930682 379650758902855270828540984038020426949950064853024859148876901753370697918917 450798263731463280594545709147341489799102670318231241848324940517815243080596 490533197113787237570218009450271606698469667190474511996083706078762358863035 704983205005912678774237923631471915699072219695407293463331974489925620140881 123891075989689128634513676491085824471973434065279096296910950341655607652551 654046443032735814550907536952681528030825783230968288939977344253681329101716 959701232222787845698407307492542134934863642817597325550483719018679029455716 489794791309380447950238104319405261249723368456947379879222303381654665354214 699798069547129933882051479715335966546678259026152089547308539158677024043109 179383688774257203855810506918009172631199964691789248933905339964982749260044 781596886629208268260887525876964855884041692812983523147656120305843568287946 325473321053293342377923433223825605448460296728005092191959397614602273520925 768648644508957572767906189176799225870597876120562872957889517304475720645679 215360920122734375976625596238850296107705044266925756265481227172015008520296 484679344161761841052963524009108579143968107219435788788230286421290293674360 994082572120383374532025700582196517798650254589307939852720139157242942072289 695631734657168584746814690747052016252325067348312192941341334075560940836383 337725590630361759501721265608183921702081775233445284467254277042424433868989 882646124766077457772771993339705873470557751502117735469850370152839650834200 679427691110231682636589041057574535295088711611151167864362968064850587155451 863325503658906414646609027565064130576857168836937643528098498232737450789574 456929239821357090190899518286986805949019529845974362446202364752362179466867 494946997881240273307910530978722283327304824801568263502085388214273251958747 907143146103370045423021375145452343175873975479989580634462876807772193888256 544842506372271351958344987067720152187251799161852732580277065956192141819517 507130868029788130830175062463458908775336608526655202808381660132600903783698 732182758363383597470131293439566823950161216607534943712062887063607913580991 451018646756176281653226103894705885666425628613592740062816047013411573304368 964319011801324933365902070937675197504695618913170881748687533649131823873953 953169954514875395794244263793312083694188674830173793917337530645749204996528 166818485456894087468409994668150756621761271018667815381745940777146297879202 753442678514934714587612288961048880993359554340279276795642872345406484538542 141815777887255561524332850733707940172945705125940953943402267392353843035366 647581169853005126923132399183167006464750725831669094572926818641522851369915 151061716510796272737947099375919434434372055625434688580769754629652761831398 631512483634430722830694525755758955080148409937012071654812893167454678127651 151655338908432360205395924536097876608634622021190627312998358490564562961336 038392197582050127139619209842383623771425540409195135106293984942808177649554 385373484847608202525474701351298966645481229506036463099506324655739568343427 110576529697524345562906521018782072984904781669703432674101869787850742530490 649340007180958310509875337865420278442241501890949170716665419996454877707903 380000860859014883659130837005141439766831720119290608149785051898374171044247 405128399708712595599957152522659607594476315102291351888469946797611343544825 690694108306230358986563528268138550810311236110779425557608288467679681454591 048216247092279482945599109739644002737315675668481759298322351878471076150205 441016846959805001781934917543535855185169126387114027592659554675999521479473 287589904443107307826279183903240240390799936669894850133488039325128404577147 643289531972191270683817924506056060986055230385080974179715545403818026084857 606946212737391450008837837678979897610820469712426680816972432830120846417001 258912299878438823848038920010079242698032361143006369944071938419164502302386 000543928780786587764998440960780279353160281405993740463497652555740767815742 757462647944829235548804459878869761805041792637206211502977837384674859115981 970113646718317034628260215754773064495711910893782167268873437174149024595090 958140651034711252081715521813539126063179115843901248768664560228007163918748 307257654817009933434547116266034335722979255753422858435930403730232902965433 569839101980816667826116749124389451789736886072425116454447173316770102701205 580388303115990665075368813223815667678356039679626719172252669893973902666185 430953460122806533183250289685250951246573598328799726744789382377676645559890 908792005704703011435736787820184073034276219326884578171283351198225430296389 493864798802025288725326584916522934339301995547164804579187261629475638053763 509391143885528766278511297631631590875954511130697412937082155412575675665645 458687800729686870913264053477095034874914302502881568005418129739470832292559 109486888899294630226075213397947766498341030531127995814859683166953731602786 272986044069071197780946258223336987473645612647235825159684570399642414555770 685234090262313635213810144779477147675997125959532844328569297009339246296870 867194970317415190839723815381403969209511158891948217135112664291083739834715 430081237849290188435911552736119899324164705617646858118206839085961586673719 267660188026463156471254017884728713675217659741655474334525147156659314093696 015795245394110812139209718217106671143860970584333666748662755680916365237012 984050539155969715703192213999218438275045580956153322175868646817925647776820 639432070675989504690745109054887415558668783415108881955707512572764804794064 017023297872150394543648330352974833273539971659122223482793137977866041641286 336225757346769276792609188556181978780170546746104515005494734939132430002241 373528853318902011291324972037245622277623775972058587572457300878214514565847 118171746683190519572059132195991234951420105931585167263508675389555293390840 951782160054090610822841636765963024195665484274033614523981525544233620753007 709736001603878327813301768920369847750900368762238796917612596478616747878572 996518478949008804231262087435119999274721821452252045544041432822134885293488 122043727683684331924139137289010325507332379602198945977750459452144410713705 596446786332274809889067097648133138160820202942579786796817327032921024116796 299887582714583638384169893763368687093755784944276444953713210317073298914676 792905164307278811034310501275979832155936163200739511308542811199835948386423 225539558234080197455472899515996925482615217953170652477577928226203480521541 945003091186539359307047938917068920256107460549500895881583977983707666673323 641992252347488173265304563336492650729297043534664766411559844030665139237012 944534534315866363688057269213267210421885503903216854367180110431572952708275 807424650788042621513738894131798870184463430850752290660773642221729200318262 954256482723949594190988406927427371042260037420884500888034722105283888634556 976500558715073904358354686435657910077431606143501269597351945424123579899153 640498056424262207520963561026941454631700368234058210078488988251878428739371 851084732643270022700169411206530315730901097563741099215427028384668437476485 420638869503472868707840801182394902019620255514404729084998514612204369870589 365378382913162672855015544473859064960492017510741596059644099622538537601112 192530776629924392587766109673064998357258188236143208020700255558678264107582 156500768885728510158376253937962423550402283964564432270646895154518665493084 382545848705101194541570700261504559464733853832209166055232271344641128233516 254459700029224446999857602044799899198214503053223645638421992910073660536861 400498347412428395575880864838493115718099961164095632736878369608502415722996 007615296710898140812735239317348246828317750535759656441045536725336614229620 953325660626599266243057149564835315209241928648740022012836314116264565628971 912274382889616242283657161881833012982399473563490405167697900857234702128343 022352886589519152414294625645756594280004971694832365292380340820967534559183 710232934411315125805260542254982244718342461560319444200006707074856527360416 578198784209144670000655916067358965043848581369812829875264139764271065582563 991219826080311030139616259151520560775626344231052078445118214690367799456285 514679914487721163155331307313489752134166209964186529591687952355935089426574 418340191094846294306508528440020380516221817648498906447835995398225336215360 579118585988519708591926075976618080341740605763230225870726465878917200934664 944027544695786149035653977339543370714543841859005243585439291764108840579940 433422729018425137907414543893613993578484247418346100381521505097907418560280 824804156409317590141865662363655758420743923551887309970728785140454197180242 654556905153935097025209031475413213999687610422018225379190916848899662492907 754068121256763300552023500559358506064089698544448607159941568919966493438864 077112699206644519596917576222443713122528993859068915910653485173452328596611 837084056216889100546134856482968986272996187802722222011523147166301399903745 337287756899424890353464754998307328190192828722276117637081845957762846405636 631783787578503886805505079192770228979245268689577614268781222937865452053397 875853674631803745009090203527451581855062411261173156518248701216163346172493 059877360459260807933267362485271352954678240025831393592737281985215603376417 029336484038725959046708014826317782352602297827779036045800950146670123500330 213551253663126639405002997532747271000234421542826772085269648898316151147497 430703833842944739313064857872535256745975086905077200716443572435398289814519 999465977907002304594232229246258652446174130735667506645079776221863237865621 079818221862173620604273232572980208823277963263578373723027077827128357046984 044996118765922096795004630276201469031849948373461177210007352195343910028393 610374801888494351759353494075816448375141305182519069080413993316648785496609 844373702641400665596458412549643718251924091195742280472417167162555460848956 058002919545385321907399306055251184031960824659940754593687461482306353772678 199611033301994759736745766651728588109112098537332390568879581339119508642106 697507446952919069307274469194625654234830201807988834949798098527334232445260 541789495627860064048766320480466810314811446590139261435780221004599556105133 007404813141570674034185599449645948099976374631693269067323967298632791590447 981100342143228789110916037934920013568414370985715912256671205426136998365930 724921735189212455787308464865329622056592654270184721012132564297245494108407 709965611904565154817560770726158563751917841707110256382562845063794767425677 647403541810986653239629494682182393608271356355542480894740349090394363293081 569916131223995093557377124282354498312440675232406479869594957982855749470024 618238126584340875325344299019094692099057442793595153842624341717300794792106 337135539355880654041974538370474798117285616980097718363511098836406065304105 542550491852981510675684261507019075905738696753691717600330771759413026994269 962654938418259963928001234039813765959324556354293151512041094089354263045576 297787406161563592438690925676408860640662613575049019879615071266032237984393 482753040508686735144327250159660100912180061480797500297335084054731708230391 477811262810030731296469995248345208803715469953165976326476147642923892120521 984626675902938283691057575493996830347300119400325478386103138956327960076586 364449079202639152304875805628874548030946664893887446811691478792311423695697 102169332165753455841148423270781351695347483379015660703363123560060451288261 169919702117447599303458209357103164814717893312093576229850596720608180690691 769660855125245983359143913959727878211237838215843599458537243085863387877562 718762902922227762322197818989186058578169567613758338624049984798706205575047 243505148657562840820810592218648899991703658427821351347841871883263121407498 202878177692995168315691718554112133922868062594111757508278473362223037232652 240901925325093770920043446615560574634170170467924580659546080775729631072643 202034952795397579930341307342597591674666880575430418568062271975658628499240 317653608845022412188811467449139959941107303927798369176488172241414855618239 731601191942144181277677649453073465402516200230758738934354656568958089399480 828433696064312566423266418523961980142301633029868455761223398584750351407082 013982791217405632417992602307261028937995464718404902892449912177483662466998 707203508363479853583329010321860207677721803756487877919790533626413843517718 254769876089777477444688534445134060816409603136214449738504003070510316211503 717614891164509977334102005102063579946685064507261696695678892691883572091096 143094031111181583745923775492536089836421417684988920300606398757729072190337 350418802575482232670248172463221185022937640379895017095070920941851299617585 387699882372560022234723729064796211313546907079862525957669056806315397537550 638802204722122740854720399258382706459108194569195308742954635140609825338686 423507651313696868069752452873070639124575485225690804879313509327869067569843 116684048110084533849002801088943407724282956033294425588433888383112817285223 457744992263504231982093181105248214004692270726925682335365792786675157343860 283934378736684099921525887217730743441285835366849270354598775508822575201087 880992907028462210537442058529222274402086136645987785892713692866241165622486 717797689086770750467640687325191605027679648041502904734729813561716926008941 608507784596171153110893472078219092104323139392988492721118393623343184769526 663940467709944743557035017217011480302002004006136374945133932881248288606074 799687889217996402095443250236255225306069350987857081068023058706748878951611 109785657216363312490414701916444310887231806944099328913266568565286660271451 890649406244505185316108145270384891466969352289952357125322600653327410206220 358450378882458345836334982594068959074472682552073374263824880921547202112081 201982839243391672520811171797913953914942154599339695526209272038552574023326 800605896591424742802304061950598009175332161994749181548064130748509668049330 199244826899083118826234446900896658943782818501448071273175829532553713284021 868434215925646620714965611943615775311743778745320702912635724873529328885326 746607891022556008255028345548179272418989949530747376509922495460955356493922 499930443896784523118109337630301567243724456132129387764541028000543223992532 955999368059059320342793725915693385939766241617746268964287192795561728210734 053123896306314420692296444901644910415728453623759200143468259872439524125788 684175796643216834005424289373346959992531445551464307424209288653496596198306 975747032842783084825679219661768588558514590921517495369745153283707918177908 897194337430337748794978995916727638654412786116987903232515390865379087914678 765724533117379468817231874973419504723224228367805305168719117697389713090811 694302684076795150128940887568083605510344650775588282954047783730277022939735 157753430330779967467550124655430136771463800943684684896751687177612172748764 871792271899008497395129772565219861146231318667114455579251996277907841782762 742758669428103977582091832273013978866121856603876188307138320587455666322070 666657088605964049453466263387848788997378791391364143154978195809273384478739 051273405665834837622479136359213312321315298032997108104595009751961258651802 216131725697323214781937192798109352892002498880633873504074627840924607590129 829121687835560468281891315357304006387072367560040215696801559839528725249950 632220460978389389306056094698967192962884824558889056072111514690778503909148 782758555858269192345133854336090473777936254807886330367729958381693052554371 248745698322572729173935819866521799452466603964333552385021514935509539069748 763420586699448682488404404438914509826684981518434448181031927430850469553707 064727561569532976317741097820940556682876672051313689580476476634324025895214 480209748320432468632712913982557672096962082836963398202539065025686957016229 260045653246315015669932316292725865486279219492488091107022107400590045133792 741124696486055707521420795613169903957959046183982794097445412190195285464734 449721386081421844726959853900591910518963006686343044414070356906494273766851 540015696145835830840861475661964508295240129724334780504372038839111336575677 129705715203021205336296711830852943328394607937566746478171243320087672504178 973495627530719347274400375009010067787327986219090591697986131250490641425147 948897301993093499618465967629697777681958113867670816666795443969197867818168 501865704359853653452329429913437043952091760233570513413739225851259083501591 774084423197137003712315460691280135282475030043035445724634163581916625381427 871376846044828805139638343166467604773264725204767027339087276315704283463122 277040051977758103127901207834175376326160446613494799982942408845894558727852 479809377635172032892615641116092030808704962427306591667148147204591839453340 073147067057186601363651388642429807784477854185233479340116206628261214809339 194760144695524333422077428236257342247447997752468261896186932159023846113749 963432653794114872819975508180838640324527722157944351533382547739462892393580 328650729819143647337429520845343097486917001310783452169600143434715016462682 600297768302940379998072942577098282749130361173664452469465644695202192691033 254250198223997860356038441510984993117251223041634403056892541147154563656789 582836986233888870883695949094290331239010726719110889794620039379579355147539 679975652715666100107252870246245039417263504443507491929390213808007454116413 489136945008680929229922510816968613502768864720151506743074122246269278214864 734680851626905963376248775179553692517674923064765351207515263156680692110054 813162512119920412543044666091347769093190862248317052097442782069672263267997 435565072937876967050948641202355956781576926685844361175149203461712432081756 495999816715360056353514387230780750319715121546374770534068836992733709003321 134240246170223462145314890259012281356711882235045242096845118399660968792741 314626975346346533181374711055914620068368811430232106928027022022224055953283 560811249748727901258421660212557541915201017775673538177704692143530570676955 692817540370282205439766397476260937840858085472412858904768500770877655386884 548063898502986738927837683779285008140895369107786146879663531363010903768618 974187831094270714995901108075277283803752296923107953633868908644153161359495 284512530139666279335598369295286326715127668015029558943981181309462067261242 246170170387412542118762917683023287564234007472790300109349514932938473985146 966799106969250367662806233029455484676840159370925310199039294213557219608686 676728067509618989855163066028842825647394618378081794103749705300936562204465 464288482720064177992341910698549448395231691432312419948795034464804007387973 048051384659814976770967375368505689815986098011213557243094088390275379719584 749522345140460706140829211287105990654918128987922134119609162995304672351354 567565190503327557890249797805087531071725157021279422583519314693596930097300 485094544899996339242587282144769160087506546267089961813755040622349893569530 557826976585726380867158515052865074095579760518248454462277545910467334311907 479731152839351527324267393831927859192333569832451192830684539559226793198375 558879697319034553550089364158846525887138658587927335176140939299944024973960 028884413929380280711444107144651974793419545620933088181423763512031150228807 652587733347144420771407901813664612828082808236446723784492940985002005663109 818338407173334966434931532310062431761838651720855294369200082349608423588396 905145645124916003853744740482564026102276472718492894735113641156628280705624 120534302143544194992821644587495169023969144062751021260455539457065364260172 927609207137600886254258291913148931144070014216384532285389824039340015490035 361830798048419341959858101670659724171298461237102501815975331496483392415929 648871098410713055616944656532525207283917632227054858138895121907678798021567 148889413261585874236550819773916859421632926678843858821048246873845242031198 280156841180311309018463249171265871835738685459373047501578863102060020056102 507222960163085953418587037075925283276084318880726322419046976963457699838064 687711318947696140215840594409911772426550567208612814036893005701618586360030 910683076254209095942808731967845569935475258136840942432396252734911366562106 181897245946249572547515665523611882718451986485276778014060491683718449439756 894742867719471614680656178364064752495724546626582502007509647596181941263505 067720885886319591449150450133222153891732969169085376318710134466326970036776 880447797824779363605326221198859721111709242329899426424661305697327662789230 409170396716417160618400009790141890754449726174160006511583217122954711418995 165517550065127919911446670903334121855606132777411206316155151902865439475511 206807998404039477427620067000509714895643365496438430677488341126816851713087 831301171847420918632331472379303455916682931088530742954833669602015413115799 911057970632656458084933547469950795918626666424584332351764835729500652923852 005077976323425750908146842731680901264003945091328010127999972278724359438055 256653574359217229643964275147814799995979568179070563718139290515658873936292 512306689588519504694491499142146424583350100469549910852771505910323060876396 182777737136265087147075550681466466125064219427902501964683070918647056798509 383009908421133164120684080928291368280480983357883773722302439068447340298223 295492930448599108015264387471797897291582748129406857367306546736039016828898 073007954723447036956504409289604735298657952197769882826789957081916183363096 761889866607791294616249771445650098174864512935416542853140786426125795551715 130273067384108042400330240568048411780684174038570612900368281282664483761770 332164908544199199677915923139274923738953279302829716167201779588370526657796 251870765621343886581376942517590850029347309273491765140123454159966019837281 817186818134176052303398202977593866970173568001356667491735852478610454729281 382656739530286276464414652396094215467596061977994859736912879525856637166203 404417743024948535720297647969676320372453698907409333151139616038425679672369 281064347728307618977490837413007091055075889870172918604060774438250379562603 185514836097612016081392922474887202480176235448976401964637558661034629945111 364970504183835074522892267331934993804136064778818238109961642163456647804912 018680953302954552938782107502251297799957485450752745774965326843964696543046 477905506847787819003926995933195512938840015466827706541200118493387930675469 815189733739716478648528832820099138998168640400756500247023302054818642087818 600925748222538199967194011430795725440087278414883775398114146939851530126331 782468129361471492407970933737529678070922136997572842348168877286901955332642 243753803386741518166972584280959634756021639717444139157596992980186464715599 441557689887060959813592306669434083829998634416051996280538544715614765204280 824771715507207099393558786156006075300199954034879972633074804900162357759080 260236858000266249857700382417186998072447408629977035083744685840054883572080 040579185593521383897064684929770360140651556034876057050886629024113046030528 339892301978559511672966056773554815449653167213771610487915091301976751951844 307896627655530416294350655447539607235336311356785616462947609238507086024545 062208551814031101353148772012357147750704464663209937353207561357015644452331 369481951777118251676457751710857937340026086068957456503951916016209762098523 875187037790792717383988962167045339408393790994240951164543409101089936061947 792646305876099535914744758633472804842850516142590744336471951381117982632044 666577193557680188538129943521768611818496603920256388999024563483077460619867 557867551230945269231751903665685615627817626359115814559785865229577875907037 467182998722100142903699072939199273999378030637353410895089929293154360950172 419728458748278810397933264911639258173009220258309994414269131011653146024608 751525655395587713371841160475870985507155184727240174539793534855096344431860 620891284377775644423034984730100075528606527036412284745486864711048458644330 627745480311825770745624939973542137516627364431944936676904950044284383221926 871903017586705354490490767962961782376894760035070360361082910756308948786269 303290347644755653048256159552615800026169442273388385529908333271914476653281 652216424075257358617692825142484563675165147037529896408622733783564438495307 149383774649254105437039918964172436802488863273437115956791683948395621813096 833054477250907904795595533289401472245917593999154909606113947281024306565890 230325512188644715830607349155426445849206805994316516185072354448079151563117 120672663569171997133249625818028949608217003537539735786629368260953300034734 639916772987496541113210795575707636588623628675742826695101281504122860993297 266069686679013177265181222864478695311411990931305192592814994348838597316604 787428958654267897426484252914007338124531442314361065333001824368859551943167 278818773055248317287294121563765539682946549210312665042108254527005342335115 771812174028332659199815778346677505955746290425738752597696644017509463373765 197305028900060252944104256163249843815526568200259516853032460913099964991952 432934890005635399925762371873180608009494415957842591276914041611825863821893 033655803816925590065550134810379355305242951096928899689782266190821720425057 063128515577530509341174902943284742015491429280161866249005652173732373922471 485895685395956508381548626230073999647782536136849680444270578172312544654850 510695498151891443187460437544691500414663345142990607777762377907915685485197 302204853024959350026922038771159809093289351980743000471177264924237321046669 206550282235256604162298663394877224348063915144455196345000121899491322295292 856046448281919371560285315385098670482063924795771115663318294404775333383597 764457244236464718709563326156918581802478285871363676657565973765558684651095 175246961195295741621494764683533187989831644764821479555884055830454357557204 141220667589883439910547275958685398728302983668755731874438395571330068478401 473239186334865603853205643299970675017320431890185425799204475543428517291584 225903448987667908380395832465047844415924574990176600291789819257227993136342 374930930176667517290533690705928772489071927837688066858218818516169777263735 782171524173899836507868846609505602157678559328900098198157187243897360193050 196297458158326118894519940807949809591055882973418788337765446003051992838144 541994208388323095163791273607685245600532150988325124470576178135298219626191 023463418335943979466497987991527175041103956116809858728414140281810709088485 534630002333420282050902633446218648581413718557189778284801516804508048567761 446011333140953533215233643964773145379766084353547118450510456420599681291940 044576174445258654796110046506459089975898564575535534522160936019603172168261 336129268533683829237813860422746173447532746111586194640569424581034133268526 027477914805130532389582349026355829647908555771965121267147368483860814495840 491079237742678200034609036561492304112918607424774463651163786960709923807788 111739531931436657755625542130735297714987926957886083745905428239841414419965 504444809374338473700618135583847381790491836698439949052595370328214477520285 329636876708725153432199457517432330365465025017672623615141076430033363786982 851366749701657534349210680390183385773934054626629468660448586574352597797080 088163031353362848694464519103559000316947267155410014798062178110251226055156 935226105486323608373246853993254943362006666057223754741534903819506775415842 946420075977132973739253807440922330135162324839848667287973731576535059254348 851709872822707299568839908607027359869824680253182503045070611840195176830236 059811829629706118726519137443702530800315447349427016856695564427026774489314 674030387764937377301549500130829329037920540366636083699659834030791760713604 152526873486768298520409158233077986053589506570993806255415441690255840838441 790878396294152947430889321387772464477904485633717802393650918210526967501338 962368509672114798308018373516484716607331740699688036567595326666300559951935 878681198104504577493482529148601543718687050480651566250242964166070948659764 417253720585510070224041448019673488603599334612436074306352633675520470901868 624682753412953227053650767325924227109149839032651306991068539148026754555122 542532947557272407287435767314018350320345143923504877344787303252460107384840 038691470348080350771435221457597233060354806313123234522406335671568798257562 293846289043568290683317340463760123146182169403368352136126226927950855514352 760734511665228719114990886566703994440822505156067462106462257281950201258890 065077709640724626834102704302525490968624564512770398260214054455409337666258 643237080800134768030654412085141144819025715336793149884273181523908190433645 175968973663603973913904570331876855952925930281327297344592467514963764244600 644549585356949402070806659396392448157528360299466625660562729096902769193400 657528965132226459056105505963082479889004822320618265969373369156818676655441 696506670982232288380548881498297880841976241034350912578098409112048757348063 673529789114204953230878644239533961936850610908746480544929154088406189916494 690087148988745383915055644096315941540534075890401669806181556868273532657678 802516126451560017196581466982768820488233123621087665887193286874825816929614 698423399404365133134590378923920987976482330398675277610373050500510250948167 188903420070943715200019925710286950574236300938624483512094034439750007872514 330282617520993923287625363962133725211788389380746311619137510318297327037470 570051304816006652557746014002830981045418488877590477103170090861133244379917 234197759315070598997282451431510942350541139716140821506062084941043032105087 412003319795182468756724817842970698615258180363377419807132195398608985275114 605083290463865321718690233764519237292874596507312097526783951626111487714210 646711428040621678503741850501568584154743303201473917261397795574231402738624 427954983369013114266776446316714422326439297873964803895146459473765019564692 036709759596047364393970052330643968396781359369101509284413439513634518178081 225205158183916742445691145615184258728226262371978145715361208289285949399839 273273625988157003387506964669146485360042881912366472323978326994489542635337 032894070810495461332581191940738933690831262222272679727240712574044419386413 722436460025454428606059535260904079051767278521784870563002004863684327263369 892992582425207763444903638163579943336675303672392899704135950292173981551477 910951021519481766697725402398790913912397162042185402805154508733328417702001 804006847577858213857276683818230710047453005139139667716341306846389704882211 117330337891046685700506116338365517710330952377858373682588581561493590356344 396615051617659058390060840420221784948809638987742061119872596341489814894850 682537496220161689151332305430100742745867895743003847994242185002188956372058 780559518499748421767468643675436697489802127870638082382460072192174671962449 318377002421176012310579561143050248487724452807210827378608253930922575465609 758232443911916706760808513538640881874978514734826761835172048385846943603855 492604597682529008518600935800180777004671628952498382276819169232922537939142 186998550798886072679608622812833220176771217948864207778983279777751697813331 232099637965603366861664865610547336462901383745545144356489624776408248314464 339101850244064471948525720138876878300104477326958210877235272001106010483470 930900990598518246218184425433035562808550083560402087756845383897745312486058 528150281771683301576713280687872391095257700346591679009673900302250802058661 917169523769110122112471142310540935558528536471363517498724369350569334738615 747997631292958965267333373751888488026002820293562764577315306825910370964708 297537913728399579248051866053916626676649592441954748728966620218401203946225 011341880799419103111125228444671024580516907096231552663631623898145815131533 836155572975118570719962112188717985381314193242745544442801424090451144033806 615364809891502916939128661257109876061569591542922664401747924762369072245509 900082796895047488592305271263346587638894530388959868846963948411219765905478 433916513968654296761311525869659907649570571364299979687845385495978005613359 745290983265601808454958791821559179646022964847233793727713098715190581560884 053711886737896157633309380527887600550785704041875407070634338684112450828053 771249043094420026745704022696397445917911540888380588361834671463648035951554 374702378324099471845247722224971016511253799016888548116206331882714702631078 046380074438074798499848283569671849385491563692664009015645799967101273253010 398375941486678625491256140645360425655119230608084562418047555621891690372569 657744144680941510618907861951128628718801282982813226199457545387492835436925 706684958604115351439648893541225069203848090544026077291677802092511594512559 180997663001278020376065270183054152557203319743179999298027747113743056955551 659822841678942684649735230554403204571710240618342362833575417878408710702548 331733396791296011706400252283863198848949893645707210454431506776960334516286 709827009004833637240751763944002067842807553305741779604693373960389530669090 915425475236550326867655760540413804262558730636374822550799207764849725049696 592811365758565355607435970846158060378788180541284643786877059788843126564513 799180512905994478164228258696246557614688476148935774184289241248051709167443 497008110685036577659415573363361098571867434611732656232025830852906763976144 748526954824929204198276006556579257207279115188903169773863796089163100617531 201743283471415631847012532779548922436967271301440896586346030896854556566078 784439188708853674239310107516826468692940407632032476582476539845470337298002 385726816367464308548619864479015411607072537142242217756734597869633016003589 793298639050275220656022570522877273115619123738703009151732022748103274307457 479194946352552533589945698107984231069889529288891592308227165049543689880703 236719477407867374142756976764142138886986075417133469259008647621128949630790 136787469492672586917588543016642690893298169502980942218290377936093380354078 398300649807766183225344446105719477254695037052834166381963394826783035631306 978892182674559282895085778554630999352049304816798961538107852255431956750004 667185735438004472690554083827903095481579924843258767887479166015874788243190 959656141081025521914511971825615402062385888876187619147277497152268757735181 824022809172523646449870295128225323110895031221788590107870128295815224684376 599632633121771698412924846689663888305417762872607841409651809528122002278385 749566125869351267299313361111727596648951553723626624813453868356713686192739 424422570624860682710788101034490838780018840222147986037693779808132338493698 702774868290070083500937429304411149055279242577793985742645432999319441015788 815447939443872313233494213841430152241438122584690853060865702644311780041392 024589904156252028006002240597004472134282184325614165050574066651497217305092 429889397924349645109720269738907375450330197311047839788156916648393101692386 719277358052338509733767073648501294082694113124178838845051927793559231593819 210905341892884942676604469758966453428201949747326908392955577386784022243279 697887145437015664198896618245989675166097288069391278120857298977368125971189 504501099013173632809763634338901588645249713202903176514601751403977809268521 097532689923819857423946419065085060581389666233947168140618842386662694254338 570832811061038230117752723938800831127515150684500415215299506472996816981811 326884513276638165161636266057834818686447499614754097992428283137816834911865 813183456538966442614140388287727827262808108586778475321261416036288490579057 013020545376997723091423774803546847281734702283485462965917660577843037885751 985391808164778238431435140596183792565835037318111334313001873751292868576084 296238133305714598114650148090163255928507947033009581577682111324279207691760 183224036444439011418881708298634760146645299843559058599750788702415258068852 420529180001954670956604746412280321052959406336150599977001077088955036483888 957636120557134035917987358937124465629334736918563365323269647502471859585614 339289238434746382567732266927592730061306345323047232260888672561703617602925 457249410236310156391056895270907387628022190054811318985525734027716668777166 144725887500151759258326905371188133051009177809599836754450761274400881095583 889237859633670216348193101224472975717385908508184951152246321054126546637491 545913476548696484330907341255056400379852269268301140975428992237343827963801 117508782797811882087020228221190091775080561337540857273393109206363045614230 415631199157231034427151975129265512845129892610577861275669210599747039695953 255159849765305806660479779302934543263607314921824181301764030252120240643280 482255947541765648694114859574168636115573032122225853115406011400819566408065 536406321076734284729449272593060415079187959255519406136768195794265276337775 826204857326705763295262317968457948527192070871277466840692824843443938415193 557629237132175641062704413168370194740149689735129627493993283563958796367349 986089453825954706472938071487029005045950804296303555483908243370880712588792 762026445432638045134424576525742344454305275891557292802716519666215506681749 554390549404966644367482125926722581828209390423255984713566271416081792155448 834717539701433582071139030777241679137074480339769982660099341282881662511865 320413837702719722023559707754373050737675609973765354556818257864673614740984 738061327016738319630329779869182068427210471165417185125397357967550386171510 999325727652770059561663678346181982121275392032903359370322988321454735166485 282930682065358537214888034740688982415360138295283682097559509626079535463705 463067917865004693673823497425962498860181304954378548783084275525521147227773 245857202615390621479459577382441422806862733812058325472326047842634742711848 085161245152808031578485050262371677093959893808417167478859234992038973910283 933313561293849764524840730124582815138417858699174157121855235061130899872072 629428477535741578591819694430092400055115437267092948234362569749679661183338 230028953090688589067081733647008254367132167878333024654945774623582217104273 407635814694502901566916621607299529619812894175349147189586749568162093998965 053276762835938781344866406231054948135007596975978135811940183099625532569829 907595946578239515619764026288013169129852618761278751915355261176835259850045 869865196647913672988433653776933898866641072826702999462581869239541873350148 885344091447797214889395008503533874399166200147699501338781954735116637574743 709401752450944969390441180060258425470012323654532811415663006623312012920673 245095013753022508457735985225861094514094420511263298904078993513914246400230 185914812308776753031289408178019598089519120861710410344615986314640288093976 642419149969827953122051935164279007539267502825817357894612968295594887185320 423299345104008201730829833722003188393156656409803009949134501180960230841741 156170805235596471246209792119459751954818949068044360360239374887205240405884 682009213275122715210837996206422066717855407098213587403471848681852466221022 513910728870134017411162687778062574670832999156880716713600986016994604701689 949272128951877204040114249858065044250591565426846460866807873912954749995906 767057457422007738835891829961789577338784155971215084953427608700721652320198 735921011963853298244194646858521829376262661426338895261008645572343728199524 733654360516166949431421004631125254551960785517599038126298198378707212686822 681235567842687165135481622367186124092222159782790749152120941160029115655142 915253194208948023300914431512353614610338025319822974898179379280479144686788 167636997518157324746717199446980815077861125595419434834359063011866929241629 421296611138999514547264543114943040069092314106194125681046792650228382794472 843926254441496858782072185596670125718764360246985160378899569469717878889607 089266565528044732614706406687976643749993874509965496334782662710310659082177 461726924240894938224735579230822865902105967853253890545615632940346348295210 903358818548212508010915974131823637243700538159154244509849553541338494205971 377461026711738555896575165313294827754264437949160328926398675672441722524625 681540260212308957916140464458511059719039736964267892818014672871699595632663 337681917440209047941931064049711505555507021906873261150363039041119148245172 269987877213925775820516001116098980085213355594435891936118573160154021153713 084826574423370716767921516518366370896093520814877190526295586794994083706385 875149503541222546035113580941460370585185616965361228441712813176487761966030 527217465602256864752376011055352354577792784745946813131410394825505665512972 930883451186955028017775578508589047913705008877938872528749103873016513691015 658230775692155858730517252874447381991198330854100682249498100369916830685257 737559631506799292232119517254429532097995493224292520270246396889131407280167 407285149090237810835393147880318385593400998806766531605374568006367073373496 785859512192702588266314504645498239943003252155486726873420820696424777621789 862421649717239922761477336688338367622764213594840955689693472404971067566479 796996332090821258467541540412814675787402963387031287372205529592813437644966 535789096882191063596752410680685113933164877220449029308613314394153198042872 253400589039065107886774743091937596733352055147530222241643058497441354391810 045797818421090561031630657409038020532031095033255622446875418866958316480685 325027280359289677124088442923777138931543469486126782136807496370769206089019 986596115479542302059286063127783442371070821925427064010760143155819100161456 573361354515975843741566108291206190973648833052500328215106641851753700970635 868648109379923488498949026932826942163339629056910609908498601895253794990879 950711960230496180633284302425859826787287100917025763789950157309998397766050 055876877352111717843669514415527077472122723010185497003868877902785414651847 702129304313636495459575928513256937132470794597354861032491748981268819300923 586546768198795250281150543031938791906984819067193817966880844225556212915367 031916242267873744971014638237188886017989536857373976988645142350077552115415 731521394930738716129729344929341352348611635042542555769265604519385879255583 355869216798084311699628822391834112677146123142748623536555270780258452635104 712634055250746318501387073760419917801047971604860129982895785916224841658142 548170980658861227047473579918871548713051106495161867415485998829665183835505 926791429288773273258181586087970458052280191206402041775492300867176689140407 500509260099127805735937291895807752594618401860613890723511074395228342983390 783201709033479643609338029880080335087191734112175751473284920580643486775174 780426276788112860806246641033912063988952606684450003085942167306497187385446 277085247342417769508642484218586655854352090114851829980141270848602964449939 504832643454958479659293039975830058624115220102741723329805009570603333236760 333740095798478213031336877844591748435668767890255938034088935578076482036563 288562733647326993800284965249177312526859743943202067555959392118805991889499 047787552357018802507039557931603274528609024539359812378376423903309707259467 904764865076850583545775041142523569171285426520377353921089916493318811728797 981939366555555874663651988224232274928069493485272534832741301363483259381439 877695720592596124200136061378651517322158188424917801259613896247364509956059 488998842339937749850028811151059807688308971162388937178592754443068669533381 732635710804437728762827059922058418029002816176615385190174795327447514115300 629869091855829635465508303996707753664945903179925278628671276708998209969418 064179069006472888112236345049458522195064686137801698461100220762831161960797 905832068857880485785115058322470738132797311818755919522909608665506857274612 407779508089723483658088615140823778463857570745704765524847366296413853571933 292365396249486329703631076533361085795762730457297569691006359250037956530592 954519666609838989031906175884943214476360867578440537256721348288534608856858 891306744353364826140317960978087990741415931655932422267237908662209199545854 926489803189505275553734767731503621237041326460660893368291912273736035861504 901989910773390915794853335051178470969983346805742605686415298180333548313312 431611866567664064849076889059676015322375618873556454249811032422545415894510 872098474833265466388282504131458488254571787757646982207069238213320773548117 367535818532553742749811499844911062146665089816292351392649411499695301247410 819685996243832388671174843459935773573452928511741956575016048648744453775735 414524016287825693769515710927041342312171021075037732148615360420723865927357 751894478576303493731519873118266556033723634176922959738228410012858298660744 727681350786663047138141363927965997014929801791214768917798297680503465917502 942153586999954499726193982689624109226208343066560821874529558493908804739619 401209123888624322683421951844868439024084091830981220341500531333028880791624 005304359721136971654918485186493217416599547469341988841882152108393015076848 819000805778226184940831833048997535558265441377465501609017457524354866510496 416233412211834739811443545787517784802483882984351907936552921875176998774830 237597189927855841895966276061717377384791468362733426852733830063688478269072 923874417371433816849870063448193237708804077285900157012443589218367986886260 320509544449706172081607751452619169882280017437271960601833829986075178796729 946795914387650977909661490242108950407596849064139436972859489209610461919312 318558329651287441658303174648989754668650265213757365705811391277814816860171 589051761603063707995426899456773082003128723325453427905322791671805132006156 944448998755938474482311808417519200804822510455273667613198816092493021333727 151309964497817280383354899535761088532766120687570197335961465186771758908355 184884435220921203270355273135683339143109455088029550821872360616832787849781 001692950828798754748426966149199856764494381719014718650763550922365492730194 912131591025984904699101896369668532032936551667111053255504626078489760355216 898622094853705151813120763889352193098852598654733700166670536444493600094988 201765542359356430737144439131257157782836748833003330174085730861190719454610 960215459310125829846316737761506071728163021096228094962825593050416986114904 408206682335852947319380935916349007174199838803077825375288732193634119859456 528319340079615381371504188768245781327632252602997322954073405350026213122486 204168661665620724727974322331762189261600103530389224628491179390016649683663 137785679756232288016092066145473994850772963383893670123625824209674140574909 732563344503701964498253593615607626330313663751043972887986779245061216833201 307978061098540925680662579503264600547050949858764259104770004206759174003376 182247108904269248328985496421113810453811094687760469519652288182936856212848 070372527863906471267027669585800745551154253646186459289445822477066929982900 105161218071863706641375344664646006521493646246734238702715688332896313343304 799378656194655434979319227639796889622531635141178947280145013890739365317293 828514202086814353242598112837599727818897172100667997600712164559045284979068 965556367936416652869058675553173031542714964442511464977195002375155975723251 041109734397231011519362820089372918301861998966393551534655939625963355233930 127507875627317845546704942648653748211525750872172943657056866810475299439126 723965991726704701049708409244029953916328239001306172006038413742626864038927 120627909141551462154935130373981769673290822337083384653861948287201094828104 345433302802589574150370571389982642538138403022353969794576767410611517984785 716986380995220962146309853754267411721193271891658398014229102442972199524651 332792636201391401115078484944644733082293443503916751604032522278574040693025 429017671137640328208395618985486441179154103018027358206573390158967677609470 312763802445958290822565929928156393423689102635900819136433647475188069453228 627778119428293740433074263149745264835014045084989488346752644715027724251813 965964953493144490857072311327209943300475610543724787670853387026389938293862 621472455497337670099902455782991879721259918926241888106314974364206530695723 129627579556367080260877899014308972913311759803729644397968907975848988492675 556945067136749116114471104336719852175910987922417457025867551265184046923312 216333133936710949034659808982254113281757827841536952153717648123830082116043 226669470415005613724347399181877065544963034148208069490309704360557452723218 480502259735986782189706240821692836139942625828231806714355145346314641028709 099107346335321936409346223678038207442145560803210288393345894547929682127363 273128883309256209155528999832537773777842859334820907202925423245023887816215 169102161859997359940465206341616672718858645065444836922480257728706993114565 143326627759538260656025340333924841209233217637055700237202420291617058794220 845347676162849265387116226443782458849600080279182545061387090117597252473098 276046114859070767403696955965887423816049796791997493765292315911963215736460 091079201787464594726367042022553112918776298318413547865852772139172660374905 413401078511547303963830569132699812646607685837323626461923644333630476656169 896362161479279545305574970613829312782768471865378107168581744466687156595773 568092043900802311624380330593013699434743868953632109848316104842448878581664 025630212534468519978079980293712080849369372847972977860581144081868426712796 397340672110382124963373761928516431184331684418171202175068040639181605372630 908299847465712748292149781901548888164037869887536017816170125311707908109112 153100636667987655881979441080976364381275808077081403295021187148778434708966 127769990707463717536578642868950338253614314056796419866755708469573997875758 389103504328671008759880504787325420026632826138940434251345307667224334409050 075811710373083914150197361724848700785481399962958014231229257480936866550738 712432358563407706367052028993942583352102409352023339615198536180129572736531 581661610961047192612761358914730649058441968797094647254676240495319571676239 611662286261674236734877745355893910300715959585765262776116036350570899849613 238634241760731630139000574231285985811884981445333749697981221913057144839247 106925711157904546511019741992394947740932812170834893775147560116357080954778 369865792814752414216818087608034831136827546821910165322829550008509412431787 607885278435757783381352977471105418619879424507565654710693425589032867716370 869653052864877892431696716205517769401448344132436023293054530254996178452252 922857232953044855510816052991147036868495847023376560841022319420442141549523 101628429977091705828318307177912613249921417536606677699312993620932375376318 168037798220420869935147469657644016071802245319330668412155250937117146590254 060768367651590458279626860843460594661340461779446099030542652237922993953966 334362379944822051224248647566191999767837036321566601810456017690358829948775 299457805151295724952557121085156247375506424608327241075806879514881152068453 189128408917050067583604141303781712140031576339841020037906083721708178310153 856441562260981450299853490442280335371859331079302743197851919502209182605280 079871272351686070485083038188162420777396856635074608052806853665552287545813 837508184047707581819139255944110556478705090385428540458439428629692603183459 116860535202937718658279559489683411810876186302784118310754258305307265552630 745704192986113440325834875416622337935524861106228671941909548621368617350193 296149373558125379911026731154826487478962597095292319531458437729140246301813 963762263428612237763488685872076276620310859474746384561418564745639559796985 947375892687690639448242155559539601932202064899418674968092384018758515542867 447626366940275905470492373188807572971902618131514381674695997612859149256417 353673611767620591347454898562270299678772372378824339570829246428343984830374 580845092043542760034455952260477768745102241713265498181503622888634035399476 784581131680124760474530167028458038812853895497271804707941885673004548759924 471582124707086877737209416002417988899698556197492873735571563613175869974062 397833438338719067471757244758071124977133701915259480260995160616648462125400 865531837799744384634088722744549262364850441168641936813515201368086780763900 296654958027259966457948566436379497678540718824028644572715164629317221673494 188118924850715539785077924455550579203324719710975374307676487732112339766198 306253260869594119717560509081068320220613933063548824971084570747970522137248 340474921792258652193529867065568984721130164186654654529405149801731875795168 109539562852541685497184897574413735506867302728100152263308533072902234223538 661595820327654292533652774350760848458029785573129916318476524185060275468169 328585745335689691962011584189597627976394628021598653207123009414772921653556 920573389863587602671948186275339129708998457938604072693830045961490226583762 668493350091697497732188002699557449563140220660113167628363484878342621276744 015436508379897470032232392104083717069311908691537119568552601591861773761999 263390786674517677179765393692332393778653604847461751831061496458691407448329 392407913714345614530495827960958767987855993756258592603020110503458438218052 726649638153827568251796373084173698284250345716013929329427735684825875714133 968485277577129734552092916340256832058849717396491851805478017220158199393771 347378101869818045132955317940986637380751410574016060029809627447743357942898 301848704505793852586927579495129646154910849371343910898674916879763346607655 281307563703584436740013467151516970240906045327934712654129214250782458741627 893172260649333605864089706277463680930609670565446435476474252903004952455126 990771284847733889337119743221146184322713883399950978580499976311813052034232 303484849904590498555541708327261370848396310417607881069335928910953585058723 995234520441429329132424758290069098711791224113503289007295046041626843085057 200537350885217783681140491374071088252417142758306141598677461434915762318230 532245004463533529339405258806790539629600856866648633215838343845349390257528 035161467212355204946516791664202238232828176272801042591774208693254008211082 622119083996457725080765846615182773511731669734349965059798323299169281701828 638120418883670846359795478211029647470087779124829145126398309731157175308356 986286101831703944659755864661534093294134921778512527281344575205154531407734 549163406187132202896115263953430699542154341564360147051734328154923357133015 163489116606267221476179365377418819803703302987381748527007740252298727040114 242840345858217440626799420128981807485894767185393104698718132698253843674447 357756844574663003143242230106708286865465424617128415253995973585982419296739 838124004767496185682566775401539494245766168835465031401412758059216422626213 342184827003486328005258396707469908616130448055066589315312287750104265601958 685632210540065250453608239169065622144009625732777253075180476451794348810723 144452615684887303378390281848332568031282614278679346829288249505344086550135 992099815186537865934727989639581277949534996400718084191795878539238075701676 889937221960885851887455179319286171661755969565061547711450972598646592975937 724220712861109553149136901368369294721060535742325018665308525143709655351833 452003934387671840507682421365486436202270496142192747002062471129212803108204 323590728136550163005725638154729278404551038291366766172741523543666076335402 180131451685130016189129739290940739079053673459498804854058561066911862175256 695457030613072987378507018922853429133383827481208248597293888952925586892649 160715225839204784393115436664046587103135546091626686311924039440132279090202 439466530206784976574155748569184436356653466982340029724598902429147520416677 289050377871084778149893995637240821027415036875545003222363705374051188138361 467953888083035760533767794601018604741496933731770849530411323668314012032506 558331144233900941383566223638844369813153933729496002177031159716486657033535 396721033662753118771048649634726705887848480424544166445134493144178315924422 696203486017909444410756904162862293073763270432461430952320042959141380888452 347789687446730156748759160546802129200230765702098874332710967141584451415892 890372900911650745934515857772964245814057701556929853271586010691873737465599 968806056695070112175660129481563253637763197193057526619236625677538846678255 998708642868954603379225425320103204689353724042679862519642992951017959713532 419132891489697633460971004716555678678765198835307022418003508969415716650660 721525170398612976010431768982531683685125334969886449368397980016417855718609 947479518471642888180067318819679290149825760879587871791217762355977452662489 683337339684338086819295938960465040927624067186252221960823937317188310288380 690026891770417308166463429825486965945605734031927505348891058296732280990219 882558745351691613486713015125196607338976999861340626309191386520675655067928 880935935203623932255558270929112244642815933876594160146926601437049153187037 393120802944779106977682577486941526618721857562041488207014020092240316135769 745732588894399701611191094229393630756161511619021992027830803755883168997492 170831305918620430292899749415869359849974618343582522166559491025485886739589 399242493060942172996389382170130811173357386373371512485965549653182141247127 938545545498684790550172173224037308852741310720758466968240299856476988761590 975208495512317737879655777394759751678912142012973127879827787484550170447901 416988192619058640095730905095323441015109249102246486177641509561873669707077 059300510215332020059514769688834635758635873555262870152442915204004352689447 658980058342568580682873499020251559126580191250621979023611956830981185708508 334664446419215031092744166006285040305270265565607779696649710945059885870391 687737241181273141485918043329348669749015963105272977917984944488397893374681 822068916320667317801516375713672428257337737167058703831365746011293767915607 598969051074661472953303761314243999589875642096434091978383442828970941277389 582051683622764953493085385640532472801867579731426288215045210608363286881404 237140240357955166316683271500411672898525606033040559833094580207728947930462 392822183586520292198843003066523406386847702510677170402378512648999998186364 320936202556525735191488602818598362578517484018114342850684642707068147291743 019663546192093848378122397071644929110960529236374228006948574083275410544572 232263137980381413320905031220212688718434210827018131950782077256426934271369 091454074942182995270585122909108125175268656820373829630170374905325588751748 920912561250081457270596643939164475713242954408781282900252055501531991229540 538834430353828928769590298201195664852222574135691636221931241961211294659142 307502633918989584762794220782929677154168893597278712781714446183990348887263 880769936890481550353599958758934525910771357972938235475688628093783029074549 245545662107118366967209610268014655544431092229683337349348782081849563450602 552036996838272942530849581942700079024980833429670587156060434506371873413518 287426414367330940273428194780358932812554668049503276088846851499373514157632 400999307606157133410123432603768976194943572624704658767959885492358105473955 418905527771705788720640380521716650008501632508443998105033593238152008340657 266214510087842998936972283699611888552373955586849570866991309009100004009441 944833729367133714654755812732056281599465886993322602197947210314400065889454 356381217556248192307814631780876069820692520513294013025032444664891367078213 212711579181630640912275761343221812723529775442367441017016258687345918957205 287074467043389281531307148819526451038964559181607222479531410021510312773089 030077469069422165968848038640594342243098800008099251683518241918383776193629 653957474396536775431071068604229882322052856041705807552794149099130049805518 796221126654883696498276596516564187710749902252490978595045178322267334474432 517162155215188127617958511786136471046852823760012769179772636086884497439139 954462357404097047143080731041681699357784647295956786871976941586519587835675 705827011032744770584376939069928714051472348211230514965814478463477483496798 574478754821120007498843759396460043444498966877042361953122501122407539172747 499998880010951442766332869757156650678665501934793306340544731602757980070845 641431027562219487095415076901784788245426170235381461160322452261901110418141 471720418307897758519664662486613871767349856541327769911074052450505957241314 077633421204074584997938634761134238343465145209081082699685961523958014957750 131069606626802200127534692284155538325505222039405404511789725391889002990665 959533160983887318312386442465072232829078591644020206340711042872540180953930 439112060763600712306193033647227583024788347908617760906083926529799911412556 796681173716186256493536548268586092787869775024220446746421656357265464278275 004775844759111678522154909975756862668315269510148947484651535660416915712144 395259501854668874271981338670434051055577647392367258559916068836618734431952 012028153447594073650609888880462850262516084767128479468262086277912236633054 026855966476106007932508920527658168554972916099521294271461400094945725938051 712732838942088146290393310099725766488587018496558509913189288869331446841462 252146986733159943215338907849279534811599383817045499005469750930442333311429 725333179877900682097925398496280795530341874812621344118177104029309897907153 650426506808391404227399210124087817076850906837562259238127834094677475265059 163285332170462259799832904246950551234983934350851614753097134461642831556871 964951293316227705705346081394162485048968489440242917187248195510867619560186 638479927921889397118986238622808609836072897583917777202825224760104956588954 224899849639515983924335139103853502257201989520540099779502886395956998955473 740114282125092261110125644607514508863232665723892475852968132035436696505582 223286414173921468804716707463768084554652995057697155787031957974053538155698 909118320767042284225366810696314460213828391714319880187653639334758742688457 323918837651620572822091719494722694242427729136811538179791941841543079066229 453382056833777030149805387767853351978284683645963798808503521730408456348320 206771018777111472922451114147684056932416774411633676188819914332681766767169 773018133951282934643499062217399527726228874102178794895401983864677324247309 463494662405771185589693698789883031291108657270949361947633855605548392996710 535325839595207896505797653522126567555356040683026336317184550610571118934548 253783719837242477583564596593590560700818546645382932155122709975318381186133 493533526237234876764241190611308539373931143613968599976631067695801791660394 884144139422268059318452992168240125313602619677475010290651120579133250617948 362437379282457128648302214380636874278042861628496862827170911095172593979190 551086762456306330429086769960316390334647765577545743887222168446832062921126 331082702643189935543428107145172675924625306408530427763640205081640820510855 835020085113059762354329496358069812277862505857586806501732398185284629987299 138164117212317404595801320640347158308927703886921032042080805752320648733881 911268905317571436473534408744812054787652694579871057564093264499400691079224 580054075276111489680520316289595144709846807131289281838076832020142909396103 246454117819929539319305983492573921565261562896351303597774425376407942876933 151349902374220859903750018314624519164157896677460652085161628000095221372886 574689464985398427189320203213013933902830240936993800126954039666100950759617 876302310048286724163002347937209608243682217764531950178501663800573715849250 427195865523536663399955991014694473784601053430527596227678329925012111020142 324047113838152965654816578362677429921856008350868082116913287764989912682487 328082431573905410131196072158170221006046239749538430122321216912284997636898 149762586754606504704483159499341657019543479593889866098452108106037218713890 340633284691076695089414431793944765206885520875477660791036792607105356925659 769127698937867840380566019443238776394362057935286371064978219436257726690237 067836955738519130978443852685886081896544214556345053005657819734869261127780 912255386457831682406077625526469925013566123106650344149963190127469201320431 382983170904185455673379556573263563047963252672046441130942632805309303658039 328885904312551230893672470672413419252633024589980252251332503086625847829083 371072641274558887427061406338821090249555403132518306324185712509075959296812 160704658937229250195124500727486566785340850211630678250353704898134106538252 274668340800059809489051044118869927085376682511787337812799410941048703198494 921449865086008480450459504243561469540021815798191028685513670191624562812254 924197731684507804802969423729800590239013899727806163755334048532561416401820 437595501955477008250391049626153868702622191550433457759803397762331120601540 307832211017882373098290100681953657491230934845215338890240219272106031402129 764524737350391758310652662351616580790692470094894656850125581455109625664246 003324018107971450228477504372169132294521254741928774031587403856819752543891 891181232474174412743612123015845991946125469790618766521362844917060255236803 912029618738314265268171329533190877965778479871507390735371831574703615583623 298104742729577458807726725746899869467638898063259756243715831755419568654900 767085955431029492317433607548241442334072483612654742677439281299635048477133 284546835316913824948265482469584794714803553256103827719642261500996698617412 287469939244878550001667085545276316810241302141811463214423833473671114652039 404295006108271783855086708544022406144204791392046230099583870256181489890542 286608580143327343448558435122527833809949345712425702994608966719485833443489 515547535306897238051522531989544992577180149981668912428741022970179502559724 149196432417053753554873593284232288632434983018482159297127113778703839812565 271689514519918571884158570971350131701505007523690519922838520877952253796644 546166556549535516669666906913162520365167678569000460505261425372509965121485 943309713053630083501038532633133792809591867897265419217785253600969646961700 012720766124910978026804866908588090474952310244434317182476128780675401711227 226775783948610209919938699642551900530325950406247166372966267556086614096919 928348623366561912863487090630809864398415290529461265636034957002008953704083 808132353817146398888351586064469198573246980150546681614083029724382724588818 643789677128767370930565133906157117426439936203181845754095669303198368161187 133192344157627637205954966862176317260447065380279399916462584666952349083224 953864915635673478401254839269272188891659773984077222673023488971787261142225 248491846728124239468257536276638470188444324585643177966646279329214081199532 638342015989723670217345735023854976362976273583895519997384413805718258732593 339981926081911249871525202312847052502918510724782165815783494618217821216313 338201206872113224493578155232566664548193057081443145117790735840412159601786 789884923039928535355347876730704949356233105463453016577464127729368988326705 462489080551538405901918759353849001278926121497426475590851992221057517163206 007649253545031273180455250704318943317116547658076154567345737571500438081712 882224848002690289607775312639357464090550032621476721872829307167763354094886 704380594543095561608353805445798061346178838090051338725462203630392732593925 638138473270875551583881660739337220190984341112828512992741974432284469083924 073156652835774805183800620024665905810977707255308981890817018430159953057484 068755903033705932928300474499922362708705721590484520264113310151003979331854 259193198787782977042201574966536964587418767472944244928761904914575506073704 390171172474352982300280227894863557537941802973571750630786327028649836262486 619603085340609741381093750792469659313144239648700534608142768582915405096291 870181409677205940148281472315029730568195116258037472481654913166073327010769 960245171254233447766345462181598625421174771305949910897881643114506692623880 718473375127864509133040609972540462206095217600092180289998820080978311209250 173401525709223196153115997939386879181151596585947948430815831390305882134809 459688659656657899215633129464574455059826678459069565138322978156909770591985 091403460558096809390343846969311439997677403218575726931694752686418230654961 821449996426687315770626648385227831356420810940749026366215574527520962297731 921534728972330350798761286840755005960164107234606456447550233909808448605720 218093543346352065424285973730184584131690848504866551476159471282322976561454 401370461526873927746729925148813740263139274860569977699744278541457010144008 812782777325699224334680449311909346371445656695872991048782662607300900308415 622646919936331381821383336233677644138470222414165534438845301739864394061652 336176706338080265353736255247366142169609783836524633940452521796179819404277 132191905098062000762475143001603906073245830161624099966753351264615008411949 219902795454089453792365774020196963184775430520732058591961133747791854808979 954707680428068885822836320809096348175935082230829569790109875919509305114331 280635232622405005815970183954387414314320758982945485615859620596646528635378 289629712086508906923825627864786722194074134339419632484640777519787990971746 295816591346217077405482087845941384043560070900708393827979297225049520266947 693099436740976084710315888160693580481500756319729127582087019930924894282529 929985579824400085070176128421535372242931060691599271738162662079438152035817 745228483757982695564388548263663542301693875653151357462936853103522142861646 710653348586772019459672592473986790448618410968689061309880931536687420613622 812003431805864700598874763668249250854605644724717205927521235943152492159410 666808724195536975576580340704747445903692322761925664171693685206249034538406 927782522222684342356970477410117520878641118134953369277780026928232905670906 429916727939169111155566483391636699861156121914496022827471854602312448387459 701004867966619905308390745223189314125235195682076076204060942039491608757903 209582806668103196534320248944600739867284232423433861365840239041974858663217 541588895197162853716878063908351155321762713687761973373362323723136487810141 621811371263518673127366161738096810884263813156965023235664675676791437994863 962359141338791963350088802841726613362107209252436523738412773463945642569554 063374630369894956560825085678788854500156781012551401693978740724620888531243 012341005326003385512613516682801364016735943023924357193969835532353546657538 447295273577036956920575503613506641650463077034883159188578095456579529467535 671554324345190134570051479185682746924307364714158817961879125880310369270831 730362553031423653106890545529812951229407901457807318645559766544753622832426 568153929415620293305414012824516429356278726131846747614814052000375052779352 521072400980118997431339600532377469148288270872478484158812382899955193748972 427057968556877794652601295771748229790889935822893234288947385433873346544014 352486240199949346878424074060004743463810056665372749985228941811616610535770 665662368052129455211633878768899268398351646532002442467665976734841633764668 630655231421486764367406547533377740876298135124274813831969202253205310097789 113862684560144835407335565922675322128866711871707234331685537727664699045488 503275116859001422561037908977509762231844215752392202156485792043511054202641 861854981466442158794614623887916775708669656806588739482375829968518836642458 477598160834201490153257618596012967643167863621248857023385820339257950595319 677462719643051324983915178148674276568887833010926112217379052930155061367375 686909554257125826225625072247926736671783419597311706109126286984013721198389 512189194055272853221739795729590029184325121454095933076681654150478770034799 975306284507502375773998497718721218788425644080616525008126705293762337155831 428949280692058627751324687770626476345906836500271338647500541613465914983949 532047315936489824011462801417035048484901804290688737291968020662140949465712 439702487480877586686136123846402296264036707246880627652362630557928632559619 186570021728662452378908864826872426560906983986407949287735901151464715162728 127624915308693557574698076398926988986837561851274158028290726953590594606612 142554925356278114786800105561937619021498306556357047052695313351728799201509 699042450919262473229017830003439790106411649313116258925516098180963430064649 156784887418023321011777792408920660233025492617308267528580234188515740622590 348808299919727625723460341022907068963600262897602837209563466164654359936668 136569071780273583134565934140084535255576657263025871197334528122570098849605 679090360873786918198508199695711936102628896244392610883547631684339497421390 192081705441137158468805476943312700981762654302950566882840569283398645319701 443532548709071029998805507525571500992233568363887730249205114792291176333772 162931704762498420823786690172034000727145598686517091868956085910745231542683 333139773647831940836091670937234217389979171917660137092268536456063661390795 300256267374382977841982160267410328756967872575826147450133540340994650274203 899362760656268329245368561623492412898096014776333539993221550321493561270258 077528945563932203753421333821997321327960530860620133453211588316388057422454 108952981143398663803925697209580010654335769734441271692923293173096228992022 071378148708976190847101232286411909687747627797088157978505771470091719702819 599781852983299480478041728442998475461956239404111389086294146738889614173865 681796119919589057361601136479498468159121936724155879831098614055243256026319 712873416925911877496949102890663258592180705686153751998994277916791545965681 484388238674539668993306955945262187242664074326966741578515543210769387878563 933664724412509768049060416031700164227366550489014526732626490793548782904836 787939904057730687374025597045998881039503312726225111560819673603541211958445 318800818628704291187608152709282971525599120774446842522950263462679908580280 540585795529669917128667273783798106198489068508931935274641294865396361901543 521824801151759892576016159371829152386075858504757676523916901182386849961446 628750577877442405534797544274136588133087093372636687755533553601124117218500 469091390346201650590977588506606589043850767675967473756524010981196371943975 740465085252776825789569120200524829981008457937903084847581328028510968384187 745419221262701516597596193227353813237072777742076433715306144912405091169137 191162179556762029070320184141147657192368979423213240039143803798096747413435 756947607698592954142173723164926951702331859521834889249291872165798151339010 825624981949244562479244319216663631604963712035214959878492647832487034670881 576105213267256297701255289793436201280498194132828033775814729544644087544521 529214355150498674183099019895329301085205625826926987021379267401656175038271 946860765163152675136802476366843743273492827069126199000815554978818204327999 729160153016624441025565806482893651109735532560590181667304722797191662214206 062345748951281489507595635531531000667784169795965569652628888506349481551185 025673937855578205444016434891410697290116934075452731961476058109244385217189 950508051112225927914494332150076611521458713832115755164830224255080643924585 845852494715776526342533052173936526163123954731393969395975677938643387636932 835800925827546191350946589778251223325960614888087157734960361722864802318814 366754693829888141294920124408795972423822202418927318887813647166676597367034 451015248825235432036295771112075244900933571816127790807536218541808748531002 936994932175066851247449110912036112105416350584240249033175394287511939089806 376378480857111867890624851191624154598384127178941958597076556163087221193395 379202896777173561040788200223347351223946963893780698278113565917604746139885 776716281021382931707897092083229786288174772670705024843326091894861599223081 746048854431250432481600646949573077680738079170332965728128086971967471326865 608404042326075524231875227035382874637467001995984927785926913854746370574181 988738773901504218413993374604361501328476576649301773839436992829782729521305 728486726074714935463548355759973851088290576668715352067829769281161573134755 812263256739594900670896943659043385584500237596578157735836485337054383253495 389874710070791222883376584876801901688698232147323784656792822097070615217795 452791680606975733526982751581710115845091895509470198752933305261348632716206 538826744225217143609340406895544106905526094120500370098422171330659313114872 275206911311647516352917600916646679627171384045420488850741627002889115843567 512965434030923219882747002421742987286104037235202165150633220829731938517475 391198409679977764135228751983738323993050469425003731454785106343283927090851 252155606361274847587241823730875320063339067011322636484485694754381351397157 503614624114957768140973701046868640159416626219515195748524018475953928821596 305142561610273500988007432522411557922769005421798116826014185619879467110551 322553148951511219401179857891751674853074448978436943925613069189325952029157 062845945566496891890138094539784221786803992205126302832291657656492094355859 414439126904987141739902083071894741323006522508404721141843208850870434050480 418474132691712858657825126915037195608903899709548970963521210254058037848928 888185820391569938694827550725308386531896514647644545349083653362620044356213 288238750075769442058701342082922194408460383221618650453687132735735345003555 165538969758080378099490579324586577014235288164163134649018465098597285974172 512880615226647491338217111320153489479876140047123035565923921385826650566543 219913701888111546491947027228421614152880173605931351109869478941105117925721 433951970736034499772597047399142568047535103625555861410503421188743628065306 646444636893229881266199857195775473948123125115350818388461683968143697989353 531804391351793311646870547454006386622750702478728488655085936390201041148925 957113596657428284722968403649514176128160792390238152298292638126770490436987 166461709523651199049184209297301833422959405815171932720908455048054438848508 850693674424373465170600955412438316691040506460547961489521000610120365920460 431010385995278519634441204929416645582521338710383246395665863579659980655533 059064473534139320766984676302252332337320485394157761563135922514540503317556 263960232347646990551629293947442235318612430811654406861597828368030284712279 995093704126708608850641716721474130673429210086730712519483156438528980363536 907308536421487617929891888087840457698592078753587766347415045787692096716264 303995502549195263275595040516707014782510958282467501334811716010504135365959 086874892183496899326409165088379825002781455120626728705501807334979765977991 003015621765677931321490385666122975448876306929841684979378833547905382825221 607570928364265420552343396658183819119540138692174223543953663511631774670126 784206216276534633626437983008991983282150624061185758751809106651051738749989 104819527517182390197294527045025682923039594218420378368401781095891766995697 011942852218957438169399934103127563595253253886117380220844297648988056359018 034230836376333127035854303052595673757062684120907718312482400357939144131781 941664578445022346606124772238806901392403155581750793783816317285871994458305 300306997834276974532393921773105390573104991342139871927057115006064851592810 225131455961710523775406692408817978772922442326862531924603765462403993050410 762975107152043626266280766380804834221186926161973788953385336087522340458618 325305171595789235206446397256647808558309702820186351851105056273958198253557 957976539923868071618905621545131894747404334723112819981534420457219999810119 748029435006282149555715614864504899540432036468168314190441400028969574612355 903530434831957951636209571914998258331862412441184431162245987415305118008381 360287275925753198369990795631442595264830038281336787119890695512631920286669 384760197919435444044280927997705678091276322244879057847358931525280613791941 352073879248122373542948307203584002981402715585238959033972944690756566940488 217839494940161662667487169005832784247250041937076428139408529104166526451592 269028402288356244035015837508712890539123614727597548626774086816729774082757 010487080142907907265333291687395001673354778847704684613340898594207780006198 477715880383248095799598827815518183137109728689083322357531871850477628965427 343143037018879123668438060196657874729059489390534580267611649038281603425547 255659297955995936648520291998649414540632434684798717269719066833184779012305 814092352237980357376686877357523039052812263972637180270275553256543940369560 608927921295781868547150436226340280657342193817017946519802180184850838772728 333418769640747897142861973459571352183829037126506182764858584481152892395882 603729050272866825317911846909095718163469299606629124209344385929362691294307 715776823463702708972123298696009288631797010324133884023330587369745564051647 001338546471599621161468910014934934637620472903617700552789844439829582446186 148725802734823023071346946216527878833004899696460998928822256898278934746240 578757947314453757948740984440426607765873324387449202960996798148823560322972 893578002514993002659568718595904610512298366942139352984932761587394131570174 334776802688228870813356775082930054410890412430957809423849387087766950232894 871825538475546660099194514291253820134390576857654419605915350747825353217992 395447510779974564851906043410828642323466725866298179773790335551544942608543 945340962066544306216007663201292703287933384079401686570969008980145522933420 321415953978700679932476455155732434772842891464133317822644115092847088425064 874293380474857132750933490210736990262651602125892353646577839620488299875275 200145246108447151939016602842028308538681694150759287921663814393544016619968 211900018922923888531631552466757801172515748558072053215122793620555642694309 551004422315424901160558071105800374542977424388173764032989936134215686327283 009395624036722219746257785070358873422263722387688926242681212484048520257014 812616698924241262571717931602495257701941878890292627188880056805014911062100 293314558689407391171568810356326246043037468402874317528271593702389470947857 124912902011860953200406367966676915341081735974083714226738935606300657130144 414268943434747022640530120506244988426035564237140561086903114187401753114412 279675021719599889894830777495004155062211307961478503276184992255193220419136 041405783744037658051807168795413670370636090983531893939282139676890570644959 243449474989038611488104644779110584264197593132657699600197353466884050971206 407434426250761415291050416150508181825752190578734662972627570698028390700158 768928300582526051994095052926540262226322317714988902908630856490892218712698 212996129692335460519801632603933585451207350671586465708224156364353452674965 304137130716714779657660207726694615519539577821759739376844349215670287925673 251508230107368806174968062746677945338470572932365021003281898765033697921028 349855026449370053512279883364233451694220451187385497742344327450440778133264 771574527594917427755699069536814750504219484359458125191881527389267083028917 377985151122394722220677775416972479192150588627461999992182951502112641155168 687430023706588534751452253624031056086473432113509365246922586360425281049584 820821787804157908328332457410602490706637573606311594744907045267447696473157 285269733996493106127412062589640982611702208945291113441679705848245652669241 289916915777674151628308022969139134955350718109062650556153623447639449339621 090470541093171313037484444999281861003436210325803394167822822994798384966109 421242067453315395199012112371310974299806681502607933065493649282333478990795 988192499000151493617975426971958344510542709907110892612711131192572322491045 270929993512677637096790759301641853046456520082771128913474783149603122742169 043209906983361492709618798279382276008184438253393312593677195771198271925279 387807432819262377830335876020507419330217514619387959572266660207711961353777 731981027417546467706540224891010509958953889309696306145281847158503217299971 724296643217029629711111140453554567352285696364710981372312237044671816564125 620147361417456804631046548691101468846413755447938959975948916002590104041502 331999007732647150149458399314336549614953716430439313598377273977934039192925 163110462624762097149625694643256786990146607197245788553277030461979238879260 009885329731326036954807290221221556665039602109649093971639842784870325045957 082366882669183984714385909820119441156242067612616286145843946811045599675426 793842746170942318250148242369675628163386636847416894441094311963043209555486 816711124019553429391729566055862092705818827649355434894443183183155313624533 156902828480419256309871129870661548542046989683904393348530976158810103118915 032154187109372086383380989315607345208870661849441612291722936892511012362200 718661311475930022752825233947471303656936175253345221027419948104140572603071 143867522335253614615194792841029937047726255999784168191730212575479784934714 050065732505652844708617913904152303949375653511103618739034407063848468045519 284975121200696393140542554383090033093546486488510485233587586410610376523151 523987765838498659065561710533022843974463049899104094398643506757494895060225 935769232725480381111571715592538577056931047973364566718183543938247214727053 511794329504547071329069752866752269655783974494212857522248662373198358308576 196136835127201395798322907185751914195770899660937202739941753852982905920846 923884603633494613843151868495153681131147100461372449962611490294178677753322 740751786027420019368678603508746685101857025928031022722409493850142617531296 817774929316604284537286871550888609547787829934766695629456458363224317911917 047018373604204570516786374222577743569436158939936634198816409617678012131236 401381086388801937630926048177439441242400322532163644167841388487894540521640 526914346915499217438404749801814826684826974992905352602422526169370540115526 804969179686121017873848297648274063230577376581449458999754936336759166301190 623678534364280021975305285604449903841853349376877943609680538786906885307658 867472287963209966996155966137702907683248557439408443620176445013434255569116 694453596484909046751336020962156731668481835600926291479621144751143045870294 267534873199567391027354427624414414213522392394550561891635046328784376228937 917788418492494886281696339867933538116237549956872893646847390520715318751935 460900224599798698374416204395326256560964571359511717793042930677857439377837 456765098419559878693912679246585930597766166640405006711847341254841004756420 524323718262748198038985943939653630328945141081552851226747607027620332479710 014098008175106288646114333358730895632220166172682620217840854652940751504879 314305083504382151402801297167393869914878199708575628153149783878712349705715 053382295448761450260147355848081066568375889498136482560292519177928913973782 943700222065390108193920348488061886364234256426270532571077836217182470551425 752566009808798017815538039542594012307516654941373546623223758298994912462165 153650372638484931609208433345995971367964660157036554173563564397658545751762 661820162467775478537249139123643858614438370868969137042857697112039198356935 884347680768688788300456250314593019548567682672909263309774522301163757818167 539674395805001859748304135608606178209546322112357096626326196935572327611516 061316157080638998401133758077766814242910693428306297685512718363336413671281 026039306204247821369082949646167581082378461563188616940633057222803378730545 542513740441742751578965760236217196242490237309725592618034623404728038860206 524854196072182086870039236086615087375349601588569846118477549582267617293328 920239754913389853640734635120287785125110474562634916194721473448912816605467 298455968884424549557816586344838120613195462658574693069074094354307144563469 269004548758705413588297037369853427655952134213186931011419293046985935175487 423895188654520621194552329365750136983634966514217125712263547184048585883831 624671410211900388665837946396541752754776960658003830187454987154024007112139 859285719011176768481092732837840969787082822730932362999395982491388524159609 130118144721000759951965449315026206817643243286018013543026769892042488773375 806845985241534456275134150871201187648886110441369656227576565056563657299924 759438174410733263291749749104129520955772036286067813418247380355170368349914 236303591894645404075630215864089693290833762782105680746407887499039343158373 373410189797299201053208947844732466947257649342921070816375063623724999285050 624888098155590922088334871052016751159304801579949897765620721866022849328200 120995708608145248595769171493520056380706027540080577409009389793544561298308 372232951244846599411311285473049588561244026607545554609119485274667209814821 273576852423154389835840174768295044023515863455735586617515135467266741002126 630505976020289204342605853027633755783763866763500227925373448748883271413845 844402950419277432343582136133896594684942710825672904097003805964863600070014 792708292037153492656811553419119055801760778699322524180548423828226858672666 828297389837434366901162045167073078755213480004236503788962262976567743126841 854121912587292512533746535992727804255242648070062217733916603405075204106915 434472166762809360179707532435088716730528795811940872016012672593667675789106 302388457081198190609229784851850446497032956369609002602063669965720319483105 720800834181831154348554041435325519297679160637117020132839570671934736813226 819392992930351940917434403535827092466859696170609353299733044779710256330446 025985121851837999168118990826533622172753918624189880279601426870715702722236 015806016255750738229810216697989203245382287900624751127773938963517787264541 914191899297745603447805401897917475700163122644264638271416344069072125549346 934002192668537229127773663479003831760939021001110286055178673705809935537891 298283308527192414765763166791103324751107431247057467941628694694397240343046 358099094918415201925542379960753169932874782860315548091479274924532860927726 297591092532648705533046743672490639041786930516641996010202265929907705025942 712127995331205731233409254061591160999303815614980782958188682179318355595097 130923733211293829770020834752056668230381236753736577705256870146079944799592 983364543242303158709293259932066230817414067095003728669054986887906048842308 298772561407141356873628167960511087843746610429885226180566519198135683851250 836735365994256063023620508832782684765759382255613719858706150873305010693434 665322585508979520408975244211712263077024182127722754314393657911470639485337 809636167071935028584897452656283350217326772515724260482522133937306904596093 107927438549219738861357403176075061450916042842139159213216093032131790978403 836466560925115694829625443966596664918268049270969323100760463366403041174445 623298902966449645116381236680967170935805452868421280270241880523793389303561 615185372531750395190788026351533057368999360744772860304764769375064233701940 194156090878025655407105231711629702732934268579620654262959008138993978542608 625193545107202437335088430791960194891294476081363346559537692126784279377066 175059054400560368855053086148826138625365606958936796704152989438520927339105 358427061266224979125167618652012370824698513120759275030874174694627327510164 327656016642110551580724779119363929845654669440892339284872664951779928401003 862598182966074459048010125103382100978452618074317584047567002395026088318190 627567351319297736058003766068857167263229125853924144790602543197409847147457 378053005210195175412831939706641544449245810784324692234083824106940557407845 373810146144323681982405059786024496184330483144330959083750672893283315211858 304244458011446542690112330183901856194468634201053721230771471455015136737811 040744856468572550748696504146424154076230562543560928895512927204985513277934 603692060408036253008490658183827753430221979528835596766798712145387584594236 592000310826617089275969661124706701789261094024115831757516715422148978068096 375379545285163999797491757879880578121035397178328053463814280278103067030912 737339897806589397639547712219624725801911649687456154674060675318610215844081 574518324892810785642167950843876749427676336399475311033532940451768803810511 181947976150123266322493055170652911657181752528644658172629434221772914488942 119383720997547611907311663565752605384508260077367398293959769798506068799843 153791155168190849364295015542390149295702511740022542619952955347452165291137 840687652519455926449552144886712437149982821940079659140607635547939824998945 786867637021023755903762570070623311105443510516361369504932520302476308349114 960167276606087626275773826496586777250448835251359480900272544999415585446994 442640566505027725977211859197225798852389484859727642337197820735565840318163 142688438509333378185281561118713123190801817271006610954899052400672893614087 834584065709786877464149456575509599066935687638163207145075974224360444747659 560129309616580724469818969633622719237885825047057082853558293142754510149188 042331340995320969566971926153817346854996474436732695130126689560829048858179 973556252058502394560503107093517972059898832446196500281769094055178767980074 348241046421250203367448514792196168477575200781879049240993356997075143640138 332174319216265350302372513500795793379660718883636764120031300937549020720905 756321032030409308346490964520586635922900821147983901356619653645676947439720 165018971252989561616007992602192188978884440864969049149218418750524559216988 460063980082459449987261092305315193786181813029569634485458885871105999953459 046777184600545556781112544483956977582791668747192957257268580116665041639283 315838600369233190278165613684220259349964134903784292515337221498849310397316 861801266207783265258097219032060824170533211635839617264800351413920254399496 121101870464569376257916819947320768219250682557825699396073123952244130036983 177681910051279799796083829676162757896957816221227010687135075638081232245991 382665053835919738076459242244088118419582495747918325043471623764869165047933 899553051067221681830613892383695193693411557919968539429297455555743597489219 088802583586005848719560097983533477805381652531276039396342406644604980980854 364157807893677254955936484383744621078930802197610671145165746901235843507685 522053961053102708495381518286423476347409805917516759066650173914535624249774 785710843653728242296815572745448559867044906961934087746680876430259648747134 252655847687160954366523798489991939989097006478217531312267809845799793509696 900230965791750582757309567810826314835655035737798597336884833427147463521162 879528468639471589091236246513491305624290070237617119748983282353257389057731 059240880060052335817668734229168645537423169190235103690183426320586842478800 813206533243492538309518554786077628593521185443207169470924891590393310612631 013777521332538450921195488028321695890477647261659928427909331636430696581073 909967144019015480344211590301215112408269205517667547491097430934836785894545 237225086836076693632606252266750894432897290691758379319115536513031160986759 445835578638824065514891370379533013946431173662436225201779081361750471637354 026897429375554801378282713504107037831421337845477893169988598645866044177001 160237343443079430879799141302285722156500997238499675940800101778507052441170 315034044006939669302437750163898016364404911116080618645929011947309460929972 209052467394135862319371874304602438629791592354099141041981367830184336512183 289683352686999762870645722716524711221591184429900673237378267009499313049181 172788035821811829866994371593359727861685670105721965922126352566538096246631 469769692122286782153028884766595267777031100845685124915616389935301978869850 682041460094180141994896515724425872367841090633586369617555692872013572385641 427154516307430846113128808041766216438632275442692606146636771313478266122669 903349916137651001451576211385380608324898147673872048560624004138487996920351 221597397143374924772676861216170391452210351832324252611598087068515842067402 148231664771689279789726875272725662741568663886199232906602915035959790099753 813144523030886555032896737173909039970511395008771363277263120074886511850983 442762260936143686581752627922074976267692030864887672036851501757797732838721 452538208465571034589863975010747270446282399488011715633768126447162285420543 149575073692208433778290739914673882990861389899432710818230399496552811852189 983047363252373724364177625955572842110711111648728683806767608823591506432507 389720969825885132857509972811306719940310287687028019336844969775340733183036 113160341196366067212883570765106007118744675080345958145709409324480991774849 979505172705557725867235454486150404055748947656754682543123029074365408447451 582651012286515627828472193577648158505488094345182289243879861599482936276886 174154467782324549758742519426672213893751236807832149788465741611901256950310 763103756937603648240860703452713186850080586630229583099639456670716484370485 042370860600347280486376674276526496225701743636325503330115367705542622852954 874271200425227870505486127982465835062338958219305168237329490396131644609417 621104235879809231319852177054207133565150859616656322797028572224578885360258 908002476950372652052439131060203939939336051111459241516505483642082091302942 229409532957932387778401782896367139546989984670889612834090919680184514779198 794485715484329562524520413738680946881906267539382233607792072035711032654215 499396516129467216059904772547552228853487865305176173063998799591735607736228 019071948298260414238657562855715300749121149503689207538898849169093110302395 976562609465844595626652874876915064159301957568663325515482122796874054739045 429682406542367780365908112862933940651165966420786930172453774181836262271932 017921854136400993743657216522179086995248068899223951285267671371201379115296 981519851344393354064785602600996264978740526894980977247797847616017224518121 189071154240423552088596397407831284615843924408318551839125272745343162154844 148398317213792466071473212576321715362332139455661878608726557005729232475260 906038357649272382958664062119645352731662519918887064694314577478375987304064 054424402057962857827456502654534292156451882176787532769977811012925631293578 321720115951308935696850256361378889121794121879025559289269682594869264834736 332425413167813193135080708218631311631155707775462115492667741206987945192024 543141289373199386949650423989472768938031104526827809101318346605312918788900 390204530958460698118728750593862655102933918057939718916117224808287340693652 450471785306003646719802790375085745183470348265349990680252376545956862341103 242900408379472147169527876781471485585395887538476265737370599192423830319647 000887879079310196827423659818839992057806231940134231474950227575953418057486 350564425846798845343524832409685615687288890315226973860871284087615685562660 150757835568650875865246257257654301665212616617278579483612116101632479486048 002113801909764907821777636457690059965599335244573207485337608482901239524466 821844846992702942906582551634448846678465423107518398435142402128466659593593 395838919549417077636239161755330706670286441231243237677124993172969476532113 585879993977868403428318411398518491736848134231531268915867915223140982871568 928253153331857801870529891403046951245965502910476557600317289875445573425655 468773591920763160531423197668755120511894577286465438254443107661863940824376 211091847001544527993840624261377079612099365801570674842186223689468788637246 020880056910725040895366018334106601429322585364093296821273817653642340859574 184862650218003970041653225154864945156992685620425457489829919384255687159965 321765305686119946193772997707571097931466829847405416815763619579750497284884 640408436212042936811395995024835115890592705079259369397512832499421736113249 468781055694209977017551582406156163482583161791236629689963916851407398550203 203316679011608348635053429703351593652883342859997966753382667823328950790113 894524408479605410243052955112606920894905366207587506289862539598998898675731 603967639624952334663527024022360969212105841493744486441723896936739548392533 517275593805267942944432772383337802574387581384802773453052416075436375231272 443977511308894401643615179895890421013681192193656367836648748312235122148230 118233414165003820661893271633701227680507414620567839105176947404384563912195 292441883878348992362850298009470297569784726845483215581734002815833858659972 827234821554184788544682120783382522864029688844741822579686887365418165816328 794577874972982109563364237902794669240506959171671708520923106299480820472318 819911586904540079185205302880831862296507424231830232952032478477860082029862 981387995733648797598396409203833358502721480347187635272622487028673737408851 858548841489994351990200838507324022089252351716081488607359580830916989778114 163405639974952679067763950968260221843948528807744941114560248499911354652092 730114924217048717723540580440848731193264538423165207585798800397584098793837 300176022612332733119928538742196588323154477134767615014084107259594280256914 140203644497099254921759814255868130327596520483467627493759243699565972429863 830086854813526381991292712640981516305820629884162640138518947025201321950851 421648660472267860883514919513980981349423426575991874542667847357813332570936 455652483878510210405634546957534469914442613486708369561377836915831102541899 606648562276233801502437286653363390954643279920505484946745170311459337360274 629693708842899427481704073857068738517459424096691820957827453242083193584392 653847683893028582453215530770083069919585503230178272297720545303311679596117 923844736248833193437670256469532328171281022144752842034109740123447783294679 217232595883087477147178582958575269274403837793995783290514943361706395488122 250863984998251685072120054033133387788326495799455067924632661331019396498975 112598382719249301869470615703532218677049888567141981718732511260419301588001 245060440840740990023423914586669431794553024843030902509569525112333222964087 659267565747304549988309376492305414454156690350272888745174557083992564230972 790868698647587624680686501306648600263327398292418500834576125534832667063054 816763170961981029555184255158342326087229415056363457836658148533563094881909 572938112896127949274984496139293329717854514631139052406891456133189595182145 867664253672689488280875614028673707917570204598159375017640408798826059285822 725811936317976420405137953659240187569628271662703469251527751459133540915035 467783673742276636188661464419757678617347031667298231783618847887854781717950 638232172677887568251660465525586238119472896373051070936318314959801697322884 715249783896430527751817118969382110499074150503806324894973221981500706485905 353730765801740318077303206642131798319751256177660009718951261017454959901703 495668633815081452860067495320945478745709505090483195099890997571550290259864 473194324647998166574073877791940401729972232533376961845502865682485033234197 951097734753531196847522446432507058816130102930065128516103099225704414206067 459307352321386904907594471359178578492331524046489373582283863549646232477089 318276567071373210056930405135845817622975147325474045812157264113766885245115 255686022060807365118464702155706714213618979012084021268372924426669814877500 879501577132455795693667240115228306231388986105549287520839032314594920540223 134271023993546498330312125835660393405432489697065355632353570839780268129730 688789388938492617948742788725604391026638126640770707654942649978132186922768 057118339006175249057876084916422262099147322783175957340228394451303434157560 898370398547460766676257564508437684793725056259660276056762391474099653635416 787736369828185421047189648994800675313151876397973483963821487356921922835765 561285825090223386956975041427819693801281104111946106502795623153605682587454 924874446985010578928083073911643056738631751706495251563055004145581951500897 487554475567545739469362730104921631172475125686507759825040172904105491416497 045349025395547050967167087372758026831194759921719837692819011188188013610966 189553912273759477333989105408124275000911557213894603207709107770876590564358 355637905961263901379162891660900507880900676510809846201649531363497139353610 891957253984856031500611198076954121871636714930680479631297399265478079688141 370615297640946413821150137816134250528950103756471744423253828948953882858657 397508974833579520539893048041304692816894760909888596122668314046700791444981 154200901447541947903161938258934585965951010752143072666981822913312007339383 326479006688289632002892262195416324289227750538550533275671462768872682071477 110287958644274929969620461766638948166790952921285341919302167545491575114583 436928395195323900781188510744123251051808303014946269950368754542470883459263 762881025869033405124050262602293195143308620413630272553821090656540002855395 471853925519622685194199745426983349701382040960078108116562417685627344051161 765552736980113558206445935272236750021975121699766828950478449400744699702370 899039324554127756449200366355641294833046816724228894837989707768534321086044 982632472849371405935374069468443615631311730427785999818790740789324414187579 167264419700132663848060626697089883172430346927127874047533912502841263829505 092662313076710785601159993807091487825681916104238265101759043788056751446459 305387321681374375232435647446470051784655967577270830235438830258502979917402 977682028710992418674052250037408750740624954178458237928283094898224237513952 235438940458929734470373267201773373475776360240011091915233624218485976918394 109730327526679150860373694413939455122906925536666602189279505516537547722709 021320905282082101426534140797044477338816458174912772266010696018257433368947 825442869257624453746669187882102651335785937866924141851828041758222908336914 631058552552327522554040145475230151801179580806239586905639079421796451115276 343575009721474074792606922635964198309365193888967796794941732190848195321373 424955459709878080162805592656827354297374014041876381093548535706684569147342 879406711370360666540473170526012775196214821838959140326902347297787504383941 159926262125817001228773312072817693432846371183302062204994318863388299110309 670395903687205995085742000125739054374720406420039676417862212592692740433003 247674156197697729187695085547860579988859480762137478249812175356275302939321 649017697538776152077938275012323460506654348739810981247485203339343174441003 156490091271276348229208989305315840250096045123904346004761790810807741109550 922327930192422935863511131231228818476320674983875561296206144916388271355896 452353184309954748353638550514682941667749864821356224250884977321740439578900 304150976718426172909339955674385219093913954162019850418231815591927368256447 626440033212754754250276927250697264158945807117111227823164627432197776270162 937124155860933125492856031192255610527093828651918586484719115955681270627749 284795770289255269199333187948587751642964780239298396517848864579392149962076 225144138232478228115868361034914283903740250554952978452325993468924885798674 697723107224470367721464572418604850493858407525721067093869037752679995245741 881273723382815748332568160282077203590296353739512791746739587511557000399673 829626409106805306583790172803088628390238354191942272189922942138501163826700 505665483558893102411711228873146514857970621809399611819616318127910972989988 616254003094999127993358515016230887406725668339905004812641674383242270756320 967808535525600518211363036053361974985812197453019600178675284186919629512676 573405113666263198898476877414425187954089396447901643319097613236208779810463 130157253768102087396161555169623250214481077862617447644712888879110465211077 877787595639347876429572990030422891091467835173312153767847511346789315047524 267963683501559519499242543571880342619068137733584710406268528349372126820708 035552639706367651335828554739575306281481892463509716857465054943540606184230 630541734261312182207842455512478196122425634694759792601946658656211693517834 559527261868750517263195638847447429078176458231174304122033424578403025834598 690448294595002939895679294427708738991887740088841502637298571789821566282858 393454446024917020780145078896968359450569568184665423536627065986398174020690 367657254893973550101639857063137133911709406755972580228450060288318499156266 319223175107708851885776521170347093482891938816736704452316384635338992264952 996854734621538427116934022118509145119870012092156655628959586020576633523868 694934172560556437998281979481319067863807619980764775607789118176684100101891 524486488229940276603043180260813620979841522698159451249300558336819154264954 627746798433083175628683701264487836809052297237390580412241720871622968635402 103293876856960151562482977306433816193507951641614619639608521436100881232311 588503049797440430835451940630457362308881795344886203965413129274801236622844 075148354943108527984028864714823426399964405845289429789454597847190855503207 320638327902010236385180998020342449997485021171144778097088631781310539153230 226610938518347887544876860344807812128892964317492003199778830295917577539817 556549148127126788515523589552953245437891831160215590447867992308223793385711 539453100170465461068246492374874244465286703621483411658210637021882825014395 424261305065994073150619252407441243241030067113638363168726208229732110123179 575818648390346753132457656274619670066806574105748806533367087339555639401911 799104592173567060459007355735588777044860536998188454729400210875720157721986 309046557023708819455627500357855075663498635407020885574316879220585801413497 204344616794441847440844731004382917549621926242459339757809658694810313307217 913521483659566619373258634209962981803627947298736625005722478064157752075413 274086215541149060208057165233459103286555585638196767270651042649413168021724 413896298105039835928707602519884099826470363828300388084356732130644381827267 453938338992114866690131002953491974729172841682532137645322178530389482111091 163559456032567949107934985190149292147833751419031593182988476250531356744548 390548426277892835418460293681829871551604782251337924075095751596142038035103 634664132279780257133694223177043977973908584260057395305931777922310815118689 493373449669745756675956501620288279275449219881982801477522433364191820852757 780739368923652097390725781889709850225194248985566477449177884312713663332256 061706875183141498129182284049845823413065962169329472791359678726628525730247 579607645658457915725826603072108353825747903366967481314767512743360575988055 140012615845866687495876427802435477831771193123603602618379473573679284834376 865701991612749958070128137417846283973520605586910830309172737091510290718376 575058415686901293241678450876132936963460908541905221003940961042132631562910 640130395655625008159716658973918287878137875665552739198533581019168345552668 287062193293031297007668558725983260595162554132098182789260968991721612177227 034650190595996176270725334420048839404060840737115787001080191606696863326131 328269369370660493193975853649602954912115608247016707657929079043159260063970 033583566343312450682766361483698563166050255441962795400484767385626317623848 812030161628312632401389365046731599920924307183199195045004805802844604372076 180773927815333078346310602174876656529129014526654032900126789303038059605031 845358078270099389776609502920212263705864330717026204194684768533249449212946 711215587330454135471618013216732530556733246072967118335293158673469968202532 311891631973131715804899522361151576311835713654938091565129624889827084924816 176990774247753248528985126270447625662390251948074668612698645533200148597273 771990355191147992782281194930559699184741891290668687259973952473323369444634 998443607050658118467030830698394888749002345820116700550302952739713754163428 166073490040178566093995018816447456562631255737578362378731707953673119685746 831035236802226376079467724527987571676316072749710595327713792267767787919833 487541605812844741659147385722880063242196748945708502877061593965373309352991 479322663973947737481071460712514548571984314549522324716709804738933838999088 211231785157616438213123915080744686436229931366206471750386505172170539773201 823405923832714474027010391995932576316482259483398566435618364046829168767152 954757200474119690542344836790302118026136196269235331533294446444113980630262 071549229243167369715122360864836405201284400192213446609420702081697392715965 925091588113406674074944008251657636103135657526271254419203625990460317394272 344303154598401416739754486158803123014572475833011845195625159071217254259640 567415323454747124753854515583366489189048107927749542415133503405200830572030 291877765133193636308819489228610721853760526202993320635847261107068057645719 522993629364081470341628961593154150175107689231698947616034204245203565867132 581743064826283680522224481736334923549204557154523145026550908314077452099369 852271042388215208935072414318131933607898438109522320906444146337132151634700 108997214579986687060805722779550847323601556677079498735772858728206555080806 829193589682265183503621208466547694379933153669300458385722950713768246545952 060714162182766980343843820763269705697843702092056596836224716935036280025163 647835538678742530374019295303633907204824083928423288933085720887231282925284 897926053471473117503801424512512484451189198801117175214764676736994693738365 318244628838767620560508031008687564148228618728900184010129608875346412671819 653127854358102168912475727330676899059909391374240406378541175458976006649842 570393338022121995569970239593304062735478412251951139608327100573384937375871 897593162935266480434587448351263285052032680773869681104734178681366844379940 206967708680439904058497193272242236259045261891139141523166473901240948235266 880206290471187656071929957594949550350569570761099144756167093446850760340599 089141403177847390389842327117579940897145087476093537741726493061386554064699 104447542640522832262371172333712492391604739216413540404516684211087479577831 194919538248377209957960285756536349822124837705759362208241785090572794974108 527049778207407093251515061439190900799328711265648532443919264494561923197026 276212120787997476980359265234569095715788037772241472025507717271098324748171 279510546606798190144999054307147868101340695360624374945911361168817685480906 161451874301220528077457946585336596189788280455147673349968731887889005992243 242140828373581054319908598025553737252575551821836421899853405498123572085842 316694612682959938012500498941820031619155991039473894049213069252723350233674 525523979762753709204083075288292442928160863251326684174056006632864002129062 343790823615932000803539738128175536774343514815463028246060705436992773735601 436788369346169787938373656804702416989948496837757810272664286038567365934289 971437490126822089199864609393205042520324041958531958043673553281074279964813 837077809971897889001082993166752258857612520154477126960915859984099354860211 100379034299711959449637383310314303492605998591917592609069301546280007381695 713969489841765659475083409759178923229795097575780541635680905409507447017783 655900144555424883171334571752580802327872187787105825527703284720110090576791 129544155823241531090759118864567495206628163664989289546779249064143992517923 166057043009210943377206057914102787718621568498933729440202627422163884423325 998356118001823119343196276379554634902752034937794803811743724368854525970269 262210028015030605323899571517248907064127004740108429942263135751184315275570 636751612302625435878840030273492214384580859770558759416058058389119772977089 121511549107829224377200904126247421836781498715806715743718947594393870217428 007008117658019733879299064527211868561367769587517971016100920704518744562121 408461043356466700131858517135168007986221904949665921197255330425683185853088 603949897473010063171767861693644478901030404951201811841535971504143540079771 221324876231391394028909678663980845022852545629229355880676003673145530816285 431770233124766558507281637519602310417582594456200195836405084586224057356420 756707912361672313283218270075740461702093079048538022841769771396404068204723 086372045784750216265518676495779522930524810771588618267540518981311899934739 465951339357191687316080808464369649286694545590045735312893731682101004011246 295969767396928629378424785519663731130478910731850976079669790675346378044459 848795602911116280822522500241383550481950236475850014771014861302977937101316 779539340324572830297492834765094705060353507892596930942543543733145215159486 762617273110876658212532286798672316478030447619554291527098040317878040284010 329812309760738141472298828805822009437365851732545757406822842238356916939095 298613530507530882174676643654363722563015646204297597831700959139013233163115 980076468324309874907855439691091180146619326524487579253579081906998235293154 773423696186133792073284896749281776622801010300556963024012392015627648490987 058157758631403451115134644314698008268310263300495428326791633767316888006701 445625655820236293112500244057840454147401166771795755771177720820593322599517 973134947008350667408961584626429490189581102544768573950012936527528076757293 433076565545213807938036632001476636890438806115166809060609107065426529759176 802804226041745418895631372682280725111985113548683992110653034512403178411471 959952767968284616007619600766718643388724721270089467879835162150114441554748 510788139725507283951077310263456223910199824330930954408702968921804059446405 386048444460526764809317833505321903880938100801672912152472723700384205107140 169458296874074479833313228049215662241142218765654775590760045933698840965601 460830868197737925238207248889884511789313500233911787975449517132805327251355 615981978458233173770995164009939856064951215178969326117267890352371581449877 091476102134224470280784745318709273810571753733912138728890778823713316055569 255637174116488039834949338342180432672130588069954410827916719762898822834834 416183093053118754161725965142800827750396226415125979234585290690321045126223 936802734971707681878980859714421965315211456137873355224755325859826475170165 095608845059654855422025702424528504739789318994506091211969086531910239768899 632508800695404996888545017922875243273830017182963289198593820925075973221617 465284690633635091834748223223089148688366608932503292097255205128798516164235 340105160733680600022429562418750554069736595945236063084795213215075314098557 657679884151868498896059042888018093883300113734790715594179142663372453585995 532231337505576382933095412601399501108039749286150784979183636356176005348072 877839490430567810434968981555429529126135999368080416922328759661536404275415 418661026795256100210524480508486699117389615230038528196969200323441385509179 548829906826581720504009064252504225279818435442039483778883654255229803967248 469545766751057782517504902227734087679467155131793730515618361871922255956871 520371000875219721268450811737373044133533522076676462185107213726642399022452 172825048096656943012720625233815624388457707013182542005697086636260782716288 690363533302603864554019358217679849318341339095221195767893340672603677157715 066194898157626304539140822020832361133310959657582434153524574012828622791674 921704745405661071793111315624162841882434170814714962483957855236955935774326 321928798762781896613413825121328131466045494884448816888778459352878603763990 016756943529765903757295170337001523463239317096913397863180605818331346735942 782529186024157022440994170756286577694336854607829880274672077917920732619342 803903925293495869234800853868898087489889526598463930223939895749505677462015 013490868800733552964203155668358811854800146742376442980242693201835476075145 457363620208747445299874366232240078146343222706339947911957683228051685380842 579754589940992592719362208468527298282404482579584199992920945156221115941627 053342710217079279200114927862768962752379864757316007574740313417483157768315 498543348204310060277919415249554739531628354193640570700294515760435475099403 937844594010465546964327414850763920950192230248005732842510006824750261455012 066449207857779803818488254356676804313423772288379794120967822815750163832832 121076256553352035981732837606207755966401588514429644343547630947731332021552 229010569604147346734561795294896015923981051757216579010056910086594932257426 810327741322940616235969651092443364731510203672296269426326327667293146372722 918239283411124272632554555555423259415055073135013668571881672360573212488531 777799034607038302551809457288982484399425297538120162967061379524133998519180 429331743988949995171510104220817285768021028650853376453778479510822974998240 431887685040579974815512380196205430059485290980993439128854263495503166964139 843891874192875544946371677605186877181569360128324240709955104034207779148841 220967527304279086480492169440681373672713513597606903208720374633204154724505 864628904428205840397163506245359046582987769605088357180620217707456560027387 117282267783472360243412503280505733099504028307420580867844307462167840950906 233767812980257229475729488702550684688519259549440177155529552263093988455829 089943091652928225507442770166562677136160208258748974550209059579034003150336 816772667775210617093923359106843243089879429476188292703550962847907398460697 894325542718194281039785579411323405567212246838042330569316242422967131689162 291139572460117850644426246333504184430731537197647561681799892018596006481894 477817196448788079261661493519153690336724619187323969298273575523237162158431 531560804800201528993635356649148776862642526501640353697624390821539777226611 837403529899281824201150494704054058341523043825943824927859338418885336119387 357650268381375323539055176592379528289688332556791253842263280241470296409025 489746043759259698859368042388702115330819058570278566398401706161229466250893 993414681387055781262394754918552204661600001494362272547594649424354626664905 279058418627718340388114911067997944582106164693673360018770506101298579131798 025583890158856708026352529913968744687738716137784298361917740372921036723350 012594272747189491307691787719210039935393610812507159132615482336050470920508 899762665338794198897769476513381790291714594987561237127736950791820952376562 767105615184871937901129506387774475870819126315799006331689763890418559714502 579541602767730154862328572147954104425583795790555189082531513468542316927512 067035911339688825159489738202339170707559773249836945253373517656741626893694 985865868217017113522952948503369219735230819301059633071281684329526878071250 059580838533377577593691540067188921390417640731047396884014959429173430141748 962452431994268505231637516863813871386060131136887948856393125432173475529272 797010530022309295761344339169289088911044189152822443641267403343497745035622 982159704550727063962682970969464663354721229894267569149857096295346473373599 113491192428702984200771061805580373871404306884627469795757384896798021880910 852775315473010266754091108992077451243735989182162979557466054249392217159926 845682619187071933409697196129847598678197872980220073157496166681377176401034 654548309030395040757128694346975090462413374047373274706726830148057624237649 023426610843311523161471009150357623720763445473235184590831547069847709644003 343353122054332215773017308438154312362649142519599153488677280791064198787658 339655081321818811413159962538985435029386708684880627429555241283999921154147 700549699968604642326470187721366397025501796766323089989937741504751763518365 752803455354485097101578034685730675408313342515198199585240258867369535981791 347176787717084042119486868897414925921938388368424741934375880075819079974572 298274773016978150155274507804478953973734415321747806021922372142442846083671 961519712700206001206807230103256370540987832390503781886257055852832281804385 657129238851392530809077129753916469635564678056476765410149293433902187779693 614853126118275528635250623739212410291041720063485065888832109807491442502893 264863576888386023611893149940766483624277522819781034862140773356540254992084 441585887634345343639492346994911199234206977387432313852165124402849501229638 771844185925097727373018482122419719093429029080255138141002720535246007896692 025753318218322216764219189578607341474669873704867781388529349922495026905604 487287659238685481114510174659237047060465500569782596058417104194704363793617 543977488065075293535646639204484811203013279928085253488047279739031246632856 924058456018902514887499260364074951890981529462057733576081191877076294554822 948657500556991150957103982168994721357208568942984509871195777545026710032615 096222692752608267541293821832610818725800649996811870525060177727501996850280 747667297346283396666163846253516022263710951865453620252498899129761297372999 264418713635185583846266961505138702805285530418435972858184032694254353361016 213064552762624372887113166180109331758963207542428525355773720189465452605644 092079854110703896344362705296554677806977224229514317728936212043821172275384 181098650518534365868765642983068527006649290581729736421375869507392888542084 709196341852568182032080700168229139783327367937062279224397851855748565796123 094477161650965327457187339244718064399388777949003442527202735257884991243826 358990020696073146068904791948046076958527945096725592941870944158283704527906 318100076122075708179611021170874091678966873419286879984028251214014421803069 981642806032393246377253889582609881391158726281598784402342117206950261923321 284274478671415578444318187537502402080982479827886491730618357308727076581568 369595599444683753150623743958997714404979648048469895207903889073333812085969 474310455117327377155249295284707927858894563156375202634892617319803809375178 651948863145917920849473182345918170398967699300885884558078491486832331198761 061182090244503496082218681565362216238751333253917085267524520111066185390908 494131275619963382862270789501708913932177237409539345984512060159290813006890 673888467550600987190361442855641193480844381515011352925562495188793740096304 947452971121384631929013840635902679580747781342286184918224640728568884934538 308069674163685148782914728287550081866797275964483276363392039169356675869902 469129211875437011234192720971649392917460458334372492414377992718049591304984 162778137143981513456355726003776229053329257299168745423606366243605776702630 902157313836353024141990778593363652319413759424043373691423059126471974655204 324941653704885922967421149789544812765776317504455718717040219036840793224237 146244844790030392988976487645935364825033930369705533989339883636880384211308 919964218363980366625669112473726348937761216627302830867400750516440842371943 098224097964067213997865039329579224891421947211725100236196129521191032787905 728871719257739902010925315343345946578690481967307064790855993210378182589251 439016595175463092686598244184633553944831781041781463503604944931321674882363 866821271802822941512428931853670206579058851305619953918328893862164868335973 209313087925551973239413805297368024783360765207685110923114116144245561136338 247544344599275847011318735254285589787855766167248146045470600603990636855598 362644008170112005989775692848956156991305288368725152884573446084648861394562 609146539383420315796852573320790339211789152155973053317073833392359775844672 715950903772507311796847576802775194679034665804001469590374033853294308547512 922634804425211820660921066900891340927493870894942893154399474713295140928442 186286661746165998599303556216326095705058600512499593426677660040815245908159 899902384407856246950552238411918171271413768006457750794245407161331699312232 823660632083463751594681823597484010627449778322960410991590774089315935199539 474428600094567635555731292576042563991644452338026581128559925917635259911301 856687626569306923168272655018092295171345402427984738918230056358076668545532 269278439199115688357317934174744099814509042416870444651287817698041053986513 723758892770107962826144654170787435070357757826010612247204819720200260199396 404556686281273693314154815124626726000323555353912130424516914632683935266565 175869324655800675415416466072183201276758172976341411878669381781375481706649 329032575759231564986585870172879098248453271090950014724476528869511159881520 595347930136621539202398297590120251532316528325129340967608745075803027945820 057513524821017955065971298944945415058769009109769596096823338506066726303595 406310723981502145711551448127346549925724873287700836696379482546571815570449 028683745966732068967941957399797202866071804889968998353937582768529899543637 279614572485749353639109854076332558343642031294413421247658786907818927850677 539696731929815433634116482221171960077321974946381902536969567915886008858590 385387131397958503114320987214555559265078295869044176501337680279575967802814 526614985508228225186719279737582065811701533518245237073276648395162933014422 701503982655103457772331857117234384308170959882099995853366430046829651425918 176159922045256271458852442289875010969560563757045987976105198752094833116935 352213688111019100810720893322997492010447623974660807594093081097848883666025 656024829984132018663107223950513417606173849717327089294827295000953467277763 183804139830995475911122572039930823981309420160716682456304360657853952762925 834365848877651080496714944811662845595161834156988971049244060321562826358147 512573945139769415081398826146172235931520664397743274384876793183949394564387 769125923984802338603123219182115388801740415205627347245503332166558598980148 801650950032334640169635742101486631143529296975432550936699220074116539568861 188237714684386617520529291679812341547291886420733301952872145071221507810503 340694622071533672860571066295454804040670662399497764638290560204117771647245 532031844490073577283802204878968784811512708775524558801083425363622918035255 507478813864795079149413533357629280837697184058354466332497854944636594954144 053574952300144859886778720366617411508675212261646061490916170279577521552841 343470372616911271604354164892513506246682211317130937202408232695587080849068 018912435459899087340017367254153974464932868167360912975910695102375272129802 019979218544515586981012710002826230826712960233477434508253734911999439868520 324419943267846916451588210344864095524444888306283473355988342497257184479139 132778326548878195119895824356259083803309892849039542397814879645741010743576 456968082241666009162021235506097055779530364441025589539611256586868985176805 107615747817207296932179082984238330809686243956109368064734084163757663169998 380733574236302339928031296145425617940797474514488030090414157424712458859587 252362051773114578812444767693568875030493404746926063946855148224811467347096 812356070735120598206089568406566341720995861964342686970338837719845646634128 499117253668679854633308908600463251866199329480024735539408748884866684345423 714121985821490273832468562017671805362412740728430383969540277121310533805504 120173169152763347201314797322965770939424642204362836289341165743516098768480 185406193115576001436561838218666147326479755535222715265297561891963441974367 646066703514792058914286834992596115517583558504070795869442054573575904277163 945707133614302954892023992121916155151342634212465966677079660329364853163026 571933240111966382664663779069625812761163116697725575936930966384224616266071 682238900212080252281428032685303177235016591296354178770919284802733789413579 437248272178915991872807056355463431153667105374788031425451563621992884001373 727199732329366524572782157538889405857611178739144614858725092872645506962868 831524649586708879500845227407737170650320718097741077462077900290619697815222 814430080739623021954292110198739578210027116608051105900942014234228648539803 105227352388010846994921878663916664409429700424661642663156651985863470016140 289708250257777324707105734925193850741983789933594552326339757080182640341737 743391372970919134308782921517603180209078198404019838213204382697893431116657 148420749513003058788342710013981884616858052998967280678864830864218202938929 032354497636506460793056457539686144112117872221665517406939320606679675176143 550871403473302206378888731927379695611984192779628780860046707648854175711571 398383898308967193235298076577166458837129747492764083854580444886498298572019 155202212400436203078064895145203114131824670945078269374719289137016652166186 644368124385980266052540256826996010918841804461026459939526778385297618532104 635519961539472340985186159236048349440596743590575102596906851561594252342960 004857683601896785627234035597472128189955054994752629680885215137843023223151 034091654745292863145974256821384973639819564339535667472606476689190071918495 733592756627539860518850535604126658606354487519364684955597433223645519802442 048483704069988889855677516992782368385144890532094435425641092602226217309287 651388606973747331124169208495176251303677714985932089174139334397012624074633 878136721492967174386599988241522708748448681408937641874276377131397324859949 891576635502164518530313858375276718775303712636812374930247106086898591764272 742887700072824529711872683100215873717964813714961056073597661149576388118652 174276407094333213050351686125168898508116844861709619346039207938933261661204 874050422502414823868133886642086747336901252999128715134373937047889124591574 737105276434972435294589987928622394856090729665059295535642815278314895390123 496402282820633506876455064994554960439881915334018529553713064958132771668786 672882250638942099308558133874907265397631337933966742323047028762689547468078 018402498843074026786822037200999892782516019849356009003592013953442349209207 480685234324021664865167377970362471836464678480910744251449730521655922908936 335807219247787836825160105597769199565789234384064511963133672547776139920447 463546144652735571363709069880073903511376510385364853754118425442983674412716 988329859782379625748949440764536310750800437595946574979625980777571614115929 757342073364603089869148608751673508992479659323096820589848384860231084992901 636114526352244047311512781108464404818196120196827392323867110973359441737151 599365405520291106621705911623836420176631381174501430169091790341182636516756 243528542137482722469605083395192946688417618935109739139590676971846606334637 162596495209620045505221012594195766193743544972361823993275834915184168548351 512987408247791366282140174894009607401456511149228881405062537480761577250305 255712197574329579253348249010826986845940832368334701235409258661786932551818 321641663633691479757264891064648074864157865308108057987480673129708313107671 693430235125647903077266516825890179612476356676557782324284257824955041356037 080374497780833110324482449776316401113702232860325683481843579420400435296600 115099207806793017262684724133968218325021168646494707794208811490925857229231 540138713237414471474849064666938212539230912181389722983883073589438160819017 805015727609264410261057778682184491110391571040288020102611554635142769509266 406402476505175105739256170675903643963299155916602973160490508656215293832329 111085109962652350469173299216044980746429024484500335590766911918704085478904 077924127651247990301604809222680286615111296522123218956476776904087628045270 946882393585772067219909421663857908735472254939045819406336622705689121741257 249318010553109286780225438849801015301408390281909776408118334877237956852140 644520102553398987020855130609797399232746333209400434833095226859801526977373 951267399720227622991379916253454356663294628367469806008461791272145290998821 436058429348315218207581867567756805718794441286206654783387516239317994701373 899938470460708667442739874111671509487440646899520327155460438269708741631635 107146009803547266440610014022838644068676325940108612067488049894907205492047 688712810399652695390243816585031594579571811150789537108593951285816902445875 320125871057904386150733289252229132557786049619997243379223704512499072896408 076996244741934929603427079865613875535237656798636627002610646537668124288888 232504957251459694705094938778178348970462221523992391306415365777464121848320 838631374980527590890783184497128821280721140142845951851048836010799184392922 342252980879263807896746662876805815494120268341839637032778372274044887516815 124499591236292322591190448474763050230231873430544871234903676708703916236751 509524642568900487602899012055889645292515699940124898030250432118392721946324 684823278576428012105039415377463626290676176837696108873809076934194891258734 844619790677387801203307175753814879586562292635488114072212734447531688007213 723201663420667541369451058718542541453590179101621982313428290491364922066388 279692947844144259106573761780860588714104974697322267155456639145479587884233 904096549015365319467137576397317980636313268187970631015782139791357006204858 645489234958752565289917554110294636953835562881707733153205321917799798934996 077338914173883802198805890097250178179812140629991799502180421763218746133217 201473803050045582644310118123317809466612841263553793742548560946345147656652 939412501192902888308069002659656040997986943840600765240269720935752184364755 034516745219020276575338713427038901522639285738804482521926614662559459983404 848989715329135816513379413197738136670864544703791216246968737977257994486977 882971947588450426734423413659116634397483358114145311589707552554007905584908 381785674276325691284168764295301129668167946373728522320890690324009299417627 236704771224864911970601133742127098480182749494934290037911700730567915072763 533340389202063331450512222216084271388815952269169602416966031964379347271639 760671490646545088256419870881890349539661040710664507077865011478736946327661 905173183123945173353261230349565840464142905623471209422298043609102774711489 869720177082620990801465053691793546332885726146431428491291555868197290045249 910009986539482443765022861902719424083737668827837351483065343439368188421716 310213165258492877680076766655099211613745837713759913261080500392067663240347 288384439411256080250636510461048421932742961580597456852683432378613751461581 251000873831884840632639837794840147488001199318413629302090768838499145693874 048737813222111705546415395442660907241824151290328097590157909774939583175684 265207821421869436403980603135263904163957239238578350106981140622237780268726 946219660820266764554519042975975319036953586306798842880642567447334732228862 878431664586229766045694492854028628315316129000600169099853769511490727028187 910239480059175741727103628005462835632098931717198295573226709359720603362412 476919635589005816232342829429679804552478270516662053414771601879128830402364 962124098849753831065412517977167571782602705686418551125140998840380016802887 076451520729414038926511075075001902697752520383736861224796222302886918567162 016211180897383549923793206714870933500134474573938845194780222528816321023308 283098384218595189703283325832378551102675292328758984673543344115187123692073 728032947250616940415568016177207323692495799883671094980669437304839364736775 024754184699115440194610823937371165585760884433254896399111535325608600060313 519562639813005367996116192973720185395193377536200508259557869825649226144100 454998280329646247150924924156148512317245785698781312409656049232032999477024 967345168168331165903790403913054619972808247334734302430307172006514082282136 027149905778933587281316049784385440009353906866643658674563885179485833798497 198394937444702595587676501662917423837195802867634983718051162452365604551569 334316422626938736294997812843446298925246742571165119237489041475155355402080 702703627161224934173406170911543123470219853970847967654664150273240777794159 857807478571924514607844902847564266430019758698875959968653115776879090465732 745829887114136305123608924763857958199739443776090259521348829493583799801356 890819216934546437716305652528864623395406780820700379737852990151377229380174 278947879704735376059756389466955303138259105630917868808856937902438858602982 591773548885575363838619034008808934479840520904187015148547157076617351511988 832780811224375404237445701095042113098602670767632143222957902872555350645454 320436668385945448498107256962491185387603876907770777538077924175313082483908 758021179831384322932045954572225871973267873299480781635154256086833739039408 133753983295302970321973564314773720790261220246562494252594037322627326105713 855468143862932028513282039734381063765143549320303640159644766867752946674996 830043398068416532114845897912793387882788062022712495929055930797361488450647 626203154423130109382584520119935635608315446773747074130179730430420763818101 025886337182015694979100681713572843070148207754919591525116159661047944918408 403860641723627867158490023472527700989206629678512800848460857150607387371553 676898724606718489860795247633954991727751911649010628269432134503853839515962 470409980524194935695667693220434804052667990936666231475056730990658591120557 128727304290209291349032682929291658353586271034370843560634128918996074544558 349653745133187477269329775518417615332199205411597522741356645182415279352656 815990716195390328085991089712281066454795067528700421266392925445689252962890 601168031014916936162151374552245074392604169535111879629013363514557068454769 931641565654324953990164111051172693144015876709941604565560439498404829387560 728255100519868929088180966689969078244782959839634813749432568600261652600626 393125945196141807104426633448901110109735139380564071894267792123670867259771 241755719200467740068884467940142590211078196614724059454034957788187243833762 917060861565260924526748720099668684851714956613432631936137917827647657522108 768836736960694525671143512400540594715760149034452639224714920080260195722025 118876069042890324883902299410976639126682554595620429294707246764452733209646 504599578656537254864306210524762084386011697603826560391229550701510678305397 358239926208310685200245222880710332154148585604984259890255762817388620084913 708557696656600330643670012205486499294028398449646312826461820895423881336634 304198013331173981823298253450576178136375298262321964577952056791141418429084 406960198875268894523192787993080821714048074563210981556321664424595857431773 376162058045893066663739753476213945373975825078109075502322112080665822197655 017573222477218939033519743219825148649390507709660505420432592793413001154177 916018898592674578102493521631183658401120138495857601897769818340040435762476 213796106353543634975526946713658422742765186800257970061417297288266323784409 561550870034994287832741809031525102778634777586322237580312607516364989049585 188482130852814138079591115598916893572178269793505424268206789658227974549657 861170690482627539460627102980913213314541404174592983889312016283166698059098 533576256692875121890021661969282916270651769057239630001439758959029327213686 433159156612274386438860512565883633076323238463003850965251812311828896590066 749921002471366672059964457916923512684364141467408234548049556921965676687459 386642909476735360472864428128089461864519522664250417081111152499912894051730 125643599559985891575019342863695488845860878945037582411737013429400813202699 805341540473549279975438071926684753366444703419329598612203547498412962088535 945481308020096201483414900481800990195591807811633910896587732126515883384529 708721885157333985268998785446873227713232236482041176137249213467808180581351 098904481051086677370109016140395617454995627004598560954658104628511872940044 948255084280025781342738365683600661720605544495249111406778905175774878883859 644824597973588272239539531583306352486446156927482462870418773530692638021522 184294160359890865954807990464386151984817932204006147054268013748377382386386 695592209067861771279855444804513905733075172948333259295429013081975086702991 486387948452079901529293198151005226640758924864542206698798220153454420650169 763290789870905083906075352903256970771832629618750041822822374466459807777827 595192649533845000433639046279470086702040188183003809824306043455576540962613 638956672904430524106468124404385555843317672024096654999073490227191470486271 330873793537522799318455518929207313740769001194092469993508757621399017665583 407943666096032143563038435395348262755464113760511386042134855172265403193715 584872245245648196329421107664004608171291536172800624858864883549389062048670 050425278382196478649603359075260294748734233163430859073117713309773255426126 185143347059723577967419238677249311509365224737546159316910810690650840739039 088888011547151066287952499768763423379853586582190925817904403346573744858668 690948862678433380621192377097232396748711021603898301645930454942370250254249 027574541276557764697505171565757311042111314977822537679223663471939361518084 981444200873997418362789175241622566740530485655964217865042182271678805722267 270185882487553923282705412470918896674274955536861066929505205942328926899548 829516763259526765735840065861663284479086992676996980028014108454172086502077 522390763874305582643165572609783402208764579085091132991873918005878559528925 984879958802056536009624565667955275563041691881520968024989654742531193646602 064505802428195540762090233883023238456487292033479892569553270344676258285411 267080115336160591420136456842984154139144557633600022571197448834842507555976 457059367983926016200292528732067085159088240269567012777683812362673522346978 440096132269010676769376845739260105093971277487368953855607504325644188721851 103106381906323563427240641190182557142534329997832882770916542537484634184399 163826374254964446486865751551030938276862503667563384609313177054997509721484 960707857658404074905475340985386598303407101983854803365059440479792014510805 727025612349351758851916710784617946536492460355926085712581647231529055091738 905745602780603963125060595741807555752140959492641156134877029440633197706756 813380003769776413302850022347938131690426469271213306312312787487913991088198 285942968406710441425110364458616270591417956988491361830036785308090574966981 345931800065107157790861461327000453392474815198676297171908859846802909406433 338740891399103455480777025252151953051236062144263553162340795640500213961623 493299708132320128529328253644730465239310949751050471365985943961542270954988 095647951412929050260840454280645971361690395864299828599599686205643378317643 948039202847199996829438015756792118364679717669233872374401109242727043478336 946202933606081098790306495459371534612391064771257629340294631294179256677392 015610770328747474599369514382837802160889963432911692333869593701230849967727 598979357407756888902525568980639791507237629089768917984307624049850761930853 464085074354337364127522972607553653781724607885252919375379696337028537784399 459733635835374707246588555105295736046090312830405859327161566683930747171918 979923559725905991695399588014140546343202616752100909017753976320520559245676 649386422852376509860279207029785879017248486347156972505654623228142767436811 776413572835060076104000159143454739192125082621960401728694772241453282316260 715782736893577037598141994265870744926554087029844003224802020962613789831801 385701252339487322626203071239270231529418081796494005937959708365744854545376 410592597350902928498889049333248648574781378976149100676649048500252824714688 113758266350157346338495232502964295453320692818790283632691393109275046733220 233900868476746019045624828670124974358209576454655806967774253809641498586030 111940915188037292060039281153837836243461128019656529866224667310343849600758 711571452684173894240207670852396529989459218222325417009662401655029215844367 614235120459188928404693297752277696844734116448406685749292565702957808044598 947060931770467954001930484937865728614449241562547592430406624514154716605921 552677550551737589213227423503955708328042488063405095178356986091072332792182 235763725724373824976423790006482710707949027522221250574719161565620839206190 014268977125205659614909395227710809021416237211537383326895111173286006396936 524665617366270450396748746990693026278116310782986469630378115986410905224795 381440254178523790427969012515220653586889377537293462798377796166470957628875 393517970940427628414613104140410092813636439885583775671884708327637544714846 113355544932259405679443988265355378334720647751612188861325020924385309969097 146371417799223865574644867502175985885380492813018551237381993026145846154580 745501067515819910005698413564276820384735240354247048883454955958579900611334 951138839258479821511432264863842297729834234873513911598662008744150227245748 613418553513702242837248102457357470078260126076440910790249266562699240800719 133808958440438876249514806553720977996269789930662875309820885186184495554665 754922914062003689900924978598030489295172720630214748570439242771118809907594 923116217685179478180927182758296109080210071168070635588773906210343944581701 566105697419834683544704128919976238539654139789979747467893659099671125595236 401145690791160474016676690283204238466394559666837242169754657695645942207677 967198642923678319250837783807681518929466432729753015948438000803418599956669 887668271727895334729399348424509240528388466738128893676194810567315872156516 807851341995195427433340695619477494080755795205555172620814732408673767766431 602589860106578796990452679551484184249816571340339052121510827009954833655036 448256546780148474618951521703003197522576151868796013091511908443191814048798 940645095198351404711199623207700429415460551570993201793225348379462050734488 011387255242832914287874264819961777497853652252960383403862208315919933671234 709951141673243701333032071523321242169691291885268615649998883454701307737089 891574556531669051634101893878910667062744979301621090183269836782185017950853 199784149305830076401693589585467488296885284196199887876726791631709494066569 905324395395964442820407493201474548110138128888170386596943923059178565815853 419448601912829504260242388255740637110767930435652198570208740148418927699416 834599033197205619235780342391447636643922085501121158873528181636057714051272 990236180637514639908176153922811850281903540694242518062040082342814444358509 279225353374678858260167660793500571622098805336904294320762123589793121359577 995165059568233521517983871155641691001123415811114154104075981442167857457139 913230740463743322135019063352211347318543688913136759535540755061439896607024 430371354752821115918504244624899181331545326370176255726515027385579239273799 901622314704398112740793287644114838829884137532435747954504381785867044144242 088745986609924025967586828457689070661017085610034204564978099789359379055626 571931696609453987889282171121418590572060836950309531063140173158386372659642 265298701012447787725369361175419742330804931233487771401090712997937518167142 681818199037915339940191884230259605968067677484083905800117129889124773481372 956987923258019981001542945715237136940531163077213493576503646738693300018359 678204987554494634083479931529145516780088332907110571241464297123475507194665 781895232541577144053093714874703297904559988703568600787496968032515802279997 245923616000458083933263675053055863816533798424425435968975754596318681532012 326791596213682881911829564148596042763302137713011491361259404470856482257092 139175036008918767925248037696464916602804420195174725064775270961885653795697 964339648735826978751714606274757352498979207334995408772530361063168666020518 642525329398799530570820438436587798645166031099297547102950451548005645916782 108732266180909082859693193862177697933754666064625771540271188513426973939065 671096230007353723520663707280036864356513553350714654072576690657694576745117 423205978264146656626914161421697200239167939872124277892704893809584226387944 247398907315475418254163923311109339973801094651012632347299318652164465353004 916110274925039534391243753988347328996660000702002486353407319921971696362156 548560356359421731523553456115302299041179141143594514131177319415163644343234 382807153395694457820307213690516406684190367525472080323839151018550485660525 105217991518257223052395371632883424308329835308862221183782179551966274222068 287024936215039112815623927096116273444382597338911877454899063349691885672575 475398585647178432881059054080113257927867100051000457650681405314362496731250 178865547637644494707875648227603975367080897927512645368929859452193952962208 078280348693777301021229707680027564722439051862670866842239812654188349272474 655742607016334270063255681426293809672029028920402217642201350167485976994936 740073150630803759301338324109314314416641316696537365909456939943407957863617 284265583871078515189620458316758563349451609834895918047386540090609964068157 000984340194629305180785832563692455583247059699192452289492101739431016731095 840750555670083230781358504068778491251881999159004055487965850280969055505009 867154973503450445111554567497532796658494264199349637331764941469074755411585 882351419875797438428733960978766247701690067357854796974564602248827170850342 599291998290750031092674782188882579099479011161760985541425254082803625623195 548135541643110530138306422819308897424633025121458531624112699274543444557536 035728905191566802014409459255457347557376850021958993162113582085017724557729 877040762029996945417777381754400158368620648959721734542675638139931078397243 049701904483621791234819126719465327231581550321747455921821831074939840135062 251575157917552050547856888862060700480104165336377297088887442527670201058142 746128752426101277323367075394024175744580450544173806067267750101026480084234 587884428491654018879780698571814984091785115440983095247630949373998962395001 298449789819071385145405507915709945728689713227491177018543512630521036745908 986335790654837293845619481144296962923940637688727896693392279349962855035910 252090341513837658971932681959180516282129479342525966626158604176332973021572 444769949353925739769603284976466182604741745094783573453362759315222710502719 490022749361199064360483218987679946693078986180415352358379175628850114506180 962634639888579200867785968797738017559450082153396935857754676545457686446004 819703686859022398067932889042938001130124214382649540820351692883277247650774 935888950181809459057872629079314969423531370680915520280299801976074741325183 378484013239803917684581568757352236437634900638226844128534142711169011406086 498900890155501594298242956102375769196480781570838252499844903792052293705371 667588379570424997265650182370729375503505415801012915254233795199604541342225 580928717246486578562545398778869046194608277110509333001206171449945786846593 539113969873398070587203753623810503037860528082863657135812248920924568208747 496427440933069788291647870715688906152213594730628485530289920972831036705236 728722923611731649796878380987898436287831100932603787978957759468793824572862 215870724735349785056999033525397040914743507450329039629103701326841627481197 680341635445654033263973417313725340330327170918469302047068978137946250386929 636987736230400857741862403519417142872449064177239991654873611845312200680430 727268057041029456124345824979303502192521446264807366583877333662250725906311 736362103729791355383820228382185802877537415477443720871551350903927715070671 592213248813906319951979321724331805919123752358633179297145625919179158144066 690511917328978547793419156197951079920219707159363022513888163254928145313999 104636558809833215609777888092509187802169091287442024303054308915847182995764 490030408516530355483616388724476593643032219980951258151584729795967479110556 185475071902071386168218666871606398898138488223012580151080289578010206882690 140535956991197523130797653356903518848156359676332406946684344640717353094174 507346274251096025736786913916739219154703558941403270090804653001880178719832 440469935163712345983926139533115313330418747463191368699648786270585768626122 478443423221107284111449662755158243745527055270173849687278484286959083297127 245541786389611770143364579599614959711897963192648780160059744470518057919377 829984035638350097674713488608957893195772994684179793831834339503323140059759 400268233777755892082159720095065171640968017158203646504559938609862495401892 587086789824009872647427567308227696254615599329559956367557064887404869009305 053498387574550425150833689884449782563273735985820390818676226863055088969510 140123604631979474192190212786790572754063923830529652988045120702962140848484 107139708065578815532870404565509722234915722333330214102496190519460493226438 961215638701015841141445044012445924862228388392845381825239390973688177928543 797119294281572082366506144457875965142211813620135983576244711521176053863546 378443602811177260621696701443544103436329194248996123422179760146677625748945 006668047030579404270857652863843858737463780049379731410536060251895503610586 330729012907435313944738122838109423067765419616828284496167516791416010025164 984771866397535431078135089731045615927717733143740331210259047141794971092990 031681627116381194365612191646591799944662830103965407890731383795913697156643 217882127423178324756134758482712740962631278370231224675528617231755344300012 906606523936533022705865521625109688376164355040855924887472503399861374685891 875281125513609817238944196858778948010369722613176461214612027548485585452350 897799915691180500161579563347315472009763575415035918413866218647683455840085 037202168089023071519695396646631062999427922651794328592052156166025576876107 777396958685004672604744539084988781653356130564344501351024504377940754072751 729429150439929587449735872446602082046402824088441055479623708770567517813925 746436789128840711535536953742417513372707023189431574597084199494747105825591 553459426305722346708062347040918891034210813266589128905885492524560569853256 474440263213094169786939853026390618975874215064941826355427383335076683420646 536101485283871226460278272619518641970342571729478091549557048420264976375721 319593562839693872722723912641052732211416184921527855522906664111309786944373 922406266674968827025813765686563758888627664255342133037759674937050920946630 439121479923700334889723896152396436067813033384328470475859562295225911748265 910398440113866034523361416837856636750347021526382967123583164799126284812371 097068008564547575341801928154725760005829117833711754889752754352097891967743 853752684996803688182649390904905302929946354986979816677413225993818728190796 711126091100425920065400382676724512589907498931857629268941379679309119879078 575152669791251664114715112972037876077725226391367457625262430275884303198361 288799770343595905610329002466714431916236922769520162939541849431210615703519 505934414652188621543687864574826954953328269238261848129551743105935481512334 409606618377431084556670971376315034580636905695560148005118666180907626855193 417186332486790674134246100275968851317003395496921043193837787230584029552689 166095057980588226432105505621171495617129160385855131743364371257866816493250 889457263734689832478934880809063866828368406943960980806878703494744707406644 490559840011068767295484732914791748642914399547308277617755249322814651840148 421654234713870686350644655329286409756459703802143088460393112512928380384279 397948418727772281319906172105467321951924564763158727750130415255012081149269 120703600965604712754835299999145353845481411001053715382564914158800142630902 646329877409771273616420452214153598125223227879360560901134674628046335419472 524166114890992872128069617403017236205769227692353225564801570905536067738690 722745034689488422169736834026029266183411845449861168505446383469835143462650 170279474940229047120622340864909548649183858184731345140196353820155808218198 179255772594950911992989149877996247856554612370076075508683641454179987097937 320718284223725031300346744041800708691020137224857454528059311625507403606053 564985678915382997499185187285949303843180883369754089774911641672925172823025 106248566627049141060715733637104659080579978257152414164247462560441170878168 647110716597186632195518938187117849153004865155246142997135684047661529879957 479940596879823110183689029555691777148435116640869073314368941056263651064178 870472877357172811333428921663653392219912294549818557821026470233756687242310 311528760632396637982125680818604732234812747235265828647607652676524649209154 521039651002974607734102553720113809108072680529042132509507799098044534834270 271508990298357728237289152179032689052812046220657176934807756864504808024271 021632272575789490430678682200488957078598112619662894229266834958955362167684 617120638263263873086653365434317406313828072050502529788646853890111244335921 386255253260246091339513442415154684207581345994620278513151667848924256817818 349482314128455287760104647095416512310013379122597206735051858481584576683118 221986286487516385931010430254559301744085030014141247242263653886282737068099 068518128167420091484028234393460865997889474566718786870075580724402035195834 964504437877921508916991523034309416629233227842253070290879387722762096397850 463498178302881745416228659992698786537395460220737608036817750702593573385469 767339915514332052730579707186267825979735114033080517535520336535997112059506 476726390166902303813395995593788754794149884911595537259216145118646797016259 739113729657655391122825529168680371455471218929799398521315210927950634969809 860874276592269620148272651022375780228077807216572477605382832014285839838743 984707778138104889780560825806962099210570661057505531129295473906739055411988 220040260327860664353784537349451977083062374777537359730302121020293217100335 139448169254441801164464286280569756239150175521076555912205073015751422312859 742917940938153046165437835104413182753863189651841362824428600160188833351841 291523314846348565183245215530725768396703197030742476422855656369915701820704 352259917761050961684716624084275130505532257883899575762189085124492467127514 779867864989765213083653194473850825760614893100372443779855956070327637271737 777847230896273751557571015893142741381298474564536469310157925355282316898625 574875911947928319220964937817650442023271355635376049039964984608814377066340 481064347503583091097075598614328715210098827965926959101800302021586463955363 648803057906622154906432055556374064423331147208192335052437303679971382255115 057372961651983277256619087051397359178666626962564200257437009385684994363986 491467540288910912158747902792982559856100334647004377272902453363965762690062 240186351535128455018035810390586361146676369202856040719504771938702644108109 251748587415841151388722368258584873679431363317932799733033897676490496361968 625765537919377365195873726502042834855887211549784535620859271104985781811489 176793655151039053309035698107033227875609289034539612532468196103019001989266 181780604923330557403229219472547030892248632696499696635003888916594344034563 569817156282380876436132381853936330811350357625427654009956869174317498487881 485849753921533443281676001464893877915018214130919164962260407474939145464959 327022758150102414642653598484397429879482731074711803549585309184480072191919 543731547552685558076079844904365530004128813730788802934663645411104695090384 444393169210144266866874115870617128241158397938374568818220917602101087120904 084017637061301317891382045881689675736324242016836320083988317533615895203901 691917150004828523616700852583545508442487782014027519622633170401831277112703 038000330064369330718143531011605095642606816556122927893074783499149570894250 056757054858337672273185874179952192597207106273115584437337263436258336559040 032672196660305865786073189266398154477244923723492748404483737087623839212893 085531536012692266512797674450623447242020013494334572374175402536133671989327 604859228817060107447419282106222547974590334621344199899552039868851796749620 926443410874824769389762192172724166712781857958066851727166204038625949018553 313611773179264195012230513843655329154195389460774839960988305891873188493845 572668372175074839135319128186668827130742626200133361429726540218290102518042 304093769707142429815091619825235359630103888545647575683002377112959955779507 112930107616152880332313798857242478772477331056070426917049333443843689431073 191255782113317465172528669705547621513763035828524994918921178276700361275708 464259612715469616214992177520322234014411628687138108221112958713923049598111 290956692373833469437405410515406875288497775239265097209486215721000833181410 772341292509906795802430340383211709464321034099109816365101379304327794619107 417161922437267703374371766550496040562121173747350183777401208191171739579770 224809178263702837861995656061188308584163173776153039038461379832782596685700 951825032906104301420564574083116649596916417827498005024072930169423248173608 917408700178362683635326767426914448044191498767558402377512860713295814108862 158084209040057200382046628952829019636793068997491025303615788081744956220191 660759936928375674510601411674490319742807387021400031477375569525449518062741 265161666501353712640725663100691438051474235458739802194199097812271656920254 011266952180899444500059166833055898467729503653601470091348096567850500187006 370246554809907458383487605921593254214630446209512031910417387837213654968967 118590410585754297937572766334481237972870311191301478776444190688981342868636 896391711073034092121533500689409904114888121712561525650885070747400336930887 020292658261443547575794026016952532285501785566136321132479094216817103805712 125850270401239428008109761455916347271396643453113179069720788087777580056871 260869451532590073819859807768043234390066569308561403354422167719011840718326 015897800825608482703942101783190968698624367880399423479202900752076268272552 336644794704333618194583054742201972528127571009836066553036459228305089256383 805622843660467037974575532802030717249122991137909462705885588273563908393504 622216390172802326646806873340498167262420710487043533634483773799552152091269 772489209492624608456712693711930889599932856738060677709973578182314277523339 021823986865212535831089446708619738273828722726352137797928735666539397349812 232000347112999603114417638356733607627792261293655655722182239755516487276475 169566225004600272132746615045194956856140166554922967919163616926112770337703 025191482825837585087863239556276124872845468949798692941065624376170368378144 492171770479292806389366737037964749233185731605048200229859001686095544439421 772150616177696606750659352618310089997491420381405811540606932832766680526080 102748695771856286804419367337394806644925991928042809294540524047037205980876 545401091699266299863660406053386414293852959243222689596376223178431105992651 486236982560205467833094248046684043172779532264849461997185532694291631625591 361630531554190708374896541044847616811176443868965787646363274862768501929965 312143402447213849062181255551072346833840301914269649850845759031079884275993 452297418302094504496979113159274049220087292250117540523738275310276722351292 100687634041052420429924744307566320299199364190606950431309701941952933950148 169414430981594656370180711492929551782396614292760031435844552411766446620968 060127655738788893300186511965797189968396358988244331991648798075187597075606 074825449451411575985219887604358273819230842875873940485957307650790601688707 139524366669745490723836474274981238948532432365970111577491575979520863745295 327331302866280421064872095370591362759887456250722373740902668264866282416065 175743086229808852651105098586327960861399175352358702845184913572579233256155 980516584880754208222846528052800386833218485955749319640355421001610003357021 532098875613672312220359345090484293004293415187873252487573219420851947089885 872667131643773557992547345515378467852235113925889686854687155159378057018619 427870189174482290098854646134521519149750697741155063713416250056438003433815 748853342033375481477559473333213717815947559160130729061546208807457701808435 422619859691188408701820525269766350830023487020958682763646738075483315485439 242156704981073446181052170565164023923420033934791693074669341347138167107799 798282761260013530663946047198498702457269473398667256335111146557734124820411 959945318010901965685098465982588899754046464366566453502891704576387931178941 185509454420212542139448795172618180248846901476751772319430624087279917058529 379930930924202058876480373363005421688892700765611021996402350159227425556562 541279853169305436011485804565366942940928272594873845421331939317634449275763 651237602693595989064896801986149857751098386855751708905237567472096918593630 368212421741156696682578476812952012535957003940944879333950272794937187399744 207043255928368056824739571120968872800358363643969974527208551131390214448105 967470646052231865030245647442958399099950676030791159919200826457948734361098 452471398178669037488939567496798323693617064582428184756578197675570592432026 155328519726665114649843653833171059917481147644027247570964296100733779720175 128614838277075970476325594353102342051176816059390610181544766022739254410762 061961085861148741153865569161029699045182166260137037346906160843787467578522 199707806788515964787138459364451761215891960288066541035903357926839645218471 962079176513972019477615818570639361152678428935380901683889723775019770194886 256307185489975620948826294930269553875339607883670372213466310553391635787228 671576021458412441491679883140687642041499635669909452061486004359386460801766 770963762861416223245261351567917914591065033574007375129316286037121233234549 739575493827305665818334898877262525710808883222928148348388119284786948021617 762015272181214174830894462688901184006540201373250557975706112210413784223522 226735848962957608271174368999965469452437028989380581975700713724396042070266 204490184368070740565680241677339576135254423254900525959939181038189501904730 740201354244030594849036958077434364070969170984954409707341566068602941678357 852332660376039083431373839160950208378260049163200188853466322990819501200669 674180646788198114746488352196763516462875404103582721400657585392123982117909 860543428870659915012369758869985707649240331446699097835119651906262437690041 563301846793820136283053368167553882756660437310992338765805906755996830296530 679357851000193720453252047449940699787831020815888453664887444499480371346498 854667562202012674273142450421585175400716915207543917828454632465362621158182 209833807075831617151117432560954919021510578233021178482749724150808639294321 094728959173824753289602574738690942809130448069076036494516427236840412522302 756540997639885189397026341829027772114378871362580214968289940277021248250390 186737957773849990852989085227617706573132070571040905400049984228649270245743 366037082275597941146096538656204668841074346956798025692085772683120835650921 449096191075000989485310552106545891385792275583890761558645694618073206533076 391072550937060401169108705386491666534603559568199995351908125376094083043919 621110073432407105319401244573155961723266235544317733972396344482619692647704 216425261891332194549836592506806296850169414024400444657523856678366241658884 544247700727829043989955438829071727891735350871501312036508191618881826180827 463378734230254159057084306205016499724084716646403594544379122837905747510435 149032671047049342250398956872048302719583434435713505204513901680729946415628 240913798815028828297458205483112047430941164076042838285288590162681730031733 417209425156523564025047691529454333604178039771971709781406462353610594040841 588368179268727793384208894734957153920818943608463707940266520697027731396510 599785555427222472700324990010420220304633992208814745160254875719366055336979 770160350163211997174307730126847657027923590357242759116950047134743676471873 804991380171687481621737591012945576770982661174807729159438576266809274254409 667315046406983316670442224087399303039732647791452026944877558639490451265303 990337898363156116251443977851297051845378391724330338526861686781490405192660 272700791017273028159539858739590347356792840656935368827955492555856280726578 436941653135484559783560072001703996146805193014457335973850577448800341472803 723109409480242780306605407899612220557454413234889240270817892174444815973482 495353118328472902277252941296562904309792241013737890338138314581777193549644 773857050220137834174463902044163709058599370378672723398780904061038034844462 706759901442986418498749883440453198311681418038436822473185766873194026642524 302990300332856520759053570313720754600398985200342507745021607472795789933496 722776198790009753599269413174719586352817058554452451140349063776888167283371 632344299040233490279915249956021999805373904080907199888871338607446525236428 696552398799011410932063500857846031416428906207496443945272011770804649089289 908046965756860376508459505028144422248240939992090723094756427151608014251735 082810904963013683214123859644127272329167131427037592577338422058567031525319 011944504918897580892429762921088263074605104501281854440449273522457577700915 887608919201611228935597854323199390964598219650645435409375121254329566426111 552226977749058131522857350205927853396839916187986704407112710328332758912988 100498402721072655064041193275528684319974444721124167632972165385877460145628 818484310906075221109559468445539400769331628652861959444439678310877193492797 788365950360595630728727362725670618116799137629261560175241513274417484981911 427944888344203420160949408155451494757458972171610121098292457971657296337543 661207857115696771357319316594732390933800972400605037347785941854490310485546 650697457295921451483389359024336572124091511263414729544242069480993563556126 408208476828782055364494568215351397497332283455372174194703378177340012410660 775767650689442561541802523637329979733993279921125053482844161692684740869377 347334036393034550002532816175881126876083876493474518571866782232824839477733 031082164903890665412589007896109375733740299067366325259199362699099333561358 879737027220593052256749878420172905833451984551877616224141975542528500549914 985331976934871202229651281250419431794161010448648861199858115725352035464232 599139043082777534192439448882512930094422849250098990226391098074063622485435 294189809041767590886654736547045958209605105769708690114341183590918962808634 460212632333432061476486476805543925889890918335233682642971806252049309314859 710974139064141802200933927709782917513580495258853898219652488994421918220092 915078205775403833842159814345595798872983252233569615346039881193408683685202 438054569357639649640804680280204081049593765576936692871524569244939896697568 364357900313087878125579298489187225463351842010395357110370134270294948132766 511282963626696129999394339734435492072785636024666952604791872182618044796602 923251595894578989353026034157856451659781666464070684703143471234384388037402 708783059894261596592487055144648499517588432744459013473411586348410297734355 572586804712123863481461126077593706230439749976188398379400497114545199349497 837073367060630914631902732998200428891837125732827428144306231401217560522558 884789349557939777736167643306530867565361757683040592940761260516389041340244 529857251179205283325217648020979921972120629002249337970952142931453849713669 881937431925462997587643523368194673302774929707576541376866160214501636800964 031981100775274839405512414376899362183833688743695456766213799356872342243634 953595813519910454761405967232652308675760744066651137554729073591327416684901 646696073624943256839229330971532258924174894745874892116872429428442492253611 705128738614505907963053512977119571670052212531121233807311547836561530815341 319150955314218894338723692530306424332639137572080482255942371096575042182387 924195678205107428914048098740807165720022558112812030627573014784569249159329 347838501137563177671572171929460651569394037179588592186401101876910977718938 078313708066404214817197894732336991290898677845884830714997538271750415284521 176725173128361342580978596569700665814323482566879532753231792329818411570444 853552105933068535826704105071673300169088434312802473902034988679577060793554 791115322354579553796108380867980085865168858970025204241173979827722259242079 803433992099929981082673763381020905449649071475188971788638908195558187286204 421338643314767919117664493803438741816645266431769947529680712760057599549137 539743812927408055589570720418131076523302775541932743452430890806362036636405 064298894637245805837060038040922910284209987993385538188913295788904936558747 802916991590281873520929919159557318325802882114286399502693296093978244553441 218859583479749034224700321099126567098165155439550167126723950050942360350973 835503598278572829603303183452227227139606542214779384625431441521660167163685 664992972094234343486297850685887287215383982610960928814116444673361682546254 784284899494316894144775495501205225270774158386836017312380262895839460714587 449560114837486075468859957751614029152595323739136923439789594020536092435641 855063680148900128850764428553836917370458701490205580236221312842864046991520 563744933290009463678333993583452201387760305795550979592019147023816179853261 783475163424996541545156714546020992309867253768659628832112951837291737499014 474500765475053246912241086516167439409099492135974758612755296178030543273281 657847676533877535374157384399796361626306470028334003927507932999642534903282 400527849098077793564892712747070667242332008984205732955548599150668942375405 860979729641725695464709120721045685154176717124517181658906361458173644721359 622707183773237154895713895876092016854344340834244886620053548442344735756058 413828201305461996818366073932560150734922266462464547195738258003074809720407 766230295892220908924836994198724888543596454563948482563294598035519397093769 281463798451936203075323128965595435245007911948432184537359403396850130858831 963091705634535334306856642368909577406663521981582975376839760710084771193647 768361674131424784663679151630210387519568368801686110670451001045122166827434 624003635410687065060979421856722118049391861715854050838377172875323466714909 705724805792946885820030436602224859690657950619106880601426541103331437443483 501487206981221532093246674416085645933748308321889700077663605238273558893142 198236044068922805394808824184967116333939018050738656691171120137009103111816 671229975195377248355103374620760570072169546208450748241541138847794883282322 870829071259707277279919474879158301888061217960863897845566760631981802731142 544825939820400029771226712595457334533528834727788156135742850631150753579252 646509807376714272867239148501855537978947729044796289483474744469972099722682 996996729473045217142467249909802592815199264783417677854104709678943819670961 501441645211146825565472230035740486916635265383560541994345220979627394209608 937671372044875750585042254656591047484216859837607326330717990043587218612975 207192884705825548353016181889626132474092391922897037445913359735938878933301 033439792736798737726593646020499846233601069483975187142872393943270677722887 772918915340236310963851618800832127984729939010924933896160371162520900607878 765157672233827062190550005863442503180967063858348563000431795524890031251765 606550729881405043922694127933481244747045783990973196502493640511045357626308 272896666929443442576059214562044096768393897777191660635970634676281405570066 344285293977952522482752736093092475601234157115469843907471028507346592972503 252727132702661469202717695844631854662082100509286554291001683298132926446486 530192442541903991136075033259027851139165322695271403608068840327776591932376 826456870592193580745890172105697608517167139869182394217141127245460161298387 510452639000529408232945141316374062527492839901695860360118709722814691256429 218058068211270075444594886343795232125763650274725473582318838413428533416574 672175710894402335257214778016295282992661878287925717928246016028627756080725 964000582125525121885868849005099184869907249844101884624779673334738521098399 133610805440375294806203379278084777671317591447488897188840097169451281805001 262135451651880947928509176060627747013999495944977663922042874719278586206157 047967716254490154532180726009828237636696456650032597969762113494301726667995 350991959565756583303971859523873252947968095162186698485891106460701169085098 799530293071359589438857175143357430370708569884068760842887393836574091984028 993960229431466000825041007451504859879907910190245342714264065205796101727248 621595116167075849594490377802727380080407106467316518869631377872166358632083 715726014577775381931443854932230388187664509592155840708984800468921466171969 928208540453807963613243178042263266075021969979059691599271595839817593905779 642772249352780828150696480664000859305257259314383569815879692581568291384750 510808978046312215745061167759201291752497890578878844556112336963902598064402 065805290030304307961634490696585628118256089093169052786753919175140863435643 602405370860365225409433045938521682653945155623863417427877249542443912743821 542339298169545046796290262874391186064001930836224817726201249690470079720608 588578211546830758543365205130677423355181949233600744938269700727453738101576 249234775733662865372782389306689188208535143585425434253166623605638612740131 775656623013792778924414193301353529966424670624012712865825390375913943263346 872068579439505933176597609398983812521555247514322701811008995850347623178016 914450408496936204635102514051648792053633336485650252468030812294507956093556 888222695564242882136935635075197550267197423907101470119163871423251081006886 409101386793326312377579989331898247953797793625341114678519556420421433808697 441021511372468031694213274031682329949722134086484665813742373227504877555160 953024701394305619964509197260942640870352882737364770100024838642402178158774 239974690591272125365046241065850851185899787776155543322667023151008091296804 905889535040000571878514732697097782708011873372254806225798708896716088496466 485047262179819628434969321150286453006101186810892028678555633008576461812827 680209690681875839465576673692737985412798197246012975452587498808175970862087 306385773809865491514505595815684522015039027970985974106251982717362802082930 481611395557745908620936617163553787595549418277669441081344031865218464054704 442841671661786763827403383212093961637708701824296273618513898539294293525814 627750030066731720096132899393910411315725374626486264662324134463117541223039 196072590390844276885103754719416206943657677827035604103306207980015629084751 875201555447988282020177907279482786583230257220180061493935857611557378820848 659772234322146819024971300433773344675880271918707902600063747540561124196866 945812243974893792309723772265586803350731469246802716685138931714029099904465 451160505970756100140892949654828737085876082838639449800824564786442402618052 726969551444473752924521676908910660157497003653116436179830906052779319223444 403939774232697710199148969555562112830284984827274931503166317249945196623736 574197506797076720674563838892692163398757751000663012943376396986946788970284 442341446987493171774875383301785413999944026452525292363993228653645438261561 447944380367758496714157585889028413046431674909162884043074113483128114704470 844917443028011588662929127428908879550005467098197333373423610392793918544841 232314690352454732059467686848352441312427742859497144320168521997466839686797 484249589078411025379015763574124966913430053173590575024515520776147289023348 330129249600445883905733396575688668016197004531923691016223150053012161218103 891338567246692943268037507377599033387480093404095618174841810693167579609394 450276604539270029819098722476858740813856065195972608128768825491308322759231 267360102161284434900492116139680088603426830729432900923009117209701039672655 427001989214258689813702160161249421846215956878643397311898484801973960464514 732145426992431461392335022166119571826736356731360189382131004746021237755364 348484679536951729158629465058615805452267942864251254640084579243067745620137 513713873437071900534693593399025643809546785152047591663867963384736477208777 622341230315643774114875029652406968500183515301264183160825964227688953752268 054058089185661022034907463161611054756383941967992845395606740448247547537153 301957054529071552543090061080264508388330623001158040574788352061415448395051 032558232705354885239551536533321446238110363767654492422536072747578044357419 936823566106468866513433666055223797680625285596395845355373464088898345908386 594262558713441123954171563478748347695664195942284172583331618926867384640429 154228242653259251153126299254810041547214821658592891680784289367973979735637 862238609977633495688318049358809549111782786549965476101160808134706058054955 889051220209368583388262484370005324146047740825818910282504856205413696137827 418909195242092856815597388262362510669879177554581841784084531986074714338293 930426158022204330625258110123358313780672646389542238536734316050405407462645 517636168308774403628013730196632254319884390118622778607587758292429713725905 820567464110202419691367726940860150346845174860392662861420800800661382154875 469162200157797731240562186930782397250793625885500972990286616994694021930121 850517529855023158489683593206494884156401662580506754581467766818784490090391 494058896656909709006224057411953951293407086262816473894672935100917673606461 650996035606604857857551481596518018342647931509304992298663444427398233818374 781703999418031505133856467059101287190737877366558868097043631472404780574914 559058270361536080986303019577474911611224101623765911746822697626392084261750 550440577706610801127747152021488093787828420257208607260773369192257983472696 026433883235304639170459230102871253671552862416016290911527023426362192264293 197104584628486892117443500802437227111345618521499896403454565862131506823400 274779043924886084236531779951109640791424443988438609637163507150397101992503 208269804767456560925831636031991153266750184006560098089259680450342180015497 895200947678346046673306752404536927319543782495955506261081114992279934659199 360609406377377581354992516965808372028923517377311053245277411722662888169200 623963490201088688666247553779553926635044170818677494775274452839920808854168 473712926832471414065462480635729622884668801150079647264757731986797896555828 842848230974908403019834059852862054329177294275649405322319266548764392776947 198375446136515611944214831650537471905818642669618709301926521140577333314535 790098421139410575089776327251060933338163184771484348688243110022330684355856 859169026112452048306291244199681685111850936656919060259368111943753215268122 254379901273949721835277257234217459248701601655287075525232565494902278375532 469204786229767504138247332789121115404274749621214449459081795750740867244421 793152866617348330951878359833924253640770203777344877258855252417860242596261 634780411599634804944082663182088554823575190225204672288815174302242370081377 369689431505355639491776706324220356423551455239700144326967107531753840668854 392820437238703690689975817051753590511059344667959007413723880287063750665478 011962699013505056231402190747293643233881229429945816641653919794594971595112 701561038584708104576935314259033282265016143662964747646113007310835717093330 406229220079620087487196262164756935613898283795880485257079577126328167483303 849610908421624017324538943116057154787416396542716651398319442987479313103757 496223109559690164343633840767165040212200191567049000719222423158864878323425 408727178301233142803478089936316355976590063677863259143197175241319879589766 301008334548396056362346344790252027650768743755014959420422357328486541445054 019399449736319451500697293829572901280364211977445921938523642245187237874759 842328066237961335316770650397540278624868177493787744636947513747687734148150 709497125353154034891917565125292734132219117867019203822219061483122750120766 622367362145881526771747450751621746284745906414835535638481901596055973729872 694697647413544798247395385620524645661773039304973699280123738917591946319117 545552907106205481262614932753864800469460892238559334957128544273126173828647 663894804150505316574200922228441563242123044793085279647703015367026619399658 615445220362439764680790219421771738596913904913800397626060528303234804005987 682536980683071752866029382872766571314073487278463215372602548036689865347329 119729446207468686560381919437767271813630007612153644954700437488209001296957 125408552198031795915909389539364632566419961090516676186587821905005991368894 386158601891226577886556186926188297460500436702397859792678462805947671052583 468306768212647457519404685767780518751741113930946644144627926894595684274831 449822038969628303460881865148677521981878016999608438430615837105093878705347 644186451845510241163229322454925933943458925361805422921235582195728646498160 173227647348256638241429016071377969061007627197588861615146500091013160462489 609359087216017782933685530293983627964951473336482793364745559594416894564423 709653551622073012876585721836589520057958258605191188116655583997694201060600 451673199646597507131322699485932560630784268221512776112262872733909987896821 041790208959928424743827018714009100338989241129115785389865429371145736284618 348641213654154864696015214258463705901045558477351025034853349935555280476901 033097159886370113726951155356642549123727980157998794601643752152353120001738 608610028244436973538455448954024894343615922802120367536478560693295686269184 457068721809971533027316338964508369854117543093582024350097482378135341125474 982788956545867021370778328681954308561877857936538222520658132905378909184905 387030587635300561367195196997831081449581989118224814134825753055893605025584 458885600768847946078136817483000035502425952829219840827547240508176689991890 285470668027882201835602625751419981705708898550598310316454224842325776140741 432804188580261212904784857095462222119469951597205605792509512664104893789705 330352531409081741190109998599803087031419035396935651669854457095916138350554 556919624362653045800261098838946729001197541530608733397454710490216092722067 662736729372017568281688301756741899651072961940368933093689515264555678233789 579143624867874856402995041894208562093022848603298012905879860555063339373969 274370404553968714343688750005828576971822831246231296651545899664882992327854 450142059208077316524881358375152633911255807472581986483845688801583732304799 700484298817676178102454998247016172825769959473035011521041924713929757946221 905723010072162144694667441599772210781081236357916632436177639312510332455548 906256375929680281001647506749744900952108921351936624095187737305848917043483 264830114910966099359625370681169689981400925506337049096964566958420896296753 379705012199580005209522298341262554014978231671081894129650117713374648804854 398603182902974011852648224291702659532162886197587856450489518066319070789752 847171821752677288890767767632517359184036884277357342439700986948575127019916 697727770458456016827470786082824672433998024807590175610730791449325244094030 692957318421607718939636618525456039234559938157835787159568498639136748814324 612909308292177814289762513665421440602958284940845015641291405708184647655555 410075310673279758364405309176932904032953851143877168034572049927516543774996 656878250960314322669863665856571850951033756513017236030672670053718386985264 029514397008238800227825768626992117455221192650025253692405835720772083261974 265957259524665522761494743392837652954619879415809836573211764805654108438665 010504557933097066011429340805600668239371205934863108428940854873369073717728 953955837391591411254458320616498922341457887632505615729876589862383779445228 163045287331123986959281470363623662211501984309286316284481918081467007590149 370920798648462511654938392149693290189512530160409045835382358412643551969220 998831846551855432280420035615656481580692524347770625827281424355574526486249 494406586440993030920528056864881076535256332730197162037796335756996471616855 078925999405859971612424292629660422821314074311634416663855433693141286091405 274815677687004660532917222620104166032581251444342512460342267016676126225703 845863406153256233978040872096375885020468712942942307475216878190590954429377 298472170346193395555797470381500405524631474011002745534591976476886573912276 211685063910925060747108621343220736891617887430336175449955827347408351201207 187319453653479640522137320918027657855350121414451297968646347428743161283741 035471799833752214914646936853559506365464882624378446295347524712336166974325 911336217837609546200539106010537191537184310870888951299867841631833394617339 740815299520393274546241247285662932285730363892599919279828689865913158779240 634948015987104992763668669753982108782347415015649599470534905304096484919316 149985078681091863318537928213226437048074027366971204504015031986400161799072 297422650793711760189642594550670651310537150695224816074995524684549301776365 848682945847316833118102207316782407745721536938969301669661384557039999850698 455003357579824829576657222280001440095055290662633369249297488166774057988973 114436710709386914160758296046600384775405405778161825695765334262655660259612 428349781732075892108003191903968824642519015253017566814381239489829609465432 926118222304125737433565069135953782331657805095779361693590578186828473640080 430460448998912786875692149312679652528400695491135497134897953255802507493225 141583332590663977888786139359596835715325972338184159801985415014425502869831 478059240500783952536109043247642939547383724500645369132540782706171893163212 350472775609787829061951664848791551550691476527964968401946455756127657842064 410294835245176804472789538901771424383388936751944168106265839823985757092265 187367047050671571336393898877069071879574327597473349147346464697904451915602 297364723372868630956355102541822428765738486272088432234677982238597739551795 549469350409776915921272300739250738979908021854830329465434242039322560799375 457450512246781620273059595425499783022097593185764518340348193037739315437154 442485999851596410659776404177445480929414643236747678531432751795883546116821 182915717935057608581750794762421605625408749216332751829192431603047674298259 273481214760051648006535781056493817233827902909925045560715697669603202736992 449347647288177516952619580391099059963597292077817903596839107464400358805801 291147219718606383322243788000184883683742535925535808977850800028469437813911 675089023992107930321114721821529072404333935800165256560158136951117766639405 718609532320780137873196776526652838102980054100510617764393419289092991683022 292793861574499191293475047994979894047876673570632396581291737070501223029659 461348634310943072608685355127004390006921063681951457335502484111176164734674 262410328789494159091915317679542793257298728064306789442159742716267486094215 630267265151435292236258732365480084821227074953382873854040521634525703552911 544923454160617975641997411656467730270968895624161225878545514167912081387287 491359774975140582444700603749578139555299148582614747330804316743926459072605 546024829145061561601267463342969681378077168154337877578202405070359819250454 493845358035712547042846948954720999605222374460589002482366001745265465858734 241416530881949124617619406212348836475530180457893398151032665683861198929767 552633138466328650031712221235293477550877732534536412977192673030313597835402 427671508172864060010837849381614660669913334394362687057892431208561440721731 310724498739340254444239415937202522467004218329924169425621816166092749413200 564725991985005506665518369151824699836901222365081894417835107556575383412629 274710871838380276185377693108395094452271095832414394441528979668331564187679 751672719647285123027998894232411569502913017672156310608394138687985024559735 632272943712457483956434475480310927707066724347830920145519201884181544774117 521079836882561402954087963330161957200607727940864238066523971086223305663944 993012711768029254305456652858784167401133747490413147124236985455208993062113 685023136763264795155579663328299060980060532645890091844774152420352768617711 194667339689416074227417052745157032779112221907171024566681382951246636159189 736271634331152064633243534784319801350622431985733735588635417704464207886702 055541831060251575282994844643538963609900484432538438821570656330173011944511 904391887851470216499487265913131663790330065371399483132986088726470792745819 248888029538464209449586195717157599156185685599506122419520560726673404730918 031498551680654597705691130786180396162945389044741542214848408777911351417525 910275733931191157587417944897852976726926326230027067109671544958680116470739 461141499024795448463885586071794769638061637514015435173397215785220486273434 855711311984360798476576269316918916678152485469510667762327031237920086568335 832921840125194190958885381558960926899159075868543147011509432287011548824551 098641827627609885465744863292675396729882719290248435655488983633543751867843 884498997499730824781537131012244670173073374925687581435451435210727311901442 046927601886267566179624151781463070890416342640497097899556249155893893809546 220769494541435719778041168327181180760397381791340919558823132861487974534447 251436634440853061867176335001174197390201971073243774482913974626635862468462 518416069900901864765665624471733679777819428726589065583551404409802545154439 309697016646235349839934390003890827522717791097304705256779236630759609688841 016812409897807051701386867252235633500155731290037741406167704746404637572745 480208542549533572787698570807834369791719697749642673760480714664744495242932 871490620350251492627651959200026457840908959231860904313361565281706667808974 931982286906856595754531950244616454077020363051217635624831465529171045851904 690445669873317281432886905109633872242590695172650784637254077391266598700357 159876405905325738533566671678217256870503968250159580232507912867416737604807 929599038655256166848868685406530481688811659494117661843623245393100443096738 773943174699674277893370607229969959399710221760518448314893933140482919912066 954506956207689134832273972940347548479213850919993625878164844902745814468505 519616830739297731120571360111415577074815511480261532646880631510785845265836 882159886555984006482648202396728598149791381260128801076860113868089711919079 347005491696016943193767187293873484505006798383966056326552201113940312366413 896110628529417537950133725159640969613996477440861698826036375636543600278790 439031401105925977598044398767208287353213914215554567165430031959732793317907 437526766444652532253289297516799187188651515004001231721568453694381997114908 597412985354240151127326731259069770754672471772052922013786499214782801158013 581136785208397295320103811642518237088569111646519742876833478644015917906416 482349723514956417443454175111331096533009538211742295145976246947549132017530 385590101976647649547167307094767623947471968248204059781450010048239297202301 236887535191353386641686689536451218538621343322629886996787192046047089408566 441055826970389495001539670133834541470101537862268304988027176460086131392483 066621479657342683659720488532705839550230039767511661646603999941290081236863 723640344600213236750536500126854174799813492519570532641096707218756097379633 840762246523645288613469342701506671753745241809308188655801119066739568698097 632933757125162331705609479083836127231308262787807799545662758834729846255967 835516284873416632019321844001309939440526281928902996811791500868031139664700 629789761447222330786161406904995765815753398831160690351841362994052330458278 202353745179845715328835797236578292207546337152463802117481857377525048708384 692804426902424479176507494287052874126434953723162639305534227881310637811277 131371643920019906984288299996029945750053913097904718931807730824382323971590 036224994777519858965356089134069999218165772726829590909163472960591138852512 522497215098325977819254366212337395655157032128736730806940110539571985400418 733397729738266438295088015271043175503963740878750011096489479810052028296530 659533772632806185245755020656741425277200032876076289347422430945947652990730 345083971176136563445100541472027663047595478240625811594707566144506800147321 806407033360337450438400003961554879228994192963416787339391301932626104700353 857657880979374233900573831769991785592041629447969282287959648295668362743865 088998780224372230242975477587241180141056462475753360928676623011955390718643 625790470423928338379067856393057336980941353235833880129418626357647424421123 077707383649121345478333788254520100201143845914471755688965523803474372932252 776345578412430303854681786309358188792049166917241339051308944571353849563153 994472523239013228301325873826623428367791328536195588327703026988985510677614 338961098761489263955996332300710833031845039445847461708083552746806617892746 036230377795088595673022738348287312708118816632608657807930404139824864947755 170844270969907960833395350095566728167606747104805572524040590089079875113079 023448103222519721870033499996130888327779514687311605436753298359925988054923 064664556203119695565589485522528502466556692877602125497210036663302772566014 076058661615900164769460869717959674534465561226382176295798823441422730391109 201850043057170706387551865478855770133629506103109450709289008531729774155935 040150153359583085998814068960258651166746936558595226485665634959220504576822 075045333837334183149489039711853882593936819593342697473034075611861014063633 828750241425266834713598249168545028178557285689016833337220518388057511136693 794592109114401438920260272152729475052953670628117312863371465626825724239674 664144893714142781620686424460578078823260194966689597345613556509570095239058 398596996934200563935052078121709774438943166642045826464690944389361445493580 109967306308812228932103571846313148713197229950391085433794733156885980971439 409374510309648746658204706631022031291431520590536644982789417473851011744805 931471110096122692039364060448048219142080423907961549448272705515563806910373 850422877818040445893523606697844482811777205109465551603143874762277479798691 529814010926241356823371384852832692657310131514622736316769712219174252794966 562071840508755700503472754534102396001449904372963215450746127368133406458599 822464251141793563356723948970929160152590923464650939128744250663931900277667 401648964391335067313493223720523506090912182657514969473673707257074270862727 752290243798065518497838274683163824070915424076125844254989799887872016076824 333007312826871596202333451870715500430875097402245501251060006739504615477759 597706201373376666713658247332098148669740806731645531522497348026812898575198 469713940614969208705790326552577655811773005611160943679252819668574634769164 611321859178772771794925550662754223729944074290231197510345325127311361847008 396527819628472196023792995163015124920298604663302226470674431677063477822401 968370726818691385979017100008159134534007865680292548293141646091357259427405 417028959635628313188320043724958144693001968052972384296904339513890904248630 347668687551430146465054326662552070731243949030323025870481573790930130134014 427085643153418962844127987387465967724935269442542049659405348885884757855928 724032276468525507612717940560326040148606276970169981192035418534079206443216 010883851425466518026590363470405626456654275048509915150861731624146585305893 800273631431794353322306507754755521785693258052595700147899850560285418273750 705727569823044772130673450166457229443814687838655685721581055241839433179369 171487587632910584952085785057791011939748125898229654765810700998472746022182 643864911648820160834969270792403659637244891775502913600193217732376713350252 167928665315169193465114215102579827187564577746665105354294414282227347776470 864273527454499685998448654451589484339487996855347894312161913667912536165854 910080974618185583989189229564550328196630402601026755209404132469395578825947 166266601745358861883053989142810383450484884934205906001070747288602512939900 889239576671371920027792941014440548544381744178557521395719623341883832166253 015994099574354381244962663013989837310763751680535027522282253512879173436081 971230652936707172366055517372375570986268804168609847121949870032503700285867 478747344936621484596951580749381025969132270016601642403038142315971542761401 296251512675746068752510473359181235330947336101018170951631384515534073523455 168439548935518996208074884576427020242806261423791516652079706410085187208794 817763879850602697756683263100794157879776808851724063116988364352680328310111 958301289952932369951381552391999023160350940977966257172070519364733008289254 787759229120562537272491060934693697724435706450838376713414233139324338048930 044398287846887599944940438566700850730976944945228436862083824731902877935343 743645102471119883006865869777525350974871113972753886939260426220910476570264 429904240998317144836340785537108423036716979695542643106472193604837074083379 471408740764668545561424023707820064442785391736470073683693429260112934800204 766282277581944699655231737530621048374127744035678744168451826405831097394459 303433989226312623570024313591147127548131335543328485396267651259215013642991 564740687921152226478331571525723987927251180500308303406562134328336792536380 802145386544200136514280830068551845548057154518429868393817339216443414259226 697083281095858582361702894713053430477528898568327258990273975459753867136091 385606350483888694195558228139935527199605298819873607706118289094776067503032 644866699059146102906953675807597789708554940129804736997515068215099823889531 287003683713969257709471001214966256738031933334864175655021045956404573745946 633432829156821197877006206407710038206562225150760393689848118978427495354838 102036052666682547425465123739564852590141354013165635828210570801492701644806 292080497845257950362590715294469123167761699763326895759795684003855311094246 074076822679949439906153240075317198773851387605801072333483750605905323190127 199109340271948846619192424114602415116299826359981612151680538286684705024247 678198933364317383346321198289252123482669832880366831381327013859741591248192 351823407489899919037453746651167006331701706550200194651089095682410635862010 597413831450990558972502584182587204776899452710695388596408995776757268695264 628674423005300437333904477006928846465962284764972443144864056853106757981936 802510935618439090830904184150161452990725391829934714465154417143956629316552 065569444699933495580668436760831431136522277006471812201250876028043119814934 540968171315857908853182170497065384597703729628965994817807032648611768140042 354712418617491521444813163143980474872637219242665822462105978596131638000613 870817811940526371406873690051796276382452141801934464021709363537429110594725 488466255184396223557267072435700593413204930103725079166084185631923799615176 477807839397849711758351503137200091438680257968797385199315223554258315216527 094151278376617025344267102843825424768070493809137125870881570543002335214347 580682215401428970965665839597964007711247943471874918232624159337939453794623 774778706383958702348346855005109034425427311489680057882210870303045797939187 737415233106838055464515262694701597614026807112875961775694157891908784760173 917958244052780855957016553495975580989218179676699004607803447116265903628564 890865727169796416186308861488006229825899728739327455168990756496529627108246 694259050099065228165827545207815243794284455985680523462512693302163848408439 568507637578386968024205167785621218390976897908867247758342676165517918096428 196623525545461950606254632080489932991746867717581541745622475527760948823370 077962191029627340235319583396999712517350521342742990228683257798008121017714 601951696715191162826465942687223783245748350826027564218613166718675765516458 171580879517965914237601880536726220002727888532252757937222794015568082852558 717386748843815751347413210071068071628531100012165283519801302225000953070132 752090553937129790043223048635005821842538421141737568098292675036679883879115 341117579887864673917027430461430394610320752919107285966817558106110215853532 224901139458574046195565291381116739109956713441038545423224967379682531815690 380271171791128390275239705482681560754143585669769399200190373678002874170832 602137855881084395768067103775952478258318609230199829941565797760633440451218 842500716120577791567498065827533555160595305089721252275048212970018553253995 796161701721369916293885209421361237417102842627048552420242966660137285465556 538608185399058745744666186049381703867852749581782907998503843178725400680682 744103156727504169200980653414262050057081423545163648206369932792298256375092 770839213743177731000244481162491900302239452620138985939536579958098059519667 450412298038654763162263244960796603314577725243225613944870570939066224613991 657192889352308282813003231109174431512477661158815243734110391345731492953876 107969584648095236756166960415870344566340628817414075616856788646344103292930 373700564576313446078240753794897636019182649300591011094918309606327306438484 775057849126678395072571859958631317436745718623091726851874234389380841144897 952684814710211901944502986219498582719161661878008256963758824293477089902886 257720617691142504023128037432193589823159475580298190383505785997799982554929 940419658815786187593284314273265440263715100190375957531963836046411184292620 896261980645197166082530629918728119000934343609208778488277598415366992042296 326829406371591878697739077291700131233617235036652966149837546790126184964683 808501887070562532125633661020161641245132587385491717260362386751614330988998 934271169980299324637502562869343256597841550766106290913059950984777173243544 483329647132876313211002726132876356900206895653980268791950351164609707213201 701774943555583432635869135831143123909344626138789614465345516129242902461358 555166741023278956515610551598254580120377363543529041503395326559854062152972 398259934478495110852987142785998261677510011699748794991738112744928366055719 059468638137212158808151052030861271461193283408044312886277221601679413793762 042297795942093257860385915552951931353097725053611961241080403286952371440487 319791627447330046240899088975174870144826136594837757773759900935512489538640 567597337013826560505478599937988873901015422319048879094893714407730735397997 473068187326225717000641815814256664636619594599709985890296557132358824686975 131899599100868020151381127229727929048537170273067631678736633681893473108430 036684142688752454683388338098177064000756800375228683386698065504547116622424 640121196763179672518169684322991217454999491474087115283722872303510402245536 203419763050831391207092741028561313379941206046865148059192261102092917539908 025040229762887622095937235149186682807269453142355091764881217385506906890188 088594755820808984375730671941139771453968556877474383164956455586743611459132 030939277727546803539599821225290199002934876177294316467215666315324404806154 993321367776893126498887598599194821575510999363909741840869613429622037791273 198411506665966061031810485579507961568962185889751916789926410314531764402377 176562007505713736990830487592775801953699147659131047743923166928267416638460 160213115588885629768157664438266586910344742981228659855006705107266388719334 924474786361961364415216835435066710877236085452408041295950786848308597318739 545185828623188000691701749147635535424857297501376072974745832339858349054411 845123325604665608304702401213906939312999446114050111989446263475675344794722 744216544142618011420742981468058420677902627687445073983877057976522917085620 380866653317510266211267919143437769024572664170558263222029550676297618313781 962584331715882295396004196768335114743362511431545272192914328313207898796871 517482873721125921754088384075695082284508887875957659743218687256630724538225 084105279921512908334916725876373614926161365096825490581971102288341329342908 725135736594621689963980309751507014590327717809988264544722111228086492508509 452633385020381240591500560436147950906950887585493344645548022050088066412170 097023550769341157730018888733372615728875456560023006057822749833832813281832 345971004926538892436276451944288866440233480793392141154755423483990673610495 111649385881565740644120126660539680305636612395908690724976032538679817463073 283524545593150447628058654989962439029439947218643439256593234744614261112966 015001942341985183783592018375406403713318243580827605352815809015602917048456 539277924356728672039743518958694051644601932248270751562014962359251829969390 697105552332814810150214069706491975329188541970844029295242042544053603659764 857276670581920279759337095053953819165977715847256984991708481826297861371707 413909931870109517377858799881059320341104664311106493645560774245715749006455 500931897258523988233474567105898311950415495763640756368287403276110186486909 462252357451937626003541268387626172879357792117053118818471674496875777317625 448296136255057158346744723277781598575987634443832196448607533966802680051595 141630880905724314651015167214599537950421173672591069421348798755672503231444 797418271646592889622489969730086149543506210467926169898953334115519450157560 522393790390080423504169225516734404943170801093314190656472065576071395633207 742839708268585596888416105159792642049157006283643034727729845740571207699093 923870214244041371014642147597120606707424243693265578495057064605480393157210 748830342155045410420619459076939719349923138525691637641814948716620348037500 960288683246051275584230635804949488378632487015678111906727523223604369706243 929480270422077737507380367745214972716196137564621367621415602384869609103626 887813681883587780454561293742745555641449568154050704406299923930391193677304 345975111700736915151217266690695331168333802556145154295284580389322420074255 617860107570812921440325425760667429731423487365740324991145068597437642778172 525453082573029250160718440864816911413960626220931859713776688585074194493627 914813297277479713613527840306119672960504667883260844899403512966519728418112 700308038555030715558515526966628570268543827791353468121931533464740659408102 639588750483390235937534127039364169953178082734682844131882480959567229490139 101201676218147810255393189358760051585473471645091796973346196038066733523939 885484632340068230410797593342413317239631937018055391658138972484015987055317 290396799541554207410479746174652776587697496278218047546591830612274907739034 099473877081400867789268344010047608675948782800141846449163851665477208906664 564271228910574198211708276668102200546672353926211834944164999268318680658607 969160407623909951132520011672351391276926561841320941349985787969245666626576 409168521539460186625531399864556399150917001333448249514549116046229816973417 144846814093129496384637883364605539984249694155551650322009438761626809642433 045185956782866812046854793911613235834420770616523184594093659465635891001374 442976969677285670857159456494754476954530780091332053792583982495078236162331 357229479721342395829431815540285534172639479841756969986297339886938199366670 075307040645792540928836151429219784827645401304442662651184778273629546740470 507181250770456590397947837425121821212027065362752386867177419105117069164823 749844546610383751592420828707982247630294058614065036423301994416347315462383 824364047396274594148215139354216922488689473053450163318089228060612913050013 731026384988165524706544663811840961172972248048620626260733973244215625361491 778973096464922343137794561045762396212866647416510568706771204974365220238536 519586917383501836631532490579965919736940426592667345843873405666950122606564 502365223204348406565004013499572283443683103810208771807017059422051889489941 655630442835051489508632234625585623860047431216887460566688088478806116268255 217412423670793814362769032839306207463451575485517564564080726915255779164776 691222428564708670856797870693891558473765182204267777194438256582210946220511 684241365116906606907777539524805509506360416739041663519982758212240708723535 839469216721705143938340839445955494183834832795825595307659373356328436265539 375819549451218962855702881641842734637053116407423976910872793174860701802474 201245767739391388275715942536881519652258439910985487401065672042345760248762 974293054447781873297389858773714573404494614844020443916839066451486477423562 117552180382443135994792153858957841578828758393619675667345815258341523723311 330892675946340754357858981333840761086508235282494597231385088180584942014089 167366522602073019879659627337221738335364368123768723723050445982629545289339 454295276594798878292204097206378024113763205759016097832053727543646101470853 122282894550588481678887440863917715590786855337549277284305029129735727075286 816793509113523696325458237796541968606332888400542312264213875814783494052901 782426406438585163879774241448382744903706090866593734030161378795759113576058 050403691745282721437271377565863625140749206912551430893194155545390835178882 474612096519752157953842940526440668186603371259284797580030594282979165607691 847964480389010712790019697593851362582628379932354771147746818334945812751490 700270939449562496915785796644261625842353155540587304039980532626084292661267 094195448269903108476263736262899790795768869626661541075939801914390405209600 683826203134628992680375934963584605462100413665175637006094267861533166081964 575318674147901483734062937486077666740783099060376873996997064571610775141408 090446673426655822599747460501700928615418726764842313947919843002923140397263 961919438886577413825625964240112792815825179728662363019199059704129837831351 503479541188830095761051587516905435486954536222026130564135107772185343469378 274601725105550191926293004471548915047053264730254432425697061814974451553119 102190416488245972275984576342566682483834419825521529056690197347565975871838 405734989892308209052676626855027305761171152428241007637801681509916310956307 568051590506108049766547804905932255485055962562847261073607995444124102157741 336522553941663753574032575355379066920263798611738260307531542645273505881266 515001392749371777744412100035268497456380602717515687316417555345017631157200 433128482986563712833441913342054533771480391432389280984730121518876888586223 460882482587613785524454930434505838354519762538282182954316115519061552747126 197847270134720267066540744202730512027091592036552532348432088420060120032771 372897475821543815322857274700378212836158857311664555912480335334161634256928 183215086915494345993178399913777683183480674830734383355392867251650655348750 721276779253673859053454562814708084220349170497109490955565503435638844252712 263342902597594653883754378488078311217622679788387955596466116812797818262035 214764956081101056058859283291703608514146109107873586783607533325843377338693 533746590526573582264999932781496833007554508648516757553092560525292149649367 158297434294787432467258710539591048394293770833088216781003197333142794765993 104116788896678874791639875934971105687281970550970297325551864275970583052262 609217962497506827336095053491478631148531877269878953610540123427277720188460 355283648631285315524332079310499142414111943220505730820501848126475863404854 691017054084722534848801421511318385183418719247878352218173375859523823994929 241784487879314839125156233153312430669230053544801557671802458817053794979309 142583162729117650456742277607633878312092479700651170794740740921040431267883 295007705985688409000998432690205693760779149763162890951902378183388792417178 294222373856652137250082315491002603049848496590594105351329118036109312390921 456903979147394688935180643143795831174618235065710040887705288098063318918571 812521697761772447012368547887560366245820861857424917048071260121825793827904 896787052976367759645216400767960564482389490000034731776608836964872763227814 340191989049031677479939986420569681197374184629727463547343087214352842667938 953716585621524326805470780874903945373490407966860541256996178338915379500975 782810843385099554879606166926344201662143252095182883971197812333842689961592 562259893787030987427122624589886982360601118069574950636187108334987916510030 026355764659572497858780541732117590065440433658009568879976568213445006894279 787249189444190476242726090483830103357158693957651547711351455697119280901427 679732974688643734757602330188880933290721506992924953428825645069019743025753 563613107795133438301633902104480402468143080559267586617255645090241976232927 614560862427762203301748694615943334155409361186484866278187696766179752444781 185267618064283226972486091303863215400585749171362055520237308550268901354214 553781288683219684835535440399962231629280723266864262435873401356552939460358 428940533642799237795837289536632977478482488524140442894603096901512030065971 317027981279698378583547730923451297096478270108277280236165731467582953452563 887264846641754371314129865570925584564377409168860863510901374072051293426609 060879231573455708185818730456713673844783425536412548716468469437635506483982 484423766524337050957640278849161071982443637337502242186294790805455693673020 395735810568046374333585570304716733126144537740772266074995854427771804987045 125602566873564194250390653771994458236822721159289158887772102996862681583541 994984688879447740451703843676446941364305255271720808941664094581637427803628 777683616152678771734989174171265542569074448818954850898578509698156242418936 856072051490091145982627500515781062294035927123233828653218916594779846037707 646160746666193744649816209101393434937936993968483224880650476656010162148984 502778157741896097311849029584366449137383245304601761531630004575065313470648 733126044643919605951444701845337403303124027290808571658402673018932817138667 918898003572438719592728151572812569839907816078877738286760622337338808147126 111368095899355436281661665540988316435477537795689922893809387197379564238990 684335614589789580613398380183739180871370921197841937587515313618331808135072 316480681843812874144100187622849119959200105103587302873557347282990529866075 691706433680525242544197714802091493827693386065659486881042082874276196888440 068085207637924346189201989762940944246733207244633421492308324101596458048292 217031303202875307180269823609876563871987465789695961035980489131924573673188 254394033850437797489547550994201898558264127605299194678027688201028797945158 693814255207642302267339052419897995463687433149691104168224484089419873615920 019783838576065511129974931273192576587025608708893181044802920255958252177324 223375417929043738589729177605342206941690525963534459834538006943939993055246 971763667032002355426394005250997757710295287299946728676810339864605969158260 098429605143690420579824932331998027434601495723278324469754110189997372919334 312360821578329613762838526182411666684270923370012796912988509179785153964664 731700950715465222820522961250113599808820644249829486149346315985261271305782 802421873559445194787121443722933800519107301145411833461003548606320522854579 821451927865692397968119298730319528816135252948780305060046482157012124628978 874853996891240140199048565213804686099009247742251169768960450567163645232808 342091354373801850098274082024063578782079799715319305070072914073769918498615 705995620504830445740833553699076426713889522727809106682102909992302801338504 020525857631709910933849806439322534551113164775699555202626614617585941810498 061854279673491015287084922836047032316702087779205990540482219478934960015851 950759563368434060991892458841411326735930438089548996612093210482945601929303 507923883803724358811545184442352686647180247788162476027868782514804210379525 390737690231049412657304337810398701086776520498437608398595798944911267455592 195048716795787899258751138296060815252153585937268583481008306980746165662805 113765791500658851873322322605671813317803792927856908262566300825434634818464 966554034747306409895842276757310981322513884023593053256270822082554311143068 049801944551336642307181119429584873697417956741062948871168371418585700779165 408813228850240696337588540657570509029646856041882894741137247521264216963016 175032021017117288645414153218685942829899589738068328005341824779733100679426 751628910075088117560986436679247477862261386872034692983805065038810532971503 775883283850222384494068150980230117909794771978570768840961785094158928635803 194512367396401323422333690306768786301920621606564188269734311375329816253111 426286165155380343143345139092792934498154200261446225278070267820855257948534 723610518576598772943242406046063283686669505691054385550955526366194044417186 191750437430097460435597333595972007795971391685541191153423256812692031256662 246857523513756425666332682389887595520011302612734290285726148747038402758838 590985432828519823129751080540099651498475425161192005784322166792604076881474 995830219608037917828082034422809985908480808551328127658953152223443752145670 361198390527772255475758070153630598193522106031444835950733231287021203772696 900825840868685052229197452881082418322658776323154886128714061591381911390882 121002404787250730663150519078045159896679623834498224335731289692194962170578 323439492661124701580055236311812693262480068839165212111154583298107962536600 707445566321851706335197999513719030529666497988060323011223412673903556455259 446644854478054605564321003041201104213637681184017628636422752439619976166155 406992913713529973957095698482583255431213908435582054269484464521905789682877 017623104883808722838955072478750434870149059119155966538379946412422536257381 946335405063836670656523560891626749268202281239433304600428425730649029697325 037717306591941835429207361548126767641510049669070251009460785098377154795532 557366425939707769730493258083766335175432144330193800492131851902659705269129 185074995650101345815579483294028463333795036186470482470020394839839500070460 592956395997392195146603276247557390481914374132858889716153395237869496350341 200054548520367984332973378666809748493157469679904448370211359205206471706905 182275126040045384761218094171157398690342682092308774162058591903255703516566 819475395983170756689471452372391436913237903818553247242739079091971795534341 539020005594405782722370487983916553231810267046548827154944045115220353950098 831691253247828291169794784484051369592528328563875855254528891644212265641589 216845464753575326108104653637165199951441907279592751744160731126019760775331 925654988307042465977793888686807103551455989767915018957805549663827217405481 254188332260367760255172082504410798353247716445737445612839850364357750678134 784497257065093764956895425032588880954167685582008456020014465512233909965308 932262026730961953522711790169107191367800588339467408212964545595371095399536 270292617112602959535426833996262044800105816480666739365427670906274992554435 891023278759084941500768778505252000347544290086886830006580879139911379643717 136025026241862649602043620002284690789556524666843925260613036626371753298991 120150050662540979750297609373313661435306743035524616842362842250981050494568 481873242044907441161995395166383360214135939115075115669618914802897460114924 077913480596129910282978577264582268831973186665333883612113550813747834317652 152605712554940076764279079024180349409562056752575099565702468953290186025471 072746542803922872167848661937206189340861498115312376574472865604964141373927 680348344598199930450049268538573782179555104140081037422417337793444714591939 009807943981853797521792221806985765976151415829012081560936862571190994834465 746600615991756856494586111387532898864679965102284468495680882531055995109813 697629544443314602781307931059893470877426762318802175880492011817880508520880 270482040131240880098221231801718380891029631861847765896118627391651666863670 112062900545302147087102008131807393289335285906374390216819450407134070964836 616457413369987535813961147255713536248231830554998039884316736471879943390415 317096645251895202183347873133154119265334299153834050913300692390485574120295 176623340828030354256064473638562411628852723115903882609967955902576651810168 700816683933403280005680372302075755134957312280214134465446624612134253793495 624283821444612665024205570736405015211379921192524329532778554221937319485536 924574408508869066594796773871193098674875593340880978007332237682789980911587 274513591555804641656335133134488449109877935554983333629184994246587500291832 723386827850074972382263884917390949333589934544448127309686674272390517825890 494015885808433199646214736462396609841499484513691881495078198314377468280976 564709516738900577268324918474649149289912138712342255018775078311196808080866 034557567958793564195224479656112302812867146202793021399674132553670917010409 982778565711791192685482220003354431415119539200433746953638664008494560453351 772016216549214380089921414223538773280745718547592288066082700456935992761484 455417444703886736471485029097938219102428999142535006389060897696843654202815 563899926169668585685398608663124189682046236595697713933130697298262862742631 581404050045687175328466370543511397669421508659891293813877272187962488289989 931250127774718586881034743577837803961947665642759373545207767077741257897380 683283620932871452923327903626387845568621456513299546458852164679791954914007 469744614107728261263392532208914426819353027589932350168344951582390778129055 120075931902525972270628514554094996020659150818110308732660676698649079789342 549019642230352454810118786053939238760648323349188733155576877959041884423337 473878579847720128299643050229824154618799588891176411397817671587652819565514 887262599211471372317564003868135464559663970980455128083654923577842464369127 596150569290340332947851131091192588282275314203528542764812449904361377953264 259187954481620719569810530347134511190524504166916703187984640915920304778426 067760605499429785410688944363015573161571862979263039241373312264214764070727 783805177886073310278218578302552076287445504310989902552708044173628024908608 951768722927578209531183087185399150031824619824329087761925054649064324273173 780746819300573420186554379872478359536121350464740817092192574297014414661400 803845679510444822495169296810566789632798405788231748873202091226599518426187 448193338954687773700257712197292538762080406421053122496047200302744087040868 355337869761048825495009710639978072711519668668905354511294428711592153689460 825563191363067616705172773239871572756056039368781931706506506179099522725077 245433607218611320301234964813522625332164093923616655704213838825701785011188 216688881805023927101889849551497219872651533582799311361593978102822425468615 708351029469549895065237117809545903661065879293467538086038248149191712128905 640728667547157386295805925584836005765304679231848277490571015032321442437884 024078444964060412536412613204338260986196919358450077079964700975775900795772 586605703983655585385300367019633361479564271333190351624574668265313204732603 538105590322870871867550819857571476819603410131531557592779661016030227119945 889633141787734665787432413953623117846792134383972320451168095074704070254721 678901481607935222825181026467415219226691453951550043760429158168904860193490 500199335331259613437944341793563844091932868914371243314647204343898457808447 605898357570860206591697652509778864182790513518501699440421107034333035307721 166013012929583677617882805835884874064190018128603001217987594331954754175391 414405865988160528007461050377266620863413512497060800423556807570610764893772 655118006836039169855812714203453135533397403765730512783693899215238349405338 048423103166739855447215936403271301810142184875767177254990525941469894517844 331536660621759210387400212332668971663868171653137601689125195854057992131310 808158333108411328188778020263172501718139709601743204924870500149361757382536 052334175437493880663112579892125913850981882454081184280275961266215370086612 578126812873820313760630466757240916783076724406774508452120491121153169013306 535018722941667338374739277832996096513424133127959629078564978038287438853532 474909840696799951693670116813000921139207713119384191990323888119052127708272 948876856407886799183739835882312047477650537057588071067890421299002966825560 925710687356105777449722842440395277038364654985904229054618032212186182256823 749548539948935494778005964852283469333775454994257303213288675010455393194367 847071589906456287867381977121300799595936232389642967202987291464558979259447 879606009968777926326469808927332901084010734842012355595386655421006155904124 127503603726622754761599764926847367782083062849207634794167574709051101130476 672917151006607031597780130482103383420045315631991889660131545016476900499404 351582349446125081878988008239765237572823806316894997783675174974136316444088 073973044344145066441676969010259380448932985256093013858173685629675320592372 868826545879190707044743674906175663395347321917422802709914730926503000855692 421217405134920371114594390037146681625406855917452214017842965164338573126294 082306745321917977329963132489814383285604394010536579990436850326770021245254 415740578319659413359064821856224249370695800423646611823624258931792604963924 690542994254037025995584776800435330809126782341343712991395275264889586488127 435596488350867335168391919610210108641691138025825227387069259505648094229950 065700536877627694007444328958359134038387239782175784027104438975755937187554 743005970605434646752677689666830879931545252390011997232380827693462979544578 562688700645158989211929985363964138533069340435446359910454416135912088033424 387984780417574089346117893761335063102670358685145242281807925917230470616754 347652452936323889141850096230589303221320092154523462769903245868126475758459 233649378967495469173402968392296553436234135185463684199087040441681638193405 001625663963261788401292797968757265896986253340161535990375246780321140428305 354220643289554444743075198604204758001575181933139321589493796943277879844170 603196979199067461839718240601516991584814088981478604782937751719495738319071 610296914596696214431257628463832114329949525402727587339200431538816864561682 421652139736067554554811828945350670381337150188612205688349628308044767072684 146977281672916796594319333301819898066455882374012569657374095076111105082606 399007087031476939798815083200131373021569051231940564988935513748345418414495 182580842702885125194176081139509977034676851998952472869021665571226319364021 416719745817704830069826650695199355913205659206137185187956551098513280518039 636907377027125442985468924732707303700974416427530371401538929603335468377482 017051653459111779292337159959635409929770034822030207372473471803024909385832 472719543939899207507915303402984348133536511197797162906017693018352608307118 732391616952519139668612085531225224592904073699583187774773267737074783185021 411845561413871402494220544969556391633944365716494534310272848483063259727208 755908129535713617695385286206998055837404981654503492716674546766819099064278 557633282523385318516315962638560379403683918067767268382669133622504742445119 143805241107890202020863400471573226765650475321341896851784425912418462072055 834545159445014667318013479724433071772851426702238065504337231628629556511218 606653966411288524610887043152420418781166028619731476468147867486694565167454 336662081283153577342610634785153920178357264303728935065297906528368761223335 593075872816518844752226579127154217642478495951193718446749297796932290373421 138626166234465806861003357848370540618743687372493445893042144801375673211662 900444329745096118249373554407102215166881612205117205528909713318555379005220 026748423442243171617516317625086023806739265143508761841414680454506329774804 161746300243311098877304711167024279287291712900130868272461312796998152506659 269623065892735161404021855386942964811592765687380335234166194428168576309304 217405730500907340251330249580541146373583557709541929607904987279849553979918 345128257502307548173082017321926984709258302675316685559620281044903739243217 406494368066874402638443587787905531901834490035267977420922760967051966801358 517717163747180474523308125222173257973249730327074895677291663587105223511643 001450936744028469024254054805430274713801711516182617568894413713430338064850 573463524429680531593780659005249310694074415930398181245454135296173784977368 488970172590564680157364280931358942863749129064336161922035480450558616747138 753986562801786799461509821632943489524804510993902758567651361164743468821828 450239581977788513031526845042116199517957471865350553597680522934098249313699 660664959522107808638599014581215155258647904188062046895480223264063057707649 523696721280627864917427202402892897562635172899937490942069618040246256181558 746677465890105854146448436210097879779617971102568063764435694315708645675680 618366442750299946140893895384351308542239153156221235927222429990341559196864 244731706344245545494167052741654615413099318086798943163317250052440645956942 905591536800022165997116577370928873626564248909497715538218632119539648107629 632610645934536357083663806263326574215261059053306111963830462183635209833246 215051130784257061802268506581232462514007669231624270345848201065983714562647 131282468987628980005273434882373394046484911223050779816216180806456087620878 888168069799523357668548249447556213880953509380521263611501972000115696937119 608412330729277837379594734215401368833101733622775027190767625638514744762715 777938891355317522540128557698662487884298659851880461924617915703524705620560 281252445572539110127081380770656431117378353921968740452515124052512584816442 828994754930346114370933522138008572399597348132618128439639251181091035207889 715699833693780476224959227864908638678341593844531789472703817995628117995457 557996813255139393192749055084593512432185359790522824550651566906361967962872 222747934961225822508667171397090041106499736578342339367465726378973273126868 218607168371115659106381275651068901950565519548491380072168814971410883455893 573144542659014151881689620454120691499688725823383312836992217631575674287612 195783362124636838097763680737244884811327190418759537767785686832654265548322 792754816508175677058695310701855023327711715247098220641957235596072613897611 030592201829479955952551506338582361581030776159210488971617192521122824358525 940808102511878745316941625607920680343636845976152271400657170175710590583183 312555811952818145089729282214546170945851082774986653298939430360262273204850 951268647562341986335660386050322276280746491457102985342710570605225357117089 360379736438390161552365962322423649137021163988716518404928040798544289166262 605420499629537113114571325907729306981188158482914430908236936535451239043650 940521224767096088364201821501798178507824481041689131692004384728349548690291 109781177527395600224979225341226826008549429428367544610832355344318272339403 675289331714618988863023377281999265554431962536626469116447200373475026894012 825280425985818248571608090416985846229750780781584102869577284141697455534346 571120930690955463470985231042010578462856137558519594918081158195977581777418 698589504124308269314683051337480034727892969874123066156545402346640684740920 747776415644318228488536617754812259885678828824176425080147236528380718460786 565744036908782322420560136218900498355603060333149619489009650199711801210656 274273935426146579388572864623602971232477237634571632961161379800710195765118 026599463507999947805555935184764815989668851894175787788887257876005747063109 459227493236082926746455775995858496382861105998220278700220394752540365352486 426077098889191960036946668754196335460179706708305750353482680774742245284632 337687646275504813330571936697325274449789507441850755457439131342376686025060 619027871513480394951967009864566149029670845623339740655175866562193779555364 580521123633937771663388452845395165972157391354494017478365071550059356688891 613143067676940920047228017310439486203199533896848590293038538492265099539266 094124773742300059229816078796191919595278396024575585375302932495471702609022 749834637171239955079749792804461836188340883760164574670365730832332682846515 638071616689862730219776018824527176268031624113795233980755145899256109443285 425500872479748241065606161904479962322653992892966487920394309194551902418036 090758182337595560780367354506699084757747242044852962359310022406445202222144 529337827961544856324786611386141159627967496296161642999321853544273551471138 441988182557508124832696865391216671953479579915209341326518592129194820715680 739631338330608688336663101464100559360959143985315746238013656159006800011109 319533339593657483305363081254609505664070120819297272828019035442010693061799 983822305456908334123528909436425301833776632016733811486479325021718937767696 820787423746630304565834583322921798642471842016747605485911954530430491128189 873145837559011670244266548467324967123067822177938391956777889644923379803286 065077753009089665718761636990132511647191987211185610721394789259509760061245 504273911405719231257384282569224531661839544691823148566494623502487413815831 244303059054976869425009566420200065476677436317597542760559223516477002057201 194821446434014057209703201026040124895571312831953680352809448446740622631707 071166253581437864479820063227909198913774343654824607139370690939698208329846 975431320200809891091752468023426183650026123694565724277447206354925903299156 695448760522740705910748225247305926400378535241641748136006738138401914996950 155252473769430917576958942869358679964254565191439292017628519340245314204233 680612481571006637564174633349692820495301177330740745903720643529658161390006 633621682835098015749641246890288895440928343006332975752163030982967550615185 701195908698839862446381596552272136214006031769073401657111257884214038457905 761815211436438551360475273282456702529637699310316159456650082684323639477975 197705748506072657215913590965580381108795728432497589840820675368877343147744 907422830269473223895233419318966167762487601622003812916378417998768415469559 599791807408592562305342296836218640052808611751818006032754466617262880761378 107064815827666548792222226862474005844126292555663969016757730358640833428665 252799459950455685528728510638972811997454558368081022936037313614854515638404 081643694181703227152238333658045819181777413088164655858785676441361428879598 987061154405319657230004018524903152847624725380322059916167209948234937012158 674859241107331354437563697165473160162100044808466787831672778139962544582586 682607892709059344090325378890624757064457510413263798042210502170876139113959 450662247072235754285008366073583021543262801863603044422179589890035204528409 496601308023174009641298350162864146185845943147298805819990447028625407970685 922521370059885736528093981412611516393030123477958236822766717128946473768486 243217096987948293795332303576647308291955718801052289214144492572072789482284 979529365893958388582122993367453947278527827411230268971360829774450890709626 965795474546428333359131524054338166074861449687641695441372795406374134600930 594766194536106659160773096058561598017565920563429359417369690888901363913728 387338572128562081936096609412555245245892194434305326151312038276974965227493 969873679543098650800836631949941453662973730322646643130944177693180854617750 134589891455469181526927983427632638775441992903718136595998663638739282009940 669814390915052686245041188254568438014672066718901824336867250637741333500383 242122166327727549161540080544585716750319108876628538887752234828006675578298 925674911003664931052879979798057961610349363828877847870721401143406638198608 022503511796051339355462434237896661320403355670180516608362462757418367981632 099992907923257345860135071346750714735193045968180151424467217194455649278434 165149490556078800653660287042925831677868312253381018180469029282817520455415 597601345659569080387650032054240183427410169742475565319783835337776822139115 549617145354312629421071128718657709000231906335531913783457242508532630715109 187642038856052844305850151603512031445771733570318301879362948354118040192083 340387360172893112307960467031478092297519304842231416232602004254152115112204 577704366958002720998073001916141385965848417236488237359728151835770070565667 032004193316071498657235030723070989045673440976250816022586158028944341791633 295631036427394257885468209686520396704114222549303456744006996233974849413541 583625187877934280971590328132195951805131092472036932176252231438331926557324 099834725485871008242390946429386872501800628252525038857478429437873151552996 450786676721983715588315353435811473108966633620083173210814043937859324574442 510319998176560730314394502486578862373213628547035686561768985810208878398743 981098839231088669035892865470199451806170828375535321836892762667162732384626 686772616661899167658246000620664300425637041828169028713803738490502113776208 039121450578094547300610931050059988332921176356873508241209482188180570373639 825064541380459243011340549120647100696918723782099071742582026224058564392614 976017787047699061405948627807761292117777473239469454841586705011930852312341 597418307931203846500037335647773724899686538459864657184392311351821524696562 753586487856882372596338440738700683903716282127876132798140615891746086660262 645889948013336670849495974908511257561635174040629731473340084292609123219396 470476675164654777855065825132779971233330151895111037758238046703708613916379 173120648423178025902799770868813542411525068889416644281863159904480692070830 690041434594640671774960999984567909664990999347874166088840958274269012025857 786886725634088792172343106589996597250148545399733160974606740614586049268310 301189505296909591109497803902340507047098874766648386980704220692112813490495 728908314124587120781550777835323429087370495298537296665929873414937766220283 518566928757456619616127378775082950207553090276330537754362907644387375261372 890313347905559386733633623155145139349501441770275346633559611536885859640083 027156230970742534185599786268181657735492872430091494390567116780106218579490 590386503174645367705617428923029973819459686315713756441007263293180651900323 487633140117280954080323101910069660656477053706283359511814795185813839796079 288211093510478690782876603546992330678391802909281205796202410003734294827671 928202192320045215915850598135427585294990014395541450505518102376449108748472 410511826125324233248267089976865766118185724259885638127077885814706011277603 372510512913100776671008360979980931783921415463209518758950948313880409732607 516060275753055529650071479896128184425197833167166447596664507618011514429612 242099522599715964688238345764381172317671814201213926226071951161241490436318 240197459715198101750964633529427749513012627575867571724862564984954176160691 655901617382138998972702212194273954903155016106243899860683292036569108135688 260393910408365885701671888517800297479635568088366541530174376612054861579554 181329027615096189593394732295134286279602108374881447585537967684121225178633 788848926437455627642292260116267063597797941254968160526429202491977229087878 419604120046587270274869985140420124372742255674381969462031569964569461545418 826572577406452070949388668054899271836684687947456118173938801640744173990353 781811123501371254594428863055235250970557594750854632595961806047581960817364 213683668752917477903044160014850123426348301634392284774094555943055088153344 335609709045190671679840564808134055797363869669704856915824367466866271361122 188523207128319292926072171784661598946411887294058136017933198631304938873319 394984869874195130804738532074080710711251073244942641834327411198174525635564 059295503586210398125932246953497123037643990385280139472115180638125561643883 918219001286727493779120706442644753918646359584201340640697055437650428096756 125754123760463970126501719015261199782825630280284045030909735018310238955364 083499098818063184912441521987232555728810193616906088870695002395171225943865 558265191778131827871891138302606064328077898712286378787778573188751340955283 482674027789230891045614245373032545937566233639360829304114100250813114918359 342981328771142816880737638053298738406957708343606693542845392742557175308908 348345383287524771117920812563543846323943073006240600894416083463300809543423 517091182089878365011813283204790732392590850499576582991827798063667734986672 848875928185156018373320690791373755129988671265266488515359100429449112676406 996214774320999517512339210053342737360372455744140760990087135847813091031682 740648231469798490387997059467571956286260396429117977448172303613142452890551 204142525258341874523861559085442941444998082965592916007279007754698071251754 886762446897111585575099765896598243572242418977921866394038902233511333696308 274053088238772114512430082815965724042241264328631680532547474083584800579513 574455129315056008169038788899370549547378612327008476263382894309108575798197 136900047502130433525598580839288292102885445919174074575807700290063516541547 468434399529369222254351019701018691489061145152028485367807411487978234886972 405457639202168556385645899206620932008988277244290101382490393906293184703064 984109397745566966288023269902297542337982287034187557740756976785273873982721 809026198314841933758181151918216592218862196480467550803463535335127797799784 353326167562535952165870932111579765992093590799421589291306244893261794947534 939141693674364375562271997446223486054880328634827097323633813402429757507906 754203086659828095520892657503045468500222560198560795285094890954668846358594 866541666436169304465675192820854364626805585235704615591015872932025055346048 657892807052459487212484089926732681133553401311271785332604116872129581115849 200441375091619843609843890078219977693389246267582697605014237822076724417821 253761671950562443720299633420741486779425770633790599462222701361473751294192 255215424072130606522217536414165210056650411824990906967146450633466712628177 245200035345782845006174148302804556366707610088615257332914966063365846472316 358689936427744973529408482134045062407293445585948306486967057117206101029248 419669692768539873342568506788466295165016315898727765254572907502717035125035 455796379455396823033508653848628685914974289740596943278917472543667519313597 004183972493771721298848686836434692292848816673236952075971765711946964835718 468291823572314209850615825976180271281905129935703068294758827226008002722914 267400696630675174676264238093708053400838977453369083284735315080862550176263 915926776335531462407587341840169972867294628169407926721034919736063781720730 368132392595260880066971699077646952700292853931597776453789540483301849149681 961442685227053038242761010382088079030957894020673465424829778239814131085963 934128995190506218822977828605095974647396975970429831448946119956472605537696 170198012188843814544092672290911222961400043374711375928806712055564800086748 632335579059169605412679882540871790620378451183782335173832329859724960685941 960962111629575804586434943254564168365895513319822675146912537518878616708690 267782204352930934192829655469530449665032348109992954791464227296550861745512 094138384775873321292121153408471746554514672643305570388541884605715916308144 234540995897909537626318722183269668648563465364530855233065002846146385719406 115784237384004726673421109773217252810757221134937879504546226859248558876591 063514611111095121003816878600346057592611330262849368281123188567561167313157 876570338880892643030633976656682261439934276876733270099709314276128347383180 031978698760323071423033575463533337023693826992684267072540391900032073417978 746865034142962628932566258868119085830552209874772972655720074128723974725391 729887495708973696005498107394475333152029217266009948477572635907266827362988 824992220358817593913196894088322833599475757963576210373844160366259134322933 878942765054347573007884086755333703644893645002916899972261698966077854269438 416793009199925337840894826598421756793597574958967817877653941214265650735081 555740603996900504080413423380355678587284962147957720850915153353636511005546 179311171466893033648350995311557622822174982664158715188230104408042147298060 231382557854883134349100293144748691333403744317727155084449266983551534765313 452252045641988069049508401079286067791132844872951235832254343725090771675092 001107093989086198323314237656031253638733474269155227440320025840198624401324 002683277923966265020190112844388062863124553685786967042335525257307909365907 662688165764862409041561272751294772632498214346566882333325353213708364230717 403784756248261760652506972188529162672359439263279271848133521689322234760726 552474070633726897599525825505866296973945972174692804582378004833962578847184 632904289911571807595026114232174987871533444044139823568728000180678479196532 977090106583932343744483591664359251496904707258372368573633097726648957281800 275350817988373172428417573719804823183331919638099465570377965643342917382414 480644728303664510397553711200328270987816380437191162263375037376991450346888 353559042872804031249290924684560824272309966159389770464064429816068745984545 741284581792572324936402514498465557255912320365580992264491837332387103088340 438762028095806301359259343381819445265565098476757129514214215520788330788459 206044982369961908086340844400808053875580711818338670099730544216276234672447 897389038379340349089888931999279869445599736869359938461690416448920703654047 067412829219639242426474086302684858744847951516914338854231307813687349983654 384295255324487772924999693515856903753772050945229495350604465983956540480604 644145848028643081337964086754081232176494777784758104112114245462711527158906 838095753488805701054638986266571856662385407268715570328682951024680180724388 668103865468615297096247089907005767556334285151923190969791401709259871236415 062415297518159987181397583433551192645530474322593418287616514665818875041623 775785803340207355859165542291737909332680267433009146999552790693734723590382 945038166659778868316354961194279248257650065037286102689049972011811224830465 472614147660733944976600505908642189280707661396891136411922604522761728039925 693354303590822175551917867116177581199255033157163582104460275070182645152150 114339823384371771207509520467865066393361811295104145262910818845259065801939 869767565229701027170768241062610831494382440980863519464696807284570257665099 032872575067424944007364507447638833149523907991130216653119518456146303106819 865335057677829224730206645129632692632964281335597822335883029545273588831416 673009170505165047290231337788215278735086626668872935385967106807787060349708 925540893195011505841868693279721450540199160086758854569457876481398674299504 038127390018938283416861794306388412960175213716500366868976049611523017544934 438027519145691907100112395059137560448767465977057527135244359278507955297771 522218850472868255344949794702137578824894029541643873520181616157303855302948 626142914519539298412985334858577508771835332282731323254185118698670689399348 931113774113746172312793450895676763056115966984528069178653589179442728061724 336578384848123955342899386336665423566094896336665577971511875324455219111819 197383425677377284969722954192350746862768340435623781336317792328470127839494 175085647424105586560470249634684401500650867954721436802095861392275724181616 206795817130373728316122966238127080542860593483163892815676890976161848566145 990658996028215717603580579275899588157953707044750015764955739195094008643415 139478493007069549043614062432176992082733007942573214271104332443392066870227 234537911033132520098834584287084154420808726312856419281500502782795245505099 628354896635740512904387913704283416064361022456195136661844506312621960758935 031395370200628891224159448860745859032542092350855701649393775676110374881274 755348988228281212623924565283318018944760948427420417159311763212177050030078 863597055803069767799536582370134662104950385471495635450802645329035158066952 187339498925991579748783900244373803494128548508655094047718429154131969426941 480366404436885064155848061055573234524555823059203997506811227952130087687517 474266776264867033302741630275504561316281205516107098193850276075329703451197 022799456216008034066040462546948423102428216685711530262979305353425204291740 750625120779180083099998224092362899420488123110485864651452578829893132539116 487189144377972673723108236113326980591934989659663317024865388428767711532317 055017384676328303752546268637018341312372439564812815905408987403589953166724 996872254771084636276247902494625646283723270507402704790725992851519155243455 071326629166789620681310920231466556431581029574541301290803389269122137038594 507819590536746621761803243794306091256571577971589206642344618893212677701776 111091001240342153790927944535234671860399665404002350517572244139829058292812 900071363313120466404484214492572982784082798423972812704368903618831365862144 876660825409450563579257960029710808733106444091353128716150048604192801720336 491859472292201913394519156623468955013768346145231256792223433605546926677389 738509476280934662792294599540699309690208331716037930910114668967435064899040 670588512755931353052330636762572891347707526400209192924299989461456299127523 901259779422160735749376107791112274968849194078445063813765255186050781951473 486124145238354523147724711571708350897060470880626514543146958518015993823369 263658160477024174221542330965211035917927884071958484542632687169263360114205 584669746097437875263865841331199546970873144182796741719682005249142298536383 656073224091432368939599949887623313468812076034968053649019515692786398464698 489799228015910621030203026776005756316278884244704834365982352219583202836324 031055766963724351156843849299006775248751298245063091999847514570945218649940 184011323655807471195228127958949327276646790778132300270189908039180319727895 295047971976196434501615688620811964211308811593769110618921894349550209617778 246894698108587720506517985617972263069926829592382609580078883550230607116980 948965961279658701527213564014161656427031552800911698808419804584330015690094 563573103780155803259869897091999457174281787841127705470569055086239529858589 075075005635489812136401526531388687977313549408083259383289543604566763628166 155359480682445638850732210238702565786404837551925640426085883031437199642347 778954127741856714502859015066499497370243849708004726158822756891699383125453 091950412662198667564289565628592642338071220910040034883680234506387166323540 469181662156543070402138446637290059759700815697442552523961562177565980847796 721724794355656965564457208315046189810504273384300641267243632343665498151559 019052878701281475293855073735496542993338700850647337825558890907022232053215 189832915332271481390451549802585172830218294428521581554033595449162078404997 028691181325544070060858512521695620362941956744871019255726078870833119142646 342550068836857223665958837535080568654814986136241883667008471155442848628680 493839852173840143824485907277378489430227807341555834605384400334545826529104 743987633514236856492729954468240421788815563895226027825045274124161774169115 322698952574866605428559715331722581456196991194932198137915490258378950898916 024754509823501887251474448234396910195943535496304019000280620983590741922407 965248964710828424402795215798595210474391342086812997329684131578347477908732 482443823565691043258860982262590181649815664197627308594805205163005673057341 557146417789966473921529309123271728922242581710346430529765181481756027231281 747810982573574466163602684556506456360671459981442957101670081966760159198897 069552653861977564766534651886687022623239113499426048155193802533477632067599 261085709559090779403624849678425860500379504202625278044955081979084450307795 449032110171948499049845003905841242427771585851193812120666637930244087919529 356290554845840740457347545122252379240100031078939123812138588503738037151137 410277817183531620008473254794583399197555145176258014729607310404447477605464 145087336628083096744267488786650524470020620531221651918837760829039683755427 685500514409903569315378866986595297783526917916705286337758667624739429390355 652863479058887564071404769989249314107925870517361004819146777387174373048497 450871258581268605325376868974417490434320648559745541626601825399470742504983 181263400443635836632880233927411187379665763210215585772262360255393383188406 849078012976981949150585036331127550976768366522240062106506986822614626458554 504595819345460470518465819562740341160183482175047838286564855850524298050158 817328520147202693125612853268094680991705916972900715060535798108446797921678 795322736513936728767657183626877184094122487920278157864083699916991357423442 083188061285962486273009888589830797738559684761058229377845319019019654114562 684544973557400152504219823608411849556065789569306745982773553096837112832902 240436764339929755915401782688140317306886010781162323624422636701224646594670 293042210820226801900823110129898157911837001993777339187860542712095143282191 225231508756100596327796507040669596894589253288697408995877502431358097773574 716335684971985686206563403856284768567417941802128339287788918592293624915404 481499311288980248944360194716028867543738284037981899280351543479121296776488 672824454432308722536575890764432395441857825875209513841820851273842430689806 921585538981013185502764668262482509943128987391292828939263859168543661383011 069063925817667769466592008535517360052535200543030902675534463005155470810198 548238390231447664474721340199683170523054645962912556679448258768757299033611 122561044505925502095937414033168510450538822992008102843979074517231501603725 685812414944322303310515711670213526169912356662330658666059398639696424961416 522156997200801473112503025277516125106763611935362700969160124364072126658298 731135924306550454387104229526353252291142238200692813546514457007828315082685 271465115364899961189027206895344214921831051922769871464844259487666234159257 047489575261297627653175979616526966116653683706977836273435002191354731927410 652662084954366828684459740002728009454899159442806106455615594740522600214810 362887297089773851700473763473719591137632768662148468153047809019677692028905 916578535523961614592707062183190588652268059197416380927170644410384762390225 668106988464527102644847158502980321146193623890811384875285276304579270286174 805826659366964847597754338399124874282540825249226673103213469152842950089575 274681513299189664210382619812854436952575243715852950386227871567272954276761 320703126499643853993404771578077861292756435453723369458728960909529520950731 435764859897115197471394020437194765429822950331683886841849490170987028211781 422872777677812512691116897328454240049587627244252200685153112291205397975531 297631106560214588954044686285942763396043474380491522222075493532557031249750 335647464013461941529897317512182294337555496789909738987625889209338309807109 059153706556554254753830999563093658790312793444917734636585992859914983414937 625742489636648618564419904682828974906112243856196743759632277621357507244865 285921470721893323002063621973873094949733874748824086903989773440789796693455 401339350553775708160113180212873965225927009265262927480816676494402793768840 088646691873707197802852581407498096880538094734169761885067925749353888525832 211841831565961177896157656995061918112182876427960409437871806511904973611572 323949950534594607101546617666273383792760780594894334226600070836352395479475 094018833670777212536603927832412232737052745890502634108517511497997341062426 342562617720891658868529477417214544050209056876861799597886033952649029583084 211269117412402315549341870226367669462688912041001273678923019531922215630846 669705736979831707640171689074292666877247813464085265203011463199508275732500 209239538397745057108419379680359937396333530262293408275727858356326868338123 062557901500476026122655737576813552009850980599404367313470006861312414771180 445185429745677151676965945777416185543365419372381184054231972863674572007265 578428640985538565445699381037372957361419262385698521936446331636028182306786 691062999675758582673424506949022953860718044786310401071501364324580301880520 651716259129509602718452726637988601211035699880337614645357020780683641919311 678918334376168024161663077277204225762979000915994194388201051819439318634368 983129858347653379119874906133966438012445192727615502012653742310557518509326 713176614670187413210186845553160583061348490596776222022153259223493779780809 480149967416669636894945674223804470084972569990618684801210158516860892928890 767183936869686130050995978675895672803718139701764155091369906023248810882198 285866140505327785463290130816581485142100381333631909532005172479305132476587 336042620155074424194379735338591010501734298815755669408837092120365271148962 129623835513987831782536420869811200612713163320475085398590877998885181625488 433404331401422041992154603868389024501804475598237888163628667347694600682964 851081572427533074439986890099655894408344078096551167975951210156105605304814 660150288165217961688254646975979800760314366137404995759079249766082613594730 681451417683697203843506800332137884156091594460634534800785510461059935233742 832747920356074160167442126631440443741906100495836524024660973243607170498097 428883764174217994183905150167759325708992766908968627128689984678186569613681 623725232824256637137264498116776065524952100348040559691512235817012357417656 119963751710802208373313345639040804520135309567821783060962797829562181771056 539889959573906914602462248713054024321068277717813587855506419109459868591500 900503369953896222308585264499197326388918466195405385601772649658365217716541 722306016724512842583223225478651978194415600440436641519133703193258373100215 132368467818103627885126286560897527099868603893491297195392830918019282073634 789575001583881435231732040711373307356070947715566861536025696787940675668738 892037347428197887907438569715326658144297193658737398213739672702519277728577 204019832350449697353387911650994961364427060416641288100076105692961588657543 186586120402801900458363468903466246031791225544695583300307098076142217477670 957435060512658989469058874076877491639469458668438556052379990764001255932592 380115683523728382664941486720985749160883095495856043537863880669596236525171 324849019522259709058963576676233572241316608120613169473114606390572369703343 738148543002479402205844171142826002779508137869427492794171826515885364936947 771867219554099588268075099764280261115094414499993882413174907866285571482792 226779603661659373846107014172992644857294125679905961993003984904798720135708 412061455288790794405715794961940312797830400713382532876852644717006206797203 053163644725777519397522002367137925972042585363432894936496192505139427474628 086083907116025807282266260410765380336779398510058212038030125989981163296494 596019518792615695860831902270632639484899502125021610769125198836021219594896 254293918042551754163525504223563209804921091201991822665301370003199724569156 385965610854760239562274432964373389095975171164560452827089231089977807797045 972947600864699542761260373130129865250928613834185539652406694009698714020651 320545907496419553842718204459100949479440645048693673834765420906278844823196 245843981288700324641704998306676047353368529124352681437219489276810695018784 738280647784422797587546851420729287578305069794366741126078273615700771458976 145376203862948066587660640408615590693286305057798945982155000619268146261216 354946219405997609565982203540745948549529524801817027994923991847506138446982 817286183063932946454638391156556017431163338200457092832476529316031652197039 165716037797933680680204409763007370009811672829691422418627612189480116064433 876431127304505642986659776611290200835884654350019562723774085258764950024492 923161326041154329989768708896010072518550036507265634081865214502562100945479 774135866284912762197040101779433400427815964747998336993441832578586029982543 760090895376230964340278977340905410713272759882248843391905077468752508997794 802910364323488751166291094315198132979551880454040232957315857270523205659730 305328112979116594238747180596386309021414287786668923165110150480917005005036 300017805997514992323351850495728937425084996882844506869735150801019376944003 114074737387353957465088771280912294368092844380813393735628600407998542689163 848695426595897377630291200149196337288040415136099876167907420628843308329209 689250174246891183735061934821887420584100601651189853211321674762167211156238 413544285516315834398634109253569181504872468999771471915454489773359580072859 790493507006588870499967337501678053862278235199925066114023772353964210963659 887372255065220074491276572735150844128261372171621920512733494090055707324013 698188021374697604757986781942270843384699580937376057470921820939789378791805 586799816957013824200500936195821394472420898551312347493678237809404027523022 830181300243880909448164045802485841344770778740480059777762301671672632566907 444172718661133512639401632400119234431066614863817456081444213177856327198706 384732802905076595839226756493295961321631193174650607920560049613406972755091 112181990902949303593830404127395094064443486704744645299938701162757336560994 360767237365669080065603476184987661496639766711487490978315079553526139760716 745025358649916142516677037027959424769994926276675998968621160547311586746733 916288498820950185286989403727284717041963692537794223884932858646965738385049 250766610124946380605118151544880583798137527250856981974163478161051571914808 537848562941548016716788029320240156321164836826343883783349653040990929551276 968966995371701239046781443720665800902861083591243299062257506121968562498173 269371432380338928431812902314389645590397396916409140686345024275309183577856 469811833976541924492717902815249274274960678738520318046133369431250348623360 027324890701030866337026608206027258934965734530206353948656247739542907047674 510466323071801332361249251890464607555351644228182046679771645778029103812088 539294177418205649033701300583697028799932034991290960195831753565900704663850 395170287169469231585174135359027242738253782870912661990584809650185861254323 035042990535648730329032742135540393471808964971193740765644119985806604995952 195270966903618174684048526137019171598665146919709306526366397813612224637239 706550919279579117688182825673735538356606635098698445225909221450416219269588 774488106822422733755549076083292638747923401565143968826511668493798272251209 244422894937731248493544367009594848913829619568649174013989873022661751283651 681527055209417628441564863411846460499964598860909209923217615708255488984276 181323799173571981745993928021700626257811637876902200764276682672165434860223 326353047712108356112267103759643897384325750862103672932077343583279450921729 513965453798461076115288801333213208127627161861986200455319118025604224790055 155393844828727593122818277333773997747263913645718592358090886881269667707292 320262535359443839227669462552899833143173132943165088834658056284184503591761 970926046946722761460819204475410412500971646988973863271376659996923299448573 508803769844032568539578601207504341573403907462464275022881328889475758152626 628041628659771107341568047551032228788672150547535157469384026336418604742664 231304277029196528391207038300214617035769859024262099445560216654399031099020 749093868995908272127265966842090313880857177735289856258371455462740755510470 860682501681504155757140538454581236923727723304982874808388127027630069493015 811419616166188844401983665939983862284406995310464513030409865652839923837809 920881509231052593831464113629665662082458070754653029827643928419454817987894 334017507220766434939228983358301041019041014532661375506432440892722407502098 125757145752594760278327763867611544968157619971537489076161929214266182342163 713287433050187608049042612147601721754584372871984703389292733552161401296113 424595266741565931396499156411367715235501497177857291889715014950941298415806 278940444834923723806425996191037617894750552635753874799922903012873401677455 184920768648673041496252929988674957178044108917111172650825441152492794402054 652283792298404658028161991921772475090226360370000135615040974839476288870774 789273613696949142964851657418110687930464901368206915960478260033887381106079 376788277369954147103613139767776311667924692263468672570164528207935304321932 241783319594160239953507578868539031732923987221747292758553275533031858332302 940641126369082272391709790310978876514593692720449197832691119855704267852689 626424204642762278835063905360271099195120882926237852309295812696699954579084 459228636493454910860033495225097862170627265243502964589155356035148786006367 613351096558934838662352666442090802542784990513707636225379205766118039205604 704021803060535522715488250228286286196832308885520202552018646962507315218443 974273377028650748915106422685338684923565537084356833167421753163900645015060 071061079223139181577768518380503295363307964091325398458349749675354233818369 471241608655861995607244826333876827544654378090370354338997168905518474878470 332186184427566456599113141933991475122959962488594982679817239085475131389703 995782747063413496739632935449170676713614458970374002306519268900684841243129 490047222415999752103236250054768159870973672497488260742276608251975176175711 879675255103613302967068103564002672068279265915660489975276601717528258865421 977579639611091551027953476831216213548446866747536639756736571728925238194909 655079071830553659818757695932845117512510295227704206328831242307396035210307 363869776514917304643313587452097723964613544921329063912676835146650571029230 869979936295790366894581353209845450122238629565445691024340336795063729019991 594710250732713653591940920633749473708070210656593173199956037696980307792384 489163293930630760325289158506912655292212492893530633003303219558849128699816 218282341347635761184148697325107419790621873797880166912802649133689010260401 233901741928722666176425158864659174353086974152179588087896900957245520342574 381267435756961358269179356605806481079655134747624292544173956311352437220197 465202973247401532120561160341187469683526074572347627560732621833629113015193 243816145708666189948862910231224843501824448073537316057614144462228993412053 419669684901383662036186437094580180176861406048016797918208962354608516536284 750877782407234714259528117827715929189876742458434719462108559993383873887536 443294536331414357088538467131948409211291139183294701819287295061959199241692 832326349314387785935935124767292812464230314074111984472861810070261723722911 639700733804724750535928990042888163802225671065084806080895596896731335382962 717118109333915265067214062628297057422543062385716135223793072565766673924698 728566758480130913685692412334516712913560106373329557779331626930503552666458 921276845951815451262346152858075365432026591433374779598505707646071605483453 806193715358222106435142509997608472928098139258088975034626466303711137504921 382192893035287748647140095795445929009657610299576480966939902691883596874592 294842750753295873078708880965465098711250377660634070873594511831547556016774 387398139571930186980365275371929397978732161448552071239052856388379150346237 688326703559542593694052061194028953557594113668466194453469579448451378215650 217631418857060004700055593226762815001229870189353150647711846002452552975180 647452225899149500873244556384378744423594742910305011429407622411190993570095 913078466586699601890162342902899847598303057260738003291129369678669453387035 926851466658033392733823050847363957808703368117453619976801373033256818559512 290738716672579127022278909155527104883952423416561317768500509652232682030607 826965305579553922406019140825019176514575101081475055407736811749194188021462 488548240506462981611486125021378618052518395424076032474031668742915346034158 662396598263481108584979449229194319587079625587606433014981981253541091896770 188147048499967700202021753854504141333395597655062583806090930534635035213112 878577270139021431252393829467118422986675706965054417480028269059628990315142 016814152899060302848114103028852685730038428435855841068249502147205798056478 620257242095430478903617394542781036955229463721474750680907085852706705323310 519651119830173128897772169135293836857114341379627770194564390777219627544779 505102895613206848428211653988590729036334822816944105076664809292093390439713 585243792987728044243352685860279310214483084196417510184113347373011264792090 834977402504761984462859217715862093751840568168896544834895551794281208411866 265498017497520385341946118372004304484838388920710705994034559562477261817539 873734113096344200524490930024377902134493171946812140665839593886549442265754 581908510699992072911571511019895833903322395199943637342608658124662747757669 467049142554877849310023784130368883754384660518856678701772236031078407845673 668096822350694392421946024480464504498852574953076340657034094645082969768873 552993122273587999182440682667911175135607642599960507023828890314273433364402 844839227809575227804711457457847747062366556488423772055451818487014786275219 445273890950173495918649739638292614485182594444124111292938525033851770788940 763055687118882650497540435662051033311904074813960698467544454379703874074762 813975697622858100414075955621992169839376546903240002632199494831477318601196 580275124203254768762509609213364398675144855875178619738585452679124298598715 592569550047532165263840243721935507107627453577626343240816270250369532070489 061848577805633230501638675398207600962257526144390982154463710412325282714518 174994212259272615835671100743243033226346267005887739478392337571390436173961 772165961258743821112863713446167556943650086798319179736540969331188747557396 423280652812780826835047025287419968565955100787367914452499588124231683435136 385696075826724968332228868814435402328709607221615763372602638523685567764760 116783087216289301350939818564480699926163343070613438399204231963385504943876 889958514004385155762629949908035436015317984165124498946836743024010241233371 681546303817170893589500905382767885653154596087327529550974949243016145322931 804440720678350085877049812106203813496646749958829009095145735279335136725259 277502809119693109131198527110688009877122581967372904239707227570920361320164 699994922942316216520270083589598562499522692299039367674529240147025298197178 909967059255367382147493761304781374997336974667922692820895770416409665177701 060598470095165631890590259064677268041173226028392724955531230027359286182299 365036557737777359156362168609601826295511589870674308589177985624277546388336 222487640426017916075633622338624448144019618876507642264505671337324859748788 929411779961951137280833379300226047209697997160357908678232996766598946299591 612951912843627134475820990969014163887525278587040714389671932822385677365165 470771475263723352845384425093661292927398150414142677249204802127400312987123 980161651983480815275850275439336206631661566243973444966665161319325235265361 798612022490026221589555846266962330131213355391131073941848857381586441778317 340567446056351929593136250980860610833785024165827291616824808571253010891013 111967739644690435402483334230882925866980070786778362756392022837086642318175 355467739551368562510676342043534077716035460580170914425612648785932891885806 791319486156746105202988409788870897638573514301167079510326391092334581571639 214299393547820748252334787745464887874749382597567093492194070714843946762723 699552522876136761140392019061443990176401117189778874415353851215530824766622 888126585316739063016545506630428510672726232120435972438136216753866445508685 624661585291525160186613861776828497819192670595655270838483274534932669142943 805951747983740326527575988196058511762921564769334213093804024135809624149167 045578238013565700443594167923210154117501215433789009249912216254028692718789 882437884508391535196687866844643627195373955848813319924755564938059907394160 850389536609706747154574164403466575815958528776045358656311987390444831019864 438057870210591035271718120276098079590595167375625049031821360388061147750766 833650010938795627411134720943823219286121804065762305890685059118907469982073 522821065899237603202699493886240840270895846703584370810591875342426011619118 716139342552712115088921988669662614053446498149152332382826896560927786274699 649992080338430475669064234446317033179925563401342615646512447217469022237708 175599582918385024405741819041979052238509167718250082945729159101078070997045 256941985837659109199548454663591726413485304260712236848320659226008031837733 439812277671564077946707070447541107586776689090698912595741724422914201523400 344746283131543210442263034639815654710113955072056430816318793357546604623107 207651673250151290499090733116974537058654013620720324140713178934278668169682 808496303640906748769146539068425886806547139559985781341590551741726639766220 977593313365530724779338454096131567543507382385223426908609488825085976990724 634528451769666353751070299138023302163234829919921799249803699046125150719349 903593795451317692965273610332288713508923995608819985417024709227653239480467 772096898931310197914761673814191041462110120765743519105920690113683089815533 510537255822318717462408048287333216393314142518103189365963605368704613012135 063290519205868866772816600995447790781770389743904724293120054649093696777914 711695296833210056637951673447313896859772017526231357614572999375308322003208 859505341676949183217096096330051305582402265160970983314704258995224037504761 452076901327298878044375318863844529649199623537532312068178056318606253012058 140426524928841978209696441842743955164126881892067750378016574919921506755873 568619871046057119718917604416446837065664010811294790679565405654559540388376 181364488901777195961052137053249522893173072593776080469862434544729425306440 880536683240668776035589140088540498549303205262329096858508334705965953778219 130325325723614236799701993826673996718685153598273720521369067442908454845662 809089064874145389673967432242806605535719638970858254547156232520968609685186 966839194065120304096694846966251503966547923449768134462271456894545413946155 757226106436695653272148814120210319241092790607574739844129398181070228596044 611904383293750807729055275179213294276636402801389354408911964184303065268242 791956248255392152967044759450549749804157362021188481499871840779236497479648 904102865959932768228011640470075205837663234170424678097720760741863046457402 148443209837253521222473680658284559830070586526649094694865016058623635239857 753170485303139941743923681046431380597630036362483793324386410299809553260289 551224597087597954429482323595459394366839614968443986801706944048206691455981 566878100434639380823469622867597054951361201015711227356802534451119530450972 342893048430444885442679572361122535334156264642740855141881554997944021985863 951699381876738104375503440753774893733458939142041139446565425103146911006051 725481178490144977986051116556137148068705268395552439422772788402306334027880 493734958695394538107860979080602074339450248402891328171073795044724722466793 951814532229762429672347451224640035841755513158191493837000725338321465303962 360101720157400503237001562170443639893798442241703629921861890339177195020872 492056333165119197431611188584085224883564415604559803068632822819721044695685 296406836429551944081003375580317549127345419871306222303062567650778113809335 934840028992685726912317414504095005533380585405190377562789701850169415215599 407795431837662639231175286041151638959141919999011272816170057271602973676231 319441031615679019367909194342525869761222062677466719966715433412269739642850 061526605215871212521793429054457755107298474548964754277082233814833806636200 786172348002644719908716331172557518761083852814481113784063359389045339327918 460701755257577016767189982314268675009699552208699711545828803851831650618919 688583420888162454875991747951273813991064830065203954772332851902507771727271 733429508878644356999159371419262997138672524369752452577189398594402792278281 346455550589404840380440419691304996616677910432911094402679743034766321832769 840296769670113154687491565093507151074401494563668924673563512034909863153940 797858535061431444790167859549709445009522960865956968939659976074500571518782 979530213503922334590690717510730152670522247479662196764771791307818921824743 384805893458210303589538525694544683364655913236176359822744626214570603676938 925381088254040773755444673991937400037073756257152236528550410416979356896663 403394628494560308563692976591894645847439064960586496137458257640718932316319 457823404932732056846395982795529344621417777497545843319801472671641842617756 977601248215221863342409447503752694637008875502226249389702699287351867864743 651741156132262337190752252536603941640302476783137176147032482603459314777021 642048527833903569238241327265919159226144769320617872588307992475919439612422 417225950791118356810974837083726335041186430683718504220957560632312404643557 633603683240124855323541959891526114294158702913821374439756220113552049537444 472214084301159804151886783506989802387192433491234835314466396776337885738223 513272065187189835718807086472265076620448086789544283666830689450339216685802 524081283858027226006695840030114696321667658498417641971740104840819638165516 703083359780002232741378609896654464235790253742057333252147988509512015892065 794827055523248758744280875252682296366902761827557048821333277670611044018514 143049228750815611425466106965134329537350996331843178127472648416177494575415 593175334782353374666285284965029035533797115057350636608470090447855901459385 472351068894706322795276413906246551018177798639692281479765692769643153242539 093120195789533064361249514554523775524011756988000850984018172181754655376504 580475335157399336367024968219585081288486057117192549800466531164114215902668 618918936807725524196346021030980812215883836066017007501337927297216712759312 090223862875064139560363357863592323396209220347087256038707953530814984671027 977376122356546950614162422304686572332161941932895503333448094395185011114407 844387728484624378816328182714700667823065742738126535790077994962893868360599 407132970923201324892179892091958788249171144180100883608365211007733381880371 539727212521056303401929649253685553699228961740947465620919185836046399392052 654088939012670753371855730119338580833414857548800859923151399131487937820024 255385866782973252277535072684727106479687968347752648273760408982165125944836 895040640059576915099689319961093898645215019568523236016529970475311592618215 725021307263678900670458851980380247112403444408018952989768945517406201928374 317601553701655773454902101464123490328718510133521211010455202092267977373449 893035439394377907430370947367825065619976959216221621842896926244049454229491 473076938979309012880488408500062855342005881059931591992774961263076703200662 364182725422674281051402749810210254252884979132947862329096804627519557875928 524037784335620476809864513272654752534303263109441022926596314070056001024128 092429228307787803157073933993165153862524963094808114581525444099771683145070 941089158513086353918496399473421803450269230022533538636554481744899881971242 795827746326749055524177312515066022720827088396805288395681819226936038779076 405325678345054987435545213134913712887564412194299447095628654820467763853013 145324587334873664023710020414059405474201383905459422047388884916011095470826 954405073828758908030777282968310827915289264687355303181704675665890024709201 725429559916580334097450025256935899945877242363601537027107235712132829341053 230434840317086407598203850782416816938736561186195388039671966057727691639031 921568795634718430625694231842784358135418324881779786992138395692522165102627 362145810054206384230398432362589815636629869975435830847131935495936726753958 994928755723674921698886975315949864674250247803742617370799847814172502032129 670949105407947747174338351975032886926112160138229123123002553117036222208121 878462100220890033283606116019786762581331453527122348523328335413773469854912 932726114871377748423698195863116634423625743861692044510809459691792397017515 969650549339503138088826671479605539280891454160684460207857897468825600031200 027308935762523032747607659795700789256009183370046274145792723327068985023565 760870033470821337831322332456721343337722681165616615539996037289655512219712 127618366034073443788130011943789768563875224255622852134321227741545777163711 414963631132436871490882161023734249962341461091579233412042215884391561758699 853137861224556840536642584921686506955858309788791260363151936857979065118808 253275151197068629839815716538664560211880152382753933134275408101018071646619 068019603171169141646471589463648200402239640597562324473185978464461023717717 139259000500678311693529820557322584618322029240330648040855444332824897130160 064659731535520307968092210086127434145856430934059769734466450554810255796294 667769731148484973058337631221629093140910144600069836021169277308865569902178 434109928729224219844506047222963258493044145217638224857696403634673345182008 199356684354970554497250630762501113642030961605075523599275827148139422994919 303066421494927008005700360894731342278697072930777472929708589020117005476548 542976546658838073624362643640175047004765302342807983636139405827376278645090 426120897185907360192402030167998247625275986734213636185545975899974799306823 913482113513945584867356498822887355616519932732266002644697771129729415236674 277312354597694086594294803886308396490120300693760255912243715853332974101700 583892444110502153173721031782297395914220440296588969966606666179331348066571 942645357431005187415401566582112259309881791346441563000619293426676530713326 007979618301877261975609607245362604159875997136663499709021180589505526089864 553222196167743306449284821343922926415422200384934913511243262104718875867082 740538776206789330641728110002079541160312256295889845510087300716171180867872 897030273534365829612347143745910850853609501147757663175019022109692882421049 156170501226876811504924527762822123892603563167901338178393880957622510672871 921392185408995836370431999443456861834538266867162408036809683358151123725784 236822318389348930051435994195970427235009937815758131344228405036941183490292 480445250801154030735115236815488374947918450622852410923114013042762381150623 972755083313742504949318582203057261875407527143591875426921091919358156751719 114192773650848923672379088873666795532536210542084600273232039927128467838032 916873189995657881954642437506285348897140148249229583017175238773208626627696 097537012623771679326686095328744093023776642048552857409443343132570605070819 942416584371987048829830528425611219164017904636783467548861235277641234807702 146806264299588014199344116352896429664560889742912574295297613025964556726227 513170047540592171190148961646587524842056692894952249567133236978492895052059 681808586531096764939818495962073386575146071381821232793422115508710102582609 254093614527784853952972399504656873857818521355892227896114235098851118514087 246686537514453613336578765622658754782398176276472232200144017643143930885113 667308439859967105808815572055808128968502890707719473150819675927497810261606 968354075026157527756535929127787979584064715671304967930744254448827698389811 938988674708185006156777262806779660176616417213309226571889739508428620369747 320533856808078263932949799821999032699456002953747607096482128727578438948090 471492603044443987146053516760545183322211545742374491157188892492074545751033 475640959091281732946407919521536036656721889528796168968229247363851369310069 414616661087576542282562846213486699898683974071513487794786337041216348901976 333243728651062306833645486399801428857152135029574973568049795753866053102356 212166118551487934966694770493261238229257783958506000399881168456108335772440 333675761739153013789032757093478924279322089839598919738187337501896628901242 619350237303009112085998567973020033266891863930684600152310703272900682730983 328808655873075372516811304460995024267064132624188725436118760745665990897704 168280802762003593350274691867518511352669200521475169781555990644908570412106 815224276369255753736271743890565022623394873259157292922793485695632534558098 153571531744073885906935588006878583440415418944628354561622830254266571838464 093403953573229084782686691542875877513900912877650123322163833767399807266802 311737995434700532807616814682835283850967664338460789157410618465147895421975 491709603372829392981725350513590372434866474348782229970481626924512232072478 507302499037029110123504236542469722444353897305030872962305112469178087423767 653188730795831867591669713607624457364895988397321178842722640630566941364510 241574349001442289690951265736782606175573729754972325573761609688960968758576 999541144520491224931912056394341506200556356340021188114991702429978381571291 466225022100008214896211631711324143814204641333062237981624153522022244810705 319385632538806773059981122526824356098388612460321026403828701508091674043765 396893816305092999723103916034293904943375953435234875828621264355234627298196 325455799148806615844411423219268950310825986873679207686145383241431076070667 687272895569895207537502335223718105494655302536940040717724779688664016372992 532656534558241127498241455747576876464549502428576598884719000931403917707865 718379168544007160864727041345496064759677460191334799602663302312758170884035 049769661469849604876329772136019846163956589619288796686270481203602979727273 706509708836296404501606742906112019775166809782270897660634322585158623545351 777740001628322518868762604874626499174957351928536703819375676897868446833447 883017392948661321126858345690483305372752915660876889210014861660503042861795 022627145720698488710804724555000650436352105402557821330912326162587167631163 806098050594808223750528332481374506934543678539406545350723893625213692227255 858555144002021059670558687232266077403002492697007611755195695950429016191260 768782970269239817357429268109137192706926300914526680137575676662948069388024 217404251252443118177002458438908765132922402743907523435777553926178816810824 231049077185068543522775133172625013919041971391681209319865353025067398035552 853431764114548562471526274057714176523408271500856475898493184829469735426893 025495234091077213232026046027632999948613628654026468184698607074834801513298 459718457863999802418650402515616681891409293064833166843065029319902196864964 089954686287038225675698261242120130550868109181305631255445370185725138193591 466990142120328495895706173450603643487356968464306636748885489903219147177494 457815893088558228708397264351775528979899142389118483859618276239112983345625 844247516473909874178611742949727538263265830258640534523640539679589373392279 593736105766321662342624106268894910501655284471573004074347279346858486327125 086953823924547387584182844400254412660104556833753038719614358576884369174252 074035699700637368780448694483333919202951057982098407065972984003886726488810 540949080199164694192273460814402910233107417006046886507816555192029717782306 936782810263218823219070133033353010201884384413182036020539529300979517577159 189954332749430615148564262503911588396338034175846785131330009604894916013183 324524401448190883598168019412359297747492798818509183955078383130736491190937 069064134409913435942382671962856660631455210719919364712455943554900339550107 058356420118817779578968608542422879470189942575200928974206908330869485208281 441269417389867952688075472924116334974365667142178756299611911451479946163382 007654816014223554555600660464394393599988913396872661345702422251577448823788 431737227103654142616796129156775864016838498414468214182527499908416416118893 210108321218068952056333504785434677605781627026365813691279459715539043294956 218842065106932385508329729965054107259348263095989924308367284589006563663799 180953389034248263428207403337974450029673644242718152914756434111415992411826 065720469676643908203006476170322741131470175694307509821443151144398827085359 302495019639748101372048018117922273696091130618562011928047222253157799300847 607836882632432119552646477726550489908207983721973698374918122999128343131546 578443143320507136579702270556471830142480069620619219577036333577296906898010 449036766941588011658671939191969697266114355325422183385128800127848120742037 916471677660867097414130609935412957789661197295434820317635898270236198333615 160180077749335927607815317195901402098597997557927265770725945990232074165740 218377791976804760581760869314435047870967505592407449807346290742747108016726 976153924778092730969377696381262203431960065452193416566897069266012476063381 665697635722879741193371175157147456765311184626821698138637009643659978092328 603530228521263134546399538441482768930400272976304692825785465531303202992455 664056030275334054166575467920707807181080054094615555480810311209614188018084 788536244544993245620079968133814717872170447412224506343457841407454466169369 274430449562066656991959201759664856580950149117325210799633288775338601102537 443877919495916239824843890187922164727819051774707653214842986685516730982106 831907549563059453267876087228523001060542960599739868874949874703308365599726 398386853996621454120005387852004372261337557004955517881475213579771972548896 541987116947513897464821084737230218193623292938404945639639601001388300523990 168916231160317458793842420198990757798669277313322327186156043735421690962601 039521781300172162954195964731780997134305312138714750391048186424715628326850 519348630461149774383375011825424511956814425460945099840720701972046194932547 556409361345481185105200047663970483171300601837412215862940059166172531992229 423533638225046799906091517653085293578123549613483173222313861282125249981078 414638736598134636411159840084430271015250346298214937239660058041830918022350 999447762907052899141728562021697284862677759444758508970771517693287023125407 329480408236927906793890430759725877248971217854930407395751232922507722802411 942028775245850384672561296087972847227972992997817766485886878954267517252820 527572814346891798069503585902477350242190808449822082425128015532954681017102 144362378362712794164906145410894731793585905851896266217837438797779339824033 342078347826090859946688757959731699727355268233339285667980786760506398913273 124010609824842071874224606044551313925841824288748340033024398734945476548998 404573483525494265678544715878853206196800371927124249648122012503061842705781 026259641947554260102135021776993443845040109403168597274320866058827344574164 288100166623579615448047981165009540196910133518887213190900838648393212748915 611101082352178241142230834668996729445330968931049780641180684280038090244017 465893663982978789767975263307117733129279673206726322919450496137599795003090 461259951115350482668226581107511264375185021890020857055013020556063075213316 144517647484051254257994459796021293661082956279196634855006621444385371770013 342260175445051666213189636064580614157588097108181951671804930914094065114762 613007099417586461359969599456195035681606735444473202992712607595165798192597 655638277698167692098764142537878212621962923639705760521940525252460906293141 385711773147969588017559610498472526928161324216723076737344380810865035506394 350425876771962488767356536860063495313584871820947339416449200334584784147450 824481203515507691196216675497248647629919728604227819074109143532736415920398 383439001533211484875697796794331266673718937054280967668347110845239234588309 766275916009924840682161003366022482172925830243033310218663870654762007199843 111072036912987748027927869469955858968582513902027700642447071458745508402002 702950378634524894198627033925455924646717119777916456863587907985506005086233 213464115827267175833661403534627474034199233327793922696718476437685043506632 022071327219127533350701076616323742412772174957927735950599113805828328076330 469096235980856729310266955526953305623531809618324710497300114559936020425152 615360658535227608438724177016475804370975564133468396937279828713884099880880 728150999445651246149446276028042096521942490876305662656433139471839168252928 894409904718474853625471490561546596277837128921849621621901852362036729974771 921844082271742628849329761775870167824483433428330902786216854304746022054999 327754657323000425165283113711884250695664930532885722052224911827980792429986 733860744440445994472818760798337154317820971669356016835940664065311866340062 680393118359989418538349075938349298787291655150007840390647166609995034255535 258956000852421029415486514352731193721054487418470342184223278325083232616012 526066769266024456317187558651910461854319496348845702929141108891631673396135 564642150713167569185020858073887186300288168412859068153313412116884870235835 333721681189864473222466165102644656258075014505562444883857958585267622562468 091420813244746024041065681255404479931496870361250971855109895791289186898360 286514964944045265761996569885672843603356636434357809982224405688650936759772 416022417504614670936333719343772078397321127405402760415284887988826692623531 864752672785349612742120720342266182452051742477162849830710157302072474972239 043083622848815801637100520736506667757998902148819177062760565521261332434595 911237407140553546609390214287466293884435646147959770042319628265658963087794 336061681187052447593662429525412785483571457194057201446638806338911850740817 359758557939474112148785856589852155731488960248549022351387999567685576406400 501730818111196271903418703224207202539141405311703745641912432009087706643748 590233397032012162855011186261049199208345937368623115741705640292772040000038 245075223560342572109474531362499016013039028639972236371146088091896486960717 597379260136267090230997102559468207745127129071365193161544290838860998275451 324763966723367830000099331710460839141072993299850684093127737251137020014061 349047814658015270649362263665855209938218605620662041676152628540782757032664 477071163974113355135833028048967858395362559088219313085010391552648998378541 683880717258042536640033370345310777018524745913779467351850091536444672975932 325181627331389166954329277284396377209844327173324208332663610646650304986057 098020745997005570620519869766090219071245007957216761667193258571104393257503 613586567372300591096663546375553790778863316042747167598075980690133499066973 250703162787933420249950243802171577255738848326714694314966045614547739687435 882470990677855315888394281563137344984081185916296845038030931037466821949067 070337362149760609609706476911782434410479691066425128262001001091364222273320 304154496984963924271452939667574288107809294156958809394514164274101703608988 034364563479143935815224983165456146353703253204581304476243078284913457472373 872056429454959049472068649521167709532359503154836561863933071342613557106750 273453512931470392094303562091874115122101569660595490933637913133683835980290 169980858428803754587052163616472461824200674294517841988836798826555175164338 147044006109391149044378155840514861350915660785989656301649651930599173128651 645851499109589941425319155030653998242238021757569119388841655924166519294476 009801700260732089639489656263958131633147300923928509582890811830801567635079 037049371073911907838445911430008923872650292485996519687934928557898324991274 614898367940904954004949031993580452491389599287348547988842984379408078249055 607068230257287626436959626149476508299661814825464938217890502665431772087304 956816602911898340605922036835364189009620500601881567658538901089525322439317 744382788579776753483625840473150479195695216659134522533068884821668895078940 550711621670615649356574747696459966075084389616287147096123818846177292090547 560473978724872572814050673304760093379083731817613867886139327626952741523593 387344456834184832917711829706700632686109199436899638243262680382877210701997 331356713452116851170219306782902614135786870104186827725620846041187586561094 594240828391690373390022131428957810241800393843813863918957783228315768370923 015914810350303868467778737976615380900336583852607924576432822141359730104666 098470860314416056799780898676287387018573554459333294354178341091226894444511 122448946884126415128238181588335540573762829955119867595248422776171322722852 668006681150193614910557555683068277705623492549236658251269604114025795693658 421861751174421145410348020034521246150247271229308579103724153173421651907231 730778978340541466328180048237319484108355865980231208977060618898038150522191 157747426074866461559227986372910070355429223829695576520442284473283163784148 267421438758816987085701589607493404384615810274595289295003656557035737540768 449239082329412000327994742800878557676611856776237425314702702309518579940044 018171224730722223951008707393730716491438341662033911704632988350696781589591 247833103953054617978131708432603300163792812005106350275820721176119855473147 478791754652271173882501605522834088045275719597393803951045675283568191980918 767318904558312124019852760034405688741274477503619882762259475904636350841531 495769854991682344308735702621489883919853472934778963682173740835685621845704 962388378889864492827894475366593736670150674563928621251403938404606045389409 016539492571809657685156282046736447584139571972533376354029993364895611895289 022908178555651292664174236153013291990665936866084906089431045870192729791553 787014761660908255625378616735699096833347744753182793073641257008377602450705 860082600865342044166057625530850183841414706015435471344125296069628603510312 778054431271938113623453328849742441476658199653761283646952702664993930184627 608582608593056136989387030625003751481666485467917343818871446534122923576837 444001088075483519611019077870151794203066785132376309060445176263178765615451 167147481372665331045383511370903138858559668272955585134169691553751208178107 967970839022137690898561848814280197623010456584657527719377600211516048356805 721666502243024328382419639759814919523721915230090072967998100220273940599460 462561297433275739593297732542468773096551883587620540951934058502085831644680 963711734773453419370586964871001546599245235648984310636185423328857895084658 106112442745586478094437571417529888811267240473143356621106961130918890718184 640516675890121325443288971714902241511411308839230156432590083864026934255200 185009234014363618646930207976608116265902793559181389570421589658681684513749 018577357087621490468066562492903178617164821484082382867146513103558221640593 545892552599484116802266937038150721781733699790997753521092514231180894416330 371894067689902940357018484012014071454746371107423305614976828505464101304452 052383688301244221673660259321452168094849436338999677219707944591647327284661 771356476742682601361289124305537693519809617807128785234718632504878906793586 786275358930598647871492365877830025039717388217885374741284812788338470464822 443831502902863396171132393210734210814164793116572078258117073477938335733569 335492136864281462234594694463328138811549353859486495973004584077182718416738 597559395206597007449936664557077652865822727303269407797489239459806677526954 098225585357047061857579417860765928277911885215064393032015669374591600436495 946545533279495805845270564398115263376730736823070974902681746748475371269533 526447879749442180737297542455817531071568335019213256075229040914890154094556 389756017466138321381746434800104540899421342022240425111394984520074559337402 330957775120323085624123180579540916548669929629218649133977254723597095330350 565794827545009736106565820647304597059334587021171844735877469034082998312053 615101567207298801013104303471065543485414402347279245436347052639418546881893 463108788863087172194378422411572543125104153577868631692208288598241404694872 711564456770665403472199635131601198310586709895246448096401358229183210585409 604902352127203428950345738090344437253865238391048292175356214056970894163293 238567260881906385762204210173166200392191487135322083965333491393491092926415 834900318480668555057778594160594301170908234132778875202067344010374660922687 755435655691341698938293244372751238764250063924871485712486075577654716620197 876509124907445354900176518527849569582284558745092731631871048690224948257032 321846651264263229973039015217598785713919000308463766631415257478352366196768 667363756047543921871626437191956355902707213520730250139617725795652188991496 170653742974892837115576330023392252493445042844181132005215962088523083270662 235152507624618579870908233692872773977975101821157017533872545685636558439880 442047488811144885155820138220479411067475037633830228578405427406829298207713 305769089001486102043584527954252528659795622334191342938116701084807303624100 896021404958353035095489776763734156947458258132582716011436478468934646310826 904675744660552267650373683997286330415900213007478173626488060834817695157984 718930315121366563704901899529597571650819124555229763885611415506156539600529 521998908003138377444470857864001905571421535998690789718424596814856170975632 710118309729262072444179414079516966195476138976789970862955446089586653118950 325268574432246278397593680606245226962830321038373084119738773022551214769334 976554751217038219187561868977872715490974415431332586660420516733573558969982 994177051870530278883487941785964035556103400030250186293191506361350807707001 136544465920985222878115883347974161930487821507278860119152232537626339965946 191682416017148062765004753588786607630514268859421643036910988082813527592565 101674699985220604348547281260666057032779136145866190288123691890256900668284 940008437337892384438670598190989610423826292049766674986580580046489090796936 828700863069010537275530897043828069371135173391625902998319703026942717576540 234420962305661965339082595554600034174239907261527262257662871285545281560012 949745060013166240051930130070075899383722560350349500771795150668346062069819 218872372423410339556520216797131608578958231804793923299994819689001870085532 126211633531002112074195107344040681795575019081078042695281508558828956032263 645687595792526036597264772073758383581482249658408230473960121587772903142882 647043076603256449956588200127558458989317197955672197106666386963744749146598 655273371008349892324183872152295618261550333331612238420073282802892084926237 316367474618343906673770656842080307609884185598299713152670362235978132820428 148207687657637782549523012416519075000331178052717019988045737092617418314895 682951973933638662765383612771489096134743869358778944883355093349808231363783 514886616113568239235469660383672911873843541918070960961346347242416430233095 150236868638382020688809672516969094620713056456670433162377100273950856859330 775474801069255608449312941837010252724903457226120101354929195481778025060657 409261104175112903063586590563116459328770563168528343449122567129442100938103 234555506927361796427735749435650872308347636932539437466999718500707881645272 377186057373247193781510948283407914152041541172662236395240103551125700781393 498010036234612314970287265155277273595532179133662316724374927284611953270163 338599659968920211169491148601547116808753213813712687171323412781226330148955 246643782063947871097554688505798397328903512051494989464951875009502604491554 504782598286134342539788824413682887145572758094053364847867849605044673297807 049566511556050966764049181217157897662671579150222486761753703416862897991942 750884893741308136699713790762453048408172625684383768719736624918857665065594 821842503435806439508264938435872026987540111770641887777386435587939429171347 061634811261720218709398574437372143008096956174334265143623646971631179967217 086791671890783823220402164859530672688868952867970009136797020082561023388998 893266971754940446376118971333048368366940980569331562750833917107378758322312 921501587247048726456911982592918773247752417406831003960895933708424409434340 637660449294578245732307212626274408874044011755315540476855508851761977959366 583721079571028236831786387168931492234588142499857471111239885352152114852159 352936045049756811793844630358745074558125145678061976291730391194694518116281 453673676353955499426443041227822554482875697130860598557652547459462040132364 673311937964539815454915286725286534584675722680753519908428449712792083032206 997156188089987009148097618836081119984533719259275147520011740453349432186021 246312263196356463243277753795925815752751890370163641959369404807520144073980 840019727895998414921686918236886014450854202310166676018456811575881664926181 447029595992972177986249676672763182159020859368123217648398140187007908601366 246819986508502521579879424471477948149008542505916526871172073991577854940518 712515465693226786443254263854976997979202090891873042026054706363806590607334 652518048492172754008510357327423747920725491292034776679374097599790594754664 337833346842254489833831717033186961318037152781570877970916095835974783253813 741055754446226009543034217459516969018215749828389222104826632245458633638960 895162388456151781309089681810290816323459540330220931037942895384311735548961 459210888147732091507899808262895782741254312238768345510218417289372308809175 345816865274566486421153919834858616540495252759387820760756227317899204032713 371109840080926885712948953099651026658353438193545648306464275837041391621766 472600925514454188452434394036094193709447805208190236551326419794209329077206 758884547225345267880923323421876801589257934302646660646056293842862222736270 119045985720370912236304425354992989957575550729985752240630088472315004191119 292285245465395990237514009430487172358962616141374095133669717299617013694612 837160546015596417730231819236023905631827894566494870112683253852406635933005 441242753008308535543978356409924970627847929583117917651628139895440104942962 102420238821713746861508404911788571109187187893698971496766468450033967972212 522674409868392179384622476222966506311668344844013638124568006247929739529043 408486086881790805177467156282204955063553456193794878467445045640905614779632 108407864408429416865530524260552494488138753473740538771544135947439049218630 083899375710298025033557807889815819361959461026852714708644751327313034157486 804941739917845862726250049549934446688233985215749819641047079870066312990185 681936901491976853401536234109935014123155602288900500568130551109123905978691 697250871073262020046575222656874745021762348822269365445109955267541576928938 107199206443694807279397548840719290728372017003323047721348408705381108045665 600926484971843046527895395000356837593237731939741865182385748892731406018030 624475107834825224202301473065497430040492886042526195348681159597792166401741 936267505530082449595950358109052556252941467913903396838130596248075792183249 108464925829746642133290984331169632191116329190840547686039783507326749187399 073022520970058028213915845492712398439503955133791552944835669682412181444878 704798936492294081579212990368019460555287081782564715079599697171875620903969 358513030469736988918043124068194858997583077466707530245022214655527702541284 573073872861177686581866767698505563984259495383552486333261382771809442071250 314118286385162888609666246888293592104274202308729464677834202543250650284513 855568097322063936195045085514690245203194220666131482253060600056068981642299 374778355051234077827321896182932786396263124409254285769082972652196361766296 640951742836083511475746125585516678110957472587211887055004980834492272005436 116137447237396521801896641024117662743190750649613306652550093434496148107328 253173939001160008879274184335699664924652941526738895332677645183522075945718 191266874649247477087774808738809412861569414078124215970993132884880802300410 188451216059260507821911663615402438525622221022238405011214244754231487558871 654314420549880769800964556502493074247879701067767646053680378811255171051353 545931234875383297661361367755030347898930780251563402844701500280243341648791 125493107614639416643744825746767175701542340340942953292894491952567403276291 908149134444270095581130020870055913752691909292531845433792064923940711924373 705433295658622222302373771427462044574616881899977828651264661226445387965918 884876378300707458003955537628900384437924481983726765599383891596977102907307 714773074441745833836143524483480276967691962963514449567996772530037302106937 702277159149569905910840923276592353209270560140586893461551322887966929872463 040611823794456579648900806618538784767751314228142196812812171707898896970469 903719292766511328056552255874735988211672502061783280075103216823180662531486 184120889586881474682597003398587697790219275161928684660559129617433280180030 662695817968122270192546121050505443299517767357820414006190065864584929570885 233343045803715523977567693024834629473113098856444747567927185293163445092868 532619526343039668176992241147873114066043022096217680229913539791667182930010 147114479068814256646983515859966592004642360401556476921825230996711042958124 682103678483680634372583296455586597123390275335057704483951751016578049821782 927123808747498765346032834963983077029520328943343134075260971316893748894427 583412975724709345121731511694365061581095620754148410117531699682899242895863 358507345015712763332394882033144342074759025031382102243514251546597412236949 648029553784672392604727315967806189231610917344822849503216178834097494322073 979807300298210757764208494032150671372756082606182579531848567943103360728104 439442635332448771328009822828984664284617537326096600459297143802174022161599 180330101918831183245113911251855881112249870147619093928747405091379146317515 420854624367302773824258004755981805694893032151392780705745008694701501754609 642217050506422733321699824636447993010617876313249149698801404543173416197505 820798259259517345208716008313888162745272295357061632778299310950476422756983 008477146261392985597972651182424085193854543988133507467837374597291576704660 934743392535492210941438780937914685538222233248706821423744541004585458680126 294888150140122647702551367881033933480859575194497249336442590926274707078202 025707905712473206654326061389050867310578670428537100606970359782177851244019 781502638378442697263857838068203221134383450888725844809242508220572168054853 252337948857134322395839129921225384803856074716865191511426857993615968925974 404795750784539255419449359487828664194041389714546475957604589077977339307261 031573781502719410535857089343218113772896622160960588779598971132531347998399 690296041121773136693652709662387282669100443196178382283610390467314284842551 654907560539815166227293997466462899463800686542888252229372477168270430240058 154157177300093847320810445655713548175141966982041328650056943537147189962032 110906270855337602094607538249487939793088854239591605749516166287265677905637 949033175954837498476232305442209692356459356954859413510570440698172064939712 294935347910732265335330420591508697662971682186653974931028130327267363192212 794110916385429863770962681618114673389114012902045954512953006435676666603501 047132555569083209853671364859657218922792493142829523068424876520891962168436 499722429723011699263568772977670189866697117255071071362531558277753222060007 471808430749269879476293872196948490466431026439490078998486192491582702825144 854611800833889031669629494884727936752385664732037058411350050910873344241836 057594197922176107150142743233172622153576982804736127240630864346050823336461 749196224462954285994303188452535927272253286912626326422210359777967269658316 118181331971291625997817097333267420218232568854022872339830268354409136843170 238857070100634926896467616215368698166725615157727791190864509447064007596756 026903603525728458846087460148944718087453289187744683110084315420027150791230 699129202867530539250015306766221443816833254017685072396711067734915976764548 540164098060709345685634351436738531883597885082034254987717537869209249547179 487328070531046534470687272597915446819429146332681197657840175313776913528876 176140931921466379989899313345347515742122373174525943329025164912921190715922 228647958785929892246294325434473284282352168880560711024502689342533383842341 393334129331253353550973677211942990513759076126131974369835718531734111881658 957700778027701674872142390858820233396175641030379163549247643404398796460237 068888950725440212396495176221657533303717812471600803186842954029936308839498 462810009318447129601704991667773543857143285934629364277900975531257142907018 895997503685609821604824514745178222356846588074109033205172429086306423397299 664815824765089810839117785295252734628563422152722905778491189583368034287047 407002790016196724443133033934622978358824441596336409993041276596365746133211 110595433113615502025655608685712933074915634381530574612439202420775249375196 132725103606097569081240184871235260124978536099499478741162478918428453141628 724660442877774567378472623705311720031152798437693377432379749742660228879757 549361838809433102455974723594984203831417807217743603527822883951982714484945 193943188402726608865444039640335287276518110404355802016494384676202403680141 241368809092359641994371975537157642393635088575487228302842138387074694188243 777046891145188796868057796459138851354347555472735114023898114340989811253328 115537976207914018511510409779716784483140757878683156302419504726512772349234 685817710251026422361428574575889203843740534418727259002216651852871989720725 118768604220530800974543290602556274909121929247694367103005854872521251603571 414590859628794295746139159793907173015166562108003650797712565828742429468715 139698513541672113858602462143763053614411882259878258585134773821535622277660 393924801473128987047683968910135179293015268418275325978267451260560080246634 665590197867765734289415521447895313074825971905657813463741409391298514819051 494638207796143204322222655229014413556041078162828788845656111086571600991922 615838584350160513163551256124122831436004288727453545773377899871426535092138 265373151303928225995539521686588254710446358736727575159196710011788817694847 633891464784167450808511193566130067191259230005016929811102149476997096005491 716359218223474329872671136881399895705431809227151742029933996411020744434184 741448818878205695626653591770531754734979048963777529967469223500153556679183 676904887145667133440716387856991081182142390001766690658113208423500366897010 197283352028733040364513314972088812051687443504814545631396791678298543002330 613955482057128524692589352138195576464692648644175802916735392669943685050645 253941376475447021149676230154965963756106056437535767845838321390944475723005 796306115110558181496410409728107086345088279871745666572654738083368602134732 255971573434733199279985244861583201071839306371996312224236993227704242813883 425830474068156349894535524493523925733344166231863926276158655294240993370429 502569012569622175920363725490677407774014721786333316221217393433917004917522 263956727230712528135575325326205296118153371394896654087683337089440416586217 418427615548063478078204711182859329699707041231011091320568376384901700563266 532509617535762859041689234110880528760610659489039307991319233396563177184140 318613701600653447523828930974227982017916538675609474292827192709383430001003 895205063509409663574801374029737274617803945947624203874576217632180336474290 683043251572418066643375307863476366560170391630772525648288349220118382566195 004797691977027530958085234939276974515049364449376966000205374219091514637009 790834506836425049738070644700608612538752879214802386990969503307250582621854 634927400672537498903756102481299812544676019333860572350867722899109507597987 996087870715527523733362722755411737304562334609549801032276852909432055049785 839202288312043571608756173421049692288017373486210913537187655095900137661229 227022391253193405618334071127703265999926337580180332947943507363732031998203 512263578257193913103637093976429346248468498116596378611736093504069032999017 443717782640150028355393136805321771750305964250775499862678883350653096991311 065758310936605105119139652649755067694393020221051793129536545774099969146755 051276868892758922057665412639218616348612795086558834623404694559088060393535 367823558174429260291521387754767869233200019536291486771471329527672025990289 772881569986964222649289688405496475050524831799425466535685828660018948115708 499099931857674734373910153442794165702238663368986308874375911274100501281430 567441455477758452974646156638313176517306120762763630493136667416679006602625 817915738536825714451195318607776618716625318134842372092260415001285153685794 543580425053254231811044955618774304235032935480669976671211856979621771719652 254069900207945981270982700049401687199003022616995154521863365399041915502950 853169409182419397190586785298587264746634690373035438126234766688577885287845 205452172733472666992649822537803814727695011493480170791493927426408237466708 093232728350819804663436166138541402480394824138296558742973028688249038500384 501948818180391550512642579310643819715887726175006022479284200006129333230842 943911838202599990191515609944331251516203781761234523602716036393673862173667 963614196610506726428850458711232008980456163147539069869986553023362346867891 486643581415344145254974755261026808465798047665332225298761873812011909825395 099813835351977052365941042419105318412811370214029851707517951482587597911124 965568310250634747239455237731753671628371589053918280148789430554830834006055 211296012053569349383487645424083197592880419426900836222578142158925583813716 488436018027696987909439934330085232092507173504507761383021901981307113675708 274158500151341810907143327664875159934267391774903098431973618054588306325792 959087234329088392428295926074425131505405283270065505759167917984538054714599 041147825318668985692393583983615857812479268454316996743300110803434778298196 802693821377122279067747220192401957155048700260020456267330439141835990888923 714387066356916262792644324038423026584679302737423725888271525762660690069943 361351526086888316326753789490420263212597698815303061932999585128692300291627 825375031747203002079230252249525841375530696827961345211522336128865948945185 706985012522105939424906861282159589191721208659369504838270101645255943105287 167768224624663424202016388137069313276960998706446732945010751055677607839674 730928125813097010466312372420518790969851363009618158247779772014400160684078 367859771715509170191211704036078958418921674682741657135630387664429840950509 830622782981939795769654188391331515377533619783232469122235805774626538098345 510545684949042536410023595041225597070016940176771395142901729421446495018239 010033748538031552010223003915951999611386403941680039871252492573751285863506 024052548440372503944668783787362041409727168645087629752423694085840728582049 291721451811786643625316180948435507180605303311845634950803405083019362712069 409318853472912348035052560465313087742658440579981605039870040643619159678422 251125804464700498626918272500080400707548286421200325141743173266966018433979 000904296140883881901976338069435924822610620880427306565191451394656170555438 045439482156246890869558583000142900798043159031810666524200673377763819820964 216215990508668281740905181423280679444009274892398793351624033498398388082837 638432914536616036001791361418039168358678064498883311396135867055100251165679 053765781067449188862127398903279644400452592753597154027237153043786238444755 021556499470702076694296135578747595034475842494648077780710932347734015963038 299219951134644459664249807906129480322033024059550167690267241108110864691064 928555503474726380736435775677100888203041733044242115729574488691436043061442 582319418319857597852796381967434551390153394462151137650930562603892183018768 783593016372714717160546147452866982326932397071451184078324626044281554894661 947992076134506801502731296118066043554152278922078592082467381436882610492986 858798498311958385117169626098315778131130846278867935798971579572082449676031 892001833519618583095501814614667740296175133576731506835606608888105082368986 986620961167916934218093526901632791508859424182048579584176415401865497723925 807003529876994889013685937892420395537524685653652892581713241759411559181268 912303209534204123667921756608168309908853760241522509493454015168901620241339 108691436134362190839014678512637635196598578496274418788425171588904361777379 027077973615700850727826888194190760276211075369693024872222667165441227713989 123667928484043458887426859960482485255204962047675569720924786480058291122588 486508835470449419574744791513452810931322348129327865573818081178703417571315 398902297402678614513523491833678790048219417514213514135752928513445471532972 858343672546741442124010743312108469461183516691197430544846247104719454975807 672020663421435122958022065697057151242891655797108610815229027874277450130592 867852512724124411392930352466995231083289590227579302594590417071513071908157 909489178994181570114616498007748136954691070858792169243399611880605726738182 941621079838949746493444812394607123193662074382961216123041526656533846086740 585868081623985306879139300381652585135879407256052792311399642692388504344037 890929366481979336355658023590052247276290017455704143856611577690031348992945 007047315745171381679084764338741177227421944593536579857923954663899704735088 993848288180456876149862807424973640316420505028529825879084277317695973092925 250499889711995917857313032844504605585393263252204859990966562262782602228920 298085609750676244429631775444184587715505702470266953679343354218781208972800 353851947177938684234840514616852634246877704146604180969854643525036895850830 394658962205195370246193646217696523705264201341075429031085374752198296251529 537881681213095742953215111443860957389637759872465521125855978303623532681599 426005554686804506210489034662533833831444187176644404939241553679247253523741 014581389745580841137809620263612577274475509553413264977939541398396837137321 498114027777277780839944929588053687367665985669139868963113908404055998957165 395003717600106462147690048853601615364282043620033078382136367241287282622389 561264348401425842792989859501765819506432851956177380442032635570188795037520 350265998943489349972661438425299332506752654446446027121225688199803433542952 375478486522853894473243514728346560281983326785134377055357868924043327677190 201355247439507574337408106958548755060525623636493362723851253643881575490270 136312923540873620339376514281503576106467970469706616220817607882134673097241 654343888623360197346575815967136613911244527013889606356842778998321822893843 998995495041191766729889367781251221280233143885733654775331541463274237658070 902301061713967744284889317941552114947241102631004443493302406326870491355882 237786251452439752451620972691607196367069725626369601085234495043776156673773 705408730507985294777881865479183058036561083511553038110510361290335674700580 858030066463607029981735209568018692269756289299643850433319833218191205343088 310998726003640398317369429229583240307526298300622282523096662965264577329159 693925553994271815660059160835189856916239571991566928350421346433394721971191 133023914865995148215252289531948052630844838370827170139394209266983346971894 226147301726809882391738440712860623426592232148130937691463710843560494387150 086536943454557051966538449027350281234533726092244843827440475196847828848154 346429614098729066518860560225649968874119320718316857645173277050575046493842 033446089400495580560838206924802992583145853008994329445682698733365682218411 109187236098947457242435318014148152168363244480727902460455785674099168054640 498921232722773241800530093166517625982061873679011436907746777737098459260587 226110868426648538915577015385386422296181311297456213631259767992954036101882 605032348731993227538632068811313962253086520198438696884231466440880337352495 957024618355361854196968073635037178127874406267474846540763705036064490280859 592269195291839541705760112810682713356078934747917911651635330725709087929600 415627141828834003470302627906464752291776787779153583641489154869575892484653 504577793925703760796635738007403506072989936468981488568127784504663055693446 415155824469222521227173061007860281636332983862297196562274447309858998160973 899038936868068835685732771305157614313343138414978420735677722706948507842271 766138163929505221300615516079877257401575400983145378515051046158383516519294 002891813372239806857156068531812230233215911880399709703577059007571821286619 328106576005050178319901929799221908359527312976965013399477668305075922167060 312604692214352262556195131320619108318098119163724483838608689128703299581825 275672686414667859351085237515409043195639528013338237022779518706970587384488 518970603159442223551649872036250820871302356279368517554710245906545548312125 123144217025581070612664444130487997928280188911718576202699154228531224924961 526011391640634747157314193096509159537146307858522551880661708651930976061484 408551648325208582520416496526974136573309741657738220407748587450626330883696 029532485518587772232359575452886099710257061423287497680801953489769418502445 155999996566966916864557600465069382949925050454528679596282674709400594334485 608370017328848298720777260612882619102631873779613696632025180343550657659897 752590854462170681624032147027997833491666123238591199551012377521815917952988 216797080706096393343326795158684648444144980714530503442591292484946064847189 103631067500672262001447917524078461155174955615285592593616831421920987149220 195057820456593827194752865409887988201643815821035368595671674164948779269138 588779535108297989209283891952351956308563879980726554496233469034453661684166 917185256179402335389958068328650152146796866901612190405803950003217835867328 143755576495870739380227158985608934264856801988543025114635521522426035331620 463452817199351820107092078427790054027032824800899616916252862224027236152635 937365302148835436754636587129643925163309625763337578845807616321603958882505 143176160403877340356901661075423640014337338221331884168465452856532081381624 368595673805444760262054111190803691736717100765041402190631931255887228804290 614657630173587710739281471238552285271983510286241422937313064008045585144085 660143258375634568590143474293357244952987213530132284226604923314851268331885 253719417757703325635506585926734440012749249994700901453876854456754148318976 962640968430195980163979757893616393775077399392170906740662744226104635084708 463261458062483847077653472594523698332405582825953553683541870004789839771444 336672471054491862650948981110792185984544348758607385322395958422880588513511 263965118338612472277321178148671128027728590929374252981918954501781022382753 851295114237558545714722682927858963404456344626361779857132619884619983734910 525471896973403994090465114204350175535878583236766262509175450341403888043380 270051339360343731845435594284463441059584447789779922815240618154347182326673 939541735483836239493624986771791915689510226346479053535678120005641949299653 634557012449048047270284526375976087209489448113758346879723582228465880951373 780683830435275088962830638909588975387315028440355669556094584851460557579767 260758507636485840089790650893169081643491569946834968567146745881271028169343 887164717995873357629582120232171655311609724946232908914718565018647070071682 414943377569360374151973308138956870978540486075811182258119352248648672071162 780984494769763794579328118983404180346455057811876237689038768607272752769190 883916989501378475578981898015830988840460077097815827135482513894520280565456 845992649719121791523142504425527460501625855787418903831891699980785476344911 882013744112419511018987889863589827023948166728908307125110300649565811347576 864342138992264460401528941810110824535081788443553951488734746159611616056457 522280339305853392993850023098397188009638689073794297155202931318101847106948 254367350844419228649399247005182542548750675423074389280191619917094827692825 173681179101398563970819293898118115085688938399663891298149366643436702109853 876649118553720490156790864584963643509761257045352341183164089823446753222388 706671083454261034976792846308059211785136074009693165911802160110139952581348 502620231036734765921178184985021606695478294184773212131832901291060136851964 186185233559442452500810069301753091707146733273934904820928021751090936633203 607932455660579726843556676525060447923499955340438279588352540174204665809898 599114580682132100158248746816680143665406626038162278286227654954470141914686 286122340405340717716508935911799538211452983787032853905607913587327843368148 322286562203682988421481608435604439864866502564443079337210875469556959596805 259113306005904494969085662093506813750767910295562152787383169541662357210591 354117603271108068801973945157817092270323066819033698695898449845432965099942 607276151988898811932956663709251004853518943038353019080466387995481628577649 709626408005699691201917752214438214381153438723157093333684511761298869598225 159383502661466740676231348830677150022650305688738755554770491346262308776161 665668716433066548439469277770068234037922494441497402627415390305811631389951 717917833948173146721347740518445340132049341154567261569536632099578908339284 417105345311933925374853412886361174328792837077691491738123071186994883008505 118367687335606486541325816790909109953073634369312857240184797133255749392853 753701603623258277240080515504879759260114916786715793024795120135967173449040 391223508093098594291155034203065203582218476084686226194778772458160576087656 834961602893090948772917233959058461326771081196969323203047292007612403867980 995407021714344968041320208038448259398150516137795834997606944200509790965181 052558357565113897125083497141165798832297843872908739717000215058024386375326 843029902442760851996525398608398056892408825536322555336146337042178670872177 769106073978518677226968330770597278452329919369912183661520297632272035549098 071481859663239931640652489997406888298248521501308881675825496472612339882218 869366610517661532799307522854103322317189511743938391195941245910442903916684 613763404535484663883325459933528063410982111000564983112743405552939545530981 746995780278953580473262049596170276920231575052037602626420284081964637996959 165193740328668538403890631949855618700769017266352434627796434303361264381934 503945199986892846397552229983469583582897101709108893299637271627222170348617 936556134678928089572688277624720300663825863635508070857631157943087062804500 612111788715717405104550104545905123544128919416276445983724442299629928117187 985782777555784960449391389089829701276687646319623723699147671131312212921099 681660808018659706641231742780083607691224765322611902457573036497832472203323 673277381360601399446917859654541409608556872737635700558232697504488799045747 172172137034453210840999066987192381982205557734523964164296584810909326154228 006794603637029542176914588878045069389191579930185252868403091510882147351611 163440258069376150128301534157433928613681943653439854249943910846921397831139 776635637090761172788657476353439420155536833521030511299986573691225803814435 930331348310162102128130079256948244552702299393161640927203460629370494698556 816580200606180273022824955931335871851667998134378117709516899796611021904498 508598716045562131081731715768331168644568590371422569789502712784465201411378 992684911983983775924528645917127060882395881570542210391757490026915405909178 809502132786633120382735231721982807503251605284777620136122532923239671005811 712298360376508806167640473966705055193753740717466241583104097686191107046817 697461656549391462328429292843434496258783553523393014084168752811076037388739 651883988725025938779793311893090575749511879445995886271363406388614928485604 043340825693977124388702590255054834205725084490727574220595935918959490845063 025738007419187705272728206584698591086857997559300548453049145432676443276621 805764215118730060320818818331132330693294885402279954171548189054853347190690 709296881144382972287326687693599067300929652856966892404926398173825292198393 704649949359904974529545199003744765837246980758595156431993899746028829280699 810506839650399587111431536863105229446062445680636941453255757676392529304099 614489614822777837365522154958104661584071593383594888613070866795486282103200 847816211364472789320630591420357484433359423543354544344223326119135041556950 407341260712866688835668940668425172596775715786935120771814111147871956961005 229936775340939745475702749195961522237995845930645789033133606660737753954105 322979601338018400218510601692192493635733873554163151876670626477659765744362 643561016054928408333862398633183395240931497102602503921656967775726629331517 443614653298878277909235362168778414824492318278435319493040186619465783024921 233894564468634248834792126426771773317742555581804073544995186487328182947900 873186632221288359981794494254216962423343465113970265713679654019512718863610 320817888026236008510333460088778114884804054546645779563463629618017630824005 231340401507989767704684245774330818773981762465974967107975444040913427278863 401794433380451331037527199309669394898480322241799397254102996212771971591172 882947671795286820792306275769196074475146506946814028095798436188558030158074 100026602964542698628873983605546399264596752496291687211941348072702665131678 322189259032726977098598936046721413022724182205945731557244220399176215906297 251189869000246541581451295936508276345938949020878059489863243003822240571639 101959582847896024399023741818803747150116049007161844663318125613196920964189 163170630211800259199494991050818457739375291116096154711337977219903683244924 992024380849183519694129748531936680365028547303649918923124162413780572116671 618041211576919888941194821789498338515685005196834989955220263848383468262783 128957680594141855183106840863049427487251786951538737714599617357578590684159 751463686845854446552498288633265273559570334433238064551604669279503034679575 395518872260318742995875045494421653537653441930682491547328792258720642800251 582779891028171155949966117166349411099310818868231689194446879940705083841061 456158030167193511498777755897917213030615545525678883465746745577501712055628 105462236574077923744971894513404954454766898599818066983265678771560399797748 085065587406595493613003351528038455006198993949517796250679442516112687500247 843816993819075254277155352321490491253798028719224326394352018396301542062576 125721271597848876326727647562005427700217102244106442996803311276297108472408 977696829866456818452201043613572482107304093058177739138893975626174584423543 418406974841663932472085928328806412144681340809669585234592107765113781348420 909070915363409192151646302373184708349995837963523045539125196161801869965916 389852569514558081411865692229327389906487234733541483204328130129344162452970 442951412805323197545586147807179916973960413245726065531940175182066062330025 763526539612250660353647854431993346244136682753487768200893817418559218469676 615008069376955227734885105970864078459386496473577184713340057808479958137221 481324273158042366594522272637093202094773113332701035156983742265105583102490 052997847526064250021968539034144031987487305784948425982606944252056047461608 842806810981694559571009679869160447405681314616389584453312072478385189357372 865198466952595744342805125488244706303709696032919955739566791118342652436338 207615301310884534492214893870126591504917124630660404915892128020264132971355 932687204397155223911688993444678599767480606436159660041320168769743239349264 824300143718628583882784822122037711013473185031363060207286187992952878480587 195786007899049325059011052760542668740426130035050958029610389810221600849640 480206879690214614492390497233008088900254303865817842853083537220142639362150 678236648442710368556782598425108134593644146339787578176083108443860423129586 652518325926106610869227584449656708835319419690619052847292531888881662160253 968280088297607266707495354392822084955731814298526272377130056036567684286219 559091246969070060877571149967201207943889097735970737105022413224807161086580 746866351516458724924532156612357518702245321234024309408091122432122232546730 749237039677696431546556263430456942335572951436118543747994021679730532313918 531185238770608258162553101444375578319043702700510277592245545047328778479426 299982962680462997183573788795692551348941589556982728239315109794093328646692 896064712127015127200459174754129737625488236841015345445635335980083629146485 693513173449536085131478956833432370935784723895014466377012443605360058827126 548051420766321713400847512640320388160878623012664756303297336046297327956464 692016948553175010203323409322430577711882989920400364903933228430174509736599 827556492180498874613524235626955762944307068286635494584985255868816027194656 438537632426351614835746328965521950348764394217734082675576803853463891883532 889395716166020832519619558302661820225594872730936283248230226374847489307110 986517051598701270745777085764001376122614173688761574522591417042047979915611 190215980967567839316422544829634838615370682638652335267608439895095897928035 919464668168061891531958786512465221921126032980274814373632650532130082213218 771195014789324915223318215611499438262337450006007164629005105050956071955334 613430229266876769090767734447519198672305018594486318137497124853874156168146 784749496781221897506768977143181440006190683276944890690401216266653359310309 951167497931940670695817452794807946219076352950855320897991788446844864461460 496004517832023333846954650079569152451959026028665859908527459220094862649405 230433549660491061512432935737570099504458487677934962794438238079530829921666 566240035090694106868722230401131188880961145465855059621832350588105217535054 971398752297635446409747799435313653485310595170410652650284439251604396401280 397528868716989448301405082426450606002750527846049594798917669909945075969523 123867191888018720722735459049877020332966020970332662917793824788209097824568 405880758904559507891480957491019313758725265676993981607857221320646349007001 005669640981155587209664135338478582452065489622338924227794005003727801111594 508293424375798476146984483228088896066555735020664188464116407349289922652729 230587565360055025364842013407610125896149867209838101841255786161510307053896 713573044468232032044429536701425051445799918995177354563974039765637496583365 159384702326757823094396547692552289944681094853155454051607766598772666148814 271896932048494009252714514768018076226806940462784392580052423004157211202329 552729137091255554227261112440810886567567124476393144060213266099077244172268 223036238582069197261383923427807513777909434391663178411878126906661654980049 329358060977748221211169520583829136687801673327930857643534489654640423952493 045248531905210214473696156994661942403542237979607208138788351217844812204216 140788423284571142213447433087259398450047191809729055211775875178406988568760 490809466990927750339218222634378246799911088668535467028080862259878287575376 213091662728944195781537366492182537236718290469065666814483353813298724498469 266594263276722429621412909033337432784347535616461482941484020119906859313721 230971106069052394273890247717556475016493398244875486069671014595921885882929 753156197644696694396838547583039229740963289100519844236508155745418399748256 969720807406880216542286621775465760444588696345339422506212517581973976756411 810667466561502644546297381404932121205501701558090455216507553677637266605572 358501030249399966529773737634743362554357261629621182193905334178977433000456 837980423546137180861544251619107019451573805281129604825760321554941299840315 021085799528601704091970984664963676542865770264954085463306481238732947722247 464545908440928551974666333530859719339173035877037356679157399993054495590262 642193128499212330516110581813249126669272729085165968206865418745741689796166 243956112105043873027500840273285220779531215081477641002485985266226508220279 079188909020718555560097217595698695089082138756858667794273644783217001550067 031398240129479425239499327273770282613975916739550591903401237295218527877469 382173187855691348606046457973826559152015883227321421678351309868084291741817 827824110229517081733142419053924068325368422146376592295221783398876538306428 856659165236618617881570597243258265873816161040848963264427613171783599293919 657582252829647475804949733503963334360909360098635668396555012860719855822050 540418274328012683227266332000113727819963086393043301336753134655024875881682 281504011044654671900302875033212315533601110140924577096173702514822806050666 665375614664324650493389749404236646046904830748299015556112470261274871256561 378041005001642618448680248036928554091960833053761783464590688443696595842342 942935270890635465320494464059956498084033826314368974894422447273847407261756 893074649355929901409112848162754266039706839485851657678523354130858578489928 813984031567243879186358496245881102725017547840037543043533060802739790964326 920497271257789130488119013408161236174936524784250147042025153367347325936253 555551501625599878461448622526028481743882594716866021802812693555307595016919 891720674607386638746822815560605849298234573371238476173987861794641554758830 626799458413047041208611652341999411245206518792007883492869709506581564423671 035826139135854998148221867964549482382064601555796848468466106300582967527826 203421054688919463199515493081442991208098214340204650542769456041777469498804 362925993609965864075314012515649622428462253348512221506998807706712851480206 550650396613410315837811052602508181666599521676859588297337878097551967696456 859831324363936753342083180045574174793667153687331300672586726852310992781116 611920903251455830154316260591133483009187998599882869721704682204252349453889 402899598397144355996353311262367958630834376919998733432515611774464167492618 200622389462352401627312141431804961731679824426301713121078857081731648457463 437343849827670189738711680797988836269313098423273232403476741033754198050522 290981207750134722736754420291512984946083230615232308173777260950863130055149 461796570779840808499272429829045769812411466093126146217398005586637186407793 980496294601784235241229781595954906375985744882659496279296871906785431406344 045160660528001885982587412436484070530603301847688881354631296392801769395080 228861320318048895455326482881511944426544779255416998609379112930588446344688 816382919321724985890233299941861897574040236766824786484057674452309437895354 943222611166500944086540154065612549230510107435172653053439939520691626089531 014042174486896978439708932970632524910692645946634560593065735498039655280902 470853061552308056151579177960326972005301709275769199801547273630503907280851 020765909224725378465245069280794593757914213254254241070930165233888889714385 973293032446292827123628902478007671944564075928541661122779406655627364116316 038194490005478307692702647821421840307630265491517664456868228275715268733247 522719160840642496716835635495302946194686603813378832173243955741624886286117 262909674210766562650475700517644604413187036661664360446157710319059250403237 172351228926330978363737018221930977725650688727649394888389433163318346485781 107708777067356982577409746572632932405579593967091599141647550521641059620223 730521105777869184448391102427640981902984112188678545729089506184274432237228 456778988724284327094934515705955206216127744589922302722172281875676799715480 099971204457171040725127796511242842657185459398713775628801070319931588835368 971688905660363047380406244880420962581137972316981957618733373264951382511548 256857070889869892592881396484765767802276425636237442220323903744931114912611 751605818210940761941218941442808731959218757549458144594960140050818478040150 093667299435579963711426370640607386695664089948059922556616140015203101357634 588712182970308365199405348106727610022387117182118604449668873916330278137986 497468419123582419715085300066343266799759475358117524294657410019499061399488 143550039101039635178665472668946359260876335985019628446607714848637403115952 724538665114648591474259975059899823463331216008730783217488929742470558400583 312990432012635670296455512342767356748549367357896237186131008239185464119366 599401226599883525245944514765871216705997142595236078774423864985635319516503 149340513377877229261296617100812533396633533570420570519633664941024214061006 922237544242516860275633670644372749548682881747659056595083185370595564996338 352745914839646501502934248580580353990494159593687137781458336511286157976659 763673279363938462890363886470724064190540106342372575772462777790194922783066 853881405019843007329164954677708776645103021444019622723171149992693576163857 615955383631804408762871777950156836486681328475216152996130505231386043034488 834833224925132339242225405053522018527007503874762430037686779206382814066148 889657372224415101085943623840618119889257825567557572133417627129004555440495 511797942553549099246832282566954603585573875986940005864027704004388787136863 720408490704861416406090193886776585610718863665412023253859923142234317632022 991735142659600004385808572827016442767629066707882314387742910934175401980599 891672385400508707042557334674306490541619042313339475426547220828709012257988 918886488559706374328784847791424592344948869566644868468827005168494434518928 664805811503830781432409667359075978266438121713284059242993356982149228976813 673304160172809654852817532546081141471419231507141159873243989290333079589892 144012066147505438929313969022758085449936249551272422769271050014010169011251 382033424802570310369655589749875719408107395716452504977440630240545982911137 746128068759257695047821383729108490945016946342877714431149259233009607485695 313118083587158845534082049682401631114993473104477638494055053445884745526044 626142930378895865216785652695501333471258372053354908240767591206328921830312 185079441011859619220514333014594713148554570874145021160333649414139830071925 317207083174405373812461889100251795304940972878632918099408281875027993311016 428944990064276410918458989756777758423265461271601182928646292871782152411334 073769835878239119199252648518588955689427247799666231387858346900673539901965 568810465551425270306638002974044921495954470750960039839646662795438561271850 572628346904869335630169360267645967757659269945922186659407190397099679811964 652093364925181538156994721318041491279624337815765142442307177961035041452247 799183615584693835206651307669381963791467517000789176341200184573843004214069 471584447475783354219072167848668852192859740519717141873288637304470464803900 646585864331552977391454188205788700791508746888301351278236067859652055157460 950852413278211041038697903384260920909851754293951200095560676233444848904450 926434163809271396476123905176303180261183644783053765428816703621939436536456 181538581035816771970058650749145411168127230437338393326583962134109370513616 209407774274500401361186359951515738025779516922788980422852592508104731358258 444258505462439199239270441750993256510767422230079331020676680166769373054788 882275334434473755073429875371638090604461087949116057311546932186821297034600 434419308124309692225315238443098003810622407452472915691782201962511244587629 030698985190579680241743741049318256607051766694832121392710411856447128722250 804528809788562736496699223188998227480250461314674284134221121929974316668643 590481948899434898751471317540347312088057066521427654783603809917847871455963 344611327900747848636025942078826181214374169733274142136588956383494306156250 186692675004942028198365847450892664386802148420700997465787308143018268496668 692613162546167465961650924112933521630073195994058088549555009458805702346773 133689245959980266595812823711942135101306367807240223798070200969134301122485 191885885722968168814573979714565510835731647344221189859204515478754174835494 164816223485079207346371672504426961433026096207358085498303802756953720113099 310212493197096434369376306833814252566223523895511773455649659448923434162289 840583500095748916555436688961121187397685266159949433338697717908431269984404 041546296976958418651633411756912881733429624179853748362056045376427778663340 681356650478227625623444331540754167929272397403913428508507774178743945230923 341871696113696645775409132450435566863291110991053501935534453268032670869437 135075314054449868798440981060490637612864839980207759123804334015884644311502 843072076198393395204383176398606853774604298249197777471515836886219749856217 286026792775950895211693191402042069819226231961887877896340573699752535800132 921383260129985413531073960254195332516553015037633981643762604678462188410450 957949970221046598403955599465566145159278163567095077834310542564118637666076 750421907025759632090758624761798851614156748826764915735979610722488101929021 803922127120582742168903077583836847855192717512107745365125837258987816917502 595643019488078380152463748952783653722666424149083558249856767074986091978110 605470212740004290703077026290555218303056632989875223983096069191792830829705 908193947354376065120480530813295232333109008253629802788469582958024441618660 094587060740017377077401428686437847040737289260541053812435033355544727938986 771084445173360426825407069405597170212900344181857178951975495951887294433168 427493349435579558639759546209273950639596930189685785145394077117780599402967 844734756352838472606231108370032687418394854090120530146241834611764489713796 967322535123561240852924790775244266390855357404161728601946760801495188176247 797574563814345151271759176484660020204755296850381008537107905649741739561088 258149517740577689229546758260247677668162594490080930185220441858092273876575 517146269039097733383792524937710827023163668130626542601984061763846591511992 839569129561133669676775773508418910401973548799065518813896790350337527756435 120292963480448057339172809606719249769915769738080036091451090557272730617025 592470133291751011806684520442936173372182866554586660853353245983309545732778 178610998739453554092244025026335439663221877160054661450277174872839659637973 716613833216087894419328646883968047383933288123660415019297611109798381441134 959402499794574016442988189818053397521840449552340603228211674729707093391061 639113952615251043239818766661577618190765643903802136005086582400286060670339 710353651353522016313473599961308085098726867173409993340007055655293708293523 470789463752956692665137584995843022537429408369515122834586612253713516801766 625426995476489625273097449982000008590144589617348659934593895022107015680487 007123032345276678511830876133529843954825671120424366159274887013245227690093 981194150771546038070066054905786055326787383062459026502655424670762730284588 885065803446521716119220007159569407388547215906493873239358632842247815318067 965084047266589516452717988158008478930788286649414081575028540608200317093156 406440600461377450103891646866993469660258951719982403044181339345296374215493 450447667280815491154366278293942655621081794752891743376508194618136413641433 293538985303299928237519682864985809042761604360781017743386871545100655288482 996500185351352143812655603345362886286272438120366087191027771933014596014374 992885878227433683956355563786616045613636614144343426301224594926099689211712 096081814959162842413575083044918250591010692493554035362282721582608107275510 404550064233629488345868674662906255239143010897032740685648879443077796021190 967968064306491289370232895033803768797751708681977865497943746857144522579510 653158663741849065296871316558279023179060286380226110808129934422436050924315 810289072696840109376968017501481328433078709191158762067439012712679940392275 575570377148938530605120413155304643229755170674627695625293828619225710514110 420281825888075933029824609323496696370367899529099971556259191516069341914666 677824335052394107226018254781952852249190664835882360150648420095818243134466 352185074925461010513688489535108174102055468042065714616904196926566572115250 563483447884875555294186061464798267874867857258022218201225518867760608036962 977103791034615444216922431203835396460254424205273142014479977804988513175498 623959140343243397832761876154990337576763331735936159950725792614973035159817 969850736603835443272553912456780545825633701092431800691072332582570938143733 652249160291657004246202984069725644550933651293271856257136793017180246142455 718723802452641182653920838483920045494326519776836884022173236226521177438006 358270664642462201228471620530110783551352463186660158673564283978053815462764 166045745798272957344592269261181858059729014702095248832620736536816812379114 704928555744613117395524195092089512822958804186470108868569782990226272226960 002434633995500974518476044049072119320784827058809214031686503849663405004446 307741862363814603128962039612874649741964554442307683690068073691561037270522 371838528536507746430538125155075272905337059041117094119187091136806927563041 520384120303636854062668068536358783076702547365588565449741522573799786633065 828931032546032463471081794169956823115800789831660298774122459530951811347723 934970157179238805361908538810237713317462803522431612431053437458310690886967 034894951565928693453276589536521893995054200087997669839538998386198670225725 561789713018226677962121934171809282952685446295717688136153356279212814889174 729602760642213500774694810104407362359750448826514650364092307598967733504136 386269681931575078113240881744965206841229741664969940494735425814813217000427 111207511234024722707896464872981746672859714137159159397714263190262515578532 744535885276688196718724458200937542060017696331357031931269649402956130897329 958043953107746621471945012694538104727912091226699673653674592177231335591187 290011829808649601301437497318892658505743376250127030520861707777495959473888 160192533189434162466336000910262221001446014971676670287845694593987019382555 002410592273724632065030560084614437179914480802568127477917850566851026010004 935333144992571423565698759721255128464469703350554457486085279182162324219005 732346409932022186118672987039007969185586939443182377126135940981076406145141 759762325844476765635519872444331863688101567863388246363924540468064906881315 531066550670346467839281150147387974064783592439599557119022626256844799535547 571899915462792235928622629261923955446638197791698276372150519096191163840882 034404921051839397501044177222884415487989463685820522360405152565729893329758 140291210103586043748609526399305953177000125704721173425822380985865194040452 269028432870618284254713449811400592487575459152386390721059089527802213235374 826865790675352654276778617719030594112769874794603171080230234487841537814307 389036308236647088043745570306380921533875526238955113033800043772855300915051 381341143871412840869573751929473696950590935753588402630161972520728124470834 801629821028017027383864607035807681464428865310302900020640729964739211679980 347264854022534010264024415915824424239851719333056134719137552230999557480852 173850471806384456384721268470174779453690837564121133322917059165925084932893 459547551908333991430446040817896126114623356442743809518327373883692467188554 941748455656128330939217606710798463983535751700843941263557616005321341860456 401558034234902101125364499416150041976665956047193404539576608266951899219928 328393526017331725574960436587377871428825317744247462987004040775020062319969 898768364994225577226253389316433231914384161503133450015653062214527125320456 699924123129747706537161361778376936812354851894170785809068838034209083148334 192420071957580454036002809200071565377996275522555449563013825981447337892324 940534988124179824251161310851915426458819254702067800672647441214839382876136 796792375701282685459604834815857272909259448342138924729534607829306092556175 421565097036743826668913339874554122976930429834159417003108887608878034367748 607709712237044154264821034819046671679468247755806840083073006761691646769659 652800289328649414773931347442570594516079910047707538515838838247816228953491 675697085510696115035911182236694427029952663760507929760634544296065097231381 848572745042140260620402524192937407934166827101642779007218317011640350607808 382511813960334038432959839567751094221813113198269668013009268019330100257555 980133429157349070876421617886481297373986764966156676197152878281886489447692 457398325297311365894269892954091706541365043326912672520948701955139644776121 878063251121257939343842787129425426932067156566293385273736820490263092129680 266680566970024813897135722971661163336702856469339228322058557969002618570817 147148216872402347695997814704040267117485649795768193271580038025029145437389 150821013366048425055030163193771403490408275594957185329746417022102416413066 863566828207255760727603110313604155366356922597155233718457746415233337084800 175892557185635777131829278135954731839680899440430076116277276787535836481556 421724164276730321038512888075462873203470002409759301693639075624020920272432 002948952783517941446961177765869298607099948214305396022409526393980740748344 062602546921847595875294571234150059476987868126908563468867721423472391967694 340037369946842631831079667909085889566693065558147507438399995752538978806117 845267158969802998956981590170477140789448871485391845449626834232594075847856 888768235010230171721641846901602884050928647400387311413601877797279933864246 851642684322101253658884827505340805870967977413412935784042188026981623120612 925670380920851918842909813826484988889868960468911327120399967981401606333152 024014866048899567411239597560570537402688148745007893410993827889414507873816 304136076799834624279012245822676149364160091543283357209582501704172754166633 425456525703597262768582338638976617681754186231451775320154674345646439238820 080077982184968806477747850437290780698435934935942135855402552398548788375841 174664406321376707497727290409832641297160621614849596974696403078135026378029 291912631052954785106391806378802298618469909173868412439504635309574299444622 491871398290534506828424382061646075096192592955865723811137141204258241140053 714402782066299991186246266121553421854040891826517316724616465449853334150178 043791797230221567189529967174565454740361037876217534891689124168145665973549 255292069232467227360884432976339551266858525069851905730848325775116641199183 696323943527667881397938649296393564216991642397133898115423448198716993158355 788558786909835612722768470419853189811380795490912183058868104915029596636368 467363899589363442598604858551314541320073967652772067898708254369255466536559 936543362784121966031230503976541388248337808888976781308903920012913305330723 426159604387506594249747108958102692484970469248465984571553493563824830369994 104631474584780009207297662843902401190787388187496577001295688174913761989887 922873472445683352799758118529546673773000406608697189754024890919584759011431 221293484218561695622416015415108423513350573995557194094421099551691935110676 205713493506885405314839284784322860111647395294233343345508641634843900437625 844323828337469120917588252839417433633700233266195677441687159342480393272211 916163029417763274918559080677448267897801899300106413221311421566062370137145 849602590734472149772442775980381491739073479773939680974458093537872917101118 719768768877790499139836363310797200323899533646407645353258171833097152679201 823720479420434735511529309381455859778193392605138931954868207414873584195504 961169163231508693457288665048576343038587258774118003458298994295459424680734 798710279822921515961282144413348920251555428834437674900843769381482088400818 313816030469719399370894735981285349439336620427233898434294268664109829049137 345864854218183871476959504322402857987537785430170989119209124618241841301856 771324665992965766769261798732324935415422575296717686321592567147095841745699 452620657171058455423876728654391525587775523895691130074577378230744422493645 667723271474547087156111428974504620348393070580074515205136585888268980820856 530536705546124563933377442108190151497127111149347125733339158497727349387484 689267629688642716888309991792067011413097728281821653221489943071700052184609 728880650688830166082977642723866516364468945779531664894454140262286533239032 749908199982708721765597987710278171394946017483441936880405851122326209863430 164077252570299458215488322487366432218488528115619494983364166598251431855161 646044893618220052265976295603184341617835359740451325069601766768963378265065 356162150598641262557705482655778665492392030413446524986355619439145032520941 062475401488382581249973346112951084471057619946049248932203407255123937650633 059467540695593655578121047650751224980835692233717378650123791658935416929796 427559639910649119774414560898139850689301135146869154559486094263105757431011 778346437930945737407271826166908996496180705491228946276421559651530164826471 985447863472231791214082711540384262862073128106886733519434357169975748569929 597669984220074006843877447985034990173894067437305144345222034173319748101641 890098611020646519795421489252700651068426306406265624118806720722944159592105 784530871171550400676059162845679832544251168346335791948974503056686813851041 675488699686873002548608353766907230251981901394829801375095880057964584731469 541354436215541220965795435889851188937663661213125810821218601701068866601870 901319452815849492093391113349884140926976714084787093081352733210895805712187 851832405626752868457061102881382505948105665936051849103047084860909804554247 120682098419004674655311202574083944302466187108874548155433005462390344920832 724610835957359322492070782028439936230179700805302539740819588849491218727480 637606550383990754486970848049786725984737772821360946102549252206436696480137 892742781932808549919423558493223058130723323151578997606562067950522233264183 878689387774789667349581045722851680977405153591750351275726472246860071552204 754634405242174214786633459988509860035451448547425167063010489508094101012943 371898436314165342763462443096049271199337736397567168138657289968286560040178 767443632333227264709701548859295308011872300180506355498100362364814339663102 996874178326626515476049220004460394492241395479022095637920712660907164774396 910896195744006925405267736635526713090218488688455517077493124475721352365140 636507549618240196654642723955703888144219896553071584418594311103068069493947 776057940042108612268700866936835409300998929169330839654495627113721131185245 058773963935322288456887888684040900708930989474440724615175552851468818576880 324392158575624790829559497494404375588143665398585222899432688450251613548380 252334112060487428005495152656734436258708545124245432914886528954679776469442 963178304332930830283063355062850030521764992494571442897214248821924469085333 425028033797620649274488317994454309855005085961393862408772071745133345116442 404220703380999750347485691512268765773504222041752658368395301318438480931069 581399906265098263166297824086223264479179153887320455887370211409399822243740 400239537670682400953526992192855010717604665536221558197801094268526875964478 025176117051480258874259025934388258891171826110162563692975365173301145005723 559023589977808649814526003595832867671914777852030614397706149518178574679759 888440680744878062492262538218564592127798938990859636797817189366307849585181 591034861607952098457390233199044417052217257704610728300579250526458297641817 127271469973785487995224266178411281368956385124064256516462389419515481611583 820451593857744945615863531742102800827178269599330237722702014256652083163491 709316703094813287154819422213010157851818096482450610562115271168853715128729 648187176111220982242991313875708525768076428349711026619688770913098439675108 020264048737470793679272213746010810829340947233327707874592155328062333601829 023436833163506317299957596201011627787165976906376990584295254344846716684843 168462723505789436772625776020255523468170123389749100734904723634422707110404 557965029985971618954496221927014527880926387171555597468259834897015740944904 240556191668433522674968615674762870686385061311859042139991854821811354090137 305948311907779034514153869393126486886084871975901689421908875979380629290467 733343030047967590956609873075285257412816221521557865793230586654941617577969 923285772309645134294045546784832198437445402253706935759095720584064912215724 196395984451493393971574759428133570034267946686550799830410199204991432445561 632082041921037129529276237992640690303326708100595068218234301415380542397256 837554973524986578101580521247815283772426222590354401143527457349171387477719 632500835037198707915144887856524237967686395676342522947243766134959499027844 634761008462223274121246694850402507847675508022661650383991900348890091427677 452070817875036720595556607433912169360879258184528673735573007686103852417983 285558992849885208430011091999333432409532585514594817723070064543408342940612 862596939818697089181588809689678327801708883493531724722909688224160044603133 998134465615763941369915472319873839058793392574474097354531931383795800580010 685236930628536020274903760878817475554142019166835025317289656054362157658711 537107291334515714273842312704043559230105107789551660136781501107274479807013 802848539541831944255953344124440701374253988364169808038216117446445078590672 677529899631901887480926326229407056832094651935231699758038806936420062828740 993363857095856051355955116146243438466863773052116498021544021137088982203385 083579591531634262341152667145211968559019263111473084370085606208645070104373 911271625940407565832073719847692223231055150105974229225865884588273344338317 470784051550931126616466422194146420003174272579985185908403905110243331191576 229052873171103276281937590588454378971108201335618379881901264787495886421446 959446832888864806737179701677952872320912291882262976331506663321509226087627 735635903788173627705994821269743899814076332167716522130881828931202820058638 640081758253230967244890006958807660599840640597668730642624953471010630340626 137275390112133934837622843351885397447685330655275026274455601151598433560920 441580768061149087434900046345231617144440488738360946692463036377814224740195 249007390185018566641689008226832464810258225712050819348271480104927992365291 229335905758859717067290706109245860694460388019916982219341822937880509687017 530296362517946137707317073244115708601604006778693276639751219148408884627334 768165262911786448227609140073956359434939620239758578075022291951052267772340 140996798575495881010157618115674025198470148975859160699540967353310930274039 944227834385445066184990469217107173925090104932232196131804184349166888762117 155387031762864429123159959076891643204069272559247952803481975410797738774847 244465669338183073500688558330830006217156704743767253697899218897047784555557 874491968130949378996052466297050613743537875275073156665764633475582864993332 766549936245256151215311034046704437153132963054050319238459813514473610489377 273672721326106515657060504190482564946583116812707308948335705148860450853484 867205848437145149500673653891728243241791724085031704751438068097727570728488 495620197456945812261507454301086659865288248290495153361211896673589243255054 698846443496588718978063300036678610683034246582890720814473548413490608997901 592964239506992473651009762953406146946530883677588894992949192835401272042135 884999422995744318015300674100907376222187343316311506355914393528253533380076 995397220269907220663498237894068623425612769892282090266153581941955856765911 452498288804006868818102772617891226578168368396059131804544367747350133759681 735730902817147989927105476153773047132560675430791610600504244058455691149754 751127656110387054847881410110644439888636095674878946857427933790107646305522 640881043812419045917210958861597936484151464409955637432158037708408967577038 362830541842840706330996891285629339249878443667918423002354130552488906569606 619875601282596559537680167221729091902310207998773368330386746603618750545277 101569926106453935100099304657047845462021861798510941202858069597454050327653 939155705682586153329556569125547735788797058278322002985027295585402703141157 795969574006373633783497244442574398883826463905362668796237627740188160907957 686338824398518587078680376098188033641537246462809994562419556994378229606827 694778752476282379638275588183443412096174619025367375862949569282715556497742 543158157631760121185372836175293281416481911888038781439661535544109650774048 686267311744393315579599821165245780477034796049082397058026265365852934285906 018408829602242473067976539488157663472495164291352220047988290327146400370797 335435069102838694977832693690915239205399525030831835937583285519568284970367 560538167044901673209749081109597643945258552114830457870035128359297586259555 590759160195512020726006452955470312750496457416584242933792010782478779340281 678943186337303816520142992879255327132758135952312199790797897947465409252309 957654862942809713723647746521761090493177255321106816798831715488308572510275 217080396322739569024809687743790963694779172776753714260441133188160471374151 299942512937562242099980681226766804263008354662959462526960330259307566479780 587790166894875228728439793388906628292281756985617863609114053750155617224910 131965924940899989732962940593914397894265187070284266416219010514334772233109 333349475352682290887311224967175016900443992651119066634817682052274332808830 911287456508622759484439674757109320232134655745867873678084941752650851442497 961537527936409874736224635274257394757153268064697174463950322020168314877990 482732473593807682427087765467029058309790593253648487427458773229691136145938 274333688812940003080258161992911703012759728205938890737425121044189870756752 204773327943915056698700756386298237452659624360232003822063088771678115236610 552708036481294070432298935514982459171010854503275096546332913762694986422314 740568375266521651780255950409601866901261168091776286088759904811050115984739 414226791686304934792054294004686147180939124054921937739619977422177189743382 248538317458554037794538655720317599603811604411888349318896410257547056651238 971068622166768504794683773324190853619634646233020158451925490457491689279341 544564482379533788244370625122138244803502817630460701684192623897827429330547 638890901059526393993523795025186622714729196570871725534343825799507809690341 082868583818927782332659926908588543388209983953966413128545310951271325430625 700882835620037477026819056847842312016672211343295978058118188216370027082817 938718498677587866335054127768018182717783890040542084805738922096491724034550 747275706852832191711468899419220523468460528136018149019783711056958357451675 756607451935002483109083641781498383570119024674750133056657961234304414179207 352798609712741303364429215450681987972321036540089464107222575652357110835371 726377193900564289310998483053457307625869515863291562446424804150575744495553 904977164944901683129130574549883364335735624038361853482034648698008671487021 504412230214574543761956065678759074179038933978819042478672388656776522009033 065128298879190395438055179870204745482190143894723684253743714493859060641804 090718806400789818176332709385637086891894046259164137872911331413485869471408 647396937162793743146527312423165372974755224258789285399630801245630514960397 855615533983446113664596978898990906997042805688133074966830583900493016374027 149716162947952280734932494309678928823647483011287108007047462389105807059540 723403670461767610272000503521715187137016837762019142083860108384034232721217 506969746371660697031735075551334668645072331708035601791469149001926541286043 871985639829286579305066108096395626382848940117009195140493098729858819498554 262206736250760880819022778399978297991777247811436084300229345159016693543491 095478682436832209649586963933430276779418812569407450544900303647676090277793 196746714360798450888127846423192235657496825362872976602647855850879544158803 283250884026566264268461942677948585824203051093599066427438778008104059488946 433117684161153352002598709404822884325764949433720978564875243033542570237535 952714820589668293638721197143912170230832864089764909983452259611101899564750 841745787846034115234215638619812800179162666599311931174549581414376597303618 468383636428808012984388544403316482662275621814934140886433992862743861740029 716294754523287672616373689472347246766607917679786720419330204244722907464721 578591128125486540376521290183002357895176117029890826027624713199966701861064 044131453981787316214679404881276711981089386397982980766084217548825516973213 168924907212327876548341750533922541113893802094272044562848245219014784724710 188078432975507553338554047157443979532125071079176849748817922605547695341752 973529918179650916010260288819780763975475225326610946360256190304213063083568 641283589226815967246476615434845502347509810220800654980426421102176040156699 248283435076583623720050590626088018546061460277810314612425786159826344312811 250484344874540996582485729155302316142757974918124540285760561063054993414478 715927383079125596907746604287259943003022108993731326336443716959652594606506 600434821728070441530263728240527677877774751665421208314890621486031154834354 033951989774327091083946524468153463384000014211849544488804804426118902151920 722916299132329643587229090171747012061376584405713282466167439144112610407130 794938941480968513187039727944790676254239690738695523835130872559194217679401 322214170729697199281112815286304393005003470142243741306334335658420966434582 216148038938345776269584857082103832726269849899087491396910233145878937157151 564893392032599435250155554411902920672484526007894502255052928263488399260968 006054851910639079586178602292725549367234496543986998223638532954433963582810 057601061733677947750100039739473220991503385029247891219714707666536761092226 605307813037972575998448198127445292041373464408265280950542908040293716829380 687397692721773434378625240405853657228605437511845268751119551811892793228251 420395824084421814773292936371147234870676989437547194363645848754197257767440 436045473373906592320717446798988791563838154342018515750642328997199567828973 167646240533225343464826371801769230172527530452933302817181587278570962491803 696739334430085547907491506221919669272785231758121765264849730429057459104499 858125747944544598262698486620333624040658133936014142685853512912046297554147 224388337314479135783846269071123246330456626996747212650201491933721222791464 129773017511364185868895849844147003142053147137614684905593215457522802187654 370305468755376836594514929445156495703624015643858407434921042514391047014722 897831691800927242801928818099097211036030870197997989190555844418390598839925 205680199763820934659448625938384790718140430241622370729268036361692815775316 688303796875812747277686874360438190377343337854696806413885950599265332532622 151557027457551712849064209695358038550903334455718655909713836742079136695164 678250714489783106956654585086708120016502716056740514619376783790396004526125 980922789266431448400513715205130278653258483232376940220575478956173851468671 264852844112687628738217623252754348463013483914416310180151484634517214244219 113749116695867490591548558275135714386683093836764161218214466173810568268553 213092543139574476527217639285724226698306090381117418312510118972806656212328 971241548435125266059161960921840987416418547592195233609072347807261142968286 403506554480916830071306346943779066952249749202928890217153592836149264418486 784314238663677494818179124830538064016157347141612632459909902003534281249070 178412934552595655880190277044303165829446706230202112266324678632929638206782 810280573411755503616670430127046373667903720074455596113292462848592934307982 908529883700819000842120338859265885512522110429419220608654790805502340467361 131799259644705432355070133114723179525997664102357675079153829077985390280135 970319007062743917984134891999326881335247115366349033246069933650940990596575 729203989291580741130269430356425909378908211832210978672886167403116362374923 059912520265725819188196985857487033813000984586730176256451503143120872512121 540352841774733664488154548100501380795478047762929984798285787406527030860729 541710750808494549485724964914930891736278226327274051210784700008534225159332 853700808730825795465920599097734529588892599156988585883917296997835195742322 096193729860391714138228061625850323936029055221192086952332382391511552655295 662228643132268564814060035136525392928878382205910916832453459742614438518934 877492251223891394658143419137462358449249469994163094568531905686378551353844 525054850533775661284745034116123419780990134155750660682634637460114571217749 808456415095562080417355094464726528974565727674219963337407938919314635387292 674866525531812050813155317824361696515181268072912971041976785384926401918715 762894087113698842490475191052074483653510043455768263134924432191584408296864 716179072651638064193833143199026985495562665435596607895320377708495924811146 553209447836953008950725951094879011305974111678656230572509087629308178848108 123720813051847253555272146301482252996836370639345990764973619897007592149632 907106451973230623537280458446873505807372541703333101106785863378004998780401 622367703895881824084449430359529662377541159559706635658228470931831205819453 373218960235648306619749427093686576512148828731791977912343342276818267360047 712954300065708607375655616762302720955104540902889146323433695774064992356848 025998414134810021693439053841850038005362892093355158310937613740940828311090 071928199646100233290040323310658180242662137846406653936952940546975473439730 434328290482129356847795546408128018918222249744976977048740791293496148521909 689593143436716611440545204108546936819817695452900874378212984527551029478975 068537897328148303341224699778068596967993703065303819398150522056123742383109 944018654360890358242123021692777972222726915370928326877837990850242843046879 487978982804464715371589895627153597077735288155433701630864372189951632841057 922383657952214142511340635616798554628784813622567381601443610981781144942890 530885355242562553369215393570740274168636653146113924063166031232267273424077 138225809974086522747322626514046294990407663787995839398725083351467848592773 449783260371028203508083486617701664212665887655150115452666655789693045456062 648226559214999349757724089709815813849898381453053897275042001688438814822106 812586600442703403929786376156665973256905177748237917239693533683883084826206 514945968153536636668339965186023883846342423395666385673881588441840712518906 755144126847184931987698217344951543299674179731163930253041808893466450125354 515889771986052295585924401421755701269402704807469462027506991768039738004333 299513436355072381779981016293069749685731638791406872166955627699543904956153 008362896153569385583783800350387773021240322461184741802808501817963782729706 563517379177432080052364392250284479082975666744485803333844763533606569506131 667938152282867960207375010415840117282088240331700080197483615348813786411259 288102024013140607357221196664769857995969789685867882533058106348183710541954 670593583725161441996800316249108983053436834326139617117560762256125862911707 677869132997703443437054487514387903640245560335202057700845240131119182652241 496901833560538531175821572346236527088122590715762718455001018555462903020091 982583143884080790117384192210337941191731801332000020317306442918907190122598 356702587609632478886752951825249702389270498332852872112889100687401505363362 341380368600508711370499721973281171324165645192995562707704307299534893837306 654476511711915244654122450309055103667494904898760765838384477248088131969496 809318034454175151365075261271747341154828495087153070912776520187889043207434 273499825084383915859866473361356118403923172235133579690573057808737414408658 192725505060374168641605609779825942444188557763712137443698931245731406286998 117795937355161470065867606365387545938647303371518904160735676463906808262169 205392042823646611569506059041303489303939805312483865466652753653532839538038 077257464894526303673001705469321595404343021446233930287284965902285658532212 395148134187777377236922706702808402200118316508916187346570137116356447534291 044714366130514879159354253659790705612980286722167653551202996633495041859067 244429328491919800929889418173542672577865245876250393344149701547262464995248 695089088461832055934038247496156386332632579117513518731315790040844308937112 280109616769077507582890083201210718723275313562652892923361383117127951871604 224972692248221280130046544671647063629765683993795491380142196941199419486932 787121295119981567331790189560536897260350425443278236959080776539940475075672 374678458574950752094941485476905357795742818996517670197340949197807501144454 572715052194947225346931525982312375911187033738389841528678983521203565393773 145955435262100538981654881169652245865315064239415786139545573125294975645339 878004496410515819914782320925875856154583300069089890184971831518959725933654 398841107421677824106051453314439447669696867194622747274026771709397286796677 847964731240978800281435778997438157313706286788013271254271070067293279481793 676222615945335235051148181529669840523788399902392798265457540486189117957795 852846011691833895065360027106987354163029844640205801366784979100109544374822 285181815797693755747653466737770291185627626590073503371821774311548489612616 174618944457793148139994447407680669523498774290370492380874822420413126230136 382039888787324858650438501591103187022031228721315721247349642931501680461286 441304551739721739870312975493205825538249591557606442209187772047569384781795 159944692261549869265667792107760407601102053955946025804806078397689009932176 651488555192168510790099381589719622772476268807769136317261030144598894558654 839633735208545164440112539566687689895432907248966325772692833389851116826763 042473687421347891822568585197632877244377223943184809149601030386208068952582 564086505382606764873073898475566052452799136367873930387094776628996825621869 013699649878420012934536435670280746406000750587775818389001214892501183820165 664085829624227408384724378269809692246188784373175806251369497523222283573254 334814445506106691364276407177013488802468571390926058083790364334511264652084 702927520733807096610693747817632133385786887691688410556968550961624785536174 409808461600567171597039316162634672994438528462213751913088741497065178788127 342160356884694734565315371432274360291836711536807628430929331912805926543474 259401961598585106732161170840882920048291474582503690700500228765941650332024 184084645170505291067394339024937084458925540031950729026411037814422242663001 229364041908400933797287471459306900730077261364264796489517414376983976343639 921911906282845204713639400879384236719689233660478145939098844693846849559735 397652606209106946118053279892173090566774804825470528190763552596796249031178 438638220721386818108571637750190076391470788326077067048716668676089222425313 511233649173981425717134980082418023447597214297937546678053077009023023694179 193753192977922313664285483633758440836779835656852532868083399624119891470951 547323670259902636626733933607764499015223540188587254211730668173320254348628 784005709099517026714096527284474938283796439664049387124921379036575695809027 970602203736782375983198072023989885905400712153414417849515061476276135919747 233328479776552496668999510846052592807278175922253872808488537083614018088763 558025461113777602501862107876324758985352770461283307525947575784787524883816 585551111524141582918998187952164690178079694200303507942969502861945287972216 102038956715124832616032682492281479324517759372750934032062432801166538765532 378475621328059234263475012268568512602319570634660260579675345839782314593219 127985960455622295891543376771793655026109318329781557352939898385768741159242 630148034864262775854766902610977250723822252284606573473992884049778786036192 760336856031933526036343274542913348677998134543765959945487311832414557914467 579670400951440500712253127536691622802222469127051784112197314322750437767381 856558039358076163690799595070929974721787952840885297269623001939062414610088 282595073739299065857930075287717391359840696979882845734392199309476804845677 125671856379035314225127333934735765627871268299068220018352265429715331199537 932564878408698770328763012877906277958605967526138623209736582930271477905638 657637126461948382310303413616178778068684161261687391523066993842760996338104 718686352939943449266550518875233323920322486825822247306952358605335522016714 647949978707151892928080231429900997035026009971682035229979504249750249100555 526128184629885691532200296796722179314703351234322624994991998082537540924941 103084204885633804722418557382973398057693917394435829820501475225826758781531 328533903071768972065061165559612992229951730032716264682768313202303483698485 463457542726271659768906877101054067115848281409710323104536268542267502494636 313917603293914533428076575608470391281209635010464751479093780880623490358573 987164961311519316441627432992310048400997345131548874746023534315702755986546 419930381983240102827121529443936841926633067763688019326992176786492974632598 716276216828502567138817575328497854418867552617077734583985690495894900415839 281791593289692256349942554701158522788491132591607826251393809235600121156983 127464946739457576355167698805241813711268475870101198137048084278165828921250 078787356909729352098951557615700981391818251819951390103388323869975235405302 369853399029272102084889480569672672729560978956768959094243024182604148749362 268526109460674531227057529514925496269809715309197936524978312609520870650627 498410248405174622026077918272690622395286210825393577009174792629109073059929 567594701403201917781315594457466124493197582738514533997513977873360061341755 094297084853080022903049659741734648106305770876563018772713203213533870625050 479732106523902137709191565549769900122942197969061870767370304986686342001352 716554161718577078481305580713731141342746630928889950585105933116878012073863 374166904510430903735257356373378136977442814954459335151024505598333566888136 108009406782053966630027898317108399815236545861422801996639061655490678234506 915462901065425413351240298188165616551257566329392941384531741251762074505466 384536936828762122606512561687284072048247568938707175736801265879156921976180 045998588614503623839969964652432137623351748822394327616900339793201596131599 602563866687687890578723260593882444444301511921552449648448025874234655118633 979717577390402661979690507670865046220309545885903925670909742546440363461612 508604252822373751526942647762163756840910875232918221432075196469079361455464 281237034149145084920376783563747448927711796266349861652962141590845722985558 453776811103991362534810573682097047671770321697593957709192418346698957009716 832220596779074717041328784736107828068092416513667409358328880215771628687577 966039890285350485310527116392056530517079490823498977798463694118977544368139 638246438587732908989659821848740343723530555567306099652058531968697311959599 747209804401041551469077985506952433445006202278077946195134999938631726524295 735308871715696097904321538003147733582196881695801410730694269044355073369877 686860888873703711387390847700298318814940768095248999615001948790186372375925 342504016832166599604482528253554788281641366400434636336817634684695882220054 515765260456683081463890691583933395275215207407963035239495412122882161873790 827172455908336841624589378676327548347445789974321136121736715102318987135693 384593653871269764197811447613089775661543207032361109598384908593135781130415 137438568905507606735449727683662365179279730005020449772316214660555517249980 596068181627706234593414084764702080718339621260475109620754018475451748071342 330078861892308047806652757788928593070798900229275146493491251596000165736413 326270863691772093120569999635506986315340489821162872835491763576525823886037 528372925474704521698776031882727733484743573242192121553664846429455762801463 241629757527749768038269098910661065608700293915136253403119554904198245696801 852851919624264856021525243837546524918275867033904710351891142551476728848795 962784504199402517137247966838704242408657921563255870821025725681100390187133 637469458297789599668717984970384525486609314614429707094528470800758229206700 145388336961057605771633332311196812816800423531043217512030872128378660103725 549929095292847857226189374810827650742256570471549169693844847079871839711475 282130880099590242278166231282828932093604247913205360250977715372289424940921 170674193805361518752341684829987063033948898490343451708767384175387871697372 078393291614427903714325681587094426757751899211041999759362883294191735520490 782631513679705101664597680855302043099874182725227634352405599503591166672598 771672928887394394040881546675826628352806052593206145856566337531186471344865 391834943720571081702350229807536165859929430263739818169917523787022634418658 833144338225609316560455527192761709003509686579294870754937941869689526700441 887518625841478976202070288114873005119397881078092832755630373260608413635509 067109702366077091124450830172555155648105669312586320301295079685156696311020 133460134296814402422559237207752051484018266682691990532509699818490923513836 143991493196025051458080357393288593917360674058729554419896959462666912981998 507027970275870245559699784069096070272673404669979037159604482140967551159532 841890050495680221424779438861165963120566768400033690727545801958334164627493 341485772861341203267056893625237360596595708898555769212495972484703146241945 001501105395767435317891172883261204065169994870925003262650680720663175681944 403865708534660836799511850638713638437262137036202454810229784655337454901407 758408806064147208824320027283520842323030168211885288229354136923877105460091 446716099335995610207669272169351967498049068577091691007821907961789271479824 057917379225385344391228835479422198699353325844518545484214445813803486248547 587960119914943569828939678491257863501791478185621006137115202827087033733305 783650200699061221656004252132817121584065462650980297657064087654701947628569 300489975597622431910148233153552403173678386784293279719164061243349046081513 252041347584295573621035301976782695580009817440853487901335844695282345282990 832956175621050248482047146317880938159183968690372395074837594538466518808555 149294637954377317330257166758404769205920705115887567207605463124413138505225 375213730844244659865629195977244877065106001615685339471763817692907654881764 517544958045186983549430539314899309963918120574579368327222757065982853563779 318915808404471050055694948883994120243081179474750481283324256758215343998878 896374154653826894426408857182158477405064642412904809530531663422480558012858 509771344676751183599023375243200936992370098208929806226595692353063999885959 820742167100084044183812441960562480931706550307493748432940282251311143203606 373322332725565531500075016022542139247588048722003863337939449499384121606045 605981564463252961261111091610227938545478862884703843326941866853615444061773 920436135837304028661587974297177180506752880181157458163177327979856729546227 290842574053639255055127972085242541918656810500088360562790813449992879809248 467629184071864121555651001196701820887606285539066661455677747002578971827245 472089772648309781995321461941757058930502972217038851972450900564357147289654 030905228793924031475534679939819164919068377846310686913791566462563882629033 208395784903968155620159996955420443781363848814296901871415187260911624468506 443921990403161990429901462578782662924400688400993569841914522915931602878633 068340650939620771337406881919562023565516762441684136373568910941047285381203 087312596205518680007776108298932029933690258700704820320055493481728142791619 990463618413651978865792656572963642018954477333048075777633078855055335641811 561089768444309226691731888887729113647378108751606462191260779497100727925911 627376844012611503801844369920678246777194957218237206471187257063698129685631 172770317509863751955701184750020666170615611738948030635943335204294119065060 018545758749589750174685566144847829515692040927826274335083764251382590010001 744703291653658731320331138529372201395699135488268238838752240388885562778213 215160393055006667206986611379627104269688171537022766664162337914418695278740 084887967188998961329487097851312712436807669074981195084538248149004411457693 931341210230291414261278074863664083868199146188714182738217410928100271120352 840260319288565752643023375291680249847455846916971534278941558000913032070941 553095793692654582914295347287845199353191564162697458125234841091830201535286 512223563028389636393862341720793796265153745122697696198636287350864309875089 923730064524161489616998177962560752955189585425753730492501936161503977581573 211143636392094892848881418021135072250869902734344936091583842086917312048153 895883176087681803007598679083868294942604740167367547409505267305841474620555 750479350222435231798051599800295857465410776810281561266390868833936302139401 949244334785117383891297646674147755302966962460906443798941312712454313437341 666882587982059163292255637412171354473009520447872798761732178185515067241433 142886232169271636600382152721897180722863266181578418381247435245025837737596 128776250036520903890790425238372727183025952976171277180313400242097661801490 811162163617539854985206532059317303929835858783007898571941746287421889629455 468095465864007439861696348593956401330923120276434953830002153474674935258946 710892689348874179403363727367879175051266307641656717095671716713767106151066 867906884651969890215407588110080361271030170573010128397100136764757768141699 898918167155244714255070467811045481202598674893635306075524625300879223239372 162268251747625287100082702591310727508619299630974278493015894540524103152558 749827504929510084178045047186050234266197690875570202470714178262471346650091 538629400568698149144339472611389375625048807663823793637285943559951491469664 809081300523647544466222825925963751714846572569696874640331295807680348726549 122072795054868928745522440889134810755181240339311932440810516046817706096503 816958995704283431305521334915338671226391996783282789076631948303175969515800 877768078003493336009906821959543765903034863924762854457644976831974366589845 189333616870528511989592141257541835614272883607812111409863098650160872736022 259549004203426411682202959248798011529017147403405284044649088878438753766213 947545548573660442357693908583936436001740161263919385915517276644647104212646 735849341503777941471709205606597934731145972587886891397167572804473631582914 759083471465262343656204535219159816380645898040864471357739010977853603152767 481504891239200188665605215105503292293204334633756918942392549237501101935715 955572178481699065707781691739818076867807365041889595002715190064148865558529 502053898731068649785669978560611951891841782553442327933318923864070690862146 888123963839754371388261815703106659441327002807592959474124365280048199681332 040073199001016329116849779734604707285407361442399722368362621262099302428950 383895010421091675640076854089136269830753428406938565454497171297147646194329 378608896238542450751560329888438171472122053218115448269243273314868380053303 321920416844241372328229307603367872800068717541162915863322743354824568790794 227873884276601153170858936478094602393696911271763999412309222126340992606979 565976144484945184433210268357989291440017572322230521494097047792308217648939 818926341683232236286972299622655348681323536711104132383663775058849261233003 753013180186653642239340160658541803687698948823541166328128403403962205419660 952140230129085103130300378962647098288390014291928675907414515041575005282205 956238774135314702910403681985581329697711422090008729011667594948210627359305 700474455231855838625495707459987422262094095232653041486654404643922890954364 823666254918196755268195238759574121067868353843235901138178955374554182088912 385318756071581980370746793982957592752084662283420464003177303888250989627858 956502777306787842302163035485406710391404434819644135588679182428712625291207 794614910272156409014557796387156212702183628203782905238408097843611350447418 008412317077932506116343533758345613079201720918556588989451678639757135870220 259813161119577284045212399617190323193487413082779325438873459924623342980162 168737121492232477425769599168978960671938014475767936420561871707627175729132 850606997475494468319799468809123795431227308747879954962063870402665321187488 724378307583083516228467693768452831244317438865436775483887698441986772197631 360088640470717790181577953386330448070080428587098678918163286725689394615990 689356674290064207727727818992306987151514910630667961781868737501593921353780 203837581694984484518071187567768595516324817366847260790127118326425906768803 242674927039450221507728636740774545643408130498302377127980972496006702657586 372062091406814882761683573597339935948958090055696631454885284431452103446070 070085553907667222938776382367748165934320963778962886699998980946350738094146 744724114545483460027001489309255851117143339168324899859551803326487885382454 259757184871760075167780595342075308925903779719673308375629323669126376737898 849462746473852772181118606216486341762359198705386710577189864414537258758387 137085707431744332778387829986409967989209391676650546241715365949577629415955 432643243879426234868558208960739809026278270982465584823851406000529841883336 579538149722235030466696886460692046535223870936939925078410056661835369831643 606888345579586366507185384453355228801044858610880285925288029720917449177280 503999818072755477258257196443804494947062551337810582206260449473723070607170 778353528115870121425987343546244915570110870199193035523194485265464406091636 651974312898586159359301048189839711818151936389161035704781742454222754840875 297931140335901678903402082528448705155478263865440633617313685404428736839336 614875408004352849084202454811387125992672843388709783483686072323674133712920 698576814103778449339685428443137978609397247283922652116072417043985927081233 069594350773912135123576243806414533296339659071869261004573596596359808385071 894483036207211915970787494661042799877421177386857502002512245201141333340692 393899626166300839355219663675797963082299733474820004804261180493414842993535 025107090980408018449581284032987297227615540818082660711221328620885167307060 500404991542218919207350631438831212594800746435952250962423271603173982171141 627667056399221056328046392855169531533957739645400224740491492243614598618234 529577418092337308769155884568464388029911199176794497461281886905008584976249 327182891833448457771748312993597456835145447655140937364169265848746025813248 486276159794103457304000765476295294627996898471594482926936329086664966613136 569608272023481728553393162217685535787780861123078554744850637042130797330837 962262442196359698515077568804854780711139902670618365905977214914911246871034 859030449526448460054689231231228255172160897873434767093908388434617966991320 603629936993507592590240410110629721306451796309320059628037312449492375796280 120266284916143744167481485020384417719474849836940091248337181490161783787919 656979942239956373675199922850404953636369446554582348838489999928620254304078 197736273763203113454050592654095961454169196273779895120991610106183156621889 222868106960537048695751484758144054432519249870329385869756873275916493884307 358117577925038117636886709035565424692903834630801864953343251190084697095298 943997170358941148937973226566312048503654620173744383549047481273621204290671 482194122307258955122333984526411799066663669129670264364777265346863342172866 533026803015052108108883236235022819626347505379679818251895344816845655311006 200371846919342196669839588807233575961884145054393130315593937326958731834672 463762329620517713137448710235945472402209497921941552080877184565433919678978 818872914232584004871134550608658850148698380223744058051958063758584520706793 366527660417490481519630325228238019760061948241311034352533072756782323768890 645813424315363361864605517165583886564400738271467135590622405619439510192933 948286617767814847712912286921097364516091008801875921743832032861089117885490 711608799555488583094742835146484846801980131204008131640710887784687772669892 998452898975244524809703748721667649619133248778742573092637738429797026048242 442437110016311203119531656071717057930462292253243464566599938549205720360475 581597930692901591175492772449728663575226746905636869490979519115157355742120 834128052090920422587078840260488119803171537361520338748915051796102907814380 921439480305476257906501714009593755125497682782697610627558571722319625635332 312358544158250925718296101422119928738078031826791758106869420399877738873342 743772924075045546453917732147164076008861341485179285059972067782888562653257 957516460771653451156813519959373849827584924258065066888788082785160538342973 608343760260252955395355922798666894167590954097472974443177000752702284644445 218422390617211839546419671893850361261630543028408821784053319099210438081882 797290013474004190552420874788081337595395989031876988792220548724217847231153 351847030039351006131683207822720214348375455415533158004272456783848444858002 203678713172563676692186411506623789239861683433441835593891182271586887560804 724504637686340964602965267543034130217119883879560587791923131518007225578448 672356587800949819397062221126147057040687901388542934499013458529440297404620 513630581687689087463668405283824016586989022621389776690650865382886035832021 878485439764605790831616221784550868305531035957917772056878641616082402177507 621225023477929041576513047612967611724841225876622613989147791266160177099981 337598216085587648753587069260770224733013292607094017164140555497442638331683 239846495994720110187914425868597209774850317074004646790788438489867562731448 546246650295314092615438535107456600929755985241644892931941533888491021302077 051902021957278912777571385227449934947352306116548981060222731534752494337234 519056891058707622802308739129155351745641590692406530649318165840197550370919 493369570660723090876653442823618235479781147747224709599172187497015524824428 609758113578199631129863988706193650203277235632388028149333506166917308581154 243421841836446755307847121210563863098137891918734766388472094593311505908996 898689711333842864350210685282224460359430392425768999265945750505123729090015 868775971356250605969884883726143123052105844927747794339697642039586592192502 109785004011536102174230937444150009958709115057291158586821714882349620378902 973520528131137866170905358394728611222433521691793928547947964680915079649636 177595137101697153221095961166351419611559985868173439917415774531309581170982 636337903092601814976755622303919082033044256415689304511343466586770745767329 127612902320504655367424908657083637290671747138573807156878239822687510995299 494064355330793468761899028308010598152146019794602206722474385559342389480827 611593111671337305445038731580109550046825741373564681247993859369741067638312 570228472893181853495505601173273785187990836537879319760092443142855318865988 839911525229905516611758468773376701367234949210764353697975751739514164187233 524085024955450913407016222265607682027110061531133911397349402807769603622438 865481811143913248057287520672277773414914371594360187806179534010483406633583 789057702929656253859694268141435842195749305787972585035998401283185555903281 853349251930708702858105653121506277587158054594766625551548160772560460505403 160023341741267015599562569313763479457361052591829946231813570868440740230780 600568851845886569795203514565035004723738704324309417259004620895606096334885 114757847579130944455395183295794629244940728766201475381260949121119967591959 716087687023895546434263595594733706120362951970553330640359777662707386617839 737982021710503700900045164721170388654891162044086011861352184713690045087866 943612471569464324814790864088405708510666821423763499225986852674904329117659 711224871170843468197066253039845460373521190033254517405182457515783854718531 933609283958972862433600748244452494197194032828838620040163601804859063224515 845567501231246240474415280274448744544511560896009737615378476105820290072407 699644536134802798073724922625864061191419196194159918366145897521975377784462 044858096474557902162180750946044962140339782108477763910441221835925840961033 349235964270867763965106184467050293823495351256715630877287468465595596255522 762542911533252047280371051235100749495754767295762388987159119278075400192188 537766903435853756799831905840560934451028818962600181475574629599418612199841 717417319276000935621114063583888795732099722947260784123924548466475179763401 562413577337081293098410355949067655302731922272789317474387643729440596595799 403956314999081519006071903303583793812054479328392555104728021849369704286102 319752171715698500819355185370075348895818805078237741845190835944139283226327 873035856592696569920929125913807217556805682049762644910341326380327243945982 862836740552765023654705683139480289631921563434643861940782521909209974548689 765870209296379248006795810259725047008681673035319456815814060758644886557977 088948699025347292947194114648045187277546568381278950225539133141384221354357 706797894056126455076516042152633642373576680626164288682271363339904343528464 533279160585744370251432427084257938506466354698353422231651843399779187920988 069598646763251194067192259519733506244401980431263620014326445762622594276695 621945493469487640045789843238687839501331913792212420370058345154449998037008 756635869418722793610222071882042844736872761575132640240676066845034284672823 887459138610244151255939166007784945040557213745705612352084157239011071126009 747554169043637620514320994447058293199343357604097550508697360011774259450624 940270840938403612923476152373983268340276274808682120747993732301198008225505 092502897338771548602052201863344871694681675246087141610993929128995719823135 606252079925569449786415861652514666386011811175440265988051437201603965831322 446884053653051192584169751198518549311681386075292030750749896148242787754721 430715423811226004169283895102931963327689691560931960436110466663362131887746 378509336092182644815330865578429969219899710240697556591011110781235974679817 503654998483307718498176823337921180351057148594566516095555219845385337201547 267585813999641736775550196404743488017349598134144619980630383797178540689268 208496870048937908923141283317617070367831374176716150420275873622061978518322 215092381302974026599375430370669356500858028442646092395820587320752401489354 868370204731357294659074992635046251469101083960357439242280533542371291563364 394620346449257119191186741695786816648897556310964580476377877452631495834403 582462464829497922232432006969633034234528996702400508295443522220698311353604 758903919683620786349210852393230674427704471478680918236301239090682791535729 665374115279509865172806873982415408483975029190556762842982353047565184171887 125000253477162761730417254379924142541518106366480415630496070539032921685820 813898585436612782815025239707243533408890885805156032503389700936062594943176 311870608468577015652474708578862965616747564707156396782649365276120542571298 564685519256374599272439444192921824411654651904938107533936227225032966747881 946424030632038250373427098183079180164783253067451857664903415536751295057938 845404326207453748623013288403726088448433200784568602740203738755379674184710 694799331243362254269336374883840395736729367193641268033419844039824486390777 129565195895946045249246450826890030571424994263197330940871712888766170073772 898254921880606754209438043233662994636293852084521299105364624442736582451558 267443240779229653784229691257488695205667794875233755783153208440730825148246 911835569477958169123073712743159868167154599531775889166421417715314043008219 583058223551161299942754790697700880598920051213387301517927511653995870263443 672090066077998639522213142651806093920848557485991194477673620191163245230538 842812931159398378689189473646380148499894396229966094282677150823471632468685 553725375102055652389757195532952147609547754012057505051683700361851440883642 663803570743915446438514764039379812272625938587199545470276886824331598081072 692208557861962614661960944587804486009684371733061265364494727464409780165559 017078561217434740669450916352656895942094275268728452306080066987030044745817 484286722142307981755177852320840708992026161816668082010279084570815804569956 225932958833457459098190617213222331596573233821755424852593904329694456184574 081495634750135934891037346166342387787028579228944726784066569952717871359040 151269619601418782609991601489141696793870163404465188119481404919244163419671 854950677036795352563017981135579959278374229535729073728344397740018135005339 521139411169885000064604987269942767521404996305671461704626130655134501928194 374188490937119043686285902299501435186908082252114821725319270033978924009811 664721942194083775513539902521217582762184190058139215433238196322331311904308 381758358228722323725967927289556921987064420821008772125087998603703755053629 005390897959015986428547060807893399456837357875348267458282937302122656043302 155104618601553535619579311012634808751025202439018145383029975363688862879576 091381658144761326152560335222916324417971178835823713366436428291399471824748 323934264240635570194245188150778376532873383547893140340021992871799861334810 370129756575492427309820066595635381722508022541471080060076974841559438769240 788995651789415317043380483506945091285462756611229486023828581069737098758577 121855662496380059942694829671553877771918421418508990056345084226071021209795 117350640372662649906970394511458373474902315462490476620524273994310992643723 857834911369116780799615489304282193466530322122195308988625912510165703410681 456168737383158931327790473759030466701456551707557131521819506876444170107660 353951741626841489090114817937801040683358713939928688777245831235225114231791 780671758553632946701346789071349958725692932545705525573328904069964141832631 443955598181135460698359781100889201925486693633191718665467719820890514327268 435342051732795155057597191987489782319602526632467249371044480677922867372150 917851418034725749886272074704582743060636335259582752196951691470117303341302 216930690574794212336537656927534476607625167047158868857706336452635644430456 937393789258158077249408519112943447508706439453569890604856517489642626229407 062136565273769794056637232417056301437546131400322736477663140456439637869892 041498191984093778863751756046589520861276242325149806016311662746649536412799 368031128070047477761688431072764499586750653383767970427129272991376074523412 482181151036081279189980361739241522669454234665933079851424385315373165290837 530092419292730105794753478816774029932474226434922580612482193225705104701758 204027217270755081609280586934344755666501311721723585783898831877800795125605 544801423988901864938143486374024284637231833107723527525294246422549851422871 122607660587333950405455551697071162731125265425535142747192599258402830159654 106619775670579147206332139927066241756033244470332307648056077678822753362819 916283827286088605799784597853819029808020710596983514954768667958034824470369 831190282797802360780934369575719641913052148796317557007400641873646627816747 192458939493171500435360150435923346849141078517805725774037456644895223479064 354675012881217283111197452311824905351461700152670027973846189574460365543285 701408817423384934149704041784122231053818600011243099606127213730246760110345 922044780690776402182904269107329548744179385013970033150947748008864359709182 671522826531204786455871556358265492064213895248752583355362717884033072023315 112373419083524931315839838570141072066472637367019106082787150056657699804503 828267346024913783326219632198061948733943800563198916240821318192555837929548 537582446223233808258549970176464381798866027869303438506636475158166497308267 520798031636472028584353819991323835123748015036412435154443909922610787136919 745811216074976255725959472159493560267252998642997648719884985008578448693065 172396343287560161943023516888713850278552152243846999110483057501233654972208 474331175410689342143979237667341606914593301176408259798367741605347376140884 856231258324488661720703481598877100006993254427883897794094346633808901573353 646066646839732765187834213947856981093123296220328510227497197637384174851820 912220999895360628516010105974449773899915344612188984083769192548619109156261 104901338831215711046112380519058979513079070888330549994379204857570200540195 041417040166996285520360583057914127139488930957167199378832396782741315822318 452157577436458447393830611332912816122620584413843013478237075982337990038647 986499951069922294407483543833063696813803307386090827802750922534636164916132 057112894330881314021427556396825411580264099582460820571922702387573231193364 696472384892232393918662016211941306881396885370880484908312995728600282270445 974923216197811238133290354502061154004673210909009253730658211577317913328461 161987130371082487501014464044014100114454756769923788605936524107865083551312 467869939382807250070466993739723816479617711661263107569039079499638781591632 177843026813768603008623228530196232802447176030003608840454351859587285363811 106541382321267844068136368538593076977159197910412799072958383266106249555271 760982650572858884159658615111435244871050982625827572639678526916354859085106 000506703437983209801048923875173745298987672974235798764302106515478411161059 357219502378308256509615702874914436860256773192383513896084137840804919306338 239333631636027488418952135015964957935282970035191476836064519916952409174982 698957734944612168373706597384173979328702179469606465868189170398750495831512 598603839941516076637016185221836993138684372478357372700502022474875931352128 922068750916493552763388709723777705664756759940357834351267154288963821182647 596039263277786505209981791422530904823003618966744928708072065307408941933515 798012745204737518413537038185430641141903851281171800627032245848094975974739 954570777533291129159430031440055974395264857585866938234365400188386999396850 567722675087249621015144460040791607935176395559423747285270939420753776593027 033233283812367838941906918835065588485390914184332289845239561247656913069760 454626494458827460326566286517316746310632363437697070826517634402493916894836 697965890110850054471104640107474694343594059108241605473798762007854244715104 728405798730483272965054974631839192058730634182976188222729777329763791504947 051052920893288049891409838787468276933289976273690486704461369151130630408264 757537901327612796794376077918256612834409668510207617617901546995728546713065 280332377218813794018409312991496076851342954900651173683868132726398874413567 545033596852789368088390326154261054973624825846583285886702438255806469838059 042121077689748691138404074520186185810384338882255295421335682753237231315319 451858346687416990119319280305138984540856087820493288152385560224804709798854 774131957254082841751155231858193739812966456433959031386980925347608313339086 483341439377213734512663886913396584563869148969023113594766441597356723538051 464248984930499971074942241961157888544102306220537846408910754742521136037327 156445997129141435667375424635650715055891766281557499822752682728421538997743 024140363265686029218199636132608721946459096176483578095706248852989235576414 755453450265311711534693042270288258936165890428008125751168511342736106212961 368306398730745979880798384690201024990931002148335754117221511360791437807832 825637238552528356723419676678096486042828333737030254965459777526397051461726 311370636517228834202580230989853081238539873407641287180484466738765096742977 223527402602080358146389672656267079496673232850745176838963130671819573393672 959365752141110184469405876955718019465289120471272429799473106872786336994292 744767573465253011462045296986122192031368402593121629537105397722445147943886 218406403738771465836207537028549041306242079913090881573001416728658940966606 125763675602895671623108325903515156288702155140655504964053305031059502666872 256535655276092070413455355148068330853845099966579311194280019947732947007306 407350680484958855026522405225460284758568905764478816984407295494854691589973 030709028298485916392743681576347378934389076380207464981019695607632020901452 739094732232152598745016689463960298937434985019131049591608124079138482097237 838832380044060261740238735770621532212752446131499715008900210437649989596803 395088041562027838448813002019533940857024828974674451874079454034553482372640 486012831401670051121794747404264959747628939247527922616903531020350096557779 311282843222056537733575974901938791042239161138774078343784280116326609345077 506281408492551428721750825604202986579494479731468368006351876471793309353040 325924003959240117210578948858748341008678084908333905668735796094426638488466 581601619886843940379894120992777490596296239076675020844670079532683413309731 600711004677281061473775556337514584686623569247988813537392670616617713323758 473177661977081565320778022730398671452554342683724314949986287555302827242862 699441929614820046333778165652326609604242710430176330042405221018157652818469 318695410948387111869466082319385494104040783042449840399479021910959359555642 069176227493728399632548662095902429918629762674319336107692229129576896157134 188302679011078438752199725441273934955054965272447807692960397813207435468858 530427637243592220035700559610117845040803975934284118282803933505523743304306 820981381954693407725533788529533961334805868747390681502317903264122798696463 970691793275930673254659290175676619739798570713889815908638902824259758437560 015988456010492944953342895922267727198227018382249387601615894647082452433961 843292463535508173563372337747696349316351874575080217606403677801584040985060 483701369781985283782128076657612536463078759266386354041400080581028937622831 324049594608605430884428945058831837771154505796024528576760700768574399758818 203143245489638476015493544079192583334164554399034425382097328290379028227552 550223485127875337670245386038079716769644361618246487276992336566555658528134 944754582787891766739078733073900987804468156430346935079295748729042170085935 965504115812181588811991457092381470962308295431387635587857935690177096338982 231026413116498951176128093067405603181542323051080450526131059610819584106644 115684541336877274835324210636993571126492691741315223671019376837794765049032 107182894106033085196557968152740948223859223795137694191131787272053825917038 806198480119792283116711205859896247642141940696887029131926459569893389982836 924316163668720721565371037990608342185127260422826058192058348036926849756055 858187791603361128772668280472082997623433379391609689163030872376575241357178 675595572153591358987613228225708802172092123850928542520685067331116514656376 809499955149808056968509169137295784804970071912952270736967467903324870779828 732452788207500198050936073736117714707053257621158566796054340920663027122487 069496866816435507015751261646153340682434478603054638238566182140863873494206 184991582417127778468341182013988761960883008336708614336292953863738274709273 353083920878623882283275562693477438270957147208064126876298959580997310297270 555181094160797143374779540796046418367134373975013325421365658351010894639071 967544807402234850434011274513144439114816880092178292332514144758505978991584 478508537676455714561793579754553749283676894651753656091044934856249396824791 686213192024550354361434754071761132178948036123673054185716437309543496439629 293373690864621713828916149311558168615519057041524851112110469459739146947731 923344242667709548303348929905256712036316190680249516399127539234896933914776 791407394297632737487001066219822471635730675681038591253230027929282240470261 953127598398386480190710384374016697177951509808907072284729390914913450220031 661039788341267797698119853292389356748262386759596648917747669160981127201649 424210582469491530050907023610151804896979155507620840856238054364173080608253 827084674605391329797113338192044657504557123634370003973409426895664201181039 242379869949742324274709974965521605750815807269879978590470621872000048752318 599327750753222891106383685597965669568532141555719821094104853020819020230881 290056899053345934352195350179408163459694724639991873237709935874142792851275 650960605653986243249196900169345292288535575395259234708048254997947027187285 498264217178514306727559864875189775650567174122427084530999693642044858778389 771388801697713932093174404889625777501125150183730739786655646155709341906294 040733452368608518703902487871033671318256228699334636081547257272551544295317 982450468522629230342763090905605638084096618883288579736658983795472934426476 195828791479647873529089798038386799597971439818433519532077834339506449283859 584563596399292077201565672194020981301938840450880764816839101329795306821782 065745915534971333038382848987676427033857805598925462530695389231775488475868 730351383691482043743059083556542138618897620889341250876852177799985033513826 403188508222539371142751015042223317446212528149941461638779334619666129597808 572723237211216468570305966843790805685818265341539460703182529886791770141220 348089064162926903515059239860851393749533810170058535234284344060836455209707 209345205938461336519694787118883634949645599796145354990831388778102142022743 907663322697107328579801754132191710018229316990617354002083498057737912860416 661214589782911794640231957229619865111332332310280044291374714621591686844089 360293756049868647269622880649003232100504163968210007694865267791258081176818 840610042024451594842124873862451027472702462025462924001370924091268653412519 536673811643636149318733228770727342482574028936662765670502475836978548792770 822046579333883335794933436853373582117597351939219766479378158019433722539854 781545264011887542264393271155023222013284047731721383304377460825394139173183 724073303529063409950217070602111534120501534408889986574372086140379972581751 139600579283162082567724218918518147550497199357325124357612396874552279941003 809153771169624376575833163369338257687579990606950784809531220717553629289652 780212016484555234394870944440585563932170779813685230641502457835001942704947 837265830522506577382221981194470049746539111868492790358715492925529563940338 945985847742271535640476126368631803744803796958932514233571822572613159519713 048136716784124551421008458773269984336260159331223288043022920113305323562223 656844968276282179758930411917983363758530383559315271754165740042117558594246 216736470922792550465279129530637595794776118140827148275490660760307749654875 281109487846314603947012602741086006675878215135537820545474241642080782484526 428219471634033514177169664291278868929882673229431623673127121822471687512135 462311258583408422522379313671523319103401564720737540156621139713379237346707 503319794687133103384725593506499569152945172454488249758886382956026320435420 472952829982137967552871417821710996742183338585328437864346394595056346005513 591006407051829131820136721913684243406892189059594317461189718233347137728281 968549975827928007618856516467699607273365738697138667651152598388210339849232 006719081447018635147369303990952479386473373999492311180975719881887732890371 454413684410835224869981300786192618207850940044094619365651864302971140646113 084490233709522559924617141336672772971061887624482040923803745994280709945912 211270133461146745184036815345491537036140773071606219747449049940843112818515 061523113711164858254781014428263558962528575543716365209652210489727551690159 036221357259913285084444543137701295777648447686008666263253447544059467631649 343323137690987501730840847006669139439133098860973296580740824507791232451823 987342837452706269619597879202881795039531698855695798992181105247105580041414 944524904553235243702329884246242996728690068760160370194723330261461134381535 445838011623373264316242564235810174948521302671318043870795802743941889707906 259448900874553911798468024543054688337455569541978924825694007528524161581647 299343528625274308760370756994543533254507762072347038742078259424560735439335 835353754146534816936850785892734317695470810403277057380596412930163702104511 254146960388367143333748177743953626517691586833607358708329461271394810235016 931529907063697639842178995746961410683371692486695919579971469740881363417869 365840784525505419442545247425733958849374576959552943342051109173998098694015 646804569264087426979292860905974528465590065735231688143117878800786359911861 493588962269922649297582791036686597944240220092720161112082128111341660761297 725230542872660304646708533177249845693832017793936362357937785145485025937427 245403936050180097449333646382557249948411493050499550535152185337395459429589 546227772117638210914419213101585025265224802892353043294463412452795087605525 865641374418293449294265893821108960032664612436701255209235738458758208974536 674403527025902096387791206245131116453993637036607713314948941588351636649416 740532511612176444109762960613497200480677874086440050760667742992585649990455 980635930412582298651415027551518643847294518537806967963412602973577305020721 463752800366317988221549307867548631750357640285511150788879098758714756699876 406946393635905230866547519044182870645236295147328899241210339504455836961328 881238367514576534781870606717342517332370008149326623221619908864510287148891 595306934000969034223807541981354747871107703466595431373376438549138351974614 235968682512462098052518467087346506455513714968568932737986156284848492026667 235564768712553144571040859229721611254861891466678013245481827583329257345727 445393101400038536148015973544832001293376410773589681792129507587189965206687 910253897432442357337807980076524364810790291578811757588319824409207561541797 446267497772540436955790108704603616994554283269993959287680526260844334633993 202067463940455133671768692736727744310574568903702735419270181110253024901938 899271592350010104231046631091716281700436555523466389752850584251843923076323 137612005563564603197907582710876142662370229839918173311687528612610182614105 109410877247353960168979990557658643644839866893201916247329045495872150338383 432889552342104764469827514852946809058896366376297395961400764146281351003521 386691728181180205083110828688612750051940054211231695942911539022106102258969 044555607238066595660308908661122158042492410141798220297650976532703940201624 189020059025643002389292994001158194389123637872884680110959651853119237087594 055416010038038213627557392613671601816631079467703500957800132790590642040154 954862408933865208351611902234539459379213583846266231457312793705721433431915 725908539336358332182600278360140255162465832850401193678985074019380782672561 981698053182455524613748582712799655974120894073039877771747253617876508336542 016600892748973080666931236869751342491951397215909642451062901208352191234631 966666988514270136675712398585933616752107697247785728072628205606150930273283 427355302666313012813652851710775963024192754531186260903429052052148352639969 935256058216548717938362737940410096275933642615750714858563395270441121571560 422014837837434175073012638515266009625322302707956728147512073784983943355491 552674156785740653584590335183181608261454031761109416512035776760714476849711 943803702063329405464558321285788593689304075932487671359674599406266546823070 890085759380526119375753249964938195278031726633955308273812455278159817590600 518795448596955542325467807569558383524334694456667441019182902452304387813894 914466301482313506100003798779105692577665242034754552919065413803021121150331 361378499817852704439850807593070104475153152311061263101453820717393243982334 990925057541085434127834398272238216757850439379738029148590355634558681895772 982072452595142678349731888277540507502429793201102570876708456486552172345926 236990671581511082499697450876192676434795399513013523680025397282196485370263 848717581439315732164026292187978118155105082727871343637744203270941019865154 225193393351740286247028474579050313499658846754971963658686598956453829516746 062245193877999203247007938458062385698072511349924318382728973842535586330479 644391639552981872318448711225531607221320154373819053659470650789506463499797 641725357048992331146730483105715493166120067299920502073071912935960003554433 656614937315269064658614902092566575133043881747936313174084591199013461908829 983713784488240621073671781424204815833056015703110275059193767959816494439356 999207078612187085671002632925106816382615666269079168557671978026351574439537 559032335654911198783612068091806258265531409116738656682459805027077196389749 730401235962177686587813714266145885961651798735705481186913865866062309350272 978101043577067505347119227718468271185533523123817780912833599630245935741860 276512484088852391933374898639451276554184005487272233864480299078666472263377 489682050695630596175886431530242069810117055325591067977781300138571909319295 722223912886347169130907751700032576483526585953618879759724473008976992442581 984574090198127455982264840230402912653245706127219373052006796563212444101629 935857400683294856925689986665083379847122692127710532340431849356039605530028 782414509780471506454847740025606610319584318899065189504889071683653148057575 338547749610100260426472939205937570180781017188105295965109241858080315478675 052074899924158480954816789689612840782587138130948122890137725065453621241119 095457889173053971733901142829848753910731661907949411161785502476657637023591 103174617196284705412100063843774543530858658746660417254835726273105008141465 444718520277390430258564282053892683944357822620506878590049218352230761680282 252588243024549329004249839174075640177957787649627831648204665005238258545072 928359918912419175334475654509781983309795606340526870842138160097334813501911 940560924405733786852709645578111762404545890888875349820884497837031988325588 230021218337764863807839052410448158386656843000046819519931750871192838099551 672095062245885582533604593630805451510539942337808726724017331967327088967640 122725812545953507507217402511890164224035974512186920181996030791225592579698 400273078830998264026273174454806358193542825927268508694714461819904813207363 127085723332316081375080258594799516537549533713864414701266420752933423788243 472571569699859208074790110400472868048635389870813782527870603493461112078307 902874500432550161041964677576740096219480453478012795797252171352240675394436 304863174445694025434662705288325972760880102890941235151240939641289121403944 732444531842870492552248313995970348708429346599279278112663211220442824575617 530778729293740376693961481323304572083846325459716574657389437110096525356259 532385859789488773921044345899289061787465982674746933420514734171154742959560 190411951880661101105452514336486310621207879559121013335277749154310470755609 080469769973916676556907820548465614256183343287233878133154902455036533361451 432262948952872225895983321452189529142505573139099755950995189086364840774949 549942955512865014934923070330272416171462583940253220137108966976157638538650 218893858785566948417573638483398832701556515489944088558794870942941308311395 981730293103596554119435484875101018568879688693073560872604519206940137275948 773533170168375769815706433617964258095504001991238956734360198800166200427075 758028282388522296099077238955998866208223743991787907323676956995193895810950 015684431401692691393055323849748432894604960823966970444150405686982295939190 071036192457624494436017683379007115257265076486359384792610836050830731101073 422693532195959516219642479374085305199177457316053777919804409588213007516576 010309483502343345643841314201917949324890599480249064755947623281232229309046 441967142882958994097509454477643466800392600319345181474241564866643746768961 083731089394277861053100986090111540162436124759186819128972829597550674044935 860407068322987899926600383412615427574011076238050753929514610981250095435499 956353273369217796048417790128140007417476103349138537840376025486734078963401 888894958354199399716367453387886415786525420493167819720873359485181311689203 006537913419648192644743614630761188585291117032968493907048376462498524863475 931281189369487421241470678145890313785625663174154300528472198758169581683530 990332202769699246828191849977488760967678624203031128293536831371503102135148 154699489967818343531725958048911510813427849672975115275941002746840491617433 087472226436904036556109471641958842706709368360602044685523462276391408728693 723135528551894090626295325151223229368501105170655492415418381868932331021793 137231632354075601099127110774159745142553885301991176195681583271537368252345 969170752288812248982176785779235675159340254283796862609033888556741816294092 648318539441949519395225613676305659076065887678931816628014871179547672122207 960104753755026426723861780249238010497164786581400028229333506821894940313330 586593496241900400604659982940557007823433776854765702287836085328947302068815 541005264143872316273161381226395499288175268808568348916456825896079970363540 388171242318644892878559922951867012596370215424945747861381571953003003021836 270039153074380490189625030926285970208531848171411322066490488599927070333439 443196651802523943103050537059887268214397028911403770897231656271448902317719 796927239398642500463792691360270435526166655935958399056449357659412799619629 631552407172152872617446572863935215169369426297852882377318859199528749738415 588658256687160188014016258901880311689221082119681790806904519151949778580878 983812767904504495575959298843083640490452252636724456994147490374542728289280 184497901010037845662604911987654619029136769191231574504606525898161419275285 201794593369285382335243241732994137570017740871623183113015473834812419034941 483020627308915012903095494103517042406574291414092872866166233662483310980352 699019480529023533395297163050768544368383137842055698169740581756941827757205 822252042574855975258594150084259909232358449859729691731088289887097007905267 285334370138333011990014393705080748801078430822846094858500033255264816086841 338045727020201970355608575808604432982160868986183019116717317066763726246227 023743322806473612447342384688825531389799960118403820832203839679381526416972 443895825688661859061129187818700215858168034056530776540854873303621357219132 906337098515373723302698198349575623200929432361491907741295854575196166889739 960406617002873285572493274131976894754130921497587885925781429416992854459279 425572415740694293011390649495683535099586875519142077185649328728320129547558 901461886771915671153597322198217987447932916138039997595573776004597261736534 065504893800255970236699668531045880018644610472244416922847793963901397319870 062410079819275616601509808035622619122233371783095737584436764383435509762021 297090698858575757821271930960370038760556273614693986119094084688966276786552 705883962211179666297758098719037200097595091973745568339990702253275993496268 718244628334914618193538061502481351968193402060898756329447511505830461448628 539524741187889132955404177586964929789643669561823915785481318722556649126966 166952304818951926565652037971532061640185837784655298901383790500215138195819 453453218445542487836842051422339979596837827394281638006488460306883333864107 992060571359777442027362809375775579352181862350931036408320293488962102755169 911314123600931073753521185213709201688311371756650965531608344249319821195166 533440959080247398364807229547172229033342043165792519780794944320431597672324 280548617897774421149328511741077344064883185454833805389016815393297393045947 519670298071643834684463871371950484247664548126429277873540914315596209524395 900862938859406160224297405888090320287228782145088759009085069760684626087783 892466204974414470921856143052580777351486490430495781213373661676620245568798 426590730980676257607191091356203714624708098421648768126143876373507598041611 362565596918148312646359552751536558830768828452039583432906328374186016128934 922273194300997476133027066301449883589969216303297286872281917106552147324996 851178862328701290486410048132574337051431335351942135880193068084134718795974 469146788161340905947803627476283061622606362192256651670518489538436705540368 604553752794449754808148170067761043136825657435954192531949198423127173017591 134506222618912312757600861505161839630256898338154517474201725999819455618513 123858811095915230939822081645163165623917668332530489033398525977834100310449 348496938777974422724449843109764263510331921391885843202076670038366427289063 166542996451233633094489988795715319238165315228647285509589071370505828407119 277772312301438044304311073853600174317789744692167389610884583068504973614475 264578199021344303096218813572894383759765616922674874640078046013395990578063 189860211551006874803944926759572727443933385198764387276274726237302614100329 369114944484570510685951735968942251799957215051144037119732856455880930948331 150748903659510419310293763827233765303431545726464125352126967199720820063081 300689872519218651928963518489500534221862857749626823683923861130403445891616 307472864995526129458709521472969673413477540732440121593851478379418356650149 316664812007277876740673946178812748895740517725418454611324289360257258070216 544820811745319239111518493147211401781699909136452792382232505951923847413449 952304683588444241812366256297536800915328272727083602496844007592675177355208 065183997571837381257612857319315319934970545914744772351726963564005571018371 697226250426135796034021975416964323433024913905475189667680372064961052966826 119528610125799846750417227178668257985019666742610710778941978878129631742637 975303695008605510852405530094128822047935386010795257505072067425913293794234 700510587609480715527826615011477866588817879536207907894559124938608300736579 366656156732904562187473571136950155649528181862861584665214805952500114028193 237594537529801922311929415610238610225221448543642878261822866101922099721948 285471675528091220255426239150563405455747876659565986892868445388625246004451 525174342098881705328795932699278715251151692948673240173387860339421824868804 648477836970144725744656792555119182853338934639348344037043907504937175828340 766908335891108029660755549376531880692686257594562365330624088670540888310389 814075809798210882458119959542082405753579535555748451689523681689299223636055 752189213477439995080037329249521727346502776062337423571005711650041829895453 244851514993899951134494891133082407695155053597307348209586993420476833681942 021384116624350931610988164694056202655979587038218612341020037503816860721951 400902066901672773826721051142681341409087663189698961442669749037391393663044 459324777181718231994055097000336940640595854892680391418398322634076578729442 357854964417948680767269412862659041040935820849743061873813281340015823809871 668348903457124999358513165318350391271891985601172195057180929088290772687672 164837408879513402118828907148970506419611844692672888434596504642132776111614 935858670079451109910367105178549699816545595630815261994522188263826654751466 326495807225900741980363711151515536067055480906811915991445372920991254782466 428441964884915898043986662868412989376407518230495135727038396657967326109857 387075113709543525739282602628914038717313746818470314344661227455459258191179 848795574562562224203638320531110711009601031781171450824013888264415443415857 919837944654438831418162198838701449962048312304360702304648991301904516715400 346201606648365116237731713153852397580463227099456640914486043676379296755371 799399591197414871940838619289276051611267821208190734083425047001970768043924 224891212133399624412453570353866744140230311727860166703414103730650876666878 589139246215052828217716302640770669149714232318487968241479663839382615720806 892510161416372189995141563847664100870035801130456284357147551505936937881601 876397509758426990322773104957455733830505413011392134747383059959437577792732 536129365583533098023558364921735694360711485761633563826942143557122768267804 703258072926623091603828245856797511023763527643352047655477171645026195521971 866811956353562461290632274136737242327221879180757955927542779151915320948033 947484807490552912612397186392692805349490372792319065104850461534625647787797 755029100527350369227427337609463776426213809443142918378165461394301120445378 673151468091242794477700717266739980442654195367645936940161513957526175503837 362051187423048657104532948840277517536260989865786369835869643493322091463496 196149646466457595400711684684630556342880186644211506278385008974293814133027 613457539689866613472829732204532836827331934745526465982504297535575857928725 472369496725245488942375189395101637586328931583400986583905619903525463420337 102791756866784929097935061723786713329997984068344146747044618099604593317568 137005558057242882871974777991794523954522500242218219866727427760555219384885 464564628663095554269357954611286321255943112793431110547808065175112131781730 608794875527856262410329051262217131426763117106520132092004713756291663443371 036275677585837463749147772458645760375314350152335729452777376028934621607642 088277731272480382878673909522372112255296348204883830797247688715526319286286 729371851519546227325812762395379589142902037647075097742535453264822180933065 010286691787918897535081209311410611062439977476001764682743117683035958343156 346822970510218051672789024667272315673821470851699752925657016714523205061138 273059352872770525820519154636300808778388092127302513424145955186608733777823 406349495205963225003690721970477515824686535952634703692945344628491681499533 130214069002207179973000284309655782150716769680865273330507400555118382683356 590749359213210411152670108948173817644242366237571501738672653042847139999020 677451869112972372137871622439247260631116428091290807340756724161408145939440 108332206921569727987430351419046533878169977067200262178137263301399740137857 051828613495604454167304566894720410377269274972304734396012855502666091576327 397119648348292053218702058656461366023982004053384333584907522466541493127322 182301629585102686447733264560844609844293140604784183163876424759676204712237 509097875364911395140062811033621683228156834114653107955866507710803969010792 110680686729133649278353541254795842992094343272271702424182913364979922759356 773293860421335877417473900943692500091604374413069917712355063260099216544099 265497785982717097633221079011135669899331933450986755731346098252382324569290 046297513583409456191543598012840033072045652366831478091792839923052356271382 002752209748957346521139165641321878716111859948132671900330815218695000624807 388114962557879188946232978785775364674297458699502472180779378299373159078102 478304359156595556472690332497107507647528429582419077873556140513221671199299 420427417674012941162426630327421145019443452667290164336608386460679694829016 893309791941999125029856158334328518441939534694714138996269505071682360163442 849436883898959795497189357811104789199049016656206182853879698623147455117478 736726076312948521141571144708673785774213110043515490460649614632147157852099 858715203570627896169468965493544009788132783909197062776095592404373257703893 193333381080925912194209839694490630486231927666200271075374180113358725200746 945823831199551295329761899260363628604555413192598022683321451786571605498708 956879341584118461357280362227073194050999486550120450999960549308957361757321 348268293817579150724718709793141894044206826622470085881953846126801387441761 838239643995959588458345242698234628462094572656904445230213701595603438222893 793964825551207825456712072539943057759605497297046508430279838716117239980484 494020501278137075132199850368212697876576759509559991126093901452073110817732 399794925097471194697653053021814602669947518407769984152380629496115826522409 755436669038293302518165632554188909203986775418943521831331795321426202579564 005634695953839762823170920850297755068239893059622610400539227698577986949045 843456200848830510094511515520196630027624579902167632527199196005238516884162 248751249781599271999884797914328612507383144906464402658140909564124329926125 395223836577259436825817510524585326631397466900828751810101214290910532876334 107383842054462268803629885114344748504603351001707849196448267271112987369814 904941865465549870498266879980810997623625202534812583836825720739193407165121 059437291143473358528093017166493873468827479197792213013382193138590895926936 807087325255089720664291594145816280878571469093903172924927776197096893859519 141513311654372990323907288771581866518604401951823288777797089683125807904167 934179066899158698858525666794724151082653810160205209524411278676620216778510 947385607901830439981157716591146969726616292306776519901464556637982552405912 907614053436998087292303640791718758721404968694916596365075312359513956318938 438969690633444583819457649829294006711446585875905000435027011015210242519495 071797308182173489169823582812127547087736883541802123132006066971738935340720 037108135781017905817615232642432165994811761595978603235732676695158948904500 626897710649134398876656193136554450444431040381046159989435292515238434445910 213130373123866558257078410297097073430245384330426249848188791216492847835623 292436875885987719098503519675000077015979078247225841892250066451413465424685 060902949067097414535627666561333419015103464662629201784610459553056192204443 728165602974688439791996398537162598425199878090027349373801464557609219764773 189606082694607394926353886297115771352914784464375519492046371686393549232502 058872437922703824593044059720806698678420742254708073387454771107072346641853 868289473749476766223746768646711724115649427457752328802786054256571232066386 755615997843082169816316264518342852761147633093209027290205001832035687876493 067491026656519787129859688713625865262088977640263717965745299368622464353496 962781806766921838360453485340076434050297477159446948078953052253332628949654 289071999110597233180389971183852857595931318197808613639256846693032311503320 114927782938105891170042972889148963902763631236571030272749679558873540296894 172698156212332589705889904041104415549457236700072313124638695763647772522439 629017565527397783665453331491532503688770341960196824963918493237061318218875 318810046828041041265172226717158275325509071962698010917800345279992244206313 237542246294846401119409347693198677022723172263864823765220575879672971281067 951304211604427333065795550333243913602534004891309567926698010942729450108373 166681872510455956016165038036143142334689221808880988580980455281006624556619 565133189549777817416444225965144170884791189903477177512428890353438513253565 279021682103510523271654248463168189061744632414686369993854100580555334878342 443901062573835656872034910257129355361665818489919947152325239778888449197765 988141565129416975934700931736008148589392573820021629511674194051322288988025 725287647087873150461311225929990239759737135362482345669393635975219807261411 193803151464169450179610380488804132580791162627906666901693941757244380905113 540712866670480667661827915788784400672328441002564757687614159495000287501814 791636398490872702006152220848098633646523677143669304574671138595522139613701 265707432642581328044932605624072840231761532220200836727434465272702767430226 525247918199543249201172613648625552021647621816023913099802632805340023371124 379593723522325544663852656009975597593107141965268690857278877689065587351197 406499314124233768781417175096184466981558547807354861874511721017496299962954 557719383384002730280914827018848085541055553095665291273861120553574711615328 547668728620272030382561182568433977682434402473494973251868374601286390070338 164433104888433012485392972976494816257286100286357292097220061204900468788395 372694820194442952286056750200636359423471466374310339254899573580958993432356 915146157224463590024046129518048582233944971473182123307883026536393620915647 644762465928850599719663594411666831733803647789435404913100093296363308787627 797549829396327785061554266913897896426528039388923066950239662544489890189275 088016321666586415743819575407320445260538528495287250921686186491584525453101 395752867640793606752224146655550966099006836236567554238027771309709965488432 272745575994152474420143107716644949240311021719127622820006589448782967915412 031190487992909482378703778053761066821960661465782814849390000867261751349752 762442853713208842451301514781361588456700158296410624596223451563284951177696 220784465000931541980019413236076616221432489377538886375254569050719616932220 953720412973018285812299968667639954597417629428673319092681809475779624126735 011123924848379764239481006321153989200745541552912995796800776051334188358743 678279608663111585230872884134592496213682545231542972884263676302322422319124 191222203447851734145288364934187064579763171021479029620333949638262761406135 991734313932988069464758408089026365657984707595350132568754121840782165016337 933001092977098486831645048329093566683668903816155388428810837263656899601201 106037324964291159288685110695539121868305165962651569372934655888506104258656 504757638489645162176551579074720324804088423609098332712557948284322236351602 700516359587172550750645962007753123606640873365359370195581484170534130070161 831767512900215277934248478490698350147256423427380812949927502883842866498277 728345315285930155808255525784435511755452214459115365185809667079341891307905 418927663567013890998065037317688652954399788958150523569206515691209083950258 096312142234392526391660185883888720185205800528295630182511706709436249652048 264856860502239392540854370750429619618464128060578029101018628347493345485449 472217159022725090262904781608451707660414239457927310120852782743284564614017 693518428208882639920218063449048178401635880915022793389959157868089302398679 680140621339039263565319695571579506778290071224463875418576692138164703333104 494948673188627499350637865493807714441823244894315019411850932064833248911826 987218598186571070036778388820066415175867363413542389721750942877854909784799 352674861806524284078797595536484758743874853320155807834343891040485850673436 322811525428066662858543083005071730526671417323067509461177864190157710876189 614462021503148096204895044537938413007664914465138529143598404374399791545076 282567749373283650204838469646892581648503096653955508173723023404751478489403 857898366802818241496896415457212009667863276828228455717718979473628181408899 633709248682229957679033163340415797123623790434749772261356361935173905798160 789691023148425444883219300665322311213172472068972393937333790353290877473989 044363750785211181836311586832118858843348490200362179486167090415858633257405 306888775142173836138656210003908497496492099297808614088653667784152674678132 078054911360321123518544797972134483505430027827643237558282475983968334708107 147681225225945029768891771883427860787864176363129339499309067093292554636110 615397263697616745470582436840630864149946969605432985879797238505880606267918 052157436316676989626865094156872387003966881310878819919831189909167223901709 598679239237511671108934101405058655676591342529765696232804226798788840903971 822072518651651512630293864619729572861244160560726053903885452953671893549981 632768502512338815397721980299941814752145292181369873374861724703715813010125 949326684400754775544680141913175208502448432920410950170291062315408093417788 801984807232118757460651079089406649515206076106489293234527037086872007194694 141301095704787661746113732458791133223001855226280347752478847338175971383579 923804223056394139110198250785503207268200128159125150619161292031502349835318 884109396963271329178679368600071953507240087936701092408297748898233007945697 965505154146251972829609215119279569472128888208206571327021251995535759034666 524555244583975838664981880457168918685791796126488091588646505118812419297693 823581788739164825432803992106717211677060476462400019815736083337099157184128 985478559051589439606911524804831251521613945080034352635899091853610200227301 420581638812820612522164032499380347133238343737932292694833611462314813468531 112134556380608153597746447903577491754179309626450081768232139569191415200015 525931507089946151395657992427551873192710569360277442701322319321155901428131 463343894760889893618209412209100887336199970606672153351703892881612047413251 443431253319604921634656441415492273070218942192979094474104273316929947890617 944964077377500672618967581717908148955157452661446514008258781409611272298594 028252853252355658621488424549161389762722418313386345180421961097893509916655 625439191677553485175601404763588385763514915369746685805948267485157305567349 536240927744303136773173299763148369359601273300308411365063139487154790117500 569530116386165580688307689455987705329702907067699974455026001489909511275627 121473410769611583347990471810749024932114460060687100548854872999971980393390 538546098361681298422742118537562597822748967554804719971036222088384740509711 593068830610452311705332504503141782886656865709520796780701201868937820622600 306883824221375291395674567504957033798201099040266597896090133689855017572837 343946750430938976871230005321053100133414245076462309315753036468811789134277 034557766243439814727551247866228287151021472626092866689545127649277743390853 712195668994185125787917350716820008054979602100873783447478326817471637057608 200849052992199456395497739166177897562902653883652239067297574207152894902296 616355937118817327842785845829019485144644830856231990702924504842347375215163 346835977257243984956736981070664092087928588470606144099898656362980741002030 193723725610112744220933885483528296870742687719644326331145990090969684591368 734656289309643038070622599342534755359370170556907643893219998210848205462792 592699234591246408530630275869895643957614441954003765512807086628767546595912 828832138321953964563936011217250966718573549527801826710613000197904192630094 768555238648407926907816430005699656482838112263527735975502404840888951289794 777247543186052029699451505085497291634084411951237471710779655192857779186181 127772952528185029103135362682217918035221134625131781841550693019075222993615 076017400452917498371242030013393358436425563468716615270331217192273356284001 876472724475703915129752470789519407560956597449221386562220998690483988941378 808383031373297698045696609400573897098596692889685320366756501883915448435348 515192718170607897045045097658936676785225143994273835679968043046129079646222 660180069521566104941991765190006983256904677972469385393670251008909860194839 312450023418745337152661558825934036374533903688594057459084559965169481967891 296964688329777845309247770747114998714514021087647971842243405531976707048792 922348831378295223315247884432129908214122695769360080140115407798094144557308 125559068172612384573791443812495734331178682348693386235510600234368743592717 909001628308800652653463401133003226334088599784253199198358923750111667848345 407720445721723986621611332714353697628645892540747557882008820744769569467768 896024993868889479423647804826195165886292336911844929485451316635940470969723 001383840350207382522091588943456454502548464440668659535176223301037365763417 875561118227732482837083128770306526913192248225320502171771194097960298070501 506235646312646940321064789753532188506096348639328344287546944159367998876251 370505108808456809551189876317320662109379380304034350403065707754959434739390 748323866207285365812670947469644552583602590456861682307148246903688869536469 242540145629451126937876004540636647275272899890000094698161409807165866665211 472026100819078644703565710235776755124264352427839321754762494321209805627504 882844027475721313472069868585151320474092491900196039848995884680118734847086 404402195896208760143036123227976673688672662987505802837296219810854526996740 319972025411044874309432552100391797424898279819887413247759003148043055627341 651471148215245305803241697858560543697621821388514024793172875330130859355898 456905430525934990057664558681606837955970990810369541393187665540019617048918 966894030323712882815797603118844088940632630155209855816507009857913515695027 300023407513390777166458174197830612425984620282826777424531692264228588629234 333599188008644877990700758023148034946315177615056538764801354763714285635723 703748697698981869265934547465807477704567063727454855532041511404729129178666 852278574839557276881518220918049863229874450996288303043883767145921062032518 563924550924982244015240369529795374038784305929425994821045213359342414557579 668382942795083052057490496206552315236802929180024023842700077130734824962582 917274987746222357472655630612331001598174832843984670546125572793944407063474 591763226116573246713809821901082643789539146240723471824605990095752291034094 273572890303224259228092633092449390626980214732461537145389831879060422842965 706990756495791007597163530235480854953759537845777591103716271878133657509323 389835488278679754622458435815390408866576428995924635946192461918664043412262 924896244246413780444220012026706743485765657634969096537861694033069626961736 085745309731679470307145283302568801199672454377003511277609814132533862942766 035986692297108723852869672507859363491272532978389957070713523616226226198983 862004332357368974151925543727481683159530182843450885044354736252903327171282 224506230207234694982248527256465362054530229733859198881728074465058623979659 198626882228353661176971636699810959905034374615821268177017827558559895831770 404827550999748746024443688042718980687505691208680126090267040540373400403337 351801540078027326812423964936611026182197821871130499075017998807256283149565 043944016033736330559200272688106355911901501430330261430303766661668994702634 453914086222402109234096646720086987535926932934405740423892275982009358202487 568717733752506177158931942170579863746766696189875380619397695246277458426492 487098307958931059348343003171567166819025557095056932177218000643002538296044 892293148894763697208790420508033505199313958797307827185333056163084174294060 241554078948940954778432655473317967126287980928671878959622752001286813817726 103041199311005997854197846999975171254776082282453982502935639497711729227117 627056282387667128772634711944847462315358472654095772356932835941206862228016 821969034538254542259074429129986388290995551300341753453800130021670868394662 472546832669040859309880114231569809822773371623354439341325097787711422808756 016081360450144375870437839969647808444068340130084257983824287790650789809607 759654551541665550873592870718742410050162295538324613290086557239465754921331 379979339331478584115553305265598679974768692555558202329284507590287678175228 661813367155937845214569023929360788729116358972609765260032022005978257432977 958484925620510860674473642148729691780852956226062305340361927496342832633217 209932008246459004645045444321780807450274071639898555007824993736876945879361 532010122297621833857397096050488391310967958565607874577921394510852643967914 675561836096117299815199836648410988994558899481237372347416840059159494796949 519746615298885998525113806522450735741258967074329213523816304631706493060112 641078772504048721097351178930654982416652081939823440891381701150681010542993 744740675160917209578591319451834500629477967110591630815428429524074920878142 101667612134674549466983617808973610718015495517362986035522603074308116584999 802365165685702053185701521414576088782985629181959395733330528360454818551937 699474302081592000045928844200400899657922180764185048041652459313421006869557 165864858875127952433699620241352131334667986398465307371726697392460999806008 921957230976950670212440674409905464091106726052030279821507160262138051362230 857429451288897941678941102584532450459094508583167643234423582452064806757332 015341260535853106027706712730291545140133555268517481295916880607615387583137 244897943729587883837534934859786433328363248904886218779454285033226456586764 881677591588644925032155776158495738862889794452130276987295370615913006636383 335401082391269328824478561278939570755843642560527129745684782640930197002453 212803680857161297042712809269429731774720603690360940599314984136746819016854 481606864824843241351667434520833637979708882752129684317548466732424213646535 517397001406898406519234152913936055548953258423987257259400877733400235633125 273508896286422148069732417761647538988172756925579152049732056827788962416216 380152196263542181254782388051571616073894036305140067159966767341308302537221 417729172792805574552407450102668880855705441767544658849146920124053530426244 980170050465997598744497592793454387133177163860292146756139204604165910609112 490878126695425824736945514078297024281903617859836501826820250162820871045504 388470248369283393446841755710921886580723196130986385651553506340883246074889 817402532236556673373753471128516208568826958338401230184619333816198300394828 463087131187313704338148026951502683907098394056106297348010298282474829732503 513173787418507988759967441400035612696052865600799091599019106346306619636867 179645851733616125870194383629036079100859814644749953195343862664249532882191 975170038619371358973014340960176651178379725202484778234424968572902393529366 093455779011699410483794943019892247621095573594850150390257483907141192546703 917394829714347526771808423027991152208896436441107504167748555693158149304919 036691170545774247366397093057646786232948200783291494056679429702984633087263 398287477589081657422470127158392309939123656965744266106261761293213199891972 294512479130886982502063801093726914451185890043660835288594886288686804330631 389056852717347623988348819382033456254875972628900261685552316384344145926179 113693532981672439386031177842806203972035146126774565401283198491694218400979 916326513137935877934081312582675398180611234720863999084838500111681690636502 654774460641586826911759005536248859055212755946993675180881128699618715623532 892361702019395644015847347989782586227463195024935620230172692632462511079535 193824422158591381520390265634745319599567332993860470314222041903745177698880 344534859508168686953024863169804022957992304352028967569629868342921750595961 487565139729632186615750760629977278764354845454239148154188296177105881269653 863724434986826725312545536596001742905943300261762204574995838238349819111208 021667571314814733474801853790729963493708873236744813617447167767308147124319 234814562776140508548745298488254474814329094972490159086876825895614082175214 386218741659388553417890516765935988497956898271813889978189483069349021620434 140398233159075023918815100974929214780085374929815984952587000142677357160374 923362800461037228498343449501594608732766610396522887918415587560841779186401 147175856566703788600973030476016717429486218441292023996614175669802369544286 749424101879083604874350819594778341243433602899876925622630176767582439127551 670181112035820207839850123095602023013949747246868084692246439746369266627735 309120419355901145099098804116147252539396791775060958347167317590376124730281 191410426846597456989032022574069219125217089843733967228384108447187106619136 215306771686065709388497968307188716587647078000390985831259362414878548322328 475241527188661589935944967104057975227420861632975885751050926375000108278289 492186618091321898850220124383486200743915068579369826305075438791275719115569 147548220154090463452742669996070044626857702671165193013321780137787333315891 772915919870464029724059004992601652767204660774509026816328742260858922943668 731779659291706313446319650942651568184650441926825869449634682994439337457797 138797547313033932601542931563394013178247011640516018157867526476528363777055 216888442636251521904613822945271600879738575896338976984772724994064141492023 366694229237177803760853344522159927339138445624732869124270925672217488624487 344051097404539350923739452011503560404214606182435629872068169711829086649928 121581486920467420275306864620094745882981151775627586645951433563740812336010 318990822597527700297726781506176347884711871631737457606645012473859314261806 822572556634600218073629774799957500023384254117891265574634343961243889774654 402653203304963879487530937933379616644708259141291108615497065651278655598276 326995683557315282617048093943755767863992821382071024663984078571173587791404 268238732288366092467239478302923225500585514390201895441249334677393145985770 549589988046977451317570102479587541547629501861455099300728616502004042683346 455198645109079712636465019287680179461107847083551325005024223352228428215971 730517228628074220975379968206168750290892008332968513874817016094430513911473 393767603836195146678702194620953584478106843180640099303289353775745522621094 654151256260297848734791053942554131463458436675611102790573805032794226428427 350597451616497333769726933729668513563948290237903349392551105101706488978036 599957928167196983150078901748717792608925102846357653120183444621442773325650 700394591562534683824886164937948679680445396015207747765187947063035648553408 042014396753669547822297965591543370860609297378785352074597275870910375957421 650224787042093306269936088383443515297831813111149378110554393318965576823663 274571696955455123830035940271234750442410202196580492390108539728118072505289 181947640625449705710964559949517924234084259775667618000215718146635071170377 097361331248849199082301629225553521308557013589855977230171525806568608203255 227403611495799342117136066580318998478494640691876374519203345353867679471389 211681619676185539822906044183769261264789161993995435433222829905324400561804 721759967196493506155761016054454340000682143027527986976803060528588261378055 799031230531328354825396926271451880171341837241107701625431293866708291391943 631024937326513436472572764014204936673012292607633647250540927343100191991870 620791759124361148342904232940681146962014222100821172006899680300031086354207 475993112468435570845998484585028922400545977739131978460469312066546992043177 065769652758774457817849604597589462509382315517727438791826363450170574929460 344686038272574466056418469594549685806403826102436193644858132087396390188400 757112256589124278528126069283143123186057196840826985733830567570287425649543 485638362199340351488851656474143108920344592499859515781072615252550478558652 580316570193336887934703403941737800229739767101479783104097834296242182868449 023766901249149827882400619709127981041970325271607760940323229300715272696482 847082961201420246958182204987538586625757524021476593281002351314000630200363 749152617630938042648813364914809528678002029111142473445442346238754826633599 865914404133552966293329867692213165274594787990638489083282472644597170140543 561054675856949751474955343205990617037919156560825102693197150999446185377721 301515850529518694722167908266826943029098424457870235541366224897953798595896 107778977925277587529338109307596066041139980304516660042003151698731894874462 880286117483876369944625749990178226757587694481006993356948865574214616391959 475852012209989389604101639017803138129576121077540871875667527439326442659245 818957110540897574417624116822154578769871972697783084488845917591066388621681 464645895045403564639389886985071504089216653008478923605002628508806647092947 701250593005449993623970187116349145539087721285533502796714238409708004287873 838633161136568568425916158995944076490058958006383341119793315277966399646153 057212566564375998051157712676448502538665280316195634561053323250912373475278 204727081178164143943895959146468094930380457722737866440573642627646534539702 427711937717002672830846386644705420195315664058968384902729291908766146635940 440351836903551596989115489520146192204347409427485299794624642426059485435381 749870848715687680962738342511041257012796888340257822690928455924281664195628 609152339360304307419764531868734621315204163732731284478506583831923279513861 823146942358831461751653683194405971760272879447130573181326733755043436380738 931764670722231205590729606752782812247837940039102921765439708076731568712964 991998531100748852745559104836653410028096433225570844310142529686206164332736 123777410508883857332516766876430155112068231381068237673828690471355512705982 352056493840264906248538621614695041282068942524336119189315015193160419072760 313178321175268585386611218848133882372168565407872641994898604618970700613623 169385210221475297805923795861333865763917509965806457218117614559472526158045 786682364722333575812391669168945872205037606954595649949168317056901366679815 408252012285583212938337738826411690458504407512387607820698675044639285214801 703065632266010275742646772451948271683663145749445649178158602362354225325752 717284765723562146974111436629539383502003834838845693267338881018974518757703 450049201456364677755158133216545774989155736772736567865026467832701577163081 119814433389334326162470744606113314935244195959447589408219311299781589866875 979789721523306079216084025750966663411356965130042638190787166926500900605823 718048547749566972043028621185540223218017541803884034214987085640331997706738 837701060464598613970035880652052607336017765145290610807289192866512266275719 316668100999213061713397337112033549366212290775394812126461111270264844972565 583561062995003139384305480549648146344742059043778678313887783268243425658534 937080905208477875428493019366352716302184726859160799232657630958169991822436 899951559051069886267891037595524786684683375105806261392667828191212422874403 327518767718110111673804705513860332024800865776554729506183329557613968374250 850154107450812909772746848113688780399817471829404018609988064712981180772654 412951983625380835299910411938445065616232284694631502220596985576034941040104 463867787528487526863404479017879812967152490759776432639216854260152832278394 186820975369400019357032541421963623528999078825548131177834490781997238912968 388774993852426110312532375273288410314820199744164978559652626719411940572558 524940763735481513349984090734059403044000795278611519318582542935513860519286 561377796812886624387363609547387135327968123309955227495694798112101031050281 345803220127140644238127579984116481908659956059725834646179768670174211622032 149057008950108517463562413474503446680152243818954182905730535693764932902824 559621635455752119828479917851750499839504732006857581389262404370978812656501 550407412140066592831207883178886016294209155622889769200874917681669287268545 407706299780213803439408763341581644934218105734822637519398461814345152166834 900268596542716348873987666618562919466521806033205123046169519895500870741601 233836314817061552004403648625436571096800775580760697632247971735782910272046 255671804160942798854390780200893882235121034352855244832068277067243748633055 969137920981320480437189879289643490446350109839587806920743631244953600440487 693857288293669588008853293436046781337688563906062754397186962515674295527632 030965117102741855401514629430494200727030606968151256374107651443820543492234 688506158650933428073693896293797963094041859648921317165775764590422838162729 214094139971729310532182321819445222462392654698106841630583356850766661246535 323388960684016687757602065739748229514296735582770899416512738526818640146626 475073667077040690913326625876281054476061801979464230179445192629977653828355 243264172805230893147118348424697401099917821217617787368059598003292351276644 279583584743797266955074031797763789908252814672959311798496439371622134965024 132467772585822666850552526555527261546092340368564165002785340057471574191459 427332891998210381707488428863063521924684790144644824731740357052863164110953 057374747007063123018191758218100321431768394437710203279793306613193094365052 556724635434819513328597502892241461667394092835890782073232677679756355635855 435677321758791267206160372734829897427334117089363314463877215723028805952694 477024154816804782360802477030027137469310750237677660326780611157717019148428 883950701373710882186736226989448666626061931638537587285812978245698191684279 228709572410479474898844040236728606406789410394347383692880989996292741144575 393179903442982971881878383826696628270618357368473153902142274403754832016308 153765491671734841228522504881190752160070037425970607568296870181888305567836 283329658136138702745084806451037377537875659833952917019741945690335558002431 103775383045782646549653636515515916041899400225671790927075695296846496610879 988370938232762422800636801006254224325920400131762714283251689460369565018908 945976781045499951306949187698152601742268803115263161272591771057604154781399 583931484121160388417836620092281496496887842380406141118473237239815823978767 386132775978664621171206499135143009928531158804809012628306380452479148432257 712145528995662453981520821983330287861744904616331727755077653334494860949133 671757303847718446957489700248665923904186925613708746922456365420082485283811 915364416337603180654216332404606820149094204704147004725349981547862208313162 485826789563702904095070202061862441224496493373099156572641210623409246959062 778503008158681556559307039214404557139397582213518743859347530779250417083261 577607902755129672469970640902046375552355091918442554906413088167282025531992 658316651453064099279225844802176043920977691544368198044848824728761236001742 326015793587613375134092865698551569812216610874913522831340608085544206781953 729107245660974034119510660571834390711418961845506956631018762899792817911229 328793984841292113307176207952310676938603211295791530568837319073371488714851 141700595735977260288883515017277560751264129236095841918429711146573912669761 793262952312572332400376013399584698214215148657361696301888722121570531032975 850790362028872447486294185314672352647455360398799349687755862355884080883688 001999389530764560385169394925986245196027164460728474124760243533933959784885 184377866479840897630651968056571812577814489858947197936821109261755102309775 901298356953103972388032469584407423245497565874558963252564026212071702996456 904195596253785986527197852580721179722506676532390259977331307853387555165793 905724000172991583288466996639093453089343131706161137064611037429373865992192 250140059866570784289745815265737214815998520223054743476130980093277602659962 580446497967133674590201939225807766598445719635253539019312257169459987162263 987507102553176951593464414373781008818309170010137065019968674009737157317382 165306487135631711069234044337220183353839023576938229822561362262339122015421 131983198489826681039802343823157097958576650525891838948189917909692385135342 422860163887058234939449509714335176631675592984629267700275105409349600153579 294858081570518594009834894625242833099350289792049587275082031000903655551497 193891476745892854095544955118356561506829267808434372637806901728843048034848 549518380081305771411444168775542258069455593119547675859246051820398511386829 456627637314290209224665323947599950553152510897349619050798126920744284741651 050661964936544479657368812419246856003826454737373399974687398976767359447618 581922969077140759953191036770376975464181414531392355744262645154760158445035 630005364639066862328563770634123976030309033263980640808027416929101278054894 892950428096306374314843891575745945358461988234997006339910949848537130026881 457303059385069871558316333894146987270808464190888198666695153245956988377431 395409141196684090122959964191960589307391680631970985488942683079987402539551 640374299561532216711052430085176965919128204588405482631995049258188499545750 161101087063252194203027687102731680345579185133766033909566125439695526239670 854968258665592779711713286028729416509165170617220503973493314123898286377839 897409914893470062680450618746429319524606229866603785233387395962520028950134 609095147269553617970604894442971233496824843624935766851001589303918932852700 770120632330139123360833134829076464551027270437673527818086319211860943650350 212921954328287478692161535288683470480367878145190629727545235461556443666779 225902441362019576170843481552587328219585676717550528582872478046208375365754 247993147036794080970009801112193872231833399530637037088485135425049021900863 813454272574861118107922985672760037356830166520397215335796167874380025841803 297394308614853172817935936666970149796904148812092747683518342838224525089283 065679373174678345423402041254109136341822246450902878529573532867002131367887 566643034801217411912973521023010739315557126095069646713143925113562381341905 735656702232961280577894411806769087427009181585256767644810407853106218272328 035858769864697008932194580224338121696770625231668785420485364423232874084503 597659678764694673735338667436403321097414596233523418959515786280560636893948 791517165327802524346591291526062508645366964082963220487757643504936606505638 614863753797433505492803448452533342494593276969384481460217633956361971978452 204400401194059714316863630588085417503892937719752598507334628032855364982108 004852998567606193242334369425106974785449393171611634801687145482621877408480 107438181413194404253408287563576927918401691221927556602073508867197055106588 566668520595046819284990007009622886443456121752104622141839640209638617652684 515182053875485893138029683599368194093738089097670080251821680182329930977452 051295508389765548629062007016920856008602268008916945058102811871298060032293 725453025000598974579657158196202985386197809307526944228576063752537909428517 135902990603385667702120993274476755176648872803957784326160245572785036854155 424503343335075201820536850832088467764111937863646287427447711414815616888397 402474632351208040586478547268813163808103147915899958867727011147608910722407 764288152120311757118812808473705957793641677168142314013625642166342728229475 118184622073175040052531418305209281992562135829610031843464760923754151130031 551765786689780136585131843291757727970123495242682039053923723367675237687365 431550084266641979258025427986662656541715143603603522942600598819715910030176 003107265870737850340060076133571276365590397598103231642985611818890915336362 425318439396576655003406206174830381526894621571782293857277726813164055241256 659212344516318936709562468597274928420086419912243441732365118181373618128375 525968699970552123785007892749844541411733972432384088674054531148675743967387 148197106866909449632795136987102527075967027644728015342848339693517885001775 232609217495906063081189557848164304125822960080964627968256374900948820006832 353005316334132717424542919037783999006312757971032060006144974153888821479336 209274138722637449175151706335209203957385245269105880620468977573096270460776 299883526847263221433923809114755810716301274269607216514626756338389091287705 923253793590780856986518938033951511542189915649549512264468311686531570074013 580040367878961621241963886892908556121327620164651582047555776348674895453712 345684313950947822554208931820938686162732943228081529148103387693907418418015 752107782547193815087378106061211206161256883112544183673433159030870268946072 549763788629432155299792913540694378670498381274447511439075954468256403265990 516952681828343629464174410411487513023575456475789089735180233878307066215043 273161872594996336100392807508449697560511869772941293494445647686526376012127 158780974119361057067335812083051597637481532776535659529673574980395028418622 074614527982311338830714864748843744036683869614629837184741144509972542309973 752804379830482534546029176037855714198353096847809097606494483349451534858532 970709918414418026260567711033312421170961841798091841946551506829921957167826 126483351371603635796378497436569696960786216436620245604765256371237334166425 070426611144913126409380644650718629692943500377960961067633217380144425995070 198927500685076894550712532198084896343926000416683292791651410254732579414552 828231302018848618364011803336410039198357157643855716359577941210193578569258 343835870110949757144071998811742256656323677974733974809845164664934274263746 416003042017779872467625210795041468042766906710876308423132686384936515765458 516626386625206861506893469166087034372285525494397101622205336817253766446852 342907676671980664298217126179730287587494405261505640260966854815915738883471 547201266797912046895012872112828089460432013439697125671959930307674255003903 392421317630960094717562729793225763653418204181311756986741284821340529828498 398174230843352807586814958808054953409607231278820972499029153651885505987186 816931174478198238933890083701633661124394163237262593635815616705876990227268 109014716615372896349113511600683626265987789027130030581000393802880410612330 423076022967069440488339050946793150742256528981507350049439942685462588587761 616681823005537621681666725426899364887331908354513886312367167387730599620787 261614140887522947396529202817970021720054649754014332108174659127688595462230 151419026384289629434497501349110391802713190843229415002169768132310078121991 907459010230476685541277096923944778501260544514695014952985323611334886707626 802592092064236373837891875151664023363149250539020389733755974333487806413365 453165263118494329197554720534941409355713781589146541735263006499884598996344 061638228994382513351588234724765942516225796085068231638269393402851667368287 491345779053093364179564300034547259959204523704862487953949646409038628352079 019942854782598811909787743887072318804380126071562460563984978439924656984939 862596343894810885000290032481176437647911104835412204766964385258388505675258 836285483904904474973524452210816287113792897131705668806284725596672053311627 188328371097775193085513008277662967511967021215649440697716983646520970477496 951390031368669072133097263847763633413219588531738593291034070142085815571512 073892921199148473114155050120574920360630901855780307186073764686945650041872 057923761045210185901578410868770354299032099436703158311029738808298418603621 759726111398506413576144683069412803194811097243256403707842068590581631024294 373429021049886241419354460563476453616076200879010833662142574556147517866922 347927119512439987166209441246999447622924402026072499015668353471001906306897 826174479383208938685278128875518326305184574109088364784851312203786479919986 017008382763231551872385117118719248301951918292544285939938690481872504781040 118237127656545342362700100840290837800252005471310581604446638962775086036703 731021251205496229396813782199573430491817979827553336186732224150023325437395 452272305328552858503026120736758913711103903996131014861662473902722791133726 540923621475917368531996580593956353865914306413778100481281801816672703565304 036408215716893901902596555081423197841409810181337484021904381918921755999298 613935737819494550592847768668867655563916712126218446155423015807593452437067 136613429716289808315424543985608819840623959822343584903453840803295379609935 287264415260329913135671918545283094979687293519304414083945295133962323856178 096120578896691244826117378519099465668303413676683441136062796004658021692875 906005130894420733679421299326947489777741992357629090975041630257820823704125 839421508274668513285982099417278484707169637598705232627677619508710213287167 784645764595716118834285701548982528900058017484514560394658159106635774766011 048323588154395433275352495156088787860276895605352417048349574846311250435653 487225226979828859247726671641927858152498206602656431510658574956258552791799 406472896183422195748939988591796484511136867794817077306420375630322376334933 627922935727360171967311121979264285437915357629246782235032377235080844070446 891522594554894125595563067148374699386490151445946819866868238956670271488726 421619673200411346408709262410869562854905885494418499202647721258923030921539 694589165473233000889893032171927495626719155589923265916045564403828888933580 560264791285879871283833271687275713605934539359456451380644293570701994883016 380411919143931310929407883197113951207896763677096783268122309647207061870013 655317994132752379687640687590348653893019927438597013190496397040705030721084 868918903078996000327862474282183302613098607383001074639225789114440673769757 248598231913730564927976517082009408062458812632448877572200283016770633162577 164504803192720914021615235642378822891998342102017292720162724687961403588976 649282873289362419765761413538214799055533176561058142015696317041320996805504 489921393882521405776700854978418597995463885098450445441774124029360437935301 036342837934933774661670484012509973967144633944004945026720845974116154688444 065937247935033721988538963789304840051642115866066910596140814850021219260721 360553187938993187183874645148978808864589050563094756972120580712389864207429 128077588106495747361939942193072503758508863992126163310485936750997695887816 465390459311344612695734553861190380500831588470180098421227379259468689235448 632836811418505848733613633760642423112112129188094330458150706088353573506573 733557956796023852310935109337000098238588402367278438391241690602766956622224 953590137744656635108061850265991757849697100027148522186359221546033669248430 250391297663200406904300385153073654610405134873565261223693733111583987418037 519648507294856951192223221646669270733592839056953737833625685045457682626201 152607116676289141627916056677614284069823123886017307246986538910240924230734 260911640599116357185135735219315637272181402547248729658221697194128014791534 284595082672189064038541950624301579794028309862264323266160925451380694618004 638617413169000904299650168519680979341212881546952361350029022049537089208794 619782765249404669069232098188295597827506230600529548017363429924334707141418 115649814697511804851032406834322819707853593689288476131889206014756535766051 839087446287580803767320866042054504660402108990778531741725154519621611376663 404840888953405670526230362444287523319663684277627536434380944720203827267153 505327060831779370961131843621879350343848982671293199762223203284182668230140 374268795896800372949616688380254088392278601398705598379609000174531566750232 024993229990101764157720071448108990228695839627706750166218467444593667277552 872203538217485670333651840851317897510646155560055946375454731540647055123773 389283903535225942500596765199751434145859732217472477219391207303341561181738 031908153000771084997856343059907721819168282209318116165857324230109459819244 319094083091474336386846624787512506930936126717804845240442970460891911800588 889143700359651702285568652570957473515684018109903975225274736648132151901617 739505709656132708467466006979428815944059537337008210224512376693052157127185 479053205606565081238056736494227003646096933549733436489250645620803066918999 323207166725844185331000412871042936751207062791467116309182885177818662126872 685720519490811036121435538249103475839744132005971683164335537723996240726866 477836454028489406384614138904099087021860552457696986451175311093708732939571 013740742782506694822005579138014417558304140134193087331526327760299311616514 778601031804237711719185846509964526336356034750488452507867786984409616692812 399603614376930070786598220154067044789255373872509859862326207400569345597766 652832597942257904884039681027451291265155815536490527179141417289620881105271 332585232594308424417751354306910349060244977585052278071079761215935582558329 655265857906752708504873406708754194069450502633467730586662162248804698999009 279921151975971790410147114005377633900585621514987387647076594322679809450746 935728721171803844255269470049120942305146970350388341009232182391826155861741 104041532603947343326199983455881512779197680277437746805182531647470507088879 209206503433491031820391785574973695556779470128880599167738410907919774015703 775249567319899328433373670013992684533926426367047728081752294365217477928160 988409730906421363963522288691676319962899803620219702923557455790658873023343 088525852207502197488183711260782723012610606955830876289607362110649985428975 636500987684476509786114235764306307769167529399251151697153086707054040096640 437125702375807503577016570283724134319064388180300199091964711264308475035333 764242327595446265736125553248091417415787418483390289246862605903342589488908 130133805681594233515149824674750718554565560740555311162632049728035498962629 416057205251875711492179601000829397722307118585489863263524496703279071042233 792337968561347722002360456213292188674445829515716530115296675255409059708379 739375924155123389075654064885683752162281537409401930986206992476338663129519 373888707081303736069357486535753780667059537587944247347262631540979410318919 198234430813893742791805266641141746081561357546673955256605730547866183436520 446479675093525361953654733212875744750782731858183147176721553829876189200030 525196379024182250717287028142990964981171001054700341058701630355174050920515 817741806336750563427043103851859692040009096912443551950649585479254561844326 938967413335544616933833508719699576562289216340820557996381486596626728111667 334166598222041536595755759693249212718522658249967216934044037146666220276670 446316415702401310422138558971650730184563151028269757284281988122881466907867 270977977200152788519285169768465152781171520686650692911225665194891434651529 009165817234467597400499867921843545951230793819541123603458829071092608226637 180344071422726709633190044975305859086649080598127014542824855886926848224493 719314087394636759620269363681495840551146901377532278512791827445333565501232 911657729634919300190689396157222909175166593247869281389327963329793167210703 412985153295924911769285682144849215715901363438341891723253848828409763814059 215160574879471697326857008977530674780741421560736214605045893058921967582526 949331774289461005080024098009215452642096129966018206671053637308578909644465 563496148066514751011207620336190778869990181682565516678664622488805813851966 166012099507365793141294351472687360559128369872365481545159722000588893492680 894865840246113262415567074141205632113075634873756980483663692961892014511597 967520834619200762783895641283052303376373525829112299730643531310549353408416 654017377451317137617316325973056686924478779280842485187250905493778622549261 631931870252904260170158458948247791437210032891347708077236841834492750470955 230216318428643551196154329902296056140713810035031023868462076248116533140353 311486534876098386646586043272144438510671496765456746725472489102237810521982 574341730777835468088269974654292064465903911267507248309201707830209413083985 297601995914551343587805252748424668061696761260041377543689401794630891376694 084268531082316764763051079644996821574902439787393571637112616726695695118124 075321414168777801846217824944092764492841245201227761883160965176912242172006 317257808207050882494893139365040402845240694561717605759266404599713689108084 747046191702185093551589529905007068477056146166140520365609097611530951607372 245721319800893028040240717727655485727549917036609891583441312602861058588270 020326902511476745554005986570833373083373590358112456030594181641685850728759 134181848432082218899019290463796239289720460099965194636799887639626489679446 557050663085077408466173385080777345443376898414679645030949253325660264241970 557189789728650302398628397918295157463171193159586816769284664448548641476307 255508876937503201719119682083904286916967612098958492328205156048060824494997 396705895457807797136404883100952370403429081906884048623635453274077679051179 535156326187786706450249639412968533757752208757124537485728405592325213719355 615686861237531679245474713224543439028334702330410540417216411981194289304764 203586772520256884950676243978779376401288156313409535877625178718477145538173 132163162673973584165949204779682079720152104274441627565097201345266963214902 502707263460306781250385860795894152473049423506040480160204692460208149759963 263980381585416682082942415824380257669847980550238206960894665052952607108828 856550797339570696466820220070065001153920050232927218614006156364060982785569 969402916580924713303646781025749060775786949918036844501025308498953364730358 595940588665993128848716278867034869762163150574913494270775370832364708490458 915350491750822369957579774856979010038397553269022854809906064594848536622236 814224667888712928764668151321220462603069436542284829988378838984529713235771 041493725815296327180971835886940997573403630548642810722532718779623867672857 758298419164096022291405920792707952455161774124058644521640025361437840867400 162486933549556356553028297772640328461086037586907775253591482092983677821869 738703745103592170277916538222205817140867036358053623997448559899143164513229 485218827201623310642347348279644494977108249925631592507022241471019365288282 242848498108542342456999004672354507393947137189491353364826246065808594157625 558308365678074136302958650707416907392938220689714605697282895340834653132210 945949349631281075168366331240123941413884402728308925422207509092378030982067 035010193933148507285039270439118082966593744739220340469310595405045800346920 055728053133353203389454391812822461971582410373463774365666214628009456578124 027932868148354716256327308973546938294144285325671617758093899232656088603801 881599382288325222647911353963342904566333894100375346824604607537209720864649 882177188554569823144500274925154774059166322376615286449174215595872569425932 036634434413455660022540020125596629578907739474128184372543468756984722750265 238508651759364767361399933613958354706854717696049796795994970531209313715080 909831968138285405695746743815832509636696566347414226614828078707529634677248 253410273358383162985400998091528058805314025161699542832979764992001014809103 190572673012129996202675041951251934298135142086875951295953551171554973995579 283079664201063320606686260952372224807553463981607795539985451440053950264195 099841126470748684281406276089733731711893806613672024421935616823436690202866 139345699311472925174577775087273963719799695018822470767528479739867293118431 741740139945458793239249470389500674003064243011918668178261358359224788576484 831561717133535507283826620349307299743137363763418035527293036534265553876325 890646111861723129076863566491992286392671203241547295343697804702792671956858 866116163598184406229203786275957723774727625642901537651487587913966339768780 963945761696926969447992413000333055759166940105612248030335796964471532745781 139095420272534591462819329674191781595215369889926985327643221696159237628475 248369332064155078588035309341271397982242567498002929376448513416571662830928 132604059461375170468867546723549642252493377538522947612853752792271542493484 506929894122977911837279735634305342577876108055217145557039478891425543184368 846291237194220357915963010985722261083375659593457063791604975738487385373838 315624500862534362191674450039859650156812862060575760641493427904914780247762 100808931141411963888186196394229727118775960234217482480510782879126162194594 788641971447889095284942114110538269375904234270243221626461188955669594874879 334542519732777274233345903378326546836436398238948106690497491613541014004827 820558472139463693574364537323055283477784997230304790875915177119647882141721 761715624408204483919064863523363700297849553240374883838994417681277003024592 489833564858641020243020316797054254862616868023237634662673468143175717745064 862701752975592874188338668301306028926764819386827767154919007219336466156483 861172909197865089136227984555371732649658383092684635652288413781155442218277 005005833082064824261605511434414681937432129264906761831037679831067748551340 622520106070456235829841079574742709135790609576591773818784423657221749968902 381300665483676276465511485178027728968374723127296233337667607469071181890201 486482151292016342406324139900773157946787952592510233540730498257373914285715 402835488298249151531646586933593637307209073873347291313895238455774769775946 888322095229276644795561276669932090144207811416333183521884394295136417404768 867796317900555619159000613364699544278498870723102602702286583851378274865436 405899987753308301604028969255338535582954159932046800409526519288721368539681 655391548585265416718670786719304256277069185308150806463767947415993712099292 635360075527322419001239566742407801623765829496599183557071990159581168069157 429754930089717247250132927391182524690233806712397041464046651584983530269567 539122969648676443492236554064464196646815466652380708913989369222635523464632 847368330289758997597342661796961980922972339846740115805196827918094813330638 086537585707151080485007688116822085347553752781942930243545646030325823405712 362195070321887571255776491927844643500118487029008869607009050231877395130038 845881681270083170002972954668499532334821673850151548008108185055242922815835 954541987517876352270978803104443851031047274541959286314109029938414541820995 940599824139789706821477158969357267474011030843385192496588723027395568861552 988277943847806333857325287269599206600065137233184931245359456513778067190882 025761374516515523373922667777049201306869979113594981983150326907704394307219 350198961969836586659428991603868260711724539467432505695288469357075690913125 643165343483775445108043532237758435780303880585497469739879455726894205464221 257655873249055851251836780052586936630013389980581585557624950205982958329424 111963363452821645142486399563063285941429184600707068878427153897620701891894 989577705864786527545429009000771003476630382838012184720881899660028291698158 970238411221390465662023665270496607350252127770231306727758720046822728471576 807250501736188272384307960863082007488044946917272919869532868659551328440309 184388043214423423383995134838109550510753128230950167921313619339289404540716 956818445726215245511542225409729448798789133305968371104035545999419312302466 969276851073699971944417754118034895399001053716929817102625086974332963040864 154095341136645076608034363771060273524523286787416957087692678921608166888691 995312089019328273417243955570588820393703849652577945731344719318620728132409 572019225926378563112592616967953344665267703299343199081866654601624501014304 152463470339291126721429561619101776424697878832548466598794896856590965350972 849189255907054847162563470099048569179705364066568477241321214580044419456131 419451314486490218619081368811279089783561781863382569698677038384182034360144 875166791601540909701838349457376343103560833581385292652593299145905498547317 588124592167422983216081603925137744439285630799569735023428259268251024491962 689360391437473005459628823262719431902293795126283203496133338997092410234339 430446742464006220324820677020560288976351131137172662019941437571692707228304 856469558549990766217188158626826384200100098043069421466787898580969131001591 741663978304925575107093055534853528448571009189426988979187179667728052601348 331175832130924987586937423056308596661604973939551219457679295768156481971410 110683732849684774345696092208383410414763760066975148621473745731856517249048 749757747644803530314395513581092710547037109500791584784557383475871500645714 125178529346965496594591349089801646177266290002974339180645060171731604661303 032701724043417715079128032437918143576221227096164373685764650608114057624498 893219584554859217260430988177304214103125918234608694880965281238776426648047 738134507025578591127376181426607793767937773032005163255534093812125074224007 786268201464398800798603086528669105007249240686679203852666323755123174189734 878003856933565179158192843688257129227353984122212189010543504275527862648299 962241438162039188079719881400808870474034455950535887351934317121072782403478 982333417077117412501821604643152661321160466747923649708070482050023875629976 431221775230407039444058912322238025749634770349002041683528207165202094535365 981771113781485447000445494281441300238591032246351579053277588706634326853325 447295378604299816129505335890858873849222014920882988852844452573190456630098 965482914707940349863960816779101094347664882676623506290007672433870854189600 711854498309955158002445474113471021656604144483348655685389754221921310066835 702816426401067959341548295990264470957021438077661067709068451297070090273672 493409814080337721799243278602472878180530046512623367496940879679224874919916 031059615511072865771568945868984138793540913514426260690098720975497454996835 674479250446339330224266372761934936880692483502897833204509452151601174192265 935954833304034592151111183364886578374920834982902570427399504932262684256111 695945752581790096671820430933900789929969537856987260130797844921362401581010 547841707400004973523836360823032819777322209552017814847711725003026742104773 916441298462295352077237978014093399397280810017749036895331935931803982493883 990578852294727437014718066678537019051424902010023327204656760336481268231879 613652157148165732139388118552087240242274168156597459376609423008621531777090 318852525055254569933087701797059503867881437643044487643200948862377958602393 357510873485052271484912347335552937008686080273843437937972985006581634148307 861284692990223152138385693540540239172176154011534718830668317686049195474695 698442079860880085646428758142225616690302332312291147297600054528314345782956 017300538792459776930125569338932298517471723893449667183694666072331852309476 190085071187640590872059012149976154591925249064872495195759324467705486011265 776085334881316941453236596216239132743058499661186297080060617003254885019700 759673724564481365947050008692674121586225552069031950463553212703397844285841 359660926771954957940444705825549876506235931947763446154481350514093924079757 163949853481625032594395927852451638711996939362989382732409099101834535183326 493464240238370515878535346064573223343089930153283671876632207748760736624434 980860475842318654286469696193998245001932823983361499472847170422301725503291 273091142797451428657270260407350978357609351011989155736098082262693525485720 055607186225778280102109553843446203828754214893991174126724198720656654447593 777664892552828028713409972184451649722484107937937335248552754768856794473945 808528556265625389712672315880764267607538090602981040415200397038008264757714 779106960389942674350560008915746161726728596636579187732348290614078310244144 618845206045797672063761044651404945072846399530184990404954206919464148064299 145411184835931317518474938109850737407156953277336691648873211120358277869989 623671959791180949902164184825642317793262071242420405120291430852787355536253 363735075697482571644258014505518547911123708584843724437638327028013495878489 619927392182022636147745254946707742091330531798939094621345537622211597694975 040696723732947670704487275334096234721509995006787761658338150643928049915504 848425746431924216305644014269890534260685765980392939002122760121033465426443 899891176376269523649330480554543458995025373319578572426658488200684072733478 597578563198561933866277054763451485447563306758882632668466727085516398782512 603963396783270073798796378657881246470506223014674975005705074216492203521709 160001829062031789948335987926557078360885535944558711235889690655573103376076 011598182146181414736878662167252719882487878307284896802474765763471851486108 507964492317198496939867930765116466279963475309077762199893196290793884251960 261171415453016638042172766312237512884195808775639542669216892547794691763014 171750409968716088562299447415678587694360383848860642652938396642475279827257 141851089819367116670066771018592594598295594701318556978461441369752591290712 970988101836054825576775071237423898332915405834671441622126965382585510502620 476450296481588628818259175896073031871518197162412881726525568995014000705278 221809930741308820803515535493453314810082450781908319757915269775251307446801 284500049048280881024813016632224094744772904137271026201849057120097876931046 508270313165171911339276457572853388173341131896674591559079404608757756329249 083877271720930631237743700973982901569236318388357241778357461049821656524140 771185213063905090499775082217824921675460664629259107262561896448364377674263 475794863427514877970505538227961142798627849823295109161510411592998417136515 870820329206265390615915438326019575992287684786564771792381869823313528545011 188381134511354797363882430845226514340789156785937829446986581848727355804659 551174570895787832076277071093264475443777182261618354960813730095424987895448 346028805982797973817093067807054132145780852177821203818820222112860597012188 618849023825242040874788460782907751286792117787217129481292904271358265875657 061423024161418529733578043493045422517001411616390208114112195369701951507709 976087806771484842457624605118835826482676549970404672191508943612866110772308 066631794840335806131267715711420351780592475514373869530396634052633368493312 078937682395961710320481490065798939484491326263205872984772990454592729104386 919512695078023913358291156511040471321552277721429129701045551994997084604901 156335076349048943604730004008988733841430604098794743559146986815866179716952 720777305550785967508562103656799540561724351340108615372952961313326872907056 125189081510097022639499858293823940041153496024198808427157312491011642240171 838578937070857446733504709540541472211548305599102138939142558942614344479867 887266766005630188737666427258348643418285301831481316631076559413383153036474 766778095998090753272849464416467068992513214480895607149309094846984574067951 494054145119070462691552259903558357667752752059940849339308719592035208464634 971154594784884686803609881596004142201087117709595937243933821585109521748857 301620695298153233532765610448299064770437879286921226708055525807627262452346 499606371505757863910986833602815462871218048468109002733078479223502054879920 156608000173517636518628785266255745223488050414797627613500322493102526691034 384696038141428231854406881638722137962113178806117590859484910649314467334185 145811080809332912898324170082141277135857086358926163206154847721130853357354 239720561757845510123542230227496637140813540634275858190850863613498367638817 683305292340569162666909474963355435527843737397601097647906886519699509713937 475044288015282133446112572039674217646061333090817535439535607993987027793908 188193017949467144072566315956159658747787439803775568489547631721226516362188 758763868820208110243807456047547495861337841921609312460923082746129519064334 331543493025327849142153703607412223834326466453816140644349411763951235551018 853419499423150941534298071392598660724802049805814471456908374758791369942313 596553963437718075894994207756696604444652106042507074841705908761838619267449 762427578346755583586880911386493821974140550159634823039051637763632195814872 121239838133732445088346599048590327981811863245323943333092479757115453102725 662741780972303352359281739854075740619436194955038676519442420207117353802266 543527593314869338146338575862924319369825035279164761870322497147663343451636 772370933776669605979262333733786440522112404932560296304195675725017474817907 564115987308100099091601706564378818337118729133195199549991606224891645999143 878239827696990670351616324834670547151342715527573764472078797522268798522544 919633928229924273814259667726203979088262839471796116870037127808573144085114 170018470087751599943648936465951431920527582838158995677746287981697185044414 717702835134224915963061242183556819551702906711201878268891732115510010818545 049909993842472207904390937441013242490970957601837553365351324237507981488828 782559621907816742205088298974768301900736316284656726392493911844984620630831 161933783189768363047887205046501142154022200228456350322781603318350772151509 754535444746560070207799167070244250755172370986135299868313849912248225764893 816724970731782754271574527419194272097282145859686387192541030527724218931640 689309970477057216755871917727326963708368811748931480607671009938035947860225 601678537225503167843587189836322702122434678060355605041083644162781179035090 407031520466907194502503242681386959164897823792285567515531929380939106811890 697740493056456297679713156711415814987463186942497981031067936899102725379703 280979728880309634455733268469095209673865623421517964439745220747606560410153 980670120416163875148591875910791999537994346657897788760108163716530465827702 901568360820529621127623497842709432822133655168683410216286812709432171007877 145855493048796254434873235268777678425103573187695077210184449473608929192403 232321178256369030529156277983353974208875177955512711788661502972795496051891 298569676081288344192339195624875984613522007100642395791142843456226832516204 577452513613701700583456009944062995199132748265746800562735403395258969617077 383514647659089534946822280074199904798800946776777914559171833304268741571873 210920061342300472273456101201324879867208807338072300175293419832808071689305 934760097131262455127927970393481022962950478190702506482627178564796846967101 811089739996917589641806970171188962821214905505599925948494251525983603428798 796370156647192228305620636319248246158044639773081067732752238248524124992844 179572381507841978305419951081905745704828021905415782330399580340879510767236 069583066862558839397084867719243309468374795540195684731813866252847119275750 479488655352603913197117131853623165578055165833981731933126328610325094015107 124829079531736401056600821308828132311191303349930496649745972349155706108513 171416234738556615432742962852388468075891617168634356664342084969819680488612 149249760802292980296716939433394670047503123195575661519190660036709970635529 899741695562944774828195136430173517404551291390388848356770182305852751334648 467778486065735106130467790161993190019412236117722027937720011017214956383911 454427393616874855505360745456494977417610063587000189115461304685450120392101 145038867472247842601134757055076365626836548014100932210998867284235968728623 057810754346749343628171340603393084253723789237168345524325291322992762858760 560936728580891288696816628074417779287579998694623677065877617813578233739552 460248333620907307693267126184183718309342438139291443843413370632298724762342 968185387404820876598441928610248616398035487235995028354410508532118070952413 040368240606021077668206439771175199028013713836845509838178649733144894832087 709666005082513737031814488000029497548631564109045298450855954648146101761224 713118916399917513842982591358926287896143857555467024464482607341325143496142 506666051383861757884352952872349725840218413763851993595961487776581324336058 175837081517808803851360097289190817663309079417637356553666982886391063983375 172113653898212195118033795953674421318440962920223377768718554874876272686453 158808247677312158793604299489829005710399503673657015523733402790811690796677 009391566996988770529151184908711149817965824098891617929738554646559652643984 776034282476512403478191778730676643903617895132844501563654432150314819906926 080389336504040435129157886877933884469733375302162105890394418159344084597867 261764014003111484098605276751938192232719942578666088004254292847766217483856 948449263658187284050923839038804544055776960022801160257018874646000872741739 877577773925841241935364358482767055335113846502429990263671339838448201346336 475673422722822269218424316454751924985680559969151700762127333216898843632377 831845031199526746156609332763948579563735826739567190212656358795932705774393 072443685515289642696995124517728777872171231771854007152215095462379428482624 295178191448369145327499443327822954477184687971992140252451294454850001487712 772175483127843407919289580139280105718704705033458322828772199694419386172806 048542194444077488812048880541366208963618694377540788955694512686966913592841 522056887519313095295566913507639813592631121488931081512686757613810138745439 474661657516193930893112022318146357608256378071724759475628312067380455832789 526355705696301612422479243006602287754048998091229913841883053432281706335300 263305554945689053186222547171690456346193081830740311438210918679131256591117 204050972358486452493209170350588220187493239677084705461304250099851174481850 484251016978887069285500760600218605208314900803576442609319664116783518990342 194152306889567087998245080281421268664374302571548342016509118321409419313311 019732988735802426613135624182931544783615376977646275062504491678350646755807 620634712274491449031265720525220181072431492911879940744622319666535932547327 321636989751418341800633842256626225531561780680046424489744564604952642962731 630340050835294009143846473174785899026563087888561866592176958911258656605569 141344374234883929375093521513898886157594303096746959482269294138402818456895 295340664048778342623412980614909870163448198952314453965889191560509844105630 470474715941377547501482118521524843772322986069502467362566298616424270440601 615155283124014784863040132310392130997089767874984270264554970501668656247134 656803328792483770099180101903731103017050565716259309192092535498777331089651 745923027236887970159875716241537424585058922463025190496351244818777297035454 420279755046894588924709169287038781414167519349845899896688571314410524981487 529541083511867493351684524310295870576510007644011326338029093671218915815786 313886032949282845368869654144544108833151323013553056019818725578575888844213 580054002201971513343675538806629499953115690033779199657405794599533339222806 982295180217674418441449033774057754893516001404684344849969298312383827878557 668861811285784394618518993067785019535262696086774649860568787018144020222594 835856248025996252421153027144979342682039505950483332073277653798231757277298 497320159983500060210987303214267553485877912664146932188741978303595570979124 389056157238510828939424177851360081088514187784113812807196844078215133098499 282803862420296758977152907024628723174677732178928033516043667885742689482692 317061850021565493074006096590833060000249618728320040202408262336019582370667 763220477099046369035067172065335732241145108915546103624674810354441548320930 346647599298315694785128366439794474568425921564811539752560089527348187104733 112451457836610668434441279972557044572260449066925419852926952961997685249133 005161217793221500426277212305581500933593458505938212555651036558094865551704 609852002867086721442866444770925640074159896233809140519997546947686534334416 909903935293573042774765948084966423387767528672904693771187105205657643328320 536338540472713805154392010647951359033839582412303528494007842025586550791554 129070565634049183439898088680570812908545292491293378192108170450200285583451 452782661565127647915289036403725283010910183664968498208901435922436129372378 824172364680296721959358476596585007591189490982128339697124070843272350659352 205987367175466876786527823218554116893623296837797146512633988988286049059532 208622409724680902412944930588383048162747758890958659772952169705836315802722 138694500399650068465773336174666238586732247763094060681341452585444736455280 538620137495349473849750119756252556941642998299471853703366437596175776581908 027977462879515528120599535166446073541288165070096432677178715551441863451244 703220057607943311450309446160189821852675058690492384548266679408208879797174 301259428391468106765933118255016926898516296469832852824273159404343692699734 247484702248875646378559950201634082220953164929409012535193378872187504567809 669513225601388229167083438253240558273255786821189555669809006410440352123017 380384806212837653412095455168571916978530620611740444803630122621367256554865 323943440748644349916488961793618488378143133861838953131131029569874208796048 093820490626103048546023669756776794688803278616853130678238585309751913451475 316819491331111549678225075142701507776034907029117856279036991063292375015476 568746765813560632447015681238685646392609662094493934756180541050093611667436 082281588350198771549179256893840533017666383947662478678949437272400611628756 719152587344659613652704797215544429512641717006752887677959490075597105509643 898002267659144865080128922496112665248518565495070772998467581194624868788667 400144782247476981786197350638677259508785563320081567172673396949382773494832 713281905422399912916537389144408483362920932854082115960445718357957511716279 868021773951410796000802497064047101187978350206742592084878626572213438614904 849612205958406830249630572879828381656804694047328497085580412940648497670668 752340010604209908267939295571686543061268645935124532640907232459624050648532 247073611072601857528410391570728955135230275656522246801657545841410344604212 315520735506866751974819355113360266511853628288148158074829862692914852463487 033926967305374597365760864712465102812650318575755203830059902814577452063521 508614881801844398741667653882266055786968304039267700799989376044517649976557 180463252730617750162663672934185272667441895774931368901627912324921305959514 705253015582210731010271363486358495421771219572194453600188698268409673823298 701284041546829417382622666900829893526037605518995566658007831058171400341896 171067894005749907545066190438675691771019007440255051287883103630725968767874 653247956061299552307367356280977485527777782466489500580124252354842471696942 235289623010711157719726453246789728353669676376719615436681292487918199563499 879695980472759648248455985907315173291440991681462620627286853186134634300902 022254468941082172070358513918637276461035018432844783465520329958643408568815 447826963885773359108675724105201011950960609481862670547447906037918144963447 297772696033765699135284756373082222593347325955771574535473150293114246417906 980119949383923528535389757996625781316364538698848331676515994460544489708914 059519771357745532475810938380646368368059624609855031068760454723742349492707 329385185431510638247827021913386304701162583675621299918972782640935380607965 995778028722128172812828835036244581943535935067397161499549406476670069938704 653626542317279823784561545869441374433870938138372876283495821070524722509777 455617103363534928402825107963324984135382003371953391910080257832141415153180 817809700321496577211243415768697817250013081082580016904280672306595367104206 041407156049658110870672383949783960973740384118752005924657284113540971449023 839092989985022703264393869287725302354397984235040527578567354922758793147334 565894616450825112306024892342254601537076968545776995843858529458202581820650 222037342608558248873979330988973782858191513289175881900179712255261819917203 626561979747195288422474785607771244047293189541982321367642620260376566818123 648281842618260251824418354391064069911567497874920044811403782387794895521845 731662888636716902899525784898429791118057028845160572314368659242319898522149 076656758770013746116709388289766458044173976988671454422242653164198053449916 683496282054917750479817615818339672131066540332346092120620187919956764870893 408324989864956838529685221883704739723628559788948584851780232829546827578105 219669891777078453073425626521811523008077765304565192811221936639883398502435 898408195939910731019186202014537010693887208699653322597319166226949274081117 044720821713001701337161078134326164807103603735206794753393663032217531751601 452809387469048543002311310507161027992299606742587116519424862124535481698306 443559425648591374907085544458179574446013866406066689639585585114594533043964 077660552908862476295887898388666136607006569966021822316277880914397247941277 232639895770130862544526213241548368835790783360451126678628729691527358333739 953217471100066929857612260479953286824030157870233810129708525344757196441247 224771482560459103499315778792864082475392834023827220581244257818242886780104 709048636063462698439566480923616921014193205199977655952293183827252284008763 698742326145742782703895174560957557920531673582435981480821875094286017532423 719952720290475078530761813747875316756040943210748492926745054297412022591081 954651040578283800538733650993134420021274825738018944045043280834733547426475 066735389321506605306221574772790951420330764351275142744255596608053568760580 132196229893258961453496139790328313523328106981261729080607749223869448902599 456908036143948130457995933010108075057095671146021713037284519158704650016358 846206240787880212060173661593217547052931964590046001177439818464860252089614 556199370838987734366852613190383652741886706315040669245631016540494624964422 071888841069394729742816321965414500877425837436690697837407108282825338691228 218972331107812422954137065426512293744539234469383371442216290803052269807169 461338562996763459685284075724069288587028961857121834438519642651348968960503 356825789412441732735604867548592754403658802573077410028688525058050163113291 791684536972447563685390300321798321665247971609271404271480831989658676521939 922889580980408152681879781595126879968662583410408751604115277145685050056455 023112523131513907995084530336930332191807278683845048267112066241410784376702 778737606829416705535223647095137732272238473651110846853582094123145563743970 281288241850632106155447884143774057487174669857288657940172315445375003324105 742467130011994490814852566659339390818703903741216307134350722750494938487493 838194184378328824349189008572885115213305123153203069302452371650698686867037 510557708132545722656461538405799420045462772948191186280101705712957192381454 029635288578828036990884545874295221603852803999105235410282319733775831910832 902367884216629563781103581455797466800228976517829476376112893055358912801411 065609463928527326325687300876001984663356447665055529836019828743415093609978 873730440969921127847070230506404788174382004398689568472735219574088634409955 558303693621332977985036475316189654184270981460789076703734256010638100301048 319095070184575935212930113840204317396011398018926876962563157126411435016039 301069356971826989485788828014395424790372845849827637860952935889420070194505 557402564853018480869351005596594113488434916465006516023415956749291749962429 294773899333018086246737847340641396278236212108396932311324620734582625633706 123184599746655353251201780653712171662977371235168481164057385221377509194607 632636064233978553194611234238978615851130842697090206425352187146819170389121 116967149049117318111425903945423605703398099796953391561509783826000553225224 428727689874804936106114817309911724925242623004132753909540301866307491420930 169172055780247600973457109414630637719682200792403062687019353323400860372887 625378848997770032975701850014224392802649120971265551426361601711655481464428 024288314342455190569080503851799479636626440953977062833033532551044103964813 323567611574743473779241428676176635391046785949378683838464441753144600017079 276102258487870814508253375864339868438419061987680923625164521297272121602531 128416733495470140667865124058891690729512531052299085581971215273140401010491 540903991097415375068526864976804382220405677424990610985013753128587537826216 204132400275645455716554867536623810207692911815868639314657418449283801535468 082085989692178814394465424412727157241399432817741035136797690879969573955834 905327953303727553198266606940614019408537129860642340895147856346505946430316 741204387291342084130498476749485146028338609659014051093667447310936596760069 471785434635770189042446374808282919187892844911657016311391978938932751668795 145503866601114479363251604870104097293549061978337378000097834087796117088574 889722216615540533005596569854830549774211171374967484053313143057179434175676 115625379223524972801685532319769426530373345979276152106365862648610962587048 934239028382761657067298502039223105866643867314140341057577602301967219657932 885404139226474101487076173127835048641287531723858747289647371478427922421497 714675177580298741013624153603007686141896013208558995456028149700227211966843 444875806429961805251494774305176575384053700213251112927937616417214760349181 260498148853708994470377621995124754000837123719319729069606440789408914560200 354507972340372496576389609255547608045891550814346973024528056553382119818482 916398914599138990152215454068445222774390665056371204692295710206281929705259 834101562908987850955093388864759452516269587552714357229363178055474336279725 163970264469051020242676335824266079262820723594357915438142758010021910102663 715907125063089310539931012038848625006816922247359780050077320862533935256137 940494853199966591123708753782956815628084321549794686353793752448738762518872 913527441574345511349664964570556279724465029418390092460568863601399645269338 517566539269560777195090098139101622893989440651691774501428999158747844250495 347743264356346139810452701285537792049587747545654902689393249702908388986127 719927768781610547190821073839938328450451063685317425196055080356909170580510 253403492636064332431837867360626197364631266849640957252360633654713131942159 331722679688291583250892926387375599530920068244032402721335158300079929914642 338472638120174898206202538232068608404739983221059746881091788953228366070461 961933288254181464057206576187893868988449068059577837417138098269604771768488 306829100178685978305479255367830850425943862522648784055233222020426458801025 241702968663056545025515482314055741544325007909548730516575967314315918990336 289629042713080085756468129188701416786865900722403343825388714753659640514375 827585027428419308304951761494373343585888626848863106337279152597994842542285 849170409164302213875148788741351243657149253462643310128536000527378766657923 612502413767234537417419262237302531762752850534447107080766734595837959957019 475428173583910436619645819305828417933407115136871353818402082066755292264966 061455433629822195139212096582826392409938318554361157921977824089952158194144 956573624652483643467550651418433407294215739507300558191302222916555271289909 641202532078542024726951360495824319103765936542594229782042001470867061452352 185276955865949513893344029376355577801533060555822295761019296387221859984154 252197697922419857807524779773030127544324371175791125680633467672524787831105 922645705260063518603816387118183077662556764473053222521870320848591143924170 078214915983782820820653298510063660494225858795944959294913476226757163078022 397604951698371031268612040579904134831817753865653566976726045084284273594382 046786071415258138724358055381600659573652723782571563008859640762243064449196 210079704062391933897872874159157355317859108974661364595920517949680412959177 588571041689216580190242282159047183234422867001826892664891737692620571959506 633849086106793127088093333537475345003248204005429884602314725890028461755233 772674401998444725015555951820227985227660451785974534873661088709983830687171 044360107268060661367404980456915582571295917443678921204662044155586883496137 549828298699729270175125849163263645658352872481824718622475014515353474365903 057673558140007412589628516796592980944712137877725450281789803823188582081501 651976953318500863243639771318411748070587919836150718738068720022005931227351 527945364116041468371581269132003266894991572513510015061689162579406190505222 135809937755226826582614554831431571720334833004083791019729610174964374918064 136951362240020650792898632658712593333633900087052018947971449327912098406628 006512753304469869310307349201760229721958520570057495876226921548040910991092 106339523889951434803575641310673671636196987988396170427923250823107596846372 573534917901692214473110923292604283389361312619610470023155051720459659722284 796358192458115616865300105122410507556727628645069904523269506040859514927457 482832582744512899957916081563130426660062982254717293028973794123587559583921 953485668787279015852939810618953271571922385274251402698723314771462023606642 502028752034387904706843682453450104725907619279622162557681960060835767032529 911120625569199617462386447497072810353138316632184001890788387904498866603380 609310735644787725150668712020230702228218502034125704442490215563589844628984 678591738840417708485389907428955485981068196439419682629273669069271760245366 250094108378134109167994539926317802603663201087063904580184326027698929288934 798984861117074266907404942497511453483388321075344158167715600102509542206278 175871214461473796086202807740305974213722786078089089075067252225811624216885 921038572873720312246981345358487398591407984738872346324240445161035733542620 842476803100597776034125642063693061134884130869028240041535309630082500347784 611939787573006631800509583752186318983142431221506680656040864112308675373170 952739241132555613578841621250831913726834637316613639016916136635788202714646 141078026786229327157121059061100847036145026590885318350307727736113202909157 347131759257239817986253839867876250993118316250195267362565777105765380736964 307657781178987619279427930570467725280883235381597078662703771304693443022874 535497267012148763309624444227688666712056627080830698054026978939774864106954 578688813187581170069485044659626570771545442790504831467508262727477845749380 056644202062548781675154932406971588490243033046833887062636105242624700817741 010627913778884565022068061123879044912658382243168346154119247220425499595747 108778720438380881750146014015004558574141711345731573509860504625460737774955 830741871214447787960791181980193873680846134294236724660750874032078646161666 689042246578228657392243903889595160330320172125396261546643164299694809816000 294185947028415957840161071505487946053905907908568809126346641937469474709267 178364835162051581170192742167626455134188492200207302876121153462029068094487 405613865486430828336402466084851403064438650100369589764487872581717075075084 298524468535077598600468345069378584133880832031857352674982912203886534689826 709398332734435237711359041915541598191223642292458370883134271654648548975632 068818127447791086246293224604417129642535613328078804653080344260756342313011 597997121707585325519337883421135611287606039507806802928681500602195487700647 636611310227769450667876560458359772433140986695950458064413841396807724797702 812407288045815741481114954105699643379309041888086586275025211026909360128929 639323330912387424820724936468855102180025429604368613537095748437273348681046 454864401564665512112615457734242105158416719379614190755397618713460891602279 206184281901991285847337096084426994638595939140671235864658041879800257692364 959615850640333294801485405699602197921536984320361903751804960239654619970024 873400013087074487654891419804237146007231423100814127808451021988467322936404 026385130149840282284320436733661696807899275573164683619174779489630698263722 964825583185846918681821178707920521588895566674497260693588248594845097576123 874831258247953792566662230447423082711797006535356140466370088045403712662300 569171783703738404886041100456115557781785060299105521017048591838009185957867 688596768647192638439079718937529644330163422893269410984975029522874503724886 897616809480903294775097168084043930402716796486015780327255508916969733464724 909650591619273023694518409004535097660903702666832996463832338995984609295644 263645484663526067108763704311796652798872592026373688866873926273184536343682 918381912185223525111146512482783004552654329292837871907142683597342094849263 344602840328909893381624387754740784417702735999787430861274983267511663056080 362394780801914142070234381309673537085115885838456893550680724759450971501572 952392818895965934764603284741678676009164865199281029539898830657031260574675 640782675611255150163298224519610806754621667341873711232043239427063386412851 321258155958730949687114654414697348913878478920278684462977568109011853216513 114497945397488165056020676157531204909194257485263287556504167994083190833334 608238772823181503785231526211016001830961139971143213630980544892660729598829 592241944475090964232832998091586066760910375166706360329890809193069779418908 701771204438819300393526345018950028041847954383866481747021115924480495000127 315880608105495300014263832587894377451612047425418321379984127777695155749312 019860936179209934103977807131841512041612253169381087310050688427643321044440 136845622173074410780958903892959362058508754861904702789408799333861160391136 322409757577459290168446474557441669219624465704134964946402408851976948715457 777996832330807271968090543641058263415845386134889130697433798145706188565946 992380422976551236966738810627895817710442346679133432449626764529052420569400 114916286476261171568000164762680729420865916936164773156092139807298904264422 977957024492670548300636148264498104154460984637033511773645454961594034064451 460148361915921250235006882375584269334391581715486876273280439688053464722742 616399389721661167393111022332009674594363243246044778520777117549587164639302 579502797325889995997145161078734943772047677659664865130990600807527573134118 269376338515641574606614550487117852906458823391964631498444431015764633465936 778807120787309978940402860004510787090790651672277118700276752866941503164546 728695262017467745986465174047003102243388545397077913024822560513310676072065 721677128278214561097007096852902565655460738826926299404815398210974630867310 278792920932525444849138309146386977145402561754599267302831488517508287073459 169704162175051013048634186062121416990052001320842835209417936693269257738535 797999410682121908521874883534267756717612020852763414860442122672724732260921 911333692596109112464944279091714977488147572517340434240013052416177983624456 493999708617792410161277059214260865804688051782585779364600579776226455305920 080656128846287207908032432614912829302761813421684042133573573244705142447793 941630745697497121819832938623638798185646262846982741528652273588199741215815 295566779141776834369672269476835990141214693371277777703698646295410035524516 901278132413650696356936567536579995882348423137838982152816961934962367259339 622072588999849551269875143121178827644365201509754863259540842629318802438558 236383363725876432945993156979798239803034686843168502766317430921387539119204 373864110579354739351403101203067143585405058865608516626168731031143985406782 477613657787252666512441937587165992402299709154957379506539882043452609311039 033192351886063686179153123428001325767083590785768128343599832225705338110650 828829470375726196446862580095285410181691531112372637322381527460291462812290 224158012678706412115830247335993756472578045562296982787985937795232590295990 132711796527663378941532386560022466098022485490225211145496672363835326252549 963148977756090803318145160084694038586718287492683223569711769024173699573811 893204844572102596957973556259229586133510937281005670292176207879525098907224 589382135131465686653377628339915601022006616919851492786498821347242864503716 317766278335617557682259576640116695547801784798279913791195516429120226675436 904718801574859761548827852166238797169383638746503715592879716044383157581443 535199640402617665459300825570774147642277755096283014285992716727178472153152 570341042289180353487148777353854570290178732067877576219727864248588324940879 258105179652526701384791953026156647871813388104613671515824192434083731464905 340251512920006899445056129477317491643843439877000739798814386821262530153353 775246760222245206949775294953688477269385712808849255037286624525715223953908 923650909184640953034945565858105999251450186483640498428503020300417399428112 338395979439076757496435519134960350584345645093969812940707756624207258142862 999153576238062408734971891531539515542938332804549071476945240147749363021561 456863298570650555689589477391469658816366245294397690461259726825782392727638 290160830641637428340760981117724265350653061044062013192079959526623751592300 651468491932816426332566079944301355028681801577334748030085952719504463619020 770605161989710798907547803697552316334428831558278459602090967177906571406251 130209303440109722615091435534999350224165747184975005023589594399763349142070 298313753700621993847859101394801127908265837130707890437973261305592241167184 732159329170745570167323232728401499448229102173390339076764768407387836092226 235361735120300086962541882292745526203477444864797136864856870621256349012531 645999093115263558416411174659988435094052378135418546408722037618911845446840 606258062082635306297079597032306310117634205255022570851550532131456556214796 551299869869131106367595245869316352583891682213453540734841784833202254442783 772291695479239617490831695303693056703232881632903059096498169082610231037817 777078997774183192151384691575787064388086178269656299131348888937961317582092 668732870913499377011948783104960742820168608157471030181515182571875985006655 124283725040891019863339315131050800489686715163177133166712298867903424593618 194546572339194926907398200650738489171844167042859127844973932285874672760672 048631900988815918856846437072826018905661611640471665591933729062046097148752 987977065504339716515551977895114345460562366908850376996342958057253946475758 209407450809074247353385815964504133543074799936913803117950705296462451786881 946968173139084438481187074299252299930268255194628392275283211968225212223982 232599995774464602951022911432468502101296809358200934552041210020269630851066 219262622635026155932267488032611811448967674436950395859822450195380529187256 723653248248947597534532586625968557421885589877768115589239583952516222750934 647672638839731791430824854279176959621597604210706350202889342024959175364636 520900718802744198729765725176631269977429668191732291826209893322534610157889 026287900114363695220571470045776591035690492912623035284652956194662006592422 480069383919721663943944926908091210987310220766404613806284845969080639747069 615933090795689814306966626080554926439774819587051026319303803633409697905484 089761458855432815473864734024938606759714985963969643651931855261910368613507 562571906237911109874037242258828700127465839417502568684341432794326063576557 102715628698657289602785726201712952828116972251183776860473711209777965207349 955664640214842699460370954523678783155721216703027862480417991784853573710337 852705009236710628559678059086902929235340420014395140636104768356732495910622 589527624433739276111489328460087926911532721937535341275658984768192017058806 008907435478399268630844181444484829041239453595623389505116870825226352741674 040908084609229356247273608836804170146819635952286646842912906998446633247709 403698904336747203493927118389394051506383600108554948432298897193171293824364 870757780169382111559181489274810191814503621985029822957535093035731488217153 556050351143039692395494064362197011893688471275474337205886427469690508352291 042220766884724925760032166972328490726465622574070747315428513600105118516181 864527967538761541247090040368220062347299781198818963130357585798257301207133 040762217763032882918832331332765955211897557924647010344572714661398697185035 965078580031270157222369960377620133736345868356202498613716926216951287458022 027762200220296014106162791299280522714432436586728086734481264237118378854418 881444236307212017114789230910601515191327455602213890596062844052725221365120 944382927815913980103894716699739227453893214549220232836746643376499804108760 830112957178439770615591461566638830477825909217063307439785115829074800773981 178996926544201095846352842610734133028933364656881081413103960867240895324354 420046362801104257152054011348836354310662510935252025048318138053798397031662 594348010998912852347929877164353167086449533190590503629314942106572774273515 948091976069703117831131602254806402890423123525325410403397383747793339872984 536734601199807874634158680279680525122689518271187077452839839382806014312285 840178521972689629457204322171211490018282836318912329259680397785211279756103 815193775988678371623046995017572985117518605207898048873246893872881437577692 578270134415451270146852947391639471362553876990833168024357478501758321405867 224099255997638412912411577053844697746252115347469833061397439732316162665661 928909215447156304666179403542924939689173128084006440796169710685533536213829 382833592416747923684974113678507148202400309399908284745668545871565510973657 812546378110017102868411832336660235669091868401934829239448880800178574854433 867561473055046802257620961751261112917921608821318776572293862338482440245374 915946596867392213674754845416494825597808714745626105043204685895987236801953 978975539536041214772057849958492977054266400310850675350951038749608144204285 420941648376021872774305780476140558661485667550230427005866204298271016034613 988527846844762146549355830177738801083876381594742524093767719944137376735813 457406030221025152117982987294701576470457093272489471511829328080102866358596 130677697650956092970063487716433706196473295985579531057247391293798034091397 839638028597741894840388823184820361949126955206627782650228053465071873734879 647605780637300402061318775978937573687200308898579572315254284151234193758110 258821226570987102340751557864742550621604077215972846456912054378329841063864 037464637310171054125150096970622078612396673144280927197107645404310928585029 860337084144028270519482199211646778674705960688936496981380409163963391220391 303560397052285941682120897054406265461252606176646793580306486254512445853397 420333798628965354489584735623645760823685616187771444598391744370135704959437 521494254819210451464414730865140436627928684591425315072681365009094541588549 749243309350839966339995257954499104379705732958782787907383936268522915437598 779164333762428138044878379673821359950343511968615589475542782088229610650798 274119423692278367634241964578438079609932324850100110647491728844100964756937 473602395104766428141726357445056274627748774048940497195793214367781194327838 864996319834426054579480120947401617057221665585557433777159348948187517852269 053296313311409610901678576210916563002568899552504040964143993013167854075598 324977566873409303089783881424286436031323218893422043596892872067602916585351 566323890709434118735907644660235931112181045609436091601656389630564566232915 707410365155818327255222392382225998475239782245316121234004611249759397475091 856370805295339302546097395587607660644354772989215915983675837722658561684914 159968265428521677048555932793829045611448229093859389466938522568728875166994 133069442680127501875950999739997001746520802895440771314049549562795271399562 624154299991245105882761550905640698978564878522990233274364539749418450881762 290909216856210603959268794005587198670685930725767309006569927419033804513846 929662919310370999214916049422810178228493507150233221471291170480227433678068 161261633842152538565618174007826362946707353640544601016095518339845505680198 622734516130842981476100191500984560957095996776234464883225947410029440045517 601925034841091237418224189173013227469757545955631065241987487996482649950572 047867224873195921825261845636216689652597333633818106693222044149737106717797 640183370556491340828368338896725249329171746247472938763591998941501891399969 202930271732480865781902026161807531718636016674224093712413090945301498079876 979347742505482298336094713340961020262660433510054198855598658065508208597315 956417444652548091589732094910726447924479253085052765318187281985609575381752 066461924963461978498192267539592293690702709851077574176291404569668748242931 580865117631878803011226574889333584281416072031268883037160271072534773294119 349623922423082861185513776356952789224232811585561528950463299563501604063008 320112195945650082041843102400102271706842960523644287075378516137520251490484 628758734859971667244551266367564300414853737752822851572001330063728091077407 819556832358833124769027919433560454565351738644940156152239584818535033317613 072735164721236215254149249153180582358988423825794117777574113796226318990410 270892080438098041591170017593391968484273115353203324042585303136515739074053 929045368101323193670147338349458420038723711884583421099641809520199326339066 658931706633220750714042275301347939164840842349077610480099665575392958729680 777243480306484518457360342296535581425357969619787513039758849049286394624021 103896261839030380470396724374991213505670079306009938926481872447783103252484 267568733287428608445959502026480370826845760805445215702325669322645553337422 541750804811059567002904076994788948560261350330054204002333415593822581994047 242445531330320706134582026552213745839205432359840808249679317143226704897854 026003011069945309303430428455742840012405916591983534530254435933862742732740 856992132162430883233447680892534907695316867847376621069498261033509651843711 578873512906230129191601263968321383064794830565834318304767095630998958664595 056831371014011019800461183833368814054799286222711259999406665054884956084148 663280140372233220261375670564556611815392180131957948035159068006030459171422 704412631392374773678051691925191559516877323493001483766294368545512775734550 765770823253109532038179930845981731058410636448844969699145222044451443721221 078357495580980789187698134070611063907249782311864120532352318322453984228886 463120609074948584563524709831871364273908552758712314039312684185601286882959 338126838025485831372223599345108396859168557873126314217944262723325744767199 352445358859741860958293236694094828823662589943896422035446403166333656446471 840325926231849475169987281757122498200667359571102921567089457212897261589025 932401113190576131440818103340267413925151330859496150233875684546786972800357 829042965073935558080803067973764958709717689707023650871618681811525603843827 086002590128735358431909037616429850474407322519585572526804970575453231548344 347335584850160754048185461169547507211075765392953065527146141390279897282126 463539897795400875303639235941726898673847467802504746728676260635133917072651 224696111387440126401985813396324867594493249683113511722462166740326354536603 462246622650182735273772340262732766691429837472673950218587973726535398809989 217132785889910934216820055756114790477405738524992834704634168543826973553245 176279867434265496606915364244407517407511176937628063967105958619882100512772 998076470583982481239365441162655995136839644806623504397878259703309005003462 731841706796796413681313993580337930008330622702838072725421637356050913372243 483619681629389283677406624923502785623419747653431838205902745035863323201228 201645211686856374413027689019707537533416555392503884850166364479121064359406 371937866301571064289110297577389576052280961378976649335283151016941958560777 720790820835994983548795804498995110244142931115487725728055147341065647389014 796701040116256038027289656962511598230743573152465633266076598052995181473137 998633250164978997563939915247785714966955682358833606544929660976655999906317 741706514436969204072601307307421738433637592228578204894995590479283940556327 057159887970576223824201324509672708583626409360765425060344489643221015166193 568727820566098052821329439376996221472535658873682785468205907659349951751205 846272503236467928180221512400440269777177282232131971794827832599929447881585 421017919283267322330329473312195801359082313181413959430976667358408824168077 532303482389801616982766140364869099868563890808295579477595817365589268072673 065353335009597339810184564066840490945095488266426191759601421196607769516448 357288820231431821282585261970215530800007801830789410060826286159628985074417 614179493018288606959891961414849452816025410473412485013269420722834368144460 231681970625315046269051955225898205306384538393718224570573487845421434001356 759549078594580403370682169154138510731170042458991621391942619220221406625509 477790252194147012254234054809278230487522435123062460997290534025305413900886 339344623346626154265151396172840663656788313319154462356758856105611000623677 873741020777758112819372088512511541968405504288794722636820501403075619431283 197382027483053720031215397406566440463274583020428957084693326992212176929836 057274797657781576624923986150532777345508187016171428425119272518748065486624 960144475972743566827036702255862746661268029524063930252495989020717069653339 081106706704981846381922609313243910360156131229956811196673187371052686667608 753418340307418448906470134612185856927543491720517074002286929414124028135596 915034721057753747036412194551820443566228586255814382779328800300571565126029 448752998723022359809367330625482306095801530672277540398558873835086692907367 107577331508607523505214332838250945375049101484434809317066116300224711153413 188739930574982842020674894133596010479180530090598896373413792008614100591768 775001738201509004733134623080332247843059903835891225943296725239121194011804 850203556997801544266724070120100361021931371477747414658142634927409259424587 124474343382592554880445864065037603792460015685371655234306475983614101945012 047336206308661328291670602542744549533705973515637189372711338714996910240868 565329959531711396995438939102550301411951154913066769294599992441470958505575 848355305044843900690988066155790346653843113558974006183748546167304776032978 203781567942728682453848409484198325626616139458027120672975387810956775527204 734997608840485098761784199079634780850212580942798527944729020048706116978236 771069933909093782327060210299069857596014398956792777613435174718474088626852 796342406985884347391522178785609395857986283337361602783505856955741202354571 529746731636271742437386336928280816303286630264467210933465532438950681384325 125237268357820564017799565819512281812880632124435224297881707552394101055407 461720063477458504871161376993029255039963111308315833839554374340421719398607 228101615920894873932163599663317786976147026128448916917933018988966018579481 535602444201416464571336321157821463287372890147773077765217621840178294066464 815966599733291100364414004787684465143123800817329454722826786055522817610669 966218624233550621642047853653592410774994032926259065018189142732251332359280 268971169724913292770836407269114473986104446845412657816358494998517466578718 283682334508069742295863595811894939729623864691133792508325859561196246185071 147579807436696778762687645042682174324852073114158134738338881466269344905371 181837827167595645812127546480863943479565783042025093355212551300317463664629 181257024889162134050599028545255302573579319602746647295970929443821526342736 275923254341460503721345349171601944647797872862755863610775895292854885400212 166624375637761007511867008837756149807555731941406682886778379644334058649915 914949564317613115812306599818102648214872990546914613393735682557295710932261 769643442926630396813889870361876113820186227657705973771120606644425269890343 067345400415722654881996412461165628077525896377560664916948529810036885657867 965873948463804463866988352929457074975304287154084150669979269779588918922764 416839911122361277617516218860008178961360583591042343936296304103328323015496 300455960207025027904848016802300933827448853258676515924386227605924686829793 821928885836175460263509093251383333730404357582771017715917554600624421718397 547006917402946265452639254214007659729807460387449134386575103641946657764549 568923107459332536511154440232107356406373319792046108845194765132902982379271 355731171760992044615956242175351509312017908678696726854902883872984275916500 460280171937009456778700022530654353064027294544197519198618504275990320588160 634494990769612102706107506091090336654835211746627941002114436742194010861409 376825044927248570715481339287362359589343729536232619921964954868514692828270 882163691537196775029247847835060099126171208529798334439394968560442860422090 563720973607961769288065983737229650322823101525317906551819796856756582482992 265797130397883743255468842969696916313533026704303011348365201110051384730614 310982875454618717936976422640018291224030029888071414954452417163406743615371 181982372661060297888980612255478446613745437974008682642033118650861656256850 575159400823654978469357739284602845535286124509723037407155672724365572206564 443603498129790749847739194867722168765608516314680737423060623325069358752216 088707743240898820887138593220621100194724841653783479544712657508068018420115 093298917184103168651213016619996701725082334537024396174044079443131396564036 205019503515274548196997501094663415786324626829659757725759830525152901496588 828418900758859772093135627524470551518846885348201080368959713817926944359918 579311573691786492790940045031565946409498155035663416023787088958939542303615 177893629464945024623865805525341700983535778158375506024142191554097890494879 187905285711614756733607530815966756390390926953829278803858124056619680491451 955441353122713479131255225542662884460844370001986529971321939871858158754336 811658942095566701335108567608271773087267494400123722028769676027034349831957 234858568646386318283520022422329472719621418869456370645076365658172662164905 821943241865440609199380394563804039367839427718394121976906323067277135342040 429083576652709588837687776153984246437434899398024013893664763789491625595593 648907010002405138948411880005517913763750573543164214542375266981372332026867 756178827396461309724870814911297921557042645262471779431039428482285476886831 001900528661924586164447702945580154256246691286828577897471176039458561752898 537211150284220804475691895480918245176994799325512518300703419539857248173064 913096247472939827127769542516385706200360324040193442227118085920884962821803 602253517706178549697396311233323346823223218073903000991764755592293467795359 803261079148345282191983419171588948674969041515079596725461941309808269173540 193877225919112905694428085343747465673181776356357167217252241217548818164025 106916933858422234713539961695317731102863632042502061425329480544862070098358 647380842285492238847592694749918239064777735371542669421586213734607499370549 250999743250723672477895594002149367106169411125393753365762790270132423836159 096002223393772174509806440460272153912049145113341859634325086857094194499777 968551863087125011763898575281376382589797392817972436253941511672092654730517 415077986554252764771837930829936391638010117088061649919466940388110144097852 205067557419957568933878955878691467851330739262390066639805933442814384251583 154359270963084993236304280471612341884300603852718088983315184889911129830234 590209792506278084208171285633991314060422185262374881048810068633386921025516 471899072106983823659936813074530956477452136366175320418191990616219402962234 062719902300279003687712365445862337513530660542030965938985845652726977298609 362279374956281157191248440364965758305580166344845296152024962901671930981659 000321675703006239704736427455149826679957865908517790996392663523534405472568 529574385464660877390031325936281909034614500597640040152583815869529268224293 559881545343749454592083950058086772026414380177435070937563773073242625226196 498642495599591179517069224805148272554182562510228006149586903619822701242146 919588077891181543920104313188719860798599336299855434366624585726530065557929 756560753109050763702496201256824521696017202481298969019548435871376536593843 362639641592681955232561261698169202565602332309570484053765387901978913517695 692590918471715625645908645046549815268036683795898829004815835011933143272772 782348625361799630391589791571429425213316695827872852108382536390510206070049 260966303395363777924243889066858524617590660891057129613912858663494567014806 718629641488446363613919842854173026134413014236783596881588551858148991509686 231382231478226793572620874638235088794762072902982714867642622132262385834134 256870771120253897433149196874416966741725971049201003706354303392101878118683 951036817589819960555140711270002110564585824366242901515011952954014380342527 060304194150167232750118220409749119249934488499901120388763791757000533154230 484697284103000766610535853896115296895711500713106141473937400411301448423377 219703165568335721711321054192781620845033289624363427754827973710476440582318 539987334729693728530758131646668438401757600228467229018861064936015457628375 111995340414050319341633361991590487366484809987896731717187799628287953483956 068060711164706490058262538929814718386069850626562739157281172843653308731507 947100864907694118650045813700132705294394712638666245848984333648018300554918 423455691846318391282505958536431407547048875916418838185126895515095980670956 075254756479052488459583339045002803440591014112311274598656269686853725872619 184706811560924557868168687922385245021043154692711535495328442725226858290367 185390520656393890240856354344036376219846782597158139926968250868433645173298 971841469735416380048877144232246730423556751622468663393050904913660313309224 301588801538742601714249640549831417573145183068656586870750078166607578336697 731285383215866550861708375345960452484478424121075845464178358761949154997222 725928109925890444751617851293090133874397081196637681929515449543252329808348 737728126662275380122716853079527549744677561281191466299190647584330257892650 884372020767737862169732909962765108347076908306443381883939501629378956403759 522056100994144867884778038654195772277607242192965603523661578523897589544674 071586058551104093447436021256792009898956190751797758364889613524810456082384 742936244313781086432095555308459984751594918363760256871906411775511016800719 732175615078790476973560061249607423574869552537083302887048055716580409786427 885358708936369825071371925704768476022797551077835243480798757392306594933383 437607167781954485889005261011140094306883293517563021469920540711039222648185 024442465021246638645325695158329664259193531637606690551169506215648764630970 042717388826386196252434821783549967836600502986436068362635135874272342601971 746582187276112591417279538382535345709555289144694779688401038084215385228065 506336083656182407306025980978620391573628750855890034795438783633216112174989 071011783149753982962520157072538993755119646016818923855768407330673100319438 697865943088517891036661211879261351466580329827934528527959348880458696423658 115079082429659861140370917200873108370139829277534522895627020300783853201186 908633381723853200986318539908973453343614274831401561479236109702061011772393 283223170219975413879811952879883238818717329742172054986215794269023914604641 812131090969129796614664624925647464314195117516713469632676519169965212046518 735100847191923132644549406824806696293984564574838932669621410469190704150814 920755310976904008092916056009592474495177331196264863203563749304638728178948 739892675790743291666928043650500717751533237051371296332226619543511483505833 645929747696117004657719758080604428297754136063815882015348854533837330164357 444396145142145696868502420450772006882715179542498891191691922001403228333136 185946401220919345633505107639217089669842701655378602253932080509164715187190 031191635265073247062650018432969493741521049037982234122475286793636550354239 110034130393092974905575902358128098050060000425754066627738097463489735623582 716834959001002376086484540550037857146272978666179231718930846767616786370371 938129878750421997320970959455304374614738852240159818587495300498114858855270 024301363189656806627199092489673986708203759147989265388876787514462917165063 599378045898744012108213766098002689559785904807903431479645491894034507425237 153343270022936644477402170775752795775432481870274034323141152166386351720243 350540590243980850710598077352499118433602431065286810974951862319320972499508 426709171415873684202551482642003977536328501252826669715803367561120388532610 767178927419172154839157280948273911168217783549537383840857842165918089365713 017326705997509249586300323665843647897509401632631704109680991166204951501450 588725153734852397632289447631870321310117163505385538005952307460721162389542 257980822677909874468966135169811132740375579770925466739086259279509470995620 554209361669803524998452251314210165913844665604724885932489698889504108902259 123856146386117283884371891252336160910707143349059044496177370339576501183588 588991642088720395656211389060798604484762768596010661645073322500702599120603 296375234454099952947677846334137496612896962651439415213302833177206025662976 307027495923416625979321310302437389363768180984860323225565817164569065756539 986462538919243582892079964642346529908189499121505549721129732171809113776052 080604969692068589004875506648379062983908320331321864065968004747187222630342 317059380064768351454905974458226015226255356915582882764394545073908224200768 717569786360978902154951587178440618978350992363070857031395378250809490325779 601655247123678452433589661161235818204672357373623856336304021765315202704327 535554704702516967000462408541648484829627619748546821598668968218867111935262 889916650417090089805855935883868286289845949587394834079787687847272893068600 233489218092439998126804425784037893658340730958858543754361849293963686308966 975304037058372118826178905159408195859227405687404238303322417763598716327829 232822868447420470295598744603933014589137377159324289407265672699535746089590 575550055019371298958192906977547453896224389032669437801585923084605344709314 072866323252269183717151447951599662293749216135754842077917160661932663185616 571141808411327814645901436307476962220939151442169390195563006724892696130064 511108022082937522220571849018883192395086656151564427359596166531974910993297 038537202545671969769754182150852891224102571135543122144512976355252491861228 058778874411782223906802482690267184337056382625534521627156999256858613407044 654779711738867857613272441389590069790094102904391631891243782672082834328125 158411375039724840377299096923076828994418628152447985482059293163505570728262 805398766170607227811193424276492945694295861729223654122397641702855893059880 018068144318405619566431289385687057120273307274692630166385448973385589246740 696016384076014924418679921871167308499910737233333287019901604762017358054682 213276736763203411133279799179861810887656309457441789235948268510358417892458 456847295029110207463312119626270430948345132691958712463787110345307004286006 229627026526740235670273794271199290892760611751084739859252597193603487254339 448229887163442773897807305561886767594295658505186523250440869819308165057428 419473968327875624275815581293071441123012693772682453535414076834151305072835 413800539493470119370664643145132859214091780640533412272777281750100660492034 572016529625987709336942777556482954439912358256548183558841151549877944779567 790576672422726981058772866039855670209346134306865138863774761345109701312581 932230192109884508558210976805364091658552511643042377274936319443385967871102 069351217057392472893265823175093627058999952856096041453736117616163983393911 984683221869362718570890132338410523756756234190796095024047428173733396995521 765751760963781427304564413945871370918296059309868208535962079837206271346862 613254008749742755361815233037093611332171742417029304773803358882675343713108 965780434317711179905643356134908294918884578015068779522293395426632356580727 343440834060900427608596444560269942730837982200407052036500467405162177110343 169291457456264685568271682398343341130911145051888185681166031869632758721226 354404384333624401191018408416975992751517513429358326081254757688820084725385 660601207873929403608729964204991221674690753211980748782729435805633145692579 085379001661814972813167848125841709631775787552873298512814599992728021497910 632174523746555408823849009486462483331069937264520787901702260055388827927418 729192816631551320230823921434817626361424957952100113903011739285183135686105 373828591699001263677477079378569281009187747237736293145529759094883831356481 312978622725906556182633533767922295247949039855632816176485284324943702070237 308422655752479514010689307454750735436285453327172638713254832481885322328433 692909358721047468825957822483727759539268751354455510192696724553605554628991 421439791830531144928841659163880666580069522677373656944757059583465425637763 834699905759975477712243581959294569314453186347295039822474049321886344561214 656605824322345685391273239954167080857470655674051660431408187366317408378682 742533563228635728761735739393439500354806486540565902994001849687535421077693 350779340220484212376434607128389867057988703523939172708408958276997839279239 882873288774062235738070617472861511163330777384717855014564739858183752851262 426662097445791408337215399948194948899349527227971007994462868216477396851824 763011632543007863320664973016698963322162997710048292145468495939563671163972 374497555689319153782005208185406655558540002821722439842250442705388936897483 769430060630407051904636495716649046763125978766486312453112412791419639713318 763698637537333732951617329493319714435731035209965600816576432728753646445341 197042597426766741389418024781689857881137073956098795460307714661607347122842 305225061019909328701849906162573414997146933682517745813633704241685562642893 786169997978731411722687079478856311472124289521650853110807645534813167149263 634717972323229529890172477177235774133558182770225780574477095288298537574180 151103281185763001447230793014107210837565885966579617765832657318457483221528 650596064688929917879511391281010637240537885947388369412697747691556342838518 789938334232198263787949039285539385004131164475159855804675068178407641123790 864763719644761440956740041454948879565153674660911402904006002593439171393768 983781922554684457729053012195098068104348299627829957654201677977330579347325 510781125034801182263518157401645724277151462575459628238087822040735177552133 061073042979680753899428992974774910699341127068247769660150324535900248851833 562760627727454119458906607530061363520410532989963987760959563811587140990941 147054235334899623510165069520822036185888196149743833480714972393773464219123 956268268310735051199741534219197622967035673421836162377144409066777928265100 974704041445491502864657208550781175364750967869079987035796276371506043701748 868896728985488002988586617893152916825346300008077242970002093216029671939991 888042872895279369062203489985577642611859788201054608752414394115101736514220 213652899832027222840713109622125682337104740304739863311159009890182775621252 226134970860083535352041792685655778591067716938201926112948273010316097593449 463438662847115981402121890918053510288985289359975494162511857599532338986622 536462128753771759315932920476918584616863752766641176850170829425713885799912 244058110913454554562034728999193112688734145295397084974109007139851188439008 055321988800108130236322070456672736827659465442220566282129980618227769860554 362078074942066289448718011945705084082532816481184116624980454754149210955535 521964402681494226110325987303070571976482796806266675575705704005274550851851 583630197901296545478113415863520992108825831976406830962002326015919082537901 267615354760535777212211508629842046365202158067647544001380054610567187508259 500582361530963383589037184547319621046788008283715104255832330810482490929883 577202260906232391133439998391122531530188405005549432101007244148747474848422 183285428647241340814534796082503286441860560745908822480834173444675591415626 405427664879361350135000374886581785659693541616789555914572967899265060974587 203628672728621973088175702676314129561860683623174391391655276625197112991575 034064092312057466309092751190815005961930686196486443874243960252424997579926 715944089197516549855862163785145235027410912102643131692467228805991417993134 185280279839013072970707159296706257191657938892098914528608698962567798545598 260526466615887992366550756561565554088790443816782499024622695229961604105035 315385338058732629622789504954910750908014722623466673479716636399712834188462 494120666784401985821574526119753382804035467968481440864474604277509868919063 863095464321478138600152069599393543134975730908713073216357586101680678729408 708448399408858444036045467724559761357775417461286792190326620674032372336680 425932749131607056971065910409899463583798697880721948873405104019752771051661 966154963229018223788431652219285679217305700838419205146200927951281085617476 494818093393501059642554787558646427499619341750277607737019591463508417930219 414243518286690032647340585972385996535314868986924679867932929444977409714036 577852000920562678866451080484197768065425720573083940366534716837086986677472 512030983293416983840889567225066146083516359582992032883836965507786375564428 945000072277323143055706847699537733909183259229609781084237353854569927057282 550420663145795068270804368032170972610182190097523857010409341190378739510340 240023930335842286867351958303122655608159551501759883643426281979346303294852 870628863217760687777852942549390348477240871259921969614581545103330048070807 337353122336482793407519211026136331170023489847493120000503880640300549446842 522343962143493758343316074303370711073618205453764345146092098795527724512278 719404889511751125892324796074657650132489587028798291250222146544528900884258 520994187770873448143465986779723556619879813045354570161440657087827965265042 823528907821822597778420089505115054537822129780126422254006035126541988014238 212157342190598156059387771734450679227050371853786763246608187274005300281735 859748288871715165666287997857864604820640593195494290788691443727947426256653 263398550763860271829661272085613614407029792170381709256349361954000070205659 588502068244083679060200264678046157371254676450632673633259301260514292377656 772010234254151523275627310778465047662631001478588160491785025353130761783240 062269356498126339476678617110833885653495895923239092380199276429289773262621 757787541853811302898047264008062267678874770378141801801556984665877624890700 073664330654171475976485800147787392675897214882811435797042529582308776199704 186812398061597173712585545349851853838473641968025869357722342225863407708544 531295175833394907955828400649980465381241125416027320519300189269583654165444 860407615252892951867744338766987408947782588569891104739569418522944792844562 323459452517701620439682258352186745878599099649463046180268875388900315571796 648750730901624889567506183867258447042790189502365593116322209502308733027139 523662296386628086266515042594304810471010239174965617687994175563310596404374 939523582445775654491612286990217347006736877415561986669435406814928740089896 746213148691469119459573211014173584524639767764754397937690927520967659164416 476978501069370618097226611171854236903102833803404432577941777463235614565078 486058287939876724972197110757149728224231264246817875478648579328670746850221 782863416021381826901573874679287869760061634589801061690725530331195676141152 042102423751407243472665830228863233993898009246493249822001533954681952904627 681901946297584909215368770054820696546607833610220275900307314678245683100344 331674645296870685810511385549027317313244203759927867994841480054807395828665 643411992630570205101267016563126322497683845357089150868882377451930758526064 952439968643542306104188937238062088523899003414865691999348220753432946957699 799363392658334680790486843750235871839491975636959596454630757155233450133527 551552777667354885358239814864226828392207956851168165082841759264248872154594 784782042524718563233908903928740937016718326271329468056181242428498122456503 228968134524236748610380245381217790356230969607302554418166485547322033529915 306094663929502958795106510172285789738374794225164613873824950077530583445324 794634187599042981000974639741083045179892057100873815332871907048934481120402 875896115102760457549157610814537318530707325212967349382380847379010669744879 418393187946780051517641894690770291301464358232859130528764851546796131275422 412332883415683788509741115549566402620750216673909755268893596111109202130087 835963635845177930091540414216804476630916644894704315752445612744303389579040 052572755910923515055237412602678041388005382258883705557157499895276626942903 821987813616773909785675231148154380070475689235186990760385087389592398609448 631070341679549844433720353600389272208516638018037384482709872324023597477575 013193718080998092178065668657234158376651447062270641215723772259433069259804 023789269376880963630361602241736708280614131779088580679406951067798425900310 860641672546231417527215317372196767065050770202190354254345189534435135095208 834492040922437473509380147701306884369116302607131122463301135445782262650577 804315070205665543732146868872981997097525235022317403300508926318502067739870 249877224542572102363476916004170325759107525132842728503557341538891305330907 264934726769507765585617381271783230071202459758729661920799579568205662963690 652300645760414903867139432727112151985941713247566424257736592228675967101417 084798950024460888691474968513355384738470411521579149277919118677559810236095 753353994402657309076039146813385615348387210322838839650609860927922463906347 400001282529479866328571492067785100110822187070042090911387576240984132338059 478011472892250290396944333115286705092929726861277112875615630824636736726590 786947939231545471705102757110087758508833528780271037480306742672031185075212 317675734902013244103326590485843538027899933148630891834061125227918154047428 067857978765448541281714612341721025044584404367127538956100315609225803188099 968559046883841608293170126839575335266235626418744899438646775226637258136454 534084727527481582748896450792936580589920797448330818118464832949320786055959 337805185149307843801767079988093982903615565378526437707019501003240772074055 872254258061803523528481474014948292457047143284912218743030677221622723330183 484327583153671641854260691434043135655799300684712225211950771896282225917312 839875378918395391580742573963978841712490866025766106079572549328177696922503 494973392355974942605055256139299269800745254235452582326916713849480077305178 871634365855372918680916826829641052981433577112868207512856029165796920559945 419230576560632681861081499801064027243437462236481619925325109598206076207407 567271998130528580129274636496556033694341092164122126502393805239013092012126 450235443159692927351484235442098539976441790175110520442214766983673532509601 165119841095988855862022298236039586657890692915059824190831425102991025665024 364237873203164062374823995441318289803670630898526188701104482638929591226680 114886092737055363822512227564713636598814607397607227975699491639781734819121 439984517407283971277042670946430184666049274628124977263569696059205276792543 998746342524947594816752453008229564628024765932027722556223200590731509709107 626945145099227443658628347412599840983069123457480977424279256907252505576641 676011970462351038617946095339757509270839713193083822890231715359155262053683 090992721520876840618151959940032948420329218013970431175332340703426483545777 778532269880417350694563605140805826970046150693775390560202932489532697633367 085333681454483622878869652538437035647156048084628552872205602806304846499284 147261242743524429516492346958162174814448192551919070914065444409386608738945 574259784813059814790052433202381213617920759402885316368314143989830790510638 906904614062464709387857649278066961506689772082760880018317426756103274318743 526997616881125077510095196557348057326993369696570661762600829349631104222792 154136435241801942442745535398478987106399232504447158521363687605960060571147 577927648832183561088923763155690414813634487959734725745376527716068442591484 255592517712171542789042146065474465201048427276678959700572620558633022651959 425793108597508335088115810192160840130196310007115005481348689704971944050790 114600289687576049727787798747011446179827393923450012431207306593579442288348 114946441981195838396396019664021249041356659807291414112725269634214576761769 625904233881816112333850315941697702550877044954421464351179479961516630532941 493682447166490417090143422243719741673573168362276113042616013080750307933940 601432650260285047017753469936119360181710462950332196491703501679894953450809 159701209512480684031990515954305732669255592689240819380976648609007154424906 928251029767876840660385790562307235099452241194991038733155635246609019907892 098683213067569048317999699677403301092779683924192752450563605263597065044107 256990138718634964378007218043206782727191130716937791508198519014179237515150 074886790557917295764561892515471453911672239850872777956767499136687181475670 449189654521750777447321347483700322946705739507530035490539288704293914349579 287151134150584003348945277920528532592581706502356978670558479771685807221454 308130459155080502481893417192606219846426784614653172723544841703673855504031 781255185045254873848086084790014010216917476786195177456092437983102007963023 142702550516082063015153872927163856560991331154184648373183327401930657636013 759937418291438065780714936444319564428237569222968987563751972984195142138460 029794226556001391854392285986550010499679495479167909507090122404634832737715 262083294027866560132204411676591631725931560885870417062337020840744796352339 176117827330838302495744206013664861783552764679227479393386129018605513212988 824746688524024611179565796045707779697256609635389172402612050054549416943104 903738337693250676418981655496021791791446499371218862953123614433682359550266 107548746401360387802688160760386609890821953863620227818585297602996928231238 598936708272665383737957606081657173526168880930033907000456416060860110615167 586716729154362116974504657111043998558125916102442206826635934940543995927191 943545699452068598133106741760955070179739410472112769688215795273623455512345 070719447963312760190131061199087327490738264245243377901154448758786365687252 564491342178621627982473593170502580657790081475183673666868307545042764169135 865853533354325167027619285578979221567500981805991092565101051441598065930713 988270595729240060865537660972365615365506092621796564155385088236878570068007 393171925286399412537160485240190398107478226242579299527131780742694314796082 018305255490426809735110116618710945844661412766110427281205667897611932575303 821719977058520459433058658975401838837883521677980265748326425237639213925180 936300493074229916344082563192081264594437514126637996865227344838688453607731 468336815813904806773352092635459175955829041927448790054756621419644646414435 089453555948569812175142367817295821619151215720359988435648028483235207243384 650059782904692494681339727082996874924656755088867510653796722642017621906467 295291839354143840677405616194699729293179832835570292644450776463398134625884 699504715426283552286702658870393582407325309351127874333220395244391277645032 549901845861822874918762252103430071495962954907989947578403703778796556982315 475170350560017540932523558380880580929535600755822298887721853892576688180310 747701280420534098744522627029065903210871534293437328052325366871598538950392 481018441252693388041668471093591286028709479126205692608017735636057028848921 405616649888862326577330577339392794480506362702717221342801270148167432069133 749872826052367373222691540436888237683705675122664218312094610576478366775965 659732836836146997622115491588900986251830420807647645461777350140003049732297 832536881688809574680256321391665814216910622913314787176347152746780406066471 067877040412648293014582237239858381539015034329977364843510312766619924107646 966768990719697225354851549294765081590882732803383336273120663237136256469679 753049308274476699348111930498384578925839175558287106640138583684180760293829 116802684197714315063555522603265930308090213943509226070123119547604927769585 609924073577883002945976617576685576381775407688571413356709653741759701726755 413915159492298648020298639641629387209994597109141575323126345543830411295914 477465077968710253746058554745880877601808997498311142806030207077006592026060 762319587682271936721909255058844149368932881343324221702390495472726597582113 495462687914470078387141159543409953246501921042406801345137584179029395250671 948718773427594487046954506864610405591960560155527524950493913987419926289344 034749072292264622134783618209296546147438384434857258179317034081157009074684 227480327450668228854965434934892125781861636785855189568571074397083991384237 340265302644402455621136456218251856369181602830522354473409193746363472122355 066964571031563419631639821727020378997100516387678199846200638957843459762479 729292831033368579765626735819059056379110898459012329334583445878957188049069 351202806975371356562403711348730685540033526843757114218556556282445099016632 503521363175085587524623893621175821842265832293866097729700882449714258832653 304657353255285724575243590400973354842444553881926298153006069955138173830272 166899954914534637458591672676982838410481731564227546456731684972786350610102 269145440796520431315376340145584919884271558944136965812513498794738581201025 059990376673845867242841857587304687492003895793808584209184684446695440701663 855554478427475382528717506516658536860995930590822929767999412506469445475500 018968545902585648241512968759003476543657389177232324535088142469105916539231 639551027053160269156346446939591024766577804081860015738619917032369760437576 374503492964323176258460150323027237238643436255787509399364377140624080247799 251415718891968732164042192090025582869532063765397272444180764336944589566712 950731113952122934891274715818937429206553904913162234748571973367448831081214 742793796427965967947591472156222278071884517405035043991343537776519890293105 735193126231345338361364297757304803777432134800962632481432248788573798656478 577101075449150393212911881697013699416143238128173447346684752443713562684406 763404805484274974175295562294456498707205479957813224923593325536481352152787 874399152143491093593435887296305435109980694382432626077240113566446759717350 476789414813894169499066084459446510518633115805296456420471157757544300718561 885628140113350115767783686158901709955887603406366354727356999407834324815923 084005952550749466701941387055724832023988014161708989575366429018154099409184 475373059415458630345989567724449184055792058803728517569783666982556493290806 500332704846410415438266515799864170170659290587551560282022505580897331788123 363206877968006115960242206244666066822040268643095954295370922971114836546784 348531582495623690831136365118964919690222133517462343016357298215430021379020 206655418586879008309654820180702123556072456599926171604783890805452959296303 947913248068574186144902448299038069315562710792011462411175211967346787140585 216343350077956830464853056573642101080492484048745967160135527138831131025984 209741974487603132443569454309830644744019578039738900679857435709460762023188 940252137282431659629059395291197921363010654350265179145633522173111133499454 120556236327875251381770647347676680188396415712420733985257659979217974982237 556208659424154460467807307351782354413177413304473120186393467489271484239064 110746848821457443516202510040586199739250134357711046090321156559220976407115 330144911264670901397226982733011832978809239711837084249005317048584907722072 785302164686168037390750552207301718638080061106671936027012798885667431814297 330715194304132686835878601138265725052929302115074918865415958897052860217573 672480282189365287103380996413152633515352821189133281199169163836976052221637 540469738042242857506733055271035239175362262663464977252108643108573653301540 543339425127448413461839381850640581725668320260824782826594207188674996507587 002873474928106633101460273844022961505202340196510774316320301238214407999169 102276852356500128199241651058514721249793375025088911418823779702522761425320 981281393975746448533169337287928120664874277012003108968159073535565514093285 123018612826825320114151916005284286952380486689815575919965074822795076942926 650671863970777601451397502483951340113570437698442543683988493769952130538549 908668299307558250441996914980816732713154784821627170767715092791285286278127 538543870474274350007568505891136968893266904684727828083220837381455763705877 478814419690332306613552514179488254322577951425767529799820519797665752838983 236170998843391792197868745820979371084858458709293690002400475769600054102810 000689469151717089070192015066563134592291631471951744285265216553917459558139 620957405690540105989785704230981974951531851595269100851186008721885522034581 752710014814668677691810632684152082301891781052439502932660065105241367640054 412828548229313581733071742403326927947512351610065042252440859498005193885677 100716023613434742709477746511192782666794500388029788350586111087901227856748 303006364726073283629362038607083738751426458000581272459375550694195413593091 397546662746383305873945846107576754265080886044103258477075359583901608295883 420009605186991575366486686706939882698406615173759197746507069405901544958199 720008711485595071287525087254462650841338908664876071111246256596248329253811 330352185366388860809639022886407587599479591506984329761836802882037287832467 827973599474619347216233790050851004375029683500243635935531046237712067354868 167270094365611079887845588295876394558839175341029742576831143905954516221627 872250315765290137125257387620400281500797179607893915099723677577098987471795 134793125438843714769156368837431786337253564276989774840109106390913643127416 858632588582607417697077964279749278555773582829395947088414695304364691658142 588681012081887991556644198572058513704051550105699791647169670795307843674709 870471116215858649291133952534475183264868889692573720039773530745571603320121 116115851974893150150144287330809575468087143793554700039593699621178857303276 046900123018764602755670787608318716498592397749821056293305670836664655199799 696260138516651438323465310316254668062737527499318165418960243352282742319671 418897330972912842338128445280253173403979257303539732248756704689812659057464 892624921474217990429062887595906270491232419943402036836207674907828686537600 094899750141512626928396933523802792795125071551925758742491859824982378358997 630790228953012896157120940421582618716532670183059847860288562595477892519800 230626095897889408075139076829038306687077665270196472341968289705039173230661 578025451528064974918658673003313811346667754082084924463444451642348891670887 224646549875184480455453480940635315551397501781212587408792210260110153353793 291291485985570997201082032466950040950763801998835073809958132237955877615441 470498958064244587133582867520072524600107774445413876592950921129792652051533 404066747164750405792181179729070363452878690027136715257250658067270086341630 536744346292847531536628294646175002334859023258588323166273705855572596768564 264195412502428977579009723300648622386501973267228654111330339588670364688723 918903386165023750486875395753721291695520823700294153281695599833534362560762 952482936485458670839719381768485859356178382964707574774870003131161126242820 417718425155084004303210719809705224003537279729695328270117819446330029554785 644529632142162204848311967118966319757204267609877962389887210731877232224607 619634530404403061268398291060023039201566458990174404990362290991971444531259 926125149392274614261460737304509378381371691612778403530772052093204934827304 210472592130067656187725883757104813082725560831185599020713631760501062896632 403116904938644051269688419843846308398039931356681785454483491630836638713253 147049885541306199601823290363972445147126499077131963311828656849741310161410 482876756877016668768324607765793898817279453289788534853535584408348981601475 024458969045549074122273043970235733506957211031476577141231183843167069702407 726663036662445744951814373247364064587409612632815988750176736345738012728260 055969295138341815449161398012159392589428393740417945219433632886168569558194 110463663409618966788816272772925376375223291753713250708875761501634252214103 471669826671350179640690951424731680465546186502038458014738512099994843282401 627075160872384538602856552583330353755100699073705144437617736358242586382168 401602557923979916025070343783811444160321154949575717542512665839043197494058 544427744145474028177437783841949445355418668499322754152600791257169596689656 385694372467998589433372198509620802062058561163483797522700510753132891884034 040444767764904881746337899458358917369651492357673918027747642194889780318895 341424589027759730074140152707559334472578105341270723820314409916679280644406 455326877403384100734159574006178370632856387461958838045407085225825726566355 841825090278852026083936676019755122586690820866233537598883560546129082528158 692451464053396734056855603457315720714322023641662601471588944201618819611024 315049096306896933361702119766681603226753813398906383648126424971993395000993 296224631377706721425384162681932195401511533761269751138096043695450497586334 331156972883755330457620933145175370539580827185820154044241498818743183239045 426227906954416386832219844962076234959331897210651509133195243844221053923620 887647502794010000260705419052329389150855787167712150496903823006007251095705 145644295428483583027155696003338083689705391266455296587725071941264519956874 224903076582393329262515257085870697533001702948019306012518855947551041482789 590638455339288984223346082909715984521691346614376721453029450503302233449681 935262692130159540093622632320645599877283834860313062443912094935820153894737 582016078201622758494927292804453730584881649003844081845203385569771823005317 786715970437167066163927538617108453786519716212894706909846939427242162237063 083666371254619100131130326422972753862961092306961879127815126444900979314337 811909099678009959453895378269118115679116539805034806372816710806539880818849 964141697355567099158528162283361069357375629610536824250074934559805126957218 556941037242846351325032414004502285341193168709507944016335305591092897151508 660092488084942958750782365412601354132344521255501702288984513635142180203016 702710397556252631887210644211195856047882946866256503222020843080718202392071 361440135003980041090907942395635298944869594033942001745250375708665740978906 156463227294475995342815056206938439289213931004979597386325499821598988776042 052866275370459676391523232616269566497267937197449166820456797771714510248267 564976361107295217010953121067503754054246336452259950407105171365374758559287 604870503547627447450194881421920829460221143644153295693695494683232801663917 669062618646891557948021154968706934479580822812483667689959306489323310672080 041759660298938504359105438264443969507302830602166741555529210056476157590381 738423554210387420953587442100006034647263914900451849905818923094639343443223 927537083515957404529560693260138190818147075858820740634000552241331611569534 725423347389261619590030138120386778121558695457253402118654626050423397555822 466697327342697202669466244585360864108171463283015820788675403523647474886594 418499725538065490356911939520832990531788804636780249770947878445561697980800 906512362736132909528017767419278528226344060958686093820257928245463756894976 079551310608036571503396527787531853835091603262606095467363077034577735170659 152879108809673333429583022243341631513963922598334610185469183963611440757835 197788135331763105892000305531592692444643372164251297360044250196741337089467 112846894364804380185971032434563702164756621524600345085118784822777045843629 313064531347884077675618867165598445292914938123091346104852766942642494106354 723805477189754366942861171465141567635797155054048878568161223711775040253252 493877553349115693085986147202840250773680614980559208346144274792327438617110 584394581902707497756915918426137656641008519496391391682865871731404790631079 291416296495422635993436598687743622576948983762499476444927319952258706416878 308260479838118821267845987005184275808406503926021331126983870496200946410481 599673901244037898969657856294109768247981740491163716497021530470118167445101 936761801041155338103561155777902012287428571603260645775140664914774695415766 593334638922119462987484578435830724127992607563793392431764641249403647648071 893072302250226932089996590065514808455238752543576210080114875510287437154135 065967053943832623368904210088715154068241798857462450403750249383949511478973 807314610119975972385029110860479834102874912065731593031248179437753219078262 769769968239001072663979918726686680219845860733667658891650077029074442817440 601693979170372532710108291124361169094863676061103373106414721916967141114501 923271401684133946415802062792773189458739932083775109153619515918087150462674 961254311272632127312292357069089516717740713965881165529166413640657195469853 774004135643241980846584978397112246010582352185528057534128836970308397131700 317535918788535165657879565739529731715855635945187148055375835431048882050030 007234522908927803642327576646695333392392723468080548702489939273576300433431 750215315276412813530679974651316657642762283392265813990289289567986864182563 182783046368505306900135991801915832527832173439428298550294994950404856428723 944696751538027639061910989058029659809820673839504311823757110316699864014241 208539351768299100853263758858940673115979995662028141002266324692299834824708 785240593447481715198145359034065762879740159168707721514130611140932879463605 080450330637107545882380803171630189663949628687560057561854985041188808550864 750853894949731500493881384130908447218554907486010439787064030270003715773117 565229511943733163284417578038037359292760714925252271822452075642901122241407 600891309327212923882525086258077615882938186296608013727738135515984608693196 614389246454955001332768739682428119656423814520755608468591168395562156978041 148140512231170813568992126336924294697713412986917024551686549877363868809362 272387845017003635565740025004515591970492971889810007156659314852450143069688 027134340349354856097508014929835744808748004695789719603444754777378156413437 082723226770949460959115583275234471411098566290011313141619143846170208961114 692958377373510472112863518198404574087891810555802403711887277214823063805112 509026632699090458236112846565307684294889026944131328956155042287828885311508 042825045915508612520571483596877415127551877745828973164846966016788701341520 397713962695154464217326329161154862660328464746568711841968140081133563902416 881841990561055714461124460303836736601310084444128189969240819890241339613279 173023865563230924038094438269068643381756195362409089751853181748542901298631 377489418225170108165235575173695729977386700772594143788841927019188750175987 150617283280704461265065042987895120692300880712369186894533558938260202948774 553668802807713992651767775795020675983004871927717954903384138957899744367827 333283818900050139689357583467226407922631125874477961991937735555635123488732 228006955026606970567750420214374576344527607580173044293582645525379831814976 271938207234141251101354861090456792699777848472223540932181955887977619578426 676978827920646418406114258890888671461753040807509727969796096219715565082989 811887480434875011388553943010115327158481738814208533869889489924384283314504 929610377497475928133414317681094011886541496102664491088359794981491905357816 158393473184808292697788684940783491392043818823655023886797972540956786574478 534592295362419434482358650641030757730352356446865400884114329567408854419529 575293983012786944409629608234098767714389534507328599032624265551693839664861 612910670461776484802288225931280960625793103282356808916096828954809740736446 800213992794566507814622698221631706236907492582044041546708098025806254773703 843161657635912969205504502120828726329344056895746870761679165843557383894436 820001813247391302932819025311313188831179125597241265824229412296297656647242 368699037954916734412102869823759592965670132075534504552730584683300858051679 986954411962465324303449732561484678954827216365678205230881810978344633167340 473311922200623208475033239307403901314218528141848880636273382708742120292294 665765483149616553108399417213373352432725113749525109555481008003476008072227 025881729113934380557142514623529489532394753294974930112175523469044921421380 471052250409258151106425819516956708876339976652890589139478213188502429011729 470672436645327077846838439063434799712818048311058312470405101912418448146584 714000148899042120531694225586225496925840840264844029134628625840632360084528 519998906590115950434178695160778809318880227280538291190468448682247474973828 688196453159580611848024324535357582229555025263115314970410661976847545054429 778398040163070508864114929319035829654488487835169888669352281170327004328482 748303197464794227519732884934508584579893006012703926421195254908210734592603 743570286558419373879185522193819889167341574706043444211829374401954255958320 710805451122480864757085711283331589531360315749653102073095515584670485836962 107116838575985703330276833779649971516154640243465620882872553990759133075608 171304507902989441865707778626892058513904014006608913578688669413650916354121 689609142288571532093284591681459586495178703664126571691497631446569728066958 538057859201483539472331259162824249032604869619915055314802290692336904322383 136388297585983772519521299816999490044864184884119996575387539677897176032860 946657621395617266149084283494257331500280044335187143250632193469428532470408 264760920439474394314686100482164854577722082698939422580237021897168469883186 933506114175452398885130183377667670500501213159193139991200374855604730662977 792081224108480400965703630808988114560824619569329512011716422660765772727055 076245946006667176263417841644257688797641372369484099138880202433508934024378 786436153291603723640121987262101650807129234792585077001079450302529538596599 458845396810081151118230192524770709956604482465226842783086220314570555388232 389474223318123767614048677896875208022866839338878017084018350785625611888995 981133492953341407700022665081948347821567980427377095921374607374302148453764 267270202466630078313928804901890623633014348869818351877927743883742275746685 308772802850585752399503590437958628519464217763535583233120217630959844109552 400237531265208273838016348248628945422171065056465836038277598650749475623629 676758708864145275401575049374470502626013831876180899566313538639219203978706 025626211535390513918163522055724806708438003995318104084955743064641054443452 484506517548469805966999081958706842471627915305957922446989473638836678733436 913669627029211052196697854116887409611790864988336315254573227003276205766092 217710479445510319919319885425232675727478969051676589891192662421448708018697 927449880452913828822483896274941011825717487385152568526760298032214911472745 111561022571811422126683033192872336688669093939425755581487810480586640048267 688364579375079894228968049805668473881504829239753594336978288204147643680047 100373652934428953430070142402802609919965378764917496938796811097611387294783 677417763529153092803244682275394782788242660885879106498655942770704649453677 701036754201808024493559922190436053431748376755938338350103978162366775520410 935754475408028446304526836827057076846613658521779320107292668123466761437976 223102416766363693225633223914290355274998792018823438038279088998398421687153 181875846555424416780986076006411464840850528443281431550666479216956967250601 233314860176297024547874329352150457152527537863487052396885733696859300380319 870549396860397269609833860776786448211933305331278085597634015182674707370059 464901925598531846715678877540865741826493448883485392124512566165600907052091 248402220965817645679360489429261330411292891887181505315621005038813024937290 416029821655235671172756615077897380538024281373791610018808550275503488515040 780427114703510147106016507968711363080514630175547159949264700381116443885464 259689744279348090664435698036134311260134061360743395295625693296323075409842 054496587992057926052160868021099975816285452579416780637715000320023938528361 872757085497597855442514563716972196664205685911529633169542815542215228611499 577980038316843361367069730467539872982173764834064791110610870705620944377794 178271204632654229954434225627122293071771341019100136671294303888018288443995 790407323971647048930827928491040803961842984984200480904386782614117391174524 669587030904754364871696254624364220239940843348823840134681152192048137214943 069594865835456819460685995308246384393457063643603216480826121324416618972841 436257626101856582405289020153668822983690296012064977575964879215613541149872 901045741655398274621154676145209398993823554075393434509306203515685763394172 746048660935395113252421907428215389863308762934067443729198296674698852752140 181292171015395792648327069430796403078673625795177126820303267295406483771569 577606500724163713149264550040023477467935474200596544387405714429836222522284 064588305286547583615750030620256881632300333895768487677329197300958977167256 655090961111814868909580235609101693991377493864586727814924756387158909899663 108826141635661006995051975971125218315359650237338763482898264838955269733558 344480047838241807510704181020403365439766082160388236154645857904460624615564 364344724232590535607958303369082448827567536292507416475157868712576385536932 374214915155898099822408276179632297311517078265721050701951697522705633160976 574114559898902739409203655931348793507195708976279820115173160135536484123746 419427807470859793068029443128894551985793662871781228842716343119637985279391 675807569675133653658806111340845546621977349418464908638294423282691801193226 374976439826281177523560280914553078398806081168174984181809665954454570483940 607482563021498637324222745681761612249148657752160350065055291011147813913750 719391148292257969866622716658982233756459753465066696268855017132376322596196 881708786976226739949940896059748999974592598335831913544299984912938613128324 227361856458666126385129211282888174699952008206214527789690524818655724990513 056257861344136359624307540630207007642227067339544048634703811165276516942521 973239768948671460347573891576618361672790519087130130954813876213477375578515 297160551503829787938263737362619822826643305009392740231290552276159508141413 682431715176141617419015429678498553018650388271098053399428958346239071395063 897001752790576865411818428631621150323618531870633702107203644889742079747701 144093201311619616490401281733316212807877087039352706403067606217582146077864 435332243668480868453955898533894535987893344322165564166379918053473407669603 281797188756400499175483845558574757610510633912182499213273218227994814792291 712316164053270210755856967332777479593566102249933233938325538898639588236797 954704419492899693214057490242977834620438511136323695990245063494011747844002 390360224144485531039620312819634729776464074402094813525927507636603028938442 096283451627991888429584333478284584433850802038010309216586756334665982742611 882580118912372757567796054322306868782895924233097213991899039799379181070937 667676546182744467485428839703772227775132717096552314079983872948810116232879 664000515269660491297010179426672671339402840205008528802674175038071808903173 772756913806041334153832389976391997724259661684944971924570314560545611938633 721827809697108822986551371490576713487824013258661596959657213532216486215746 313527872949256991329847570180937367045949308689833296527073319243093839738386 811091280138840302454242131965074011288638662428877365671056382671974002178679 510969896585758932912191740073689955263092776441890067868972516322247735642901 460240579063482376958784949890060681057457206645371578644238861772719949005088 649643706731208071388141382163349531518211436090619168460380185902884030937748 021319621552252689001802332718165857042846616014605751600475073511763150633747 454359520641853105610144815553939893595452596211641304889075570864864963028153 465665924785083057732449532115026995021214722348626225357696211689102888137988 618509880313174944370027814204689340740774655765333751211149642685850988779060 231847444673021134264617709694356468842954090165733049028094334019339190644577 038035615332991469936724877499846250594633624808280560892501460425817347465684 194796509694825213528949895851053213896541249078937821839072371465209138200613 940427908609478118229724538699736764528178065592172132271668448105139515473148 645021550498014811276938466209849405440714605086290359947046965476036045640126 181659784002196099305362513453638648012580620023365744708773124976904954453402 248648546534877464912415192695754326775456273273461100903760027634508783141908 515858898842850935079124165883343246804004696970426864363647281482362361088351 494508738520194081483669879600853023818425645446596760298962670318490439689989 834790464923725350932131007081907377685171541784943442678581307965380952104370 035735760203926975553429261852234985424509436773690715137515755207396716276497 243768822324533045920865844446151201475567195122749441591566863205368932383844 668973129326294562861609545298419444511449712556746051958147191408347932514260 969389072142950993754425632177433173509253595753703427725121014333155075329217 456641134180160318436180700706737673938203323975253422912870847804807194240955 458430938349930558189104588370002111748532777081629743949510885657193346609984 984094950852495387216340593686651463562342558836062830983894921525925592279464 002151039319849821596405479254138498103834982275937281165314395306184316570548 104444528405126557302966010902268464379594589223110928909955130806885731431840 003010015145540852255917289171268498951467922482576067910802436047571509260736 229024053670625905130842844685784394005490983914917501904135492434357307698758 703001483370968772093594445240872119460103442186959799768595931118195607061210 206356029356114824448158259053904238900636880784207371060219816914142108306982 567606111492754649804769624683969561202597403178409265669587647624946928748354 293206466668643758888671172642443947376558435619753989268665170559327317005390 800970180038902489344176459556440233389731905902518164019492155889295627186008 302087255557844657828905539922821855075822583116765575481105640352080796150457 057311463583607926178042039318682039523072983105421603977640729976816293516273 729345129467289397057206803644378699856212449067565227214076810925975089418403 053557366857050182837778148248138640065022392563786608194754669531676752974766 393032262300085540608598247285961462268071064697472761602905229380607260198439 540990155142973566544139941749895574861938944885025610367210294675166565300739 388132845380004625375597303242414812642700979038037697923299507417700358290264 601789623733238824149924944367937061774446828399589363479395268737716473177394 230524792514558418703412121234943230485606499046450296082481616973710704920911 277609460248022036952052285095078429743553980856358602519324756205679317697346 037963818724621445700957116583816381837813211706545378545871351598635008212289 863507348739691755927855304242729954627429977296530618544187592257270624646974 165709445285983289977505509269379019777345856064934207456166355227306616045463 971834732906687703014892754536069262421573604797328139664891761453724465862569 217166940694950335800286892449476739188387929346608553530141590486448472357430 675962156652239069645388799124748786839347166672612590249128824434829076826969 548870503257628954624684637655305425227819789398880920126904355060053856582452 069262381492591501776831088659871109767211691631156146506808779049124304634611 278298069158461567518090499462396230630975869251476261134692446809209679541178 143796005311927117399026106665380365634556282010039000571239039220294349811177 643700825719741133667598490106949971739433984276736025966295370762826500688384 839329109140520647627148415850179261085990882787170976625886022873953100416504 513315636522917746647802762496911478761283072973978704590630373263983877246618 046256786277077604572246708183132629794467018088141020536055958706892528638002 524098311279516987406770847996493197609208410725607032675846680247913660143571 035184237348285921050348822672240773409883634043394521676170505843176600753262 246774873974765804626044365941884838588108744831419621598621110936760175054184 230803241060703883036538330977363008621999760491380614153122827794207454488549 281473887506818114808684347877331705378977835542969534655708397154085452836854 806949895160793123184180738894766152254932194279895646470938338572798896146802 969053145821347708871972155125259859724484987785720045161832256603307919778594 465077754223842286714200198340183874185904191806862869242801020550970796524407 239935180625462186428538599309500850167264415368888308948433858601370118675206 599529453522894864902032994128295820396328413561315217250261825073004840634015 307322938356510080603432446784559988500610221053115062516174610513857076957163 075595021496296655390992955046620936358552436238543777295632111208423162666319 363811520798214837211518793298605893200358700652224503806417318930373960964842 015427152251993695126758273528587235056694474150893609457482424851126746949689 584891161640159261629244800011226338348548538571483698981965959753336686679964 040552960393025161503044691705795962188882786307972158965847385102589653820051 926578854132858586884350846741776066009880383814085357239268834594760243508043 058168725004944764794129469628080027085289441579332852279185955532229875136585 596725907949854335143058414680610308886353591384262916029381303168418783379295 259769331809207720303189883915200251926518992628231448106482156684365125430171 103829260060037339888742410977467949245885468318942849271145366332261925735179 612339399436638381295200494287575019028440509660134458403287022867772185066566 351060843356252501385142642674466105627630925070389726841973518226472690253777 855330217621591476461426344471256487919060005002654224038671134504750852040450 216596110120802654079894711038475734013498280772104521549246553251646237714972 212003156263379765683268616038683946982087243035095201131945084170443671600168 910116669966777146868266580548090145190578221859066630886147074236882417252549 236949978282177728457843198708610416447167024886387445332333011715585824652168 460699307739405459326611947676773930106845663751822743053215637787604401538543 923208388032025026091198371941775029840341489155063416703000878526256482194489 910809531277787853608319232822011122828637716545762440832298345168771694243113 971843700796956760322331965008082171745045956298833936999600170011698117172304 320004573227115878065664314864823849704523636345339253111161236071247125988946 587633249215647382980414751432493497828037582393652241676411455922515257643319 853842437315410263066254640913034405897159886209681472480624560530244419949142 339942632746072437874396834912874445853693890270978680822395517713221063522822 490020765772698414069789351766200094540754575462958181770161284715417734828756 743751915482544222550093817513970305114856739979553058670080184845385850519878 841126295358794576611717727224290642307506674522824475355892664462436928560574 623272132683585582755409336752766315436252428509965291065380054916677734113525 303462015765424605790987837569399460313228088614197338904719702139179133510267 623230427767474993673813452250131335167721928828228496629883361884261262181865 142549564353103136990543113213909340218695714736605267960797631011334737966564 419390576941385504534944009135563810278768227092555544867787410164954673110012 011120915075770826684560962687816304735870453030195776871763084300577279751206 715828807577644183894427827420086991579395828351269302415272882691364613577177 926502367219113315406882818921411946572975470200086680250500284963542684227339 878751286526002055876337657815718167560265819724304541417652764472720177417108 460988001521215268721631508804084860596154245074131910065696792368004915218090 632776044191751469224681180875941616970454304916445746924371351653019226196585 167790882481238605679239892266649651084721918845077613861646286781829010712576 834282959092303841359744193781865171010802816335514951583368360845802395490313 695043617474357816960605975735125598300485809143670203431886018399575385536893 428085915214722245473642572327396541546701634699683019931814650610749854546494 081918312428782416331641038092486770698921582999448807430307012237817513352875 324256920481355650059178735904264781977148428192543472578102804501656792063526 161316782452515105181593029267914527504249333010054464030416411888353889689372 113862666211293665397297434854523141929619998900177491002487107503787627368433 468610748546804165669295177258038509475845330005699743726676582798010623437350 497248090452023260064041860912377828989342219692838572745439584485350226520681 949840914281763804220460460578346339727069678066809409205921864468583905532240 581074018775819902028999827301927222883455068801788347652936768228250450637761 760888474395471626941125098499132574066440911322937850136663205393956275614033 973319636223660909153586680369741759582577723555278552021965301013155397307998 866762803068761901373318588653395120767809494605698889923214182315767338306335 452271820327244072249737546484389312679473973280942655952123120768509031651397 291931223614194549794449091667517978626119285715487034732214582143506763748454 015241151436009049367428409145423264392553396975667382482515208520686322750400 270919500504540805602703386570900207049419542002844665676772345194766597283153 325350535341600725289677815210281745548643237730528419788932921220983727351790 039184056795230054262368113934614006934070755037303721466584948347202609378702 331154406846001944069158994235545570136662883601352587262617984658387994799128 766564252221667762622135124683848671393898760284678157759153174119264692884172 178650735639787203485253802010846133601781323338790808833153164549749664737200 186626219691223680537383814097806665855729521369476521026998049304986791780561 789626521680069681555574743587196134720418649974945794788160122682564415418017 192309245211535933863459531651210928649300983994477307977417480774566083570474 146812119907880221188694723620631078441454531410438851601768898830061406429116 999840282340971568585219476881004633748107635628996331775644008226934581630132 852656718484722074481526264031977694128625159023881686144275618842169526545758 294822399532072296248681330732291056372545516755333418453377426261689788326553 148338844754736298812055813737011612854137630081884755915880991566780610842119 806065501377476396867677516464869739426608427285534761712610623447465317642056 298182681908830675313760999389732275615586233435507888073300452878714163296085 647347770938649433005224090497211231857428120897255230581363214657041231678752 242646952067958008396677630553349285524309592246967797373798897285587608170185 793954340134912544123423864678692955573754902804099092600971328423237170486261 335864070326354283759494803688136351391517240237142709575838902131003286330763 979409528530858756983701596471717513833757455375096279490870762067834796930491 400178522880983057006261065488394085915727059487103688771858308103997539458447 880787875214129693518290448548950303097590570384529173353861075108332606472872 192792476278521654116675201234926313062452970843717036489154736762998470933716 186911035060008239162115240638916581144142388311425475342430807008511159296538 439604111229916865314095932557516275981800621735673399493418723155054430848075 417349470425364838025989303915026689511952732272560468821181457230832300549241 289115618534029188668269790714564339603374619856065273293653027052636193068543 544117716872698243633167024832655871425038753531380998717657135730291559843882 251858236357253964750381434959287705532138432576563832735223925934526637804127 641290773922998915214006478789076352123835984952861775204114212709210960031050 350848946450824107248319828696790994118815072375488508809284194361058472580581 870758306344851405897438556282951236712902397174539940877397621758769365012796 273940652947579478923744675976324284857407642857353635714765145277147110255662 010727700177440555280835724807736098074601684420804718936536807379845808160562 316106449946067291998753110655092737389060380056929756954497000404672061374850 473366470305470702885390616056764922311942278202379809702161038864929829256106 611142850339138848821942335838353184076947058609768263428218458233766423367991 726628363212115650321891361200075425006329594129818486218955940084028345828169 849034405302266946379714402167891130142011197603194204433732411094601375946598 293860849424293919453144182275560186182973580600052996609584538332937960408652 203888680041468460439510079225850736074271586403063871543826088730781387076914 451895976698026646577122474560177137278981119730811622737338276494009342799322 603935100618306190299567907804445254838245275437790974895301989760408801648396 134627437635929954781211197940560888543404606474621789789962387058052193787884 542586060164410514816304348129832534793507844192333187860542745013702936262497 232335156166745225548343000781195965552090920447665907756192345647829563357705 633755860080036788814931351061554137300579547838103168455251985030567505174212 739743921630123826948381555711780216320881878344625599644309336471880870913333 067299344806477882917290674255717146128945453417852672271002693612755037822291 165081446528279056449807808330854861264803471317495930174837147696680363009413 739216613776288973546530209790823657357778523376961432474488354130314137303253 615824377330297495714611452560717769356609830512486911565990589208984445422751 080173539456731954393733474121315613272388131801928498343739159420929483618309 378419964697213709684132315455177178437228964088434200720887908400570217957772 241696379738430192923933081555272963404959984818707862198570829315611423199166 970088768067430011127570631602826905276581903597554839020969758866942518392088 701099582803515267058151770616018680797232720461249319362337346489723305772761 322174358404038148988580806646553436399608699595485961121660145367605728692387 257394450960263199665491425360304403215054904149609935279721636925283330040550 644448878582046068862772732483188931154218909856242958516729405550517540743612 493761779154399891256670835615804401482836434150898321332178320228668457779782 072799464700144820418177025425186125612735587886174794484990078945056305690202 622622942442823232025464751499791248567051510140661498688091023073456668257475 027414734201884806583153086405706133057812081872764887707366724526783668788541 513634037231328294083807560468120587701137969303150108778522025692257928354893 695856769127492238897949858898812748585019706893561437307823296185288902657204 878387740719415474577561988392649606979075009774755801809834621446322171260174 309484371237777475218186466047509422676918527020211868574543803274850971770594 722210975545991778253464736236754549544161736758047915733931138133261550715986 391173912400981931139030505075327071814021173410582292755757656503652735948232 733360331917282209209575833107301860904939930930218305959452103216894625536467 175812796639850240210761741159994144927516051434980955430208077149072406159593 476111983886165350722633138567139490116075298690191350728980265200075010125248 637109495826758172988867158483469899799439578194721571012591786311279809405913 983208591930138434066492448400581920078794228425656311300199567760914766491085 266165479456519271908437249814211107181558181586133140840065796092317864633218 069889210733340415382690038490421942460292117787847116687769683631701631275200 771255331380299384335257969034376428553972518985445166564576174093724841960539 634078033186558646354240610125009019024686821378093442271534597600440364336632 205915059430494934886528270591786906493313167578750283148813363300323422286714 520929463141679463213852336014849740277725260176652401905389477924725489458222 269640678956323890046318598667978612975801761583550300085230193469089128631219 532592070136121726508165563695648813578212893889078812948026824354745781771194 607650939756129942004400308840303149391975170766542623891196774437919063822739 627041229118774056359192158678567024602025455481688334198526159957927807004647 165604736128575513292835871768631324963349282443965777049247756114753701580974 770355702186006262291137678749364732486139369210166889046883500071377578756635 788605649474182246290660317919812413357359791579771016233008379783238147894910 004586831113837425338055886773605666416321032555708619404972339833060604034688 469870405075260883808535805419880846375783318427653386470984933093215069442296 594536317436245066432457818085514976005029776209572865426851784497003495308269 300790463293138072183858366428183147107906505123498970951138922646360625897814 873105967724916953449144040037102450238983264174281158996036191916435023905402 377033212520063451065720880165845874401509199299176507665448934769094662456406 168560923400926392580867997033561110716536751231550217222168275335075641776319 198994072991569131773983981740806001506963741050099190368994759150503482369909 802725387844390936778749359502908574429200416078579487620947698906718191412557 697448247527863299389461128656240485027092454306246279815037606261397485649864 644011876734820556747423001473327986566851449953752032006689824398156626368855 756385961244858425857072270528910127674142707187239426143054792417792770219063 380009657440262763659953257132469196866364719082829901609495016889658905096487 491650770909005507488840893856935872803359718235303606496937262109420296991736 223874196185886088302983019988338918461350276049520631305799430910251422718575 011478618447612511655284606640179288947769861454527026175372303761796722096471 205503681751676125399160999269086636102302009746128306237810454470974720602810 743220915838791029375343182313161069432072735824896554199524610805274461550368 323271154906862321787197344646635582007353677151525277386795835227615527433048 598599117631124336713584451042408168945401466673166054168874002993564626980141 416607701295137415080745169458603210199057449864340998099299384223330211581295 724422879354409345288621608739410118385448182794558561029717766336170621308573 554025194098152058191003850962956540779581041321344625455752913407907600043986 275488827051964278076240196081422914265350147230008741526992635421404451215309 120629487660491950349748158135747346992690495280688288954576632624512046219350 472388249553331422529775609678743493805940422790974547311424342998443489223527 249787897251261254455080285250920327583294580434887820686926483576411628370028 478729250032414528273473027974913401076170053901929307634867176832139983396700 204860278282003387716488574035900417604621698861323388997042214176718666531721 819852379307048449025189010838443141045710152118668858853461225609758841788235 515058443502659889238094368267046822416010070504545381310959008368052314014360 918757184900166294089679656855580777007109545046120611298813003941594072967246 476615304860902969815275754879490786580859206391193371966631493518071732501741 987084389209314499525309036481245728877609810266532025606529083912470537158838 191093913412942489044819090707777493094856935519336713403346195086313765615968 660065113971690577350278494740742703013863897856581938711679758118189970153252 290009593946397216750254699232934325260012021664576050918347399740641564681370 668374812320019893023781875240773895303567228020254615415864229891893756693661 533693881037383218167737093183944978333052735399140098828852931062101662667075 347872211633130690241522862285629638160851344363002703914172205855240367227734 907964769688262357531478939508761785593382196403235397618935277120115889013018 171242606452911589774474284951000891667745489134987370884654303588636390368377 405387804043290401183456789392830181832947783063440699613207273263834730366922 256081974786038872484888739914982461371295575028389560706892964852399851109962 505903725391720341797750752356348270468963114697336703413864221173385787733597 040412155443288177491083550460114417817470193663817384378320627981884863054684 008709198814097076397174680643642072258393185190023802557754389149298436359726 771401958679102721255561404733140722496517873098587195039898169864540039374226 954447573337746128157413169081302279103500540120376723529376103444207595027029 239786432774425911465408694468558722995732576405546554044906852706311755930648 614820355951096559899667766162436299310533309675787896575455735673529619539351 169625888291148864465676102003700191444370133720800954292575451625956909710282 244077238572905454185150040149279486344323936606022220806146051635482902969911 290783790348610710913361885294533949362147139878238195626929116217696559656131 275474759762159689306725818648650924037787757696238039898263289337125938447748 357107521392637285878212338923170959935084253830548069900622334850645544642444 015955409588483947360354833943390280430324344560101255222688809170905230996447 635701332987894413279542901788355358624949801701366758490127671497614271424900 447790271459027134209490424072683038829138818471894963431453286560779773429000 758765540033696859214059970271639385661504974103051093412889958733384634685020 197376058283502535996097905268274892562780888395786941274170400467848328508744 999038617118478926697671081259407999911074921577151821105563534357431986377744 481783788850415500560076977849796386827266884812817953889345421934155172196435 780231577581938632364220399228693519348662874125009753257416983863508344550388 915116519776193397942447821898438084402237223752906220092461503490199024078727 127602205609469994533441035398322058500564376660860161308349111092945130345533 895521903878019977739225128993210938906393735428404020146425604463527761118113 652738690561780886033493222276120427160046120314839167521821719958832396448914 198327808394104529627738539164495190218332938495783923744273865190402740070872 640821438476561487447469436730946813551742199863624619991377853620325108488253 036117423747045125133611960099143968862045876143417442818836146838378700522668 751634014089248031687948603540915982485564742735738316327326578323202980586493 515726420895110930871532626582532885986798161604147409704704963917136159826667 209681092035207931334448014745680072980852908579708156203407739077998512378363 716780580379731384859764746531527431088688647018383961721805053135119071221139 998425007103469943417055410066067953673009078376055908100552857901233747184995 559825656697536420980077225526373322888317469069052389455893219058953903859409 369666350747036080143608984923309204206571196429463788082357023424294004978611 308555758422498596505302539041596696846113272155892449654817434243070622225880 281316629391493987641669234051609798683315010879389747929884279165160185999245 793560365321454161598134805543071178523029642764339951345161540143054422640326 249689575890800684644829226919806961028069446235295932399945861451635817443553 869698724953963576873360276935534382980585722615443023407839821606647973756421 268425645093673443844016910831870510716483864850991165882220971809588735630561 449136623628373200307312595628925699479768610712601760635256112242314263359570 396335531743114510885364645100325187576586048977572981809768825337307011107712 749957193055620993553487345225780111799225652596106780896089589226870823509125 374731929400857389941383474988381545199946611714616928597389229241108611259067 618905270036168906662679813895665914677508544178311961936229187091877351740156 905054824494489782047118819998343344489469946840225430278220675352366786907450 602065877890527153189927773081435470547117566694861209142422695243948192487882 925771394854460349366656509697748163732642027930399833966798452442106377540714 886502629107940473249466880046239307836711146214532713700750480508667253982005 675112883373780963271027559611868451785602958265810063900764238265848560179246 476790133603064669440975363355939558278364883994749975343460551622349838131139 925041127936379608243580917676330461792864855152519567424130183091401276310882 043947689576702356041926605209855759109963246047958862819146402057620180386568 731676542667318418445107252926679246512492082050432231205331744633137857533140 429967085343090255902521715373953049545266462089256923961614025347277748065942 525188177443973092815101055030506213981317138620559460529432567711423818156857 066013179006750059751281487683145257127266541840332481957538220173615591754985 978387140165201792860944408479380336384301794117285174875882141245483868750475 017180695603160861228842203853399017341956443883336765284771532284747315966835 467446042556104852967500897679165189062740730492179314152225091710627803706742 233380850349296510726893848228460803491850525294463489993420332168786032734898 805737438093864712677347561809632024010559345202456903100107645096055869617959 142412357034447218668469737924932230240704778481918000965864225770693455430968 116735986339728808809746039395472481055069076436506620558717600909733531763574 436631967865490191126763532057894786309007501959705798767229786652750165809982 509916967369698701948341662637134498203038276290210051362281018937006462817176 347714683959896234413837473144709306652936573485384084569334383361397435947408 259081224948829547193075593568569579456906694778250851479739043497442365333012 806611232099266383861594997157468629343399060495799973460098574640782400003687 749587304667831206422227743899598164750445530957172221498308273159727972771229 250612829845260427293705368852257663686406879667018531007781405080417463199470 092810872677458838425600835815537552464318314172133296235529484791478666495581 918128549191974617750923021821434588909456306441986070540746066103739902050661 277162927144759238902946722025047278814106747491264608451154392032460015958565 793674011183306609172344144909864691482905839379910814863384919847169474108008 642546067196897655323256445038382404744359078670509492464267244760677335059857 991683940025900166878512804498750417267372412035660814737850205452304364249788 492570024430161857827528224454404554215540867632875728618630221246125195895571 942708617990990238748151300800509451866158399101930206067450787261252374715440 592307806764833817272644878926200960470196044615276880982386192205823322005002 825416304601608762301521698681970837669630581001571273810326112416142537425152 258204537537016727779129886322379201983305597243400686970139480211100841532468 621420415729701035894638102363841621092557926847370087819565800889250550775826 379648038571632008850765936303109410660854887021688029051517970652723336190045 489507107606878607736859407417109611378139997488128356962437627728720267358835 013948078831893931922473612959827224921122520032078449278470621831905103228027 662210089379790879590606632409623654445036350746265008485016275369111610595778 222374064923249109438866125258554413475524730659647650467147180159297135275540 725458511326521367896250682070108587284013946499574283602656180384075530928153 967678314709003394985315847517092458727102726319604164406157943700053408398565 257788652631600960111673536840870376496717405035200027562737958349673285048168 873225038516128355743494496120849960954859061432385247550946725582693926859990 115027214574423171307152655971623892436345827375709574945267137219302617477062 064000602131495784421273184910835913663414447309715610282479084251383811076510 025370973542452876608150042226577687804513751144480927328482623887362955684674 141464825693371632343659959111706041564225140283645510870475969708153885436439 439197048961179837145668258883133072072372605945095071277966660545271490726460 360599067144686669815824077395639624400703298587257028189651605003239208810320 441950657063931245224599689085063753481006125363843555025131473840139694658377 996807013568305209743873053493050824452133137499443416733015387519702920972830 400685870363784019456792854220267913041934110507438227350147801062618375632621 878116379703954041554847468193308361864922050217970732573436312194896944855477 799192549349282955672915353421841837416282348679823270993679523713999780065207 314589507663005576147785984123913129863800765584955815709324928693538165860387 047008338005928981755127771263507926549981936286521920163614350612406191318540 301677704324397216918994035002507192820021987267100134135269895036954042191339 934422218850581931278966398900741261907939008681033802887186848775174139367152 143792101792727970242098434912412628322422768758368464661648220724084057982271 109773095561935143423775938952330117844873498858684618924368898723547326628692 407499108553841002225015118202425007912442612511036549707754152430047177146363 458175660066988455581294983132785071050235546447320397813228951841555364750239 588145569404979123869903941516924989627188684393398452796395421668277334896494 665001852486690202116123666373650576562426517780493529502960890873827528951427 316936612799357220948602561896592085480345499643998499283910833856081014660223 240297315495012556288741680261904478540000187615126621888331119854838077180738 308113487593044982281268305946326925900505201928915113477926379208814836249518 118303897536377917689127526587091818373477248640982850178494792527720899671651 572391909807151350566693961468267944590444462131135978210654513088289756220940 607276529245093353554543843855422793892050092338163712767490685425111245055672 574175899131637277128493502788135860844160731669516941484474919176227180342799 122810037717573533071567745966881293149796757857431854330372685167177512175032 956268122135006053497915666955386403544781188229944644315854805377993519985693 524080386441010815868677199061476031528812467091975219572393720237467936582758 938767452597425241465936276330678066402541330431532493735643790502539015549478 612217478404318853194400569026342643045038555476253492546869647941513446893793 874369020758127876757963944905282661376503902973713723948120757181519738336802 678403779646928064890230932678113484113490983786509829974538268082239104034353 004029932213855700805454863559399684590795583865787975834796624966007188559730 966041040700236407995041130061034942826609135926027529414431921796650733171595 070045580247566094784091771726942253971738757005089687955637710521405251391564 674066423215345820058087320321376724069441367422436834502682797622197289024748 508303580860316117756147088011286511914277366324552066737756148357940101177143 775065291789924239144456363668951566444744582900592134633016665803231816415256 854447799744390542519553601559294294793882565153144117257861745596373425850798 204047823233326995479794006836197894958840647870301911286134934612004687528562 776774351557703146972457625469176091471831668843984266949167169348489078585113 013338648036983172409652311340927108432243144144763289468937656102006543910557 121636630265143915413267107076108965562812901598887691948765606523104110208009 345698218183618986330126663063055539914290501927261870795135980396864455058077 734719377332609974692177001905104379410929173788255553717288177407753571706097 620470881524299874069961340402685730865720355788536720247822838931547273064395 934612505313800724918346964770030537559353784692953439506604316260807270443739 519452869250657162824189714716485266549761491929409908672761350700843364547549 665335722597177152504113600526328943210925001085277211659240915125839123344521 228114855621175055870316377709536082056712738626140381203731624684540425326160 472739031476310685418536334757239623594091585542766560283354527930008607233560 328367762961027854428599078442759484573789784953529311480038972677696496570786 994319491399736989314852909003684288792170775675073775803889673745597121820540 230402345012997372016723773384326350833866458391120219809694824954500737243626 856361849862667931184588048486371251342869323783977337723763267903451334265443 903043530752203923682977798522712193598699903638844239648058422946961957685561 452014094760336546311263778354404230016082549947865472276212668945453138251889 225966480080748125617643478545975753376295901457842760748724059557870125042785 416609060960671194607122482536769329898540851137476528687920429994880857278805 537202112538147471742260689031814212793417665738363538218654110686208939483989 597122162135533585989102481190766829477526487289100852299232359187559611910033 495587400023190046665777369611028553806123717044174652355547618908624751874503 586301203390677899089282292001112901191122144860707609948559338361800812362723 347963690010642979270897328181927277950100086174988382228900155815032240604336 585726438432730961471784331615809516661946164702662277303888615838558702246943 227588993733522395103573278777836298778791147794701873091134549387410368349735 938268349502432001972505219638956520481228895288971583535887036812560863361218 519628671771331636454594388218213127678557474290899412992180982672447142309406 212047807527034623923378657895136586355252103173164525353492404737974520782888 742307318399635258277545587043596071620463231835167784093023781370466566329833 398974182770800617588741552008057124791507999436653873107462895972290946034310 682761227989800647702962180483172054348843208755420882367424540284231311216461 745173890939002702543407510223382916480239291119517353235875229040019595041059 400075557057506502966782947992688056953434438877656708869671818994157061640111 819527456930911587059311085526479336099911254797491517012022159384978052538372 356789818879896482964864998298019359786138909292523544545991257308494899727969 326435720529444075278139722799244960121220117532935568084291648761150804873693 504163173531068066629397467583278112029394690496868232706295188901999012776951 800113464727498673611901450591671051788677991213962128817355452899203685806096 261805070351203592679720287933530175340379943313919402470443532641449072947520 023635039450552974600862404187746829096494691564502554658120134194232555180673 194006172776705004682028408879364906080403859058670400556006967701008402468494 248167592563222845623781708792824839211735876360516312376097219377966762032265 226111724740830998823000790173384906828256971990083088844978976917066259740381 106539969113709363951283894346387297200020370161094495483112399109594531628157 436952803222182790041662472632774123942211083206887869200940774935618127346602 897614975514881724104237092514786753421851185223841551717391448098474381267415 412406863574851948122255509862572367503551541109956581219375743408685362950773 639997896394123375361991798051386599326792585117741711942488629769638453122395 585633900733184278340660213482617331234129035996930498989973216949374214473816 042245181675279039574597678537159096321752671482670008634395257401517030982317 492807864101216928165741072399554535733868244071514009396607309399690231225650 156878474448558539272873884410829715596553434001235509383767717806980170252855 294850665846954298611472340468828870605449558664083694038511932690916164218641 325793490168740533734939932043362737302287096134539553199027175541882994540400 414431230690943274901833929836885343258793401197940477288207692764547731688573 015222923566378409391368980993019496008879079726952859619401773582154372502947 846986993491079984361134281979248152897227355481357429236270965776929977684850 606421177929890604036411531871516956217073934034167681331740719957783328897822 078026258292252443755626362495925503865792325471138383694702984966268466488386 186181682077545594742373385034420349636425645665311874353944389896700378673689 315507575661776047325945775028825941718373633222213475801677763513402444548996 605821872091142042901737660165304102413402598797495940129379735141293206774265 363009792096113931346034789156924609253152295167087712066212772104109977929159 302899512097282934608846986819792463236455530032932542363546335436463090315244 232936275764753647174405602897091763295389675770299454210003305190722332566662 979479507842060841848220493573160627392061756071050661623054811912507601765592 764660571431772162441581439891857581368862118943741142213644628950994266018403 927338576266005020339687101012583845500369090894905545787533065634015515860328 437263909134499073230406709175328280071762345502218725164013437956934935571208 468904438168404521095083055344932141739624446266117756799552929180613806971636 220607047812627901438019282807268233715191053994816706078811944984349466686955 057561721222071558855281568340126987232241197804547421452022821032343570952823 032771301692056450123791697556582955928785090987364092412774991556044141962189 035371227596136985538965981956052567800014837693490733572730160797274930655006 617224727858367404709807735383458942605904448737358981765466823433372470446292 344935195358382020508033635811958903881731872664795031075791985388783029414299 810788020002069582507996067495176249398506453864236400692688431604096052900391 574613925475431960355760480233005857391667258790792599967312250351147606683683 873831352060597963879275736428038293602585204578679359768742983351506424421733 547899543792053166074670679883182174476305997630690894243171441575188545990951 111897640620616939197886945467647101171737231035503853011399669686686700485535 673437991587673539930022706190786594804953319782340848978710458052200811648018 212639051691405327631307070244874700232163283877542846795214478175230125484306 277309730467091044696247297400942619330457186603771957593516315590450580960371 589296499302552607905280338021034188007204799374423333555022335896390738807779 715425203344571312597708922773167300183357696225764361556362609566549017865995 305353104025860322299133413943396055419000253762581701931464556197140262541670 874347266637961171267524805742964417737677391100800299212072115377431173720814 226921086875065251276946262473574898249427701699178497467010015230878299589471 373470582968147720028956439387444524177797580602264975027477900454034903818888 690327105915454703169405796444393099465348139254510245280260642781550159331652 673617580939924567682487237028374182670743259157430548151118757398316201242228 128005344370103114965254725697188797082428408630731113752867273864448759887954 327774111018220273127753193573352758145462428411021890470517573891868121452101 819498587872210312123937068637912594527745481792007082348135830913471610872271 564527925490733744657654254312447668353057687518161314014995842098714415984292 487055158583729910856843856957863507032708967117914371800853322373807622983107 645882074741872909707880567992546119812409393791123480741518955796508299690256 726474924772671008556664857051128790168903162531446044173136166999267953188007 755173350561621313299589645883038728701691929013440062042859509113967671269103 192717623588729494052686470496636571792739158204881801145317297118935902048806 798429619903808787264047132012220113978551604568897585747695791316862757908681 453877932793597570035878213664501609066693940189454664642192108294929098016761 897808078352102587494690362749035776267492299080210883088797384403679728014731 962597109834780628198986600746998946402346959696955571775682136013926194208374 539794707776319144503765370069923458074485497845307883796962444516928271809777 284265829512912847298312753009579956673965783677788629890602817293395466781538 450538282218605121671218516633872932394097276394333784523183144301669620302287 629199228840503703944309741205488429393366581566879387469584973196684965841435 549494569318353720273816325357445793815099864913276417783602297476955572596854 338094891906638309677101601113434026995641220821456363712246039988974771467725 668245892631815166487546328608537272187029603342126753704404196139369883073842 520548739914483134273906870752040249884701432599056320901224226697720070384645 197982103158175894108708868624599148507925919856816455545207200845110733874704 062369797429903974283331462301967863049158007455133361442089987080449960038102 703093258651962557372488113084320199702391898889429267246917583711261141954711 361145630677887398861149929524593240125506203392190646283392972243854784860369 472137280737845232828421836538035171881678511586534819136986785929145895727030 930868286642041136797004311896239158533781022013783152420195789816385046465980 822377302352650310367634751420997364527240960051788530072558412288422271667279 874595183301666844368551294666614908759092389700672457496679212358681877280107 992195667052278175898414996821881548942872260203247651393764948514005071400180 047840621256860861051802257560134041792748130638025840588465023236843673525656 400917334274924863038796224215814596855011310079702343541086938260722336541437 800855977261699237824165441322426853307804004192483605823420334514590694561412 168317168900751481329785854063629391038627433273651246062269370282087376676156 625324391146035512174741978075197809365306530855078479985416368520065916176253 853350838131953147585970323376436777618471800775968824033351662144110301042515 151795641653389451773543846927371725174945483389952661288594406096148551247462 966107730150412938092903932906781234796482406092994692575751564443123237787128 563678266911248415294323470433410967747308981029883051527656246947790941116219 818593747527906091048392633890154227340453128016888605572042449107257441423275 261354616972094940608792929185026810255039871014529085312630094008051772849107 424046391045258554974733015691474293915276751202517910884027579365014125230969 446557311401603189701032607534370391451996247948222311059327451060447715556477 442346978523755268995127531341251156384652587323918378137040103699823260890122 220575414044470410768793702693960991218830051830698379454668684382785900216310 057020745201003866405426267832302364491059766121308253580158987480693035122404 298099183169160237259560377010939067153171886664228402232352417840705456747310 620454739682363234411100684517298092395737422725250216331824706928519494381958 336352827196746252988054012085837013048398798710386774775972226778387486685153 347517072883788435564433144235861206203161338938409043731122301755912299934843 061366382943740281764347742309956466971606382522533596221331721897928135082133 927045635897248050986161670465691401638930248989032620733302001147131904180022 342017701973381723003754531871730450185667247608653788778467015864359187521881 031226695312550508986755118005792878404711196059398849518538649924771506216480 209573187059402205975339512309429858234639292621129432293580316438275255679479 193692516848421725170679398567148650649943987825071479599034555036154265259510 462206452714271101973088593909310662687067999571705121386760396512525903461596 744129145444696202402929946863009485093212877909641317098310908120634413339193 008445623388059441343343934666621090490702442120061607238997875314955905948156 520491644061239181121874858650061279158322536013368099039225470822320110236032 866267747679530500136536369021974515382281669353816988030252501630210866981859 979959872057551407192326313003692116497126780138798091901616444492905791505940 294915370364810431943352798730376772093234975678826903335156397319934308237023 086850573828496285702107314891500906001578742600720404506818413568913288356101 459361294856290346244725497043332140754444324467886746577281320089421581291624 142192173428310654535423968921044925941746377737871319596168644266724222858196 777902061120906264614334237176979649178843379552326985832238781262002676515929 430329973705207957826539752219509607114275789351085475590708001060314975598312 093811715394017358428015454321417791736073485308499752776303843023566321195855 062288889325575110828060984691986841452618636046830668274790102460454985769806 288633206076927942529950853364661154164487716108711750181945917766550644178796 221410028167036492958379068624009774973912618208332626480336671644459441803115 171971681037241490784117819735032143239044336681781153257330644423563546797254 919390442322132726518296226687075508439252473569265335912598272461793002979705 459411153069703587581186062075786359213374328374376415893584347865546681553098 292504379381375292824578748350191254547681732939126273240767969049389966780403 081629027534484800152657813007200114856389504484638164296746894024882578447766 049187482366481261351925040898135989264267530240918527058408540202053462237651 739420903321203873558225651872829822271538371409368390452738886339760058818794 394752830086781990552291295801871756189903478777577701490751211231577232703521 619833419562038609425919157321581546658995215636757921414250425719112592717228 959399515554199609686067602491780014224314354401446998173551977563866529250365 000655414787024686665988979504279226790978341834208288884364160483412978301717 604007716193173071073899516304977777186618620391018710562009987938503641370287 034481424272929407871212089193256709146026234290311560612972254958641546164724 380177452622048248673384273062149963092152260410838110111056265953974544769102 222877769888902409988915842641903876947467256530521231199046422491523116499530 880576532626270797010927053996081641988366517413959430028540858466552019582605 851856720023739367396579444769692162622087245594362337694400162553180080435556 030656954759304164295673347302833618989108103084744138039172166180622632435118 278675152077263718241267699978595100746302176001921438028062857217223868462332 509884591822205168617867699648806994899037910109611433276000805528376341621197 022717680018788295503686428375972032814957512368100382468296153359160030623431 756155212374535627414349326655461852329305534072065898380381211396171900719734 017896625780686339414813183698170668384717454167524646247307553617360965260594 700675239492064456551166875219601195086706670350567468728417295506225638624220 636941281547806947641906580649882002310047546765166977140501752785098368503006 061243362601454035441646269479659794300299190244100321213835456435371992523086 349138564839925087404495363444595752361057615676414072555682267432752858980492 136975799862686622515493246862082101100927717400144307235384306175357353116169 700348153266491134345708042357080509150286363341268235852649330226554598575584 757072822789493470154134541842460858742522771631829624791322745628431078884051 233886697286715357741207281436168137650444867859743224777963464680316476523445 003003760516238854906136295532520664810544761180573859868756843833325375197379 358225302495153389942347790001302090011149266377318263274947362542392605537453 524301527265556665528443556565826757331743593936088780291803162487581291321155 485977499941917309491314920986008647434335701198233090568018317247936035909203 836435638691206496507011415232425806988019087944598082433552326638993100764101 082241844747634615512822542984113511287266355515840913116898251051988147173297 893771330868303860901936680498358857597367526715315607963006398297333272904468 931341186944575143000037524600524296865746385382307852947983677537143920133708 192306969307582711154431357645739127931526750935797714404407063952999872779066 921427769746545359240875016408134428621353790782619675783214119920402889744732 616150708384146222728259423649849484724343370435610992176864463858217123213530 187101541919495125967761406139991537470461416338743036817520924094537790931952 604038082870228134857698653435064046717654768943627956062375171665641398305647 641041707434649115507940974805600772011907549523856096612677047406352396717280 526709216207304807855376664028153085619422285181852682892531641480215562544349 281310923436519202752031343028493534560828244741001088438994496176609939671535 160709298761095689304474093775469394900902077383154856828351231571860655163717 568931069026287038086409139015798219117423287958773889340072716844966123770383 797425559141237262521411370850633604394893811562576762094423109996916140330849 840844048306988690743086664555452362969495792214692401473166927042831525493696 794857307962706126676438648934907525835645172558007412155773619250173718444899 860773161798476032579013456871999015873050961053732626044458939474929227777503 216761009857025654637084238613918898370322335599638876318501381220589001171094 047894477422761051014714546845393723243720204971894439947168155110553626970182 625009117638130546892051737033395844091486447226570916600230358334959921050027 202970254421657146801220435762566436240622604090761179764090025408247402440768 325610442519835586501524919457266661545318333451718193371893692415461150909555 244210073423286222115726462269701413846233842379558676038588685525650900467786 387300274077808632261716059979760459455633248108292135328177695632215127791818 713485472261884164189036047206670593076981529013496189531209941615240409832977 993130356351349675848666035813911359566713363273903070909581796175040923582954 377223139520248973475772499111739388215611398577043716304949371871592160338196 602885199973605475652643119437920489292496538265979745291971534744992357815034 675000633541423308227820041505647931635216086409538065926382330618828896317590 869785702367997753047409873106678823811671408939611625130121800331036780265690 318156588530280818054035684879585055264487142928631061897918929271172298790289 702913127112403917569886443052390243295788001875591016713279846252742517610121 760798991902247223760935562674321115238932733692706327414885397750174034832332 499550853567337992808979030601140255310335830543326596910351524549867495087099 401165979769561471732637597221407133003972375393923941861079778676876650354110 000724086586958398144523270530210480598928070460149195348564870382432050784968 905335500582025423344077736043346277476869208815213942656202297416882243490928 666278222395272963132646647849663604030013657485266154108574963045270450172777 052744724925673172609729637234149957867735483135754078398988896429082975931794 211916738345951842255707190719974360024178073894042389796289764623177171078237 795243194793853335234316389491502839505555885054135266583195356950137339622598 758916989823184613722346297303293411599042055614655372561042864639866789497956 354531345477473225960716350033924661771993071583503887727255599024918786983288 348432462151597124680222087606531512182302597661956695950596760082505755927663 154303463741845574300844438113173182892432910365566861105185285081453438838824 070585151997867573070649863794539748918830140632646371608009330331187008909882 795368848386388957266089274363044086074549804376926459685529041302896830639674 255277701419432792061112966052563671371717833698681316069884433976010417022059 003682364811552695126581561404028282725520785155590132539510381797757033606376 201518610082973132600340336239092703296123312285348085596929577555861570215889 950894892909241929481249662697032529469994407184631306603989709918438146447349 353559946631010059610355527918831798284014577880134528263128162443932343151687 029966690875847808354261306647243523852393461261420407007136990168381710088238 302597823446035145302343524300501262218595115127225468621807003262969071859975 025802929974447575831727868598771695384502589837591316861345683308087149962967 169402536560579586500486616807824271731400181942887014539059202692052450208991 413597790725141388725894761498686843298715012959678892514365517327164569961819 208652611321670162409269840615800390678769026523987098391541318290100032254960 462661664934457596458794068635601117586535410294694089219507080391740085947362 306343790586563547513968660314362330500909204832928792518427286901706405787331 591105841970716729343932803174799232720101569767545122256703090064227737285874 697277799531720321788035360152583742090970844480242090359163591409056851458502 656033855650313286738438041867107011570808199995177093483283740850245381800882 128390378087213624325399131527091338602630351671189601143103211497843954232432 272614114827489235532220256769894920675217037072233016573585303498888808008633 792706192719356242860749723857926129925423007132749655929544723684642330310458 437189279463890916836225837550708967846807431571760166354313111046051827088821 345069778098349507540828880127179133544861371734450162489254675563738334278340 804105173489253131214676695157673187880099084007937225035463367669593057594224 598735589337931091242612322048779632220733975243461617528181848173536313873468 905823806582943195937251074440697497256919610767885700606454316469041084335062 873585767112115598416964568295494083020238865281719373285254592027551734042757 620340439335035796878477283458200150937948211535411655574332109335406323156036 233326467587874276211447542174620514514088352419255166047249162222039480050909 183899923961663842484207775163004885510345573122461707892089166145461227036519 569400229923830572469789481914524413474800257965295936332233560613854298460802 898247215264001332955864267058077011930462342610019739871116846545053102235054 403383105466137563436802922988514156989737004275824236192890391315254592411517 206472642466973145121096671631484043436127348395264848157518975482602089639850 199769067232760273380059958133335030456471410032480703371393806777843356142043 818818587043644572196318319953168963270593586263581285660931404028621245732454 507238480608022438580345803761476253535830877647601498935382248899484491744939 691588640335886664828458775390322207997258399053453264547039659433333677059208 569285381041947896522411973771358645081039406127079259463105039496501638354121 620076465312716131690317482427566355318269914790748375785467493245345964977342 639225446381934664352880996426378650310956285534451806415809179118099862648606 412235192832281101995253449242521871485040078904701959727490759738354346518102 208341072138393444663848140075319889908081557059917466567348956343885766427606 446417095721658916599553410282070481398163131351302368730869026941692888800655 931125815352659454269825449321237213556510827826595731673562678054548588860506 245612979188517235726556881416769371010792440354861465560971206745581430067998 594895630346442922401005021365763302696007982168417886660719729118859696064700 821246596179874788581568169969484193330757841058401966392030270576264348345852 394792425125908999779283523731660054043135902705086542024566671854159758080360 465986462369283333505518177374591267795788832221495802287141167625030079741420 234067889742983400320393296475357556305626889010075033478173848735991751982234 032222276574894672054539295283316134710220371053247001178177678111366473229111 964065925652809221331272001058481296550406875755991079157291088216125942267161 667214222937284380956450447084016466871067336298704642393937097779424285564449 007414965801910000334568198692877589909291823344718211924247144905629575429463 271380731263369823083034362005241682887639736391360675683759580210119112741582 564235328090037382611897531379881529683594040722880395012503046401818469805694 425405179870715356711611144370078884186823660347677615005076033725082901875688 646600273212361518335118059319895889994648425373795751081260759838772371866703 440520959618553987430929569280151824043510799123435482816896478654213570734048 750418953048240831571787343616561946969876924323314956351603054089426662544599 823318798992888852714900702748697499186201921596344581527235710180438828193690 896671231069125651239477112770833422593549513233397014735929623653248446996056 794277029290149394123626173662224282982172613744134731674953039333190429966873 622648858453684367284971153196823321138383500017232981357752156704558655543153 853727536273463945456846274746058742743206985408119918081494678266495574829226 456821309890323120736624290604356252318227173356188631076037472621840475774485 050362749424462042220282998073465264257977414594913691490752460385972364320172 294236834184366984903722473697230960427950573139355441100935272265270404922729 317211797689597034534260573473478350753330304895715077115125843022940903761814 727534213084857328349028350752211266381463078299630816741762286555389700317730 181648760444839750570820598408039161544559670598254610538229736509229897922603 867350906443159154475633615736763910901160764548705715725995911899964686748192 773651650687386372333997588935020337699353835442206156451927945764743519586168 263700993792051424003228224798079586889772933149089616865047033532241327703197 668344743407562459498265219905040135407537094651356556477384740447959283610266 876810676468358512437176197196583925280534843876243030746818684039054937354605 339316273458226716956927303428137749934847570912851574061019918045570744208595 837587652423440680731614138707208869072817636221682933793365967722995811661488 339392234970082974270838294612645215243101764016435114474898834315939227109083 686221414340629756812869864754945830648632803455473351584810540269125466233543 203737344691215690779962322945951685674649282123728273652565152004379635607699 278756881542425789283211359315954529579481808591831012719546141238454353175647 820851186432807644823115494052214167799914162814708705612450005225067751396483 342019661608130955798748688997400738265158403034074881570036265238980564421880 960055355965482347718202450324230333453338734409671888398130838062814677058719 241129352537680574244534893500853122677312903265274535346350790745622754688734 977893805735941867267764095971875758391399144188431436205155945389030040227150 162862016968800121444432718697831035293722800305693500560424388192534687037087 436651402356810896518758129900092935154877885202593717689256218806161680878502 366907562199609759871016500983721108977299762943450011212901441997423069800100 619741555273697608871690639043159056906519077715151756748464543426742731903185 500584090587650506940123000501955134195325010702262505268482561629753396693491 886025622582639020976385891265386487902146182375493889591483743469221337649860 238821243447459490890939195476954885564788654928175092642307397342584072349147 141172759961000698901767560868476414189341064689014306107532768996419426643253 910202955405318777421843342160554091414746116741286206719063181860954707662838 288771047191491819809238557848373880901421301245453527296258574655429879879062 123808337605965893797350470663143112842781860026170451805347950878805555265708 541999735307164558234682652570088751776144237561021494090529121848579231866200 552860340642982438160621191668586918254960688070064518869735339823536525946717 113184746023438363983113511229293824088439823042994132015194807651144954913278 538788744069910475336965200920009918860841246413486083448961904194527278332745 948030450031079575525868569795551997060371589826904415049266284654972608761886 148484165726963816601710057090600896640056577421108964036713365977044929977991 580750499244694148353777595986016111258378866385274631761393139382579056498672 443944637739574114959016126082037132314784352891400729276999952944905652827915 778713381549433700147509752542841868123762693993770803553214495531710540559702 886212446489642010959339541024526305954601809079272883461778022357517913144768 372786057858452747543924017219357960448659669480462351233517858834448693812386 912016123485037403447344060671637311791857403924077088181657268056345945795687 177593926189703791909642901150947861187262346922122006965467990731056818390389 741151918990102937638825054017958423266039565394672305317824503154657983756746 237419606313810083783586256725987343105464869483779263181799194721764076036583 121102637154513285076353190826134131989289637269854474754553335876140130670308 229782709942255578901258023777962396504560249098089156568821705489295175684528 681945293134229266484754555361260941390001990270331240467787853684650853246011 303383485350231167422792535125453024007556572685075386758836876275447528893407 060924471389170134590251895577369929954937175004127152991577169978905173466240 311443149484278212310917272372629298911717003294701438644831190836350735168918 120139865454175777103754955201403848398247815860632323732888636499756636617433 036854376274096986890984360951517966530862525656064505087055356613074836653834 207330243128932013418237333267092257231559775993804414343491367607804922488064 208173271995544148198545160055235400142005558172823015746186844280535223130931 100528223546059476056952485840904099738497325193586523993264442361630463460580 174251399078664316676664550411584493165164252465541348971581752304079108549587 721583996804346745156286175631404538754628371063863279936788927246293803653880 562158016189060826358118724633158904034515269985406813004060443239295189666315 809622146956667916248346494603211358313167734593066865970482047602161188223467 202633220619922423084121884163134437126927388904060916037388264510839646695608 045777349509148543258153113610319241092127688736937220748592737700740015435130 378365250350726046274428454012295629360464150319787180448170418201170107723672 848095245132370677985584531855604355929147193345184341754195081788903741824159 264778127593787193583336244598441104061763438391719243801572413803493806030614 559002928428376093274548795383616054338714548151929385121799409937026567819444 225660614586000315808963207808944776861198654659491748809313730415035413159266 394787811062930616557570877410690969114027644661044885111812802328205131131181 313505214571554929861617448609589568611530806178817787098425125240340689287912 368804804839764143148865451124422425786144425503204588835507248748659111504935 905680150001756562389720983106470029114196896459905714370053615909515966993656 952729021255308144746538965227199535187085504143450286987239847417508897775200 670184039983737085886394464676606479421045136412767129260087407061338475276653 799144138959213612474809491008915597471154447421283161236283058403617246490180 002781017396041808932841511340966224312464384367292667699996772723026758424155 477275372167175069112883366980204963666409368310757424544865488822362674376547 944002395055216185711179764843368336932403997461119717486776918107773604486148 870050415737740463815220439013114602632912360596216690196678867727515468405574 263551803778932117873840955935281700006217694027920999515211025512015609651025 261167180212758568820322977021844221098525541384146266194831321133920417321854 948346895197258798751173212593861999165748623114302022140648172086501111184259 935302521311141021104715729965287116226689264141092802452168575737361974556546 852060123621692338649691493365268874277085907550831371162477359708865961701350 743677625666791193466990485026916383237296053992763487249605361908764294330102 567741696761772734441150774201775378176669392962464032451103152564289866615155 261655188456899390324073609186809514646238715805496891738449069888942441593727 105895619218761517788275991693830761578439828623881412710062653212416723804135 562225612746083795305714532934227048149774563208778463777536975114314559321457 265510348514561176307595166699613285743926221694117132324152592228660047492923 952662659066424955200840232653208812779559696633498474985814678627069142651763 412298468620759608522017933726876940154541734420847772132675776520679900035164 933446366552460534731966809711096931823639465617557347656498993106512185481020 532298036317187727913776606255491963633071245315098988492222080195849775269566 957462224468582872838898047737803013162258386588867215742120672422562109844620 337110923490736904383787148519774261327047362216033838887519701945846040712575 164852524743371937267434381716467255807193786539557923432558537035194031319131 993483767399125733661019603294285710504261463415697338844113025724776878655396 471497258295618850514600191643815359192192179666052688082358194024569648684411 543882068418658685590517034630263719718045673475645155021114639534055782031648 118461685763375202919553621747833404470239175220934186831446289652510060485744 828153681999336785686886883452053248044602654753989187024325413217679407546305 563746536735255740143111183783895363528431283879332767028518329584322011412270 707623510489126355008128132734457353752814396733842725606180842425010127142379 298508440896275019209324332034967582822135504985874533913104818871271915686098 603882755067386153629747341375290697923444688940221522993777831661745767197946 444357218458230458012601347510942735364869757969002641265409061673907406120572 379344659747360647969868887790280421783522049268584827527367385359697880480701 646083357779679182023353890733614581216623030978007793309883893611318910775307 777392436885300294959789734948621203587570883675511126237770681195303327478826 282497058789584203253240719283627112072815818584198379395279295264485868405798 090870802797733109840508377538032844437913316669404915201326369854601186732680 180143014081698652397252023632955818745581662031278640411396096643977786713111 257382153339026326007703092129020090695353020339502979963106599897431648368630 616140195792705142210209029919890524129144454279681661995165319535600037469692 455775218713799637722590979651126136140220528000232703164585588772298360957389 768434737504146926597456083337709759557758434546774912487093702089405836094846 459100050247140616952733392478095573085405255300808505114604735376548117295580 913215079129468884670769917329918438141768732776563634964930786976912178402489 245246819911862146359807695621161642619331121235331639349420120793681066273218 651170952059447346022384488957931162021901604646877086787250860454771583592342 541187343132630565747138994246317004206980001828183133196102763961224490698242 897881039235733594033358491170789366010919991243655467299128698859517262934657 653337984834744158527500430436740944693225217563695281033397211967561080384910 675525218692623044118846042683698838536725959920862473035231786246486538630258 857481809773349738759365819815206863539510878529080469409869836251606157503774 816879763548133946420180104279022491888612146916875584670233069215969395335750 863810232460925137060000289260739443981910646517021743926337762977661316257855 284144152164847486715078070953776250637591129006167550092156500080916867857311 438693769969859901997628939838423669948854529910118359763773046729984062040938 583588961676043976660501151039051871694295166326979266376354143413355925377119 784381292866837974973694599365896717803226082836823957099525353569183689864607 555840053982327870886646187244454338829125403711180787565533608085538473612056 316779476402261009293404828963732545963940079043334416852129577618603054191049 152856179684616196191022848527213160978902788936051749068216646183893946037270 765186559397254364717037269221195838114223828551920521164795316644749523951713 459378821427917511213891434180752089572179971923768639747177657112215187168880 953219452516142887221347710065684345649869922864524564507013782462719414089251 537529278025214986798005705957725937437181206349967295037687742398436330136050 932834176836893019623054763794861108277460888269440145688159310370081220759727 109965200273910080512032106450254410496477525960814608775894256434504229318755 109282221212631573656608583897926262161659880083692889766257871812384911975158 702765280271818793765655914257575487829792332287839564271111991168958001789943 771484807762599078555100622930710922340511608764734383751694450158099912536018 781386207526285013401942168665451660189375394241923260885808557203578039815863 837567666847011255459864606599319536223112575731256941066319612596243173585569 505567117476403727022813929176431688097588644552754643210005819899220785700906 101190378624316539922892642741571233663388815906898178498583154268411011191451 248178577222335116415496742055612697588831627579737699371822992897588069776473 842211134201821963024298431254099923393659108904308874816644106834729851190903 156056802651882076136584802881074220775813023911482717233221819612076239263001 879865211550650271131971842847950746235455360223732740440437799900464808951572 708899610766265929515255643775081359090346462174731009702165692250106063685961 831703369336812985750318650445572324382449023990683200807669399338137439411601 667178909482514344310111177966284822228414881791400777219006202059078941263781 952911792978200776024018326178141344321662083478509278672014660277308593021393 841383076282193618431538006399758772598506147897030539391719279025145020403703 753778942121521295997637467891371726487131078809513148079343977666410068839358 942639222859563046669980707360519834287094517460478352020641661131424459148865 529020220226035660291085332653287849424773037002037578100828050298284628517867 769445546455507474226488324072312835955249262228231427542723635389199667288852 913422512293669232509325624063592868527899033720866081902571836748035372289021 042730457477901274179032227825749786181165347055684946363702650729293991769803 698083941351569976018957858737991912451616125203977708322779964232223373943691 527806853549079821314978763277014536230716854762383978338820250328310117281796 729092184456318190255534535425615255194234650283094773380362904778277303354092 576469185758522386162711329274701845752951477768344596317282428517261286222890 167912427929175741840576381296673677516672911379643175097616334235785762252730 416730939089606196903882694638438219097264721959459542114367666271890053986409 349634216855009969696569343634012744619777130699055528206251931168731833068007 276443210564631369174363480128511832256726847172357411306541229945260833575619 141342612280385861770128426154289748232577758821825571555679881555785916304151 753056718921205092090245116934155955053896373641202465268402995933093488374388 705329093443172079422033468116985876361354485095356010945920853239393530370765 978439392190443514088647503192535279077733561966031332613225400379191409610112 942586831194672116360453574994773653628537354134469060909554264455148903258025 425543230362444261890325068868028383204131895239173168434104115079891282353310 243795759525560252587366672884675040491583302443684984617944276610668679785334 966817792018527699711417839334605049121283284518199026992621127477810629470614 959302858468145578104469283657751289739226581205299633724068356091839550047765 580850592790459992908315393970396682634180760958433415732174755841013735713779 274415684401782845071742500720628816082400203131752479890857064837335918167547 241750092659252262466615505021206825122899284662771991900584957477750140654394 978085725801838030223034831310302964926832056866574815104378556432835355881966 132897408747307819461942651301960150912176994908677595117179310228758948670872 211553010771721572429261353581294178996763667129924547593859090752037834523373 948980290642278053118109084110976112230847487707137592682088296779556570684635 589906644402062848032020633296461852759480617190201992373102430694818438436798 829949663141629884004997251596532489473669883203780265441156706922646874125543 281518501393046655545099205584468169209434708729547054448584813246314501096318 314109556074737318157875849998988826076011834399715950039466442434543678892842 670116042252660470303203258745612639318010254394288829741312693647498182406106 534268172816971472272106076284853159686272984673882914392285948844714808528894 230623591825081409666131491468738046838247297397158535683769822920150290359301 848413388140789794701271066080654390214399604254395652334890007919608641445056 999605675050967600161396239002817339959718024520740129464895393271634680098965 685205900109758042362953141241342445662385395857445792712779625644476208602884 947060501968765526345529994440797724121460482127510272738427473487882176671671 279480624354327736948284717737062701690919953968564221578600017842332936726988 072405829316574309983411568729562936224635590241387947153546443016660525812319 369495557536050640392564935505542144550524681972672819752254899049164240610948 987106144545789812328460899984731611810482609161262182078622835386502327434467 319305696259357485302419041134909406830118388081784326479630755293936698697791 333824656387655973073337444160342028006255759734009714636272484762592583021337 172358013177618965010660899219003807399275428649051078101940281300636284563399 938839479356207326508642140360501672884590829859767263907408709563106732751835 892204379730010383418877339304969384179014063213935908583920433656934551762734 893202692175212046402142280308289541316423516911500544958411243995531201294891 688080871835909569079487286706381726575518934273379284240300863701825033246469 290123938690140222436524038549569911927482945362432287253858390206437630284081 717877089192278701251411462626337311886293029773324957725963309766602245495435 805991676691675500302865154928247442127076000377864110920864604136326083118837 360563788363080572470012936275526988742460373118031166973278564580651289772350 503895216013024210497730317125444417438075896346908474677665450952988915511855 952161652302976967330499079653377902463929371787265483625121270920222653382940 390124842060069396630651147104840540164937309714612913218045966400403054102586 603223599418996491484120534215339782967760522806632764032740172473421450054597 240742012942828971927194897526704008131670361588229091349772456805698486273607 996475461794613631296611704862790731083487455926077257726013080304079811337357 386986868131951698382617015307456747446085248829862232419280575405963362601368 826267139853358177433309788028981600668191011040488819349965043457838504623026 606938734596289323832685197098117818272639125440641937637967844523095713777669 486087910053542711018008545931450228181211630563861278529211073372812236214923 828472549317174841673415175495154277511793101115343250044971662287239946313111 085360877419705609051630951577492334667774047712773358540062794888413733304071 842136762126993095653338088784988132746080179462561958773645468614732127757583 601069582318897850953470755980536951330331129374649073772058257897303972342787 465703302219410117444502058000280339033709758318981092239812569872695638222883 528960555702800381685299061033656154339873985811104805811337586398076265782842 613390225509611941411100795266496527777137114439996275761261761512557898546084 951360683465971789642422694067813418414085175360339793643015054133108964798663 921619991974998983342627035871419171742501326742457127855124859038221802609200 449519906483547885368877519015715924575251640108819190169426186755057686114552 973438869051721302755322190560172877489557048100010126050279719569342303541224 451178481180027414292207905663699805375989611831333132971909377958057125503528 997117746634666939000978404342060477084438897095378598209927817145234084011500 663536711513955369385215756051393982548082998486865022350012525390315900230158 813605610700098328643377872577364285877628137902978689127353399621388341469807 405798552695661179402487824852347729522598188652164712483612357385775623356057 370485959358288914650952953529963920398235063061316337382251649037109995440288 445219584598840527367267437896968109392452022716030972482181438647852884637465 573709567776902889692076057149571779476037432195695941451723782069661163957957 959359812383083106091198862921283493500098458537811527148948279258755288782195 754301404054882746525906100441835767630048442384359655003137082725885089587143 602220528113932212985053584176834669849289000383033033813327823862251508516771 017951947763739636966833557187965377277984434689058456296862620989376954745634 797470952474474741137071454872624154642862440708897428977072682299299200561835 252243244566090734719892853976739317828790289859724940739089807800753454133028 217442547811123082908230732754149624619226939446160452004201654162227878619097 223216396619251537480105833787452745000822524463858847562007680147665355561155 877142248941794101545522427848931615914267992803661512525328248898688346268835 518837934240996662769292054719341182384413186800948344092684521580160380596943 387848562286100540109497067990675615687175414535403513378437609223755406934793 890169979618512135815098661204153040415933190002143628651624890819261901308349 972669833397017749024520194437449711535628328203540043226201488447672188806840 071145413874292843255218443478953906459723261571539130949744321521956237030283 156018507961580449964795399228434624852322321254913643792873079807681390268827 334496340993405460200484026150032346008045330224073749433203536801317505327947 919767545735889106584375973329872822142778500705276547842236828215491443687244 703280532492745895022986467851197310715437199571873156265611212141864318281852 021361259204377104876267949140577781922469082843840500783282940369732772173649 412043633581459008665550950374154258973660516005325975987085206128447106873971 756046886086848176545746959001697175500627410521352259553222390378848923243740 653151842363991879758621120648285403679695789619078771433694991197247506640920 192161598481113214990851173305135892430602907882054224397883182505819869205873 644241518887487282157884397171376627876962415501821519065889032338357636105192 041889607486912446890172676635927482238907186127863187549593825865900342915064 486377944408776873499159689619006575853560249953291612000933422317736059248237 807863414670233227656421862835672608091878364258671875789989752194207627616216 240489162863844648540930162474615898903859151933158116851933564077190823471126 094155048975368404278112622321574622078456977123581725489022184676077426506821 720812294963243529606186410384056917464104679715006921822644275245870708144839 934496339818594497793065307859363142670158458207308275442625359194312734819287 408131987282178802548200397140128278868858292138558471221467283664216721725944 372004339578895036570060217720416718846026393235362680329671877322320406772491 485653894829579923434815875050375049326849335204032858985424081666889651297566 725711878382965847517665339883827484491733474830422380771936332230776256379385 956924415174330614379686810129047663692087393414988746701197097527891248340146 815899175756285933689534207248921535425191973601638529312570410463800240918694 305040036388699608886926411433419918475018118891615073798813423950027991740299 355978702980373085140785926304658372164888852985674430815373851469834750834211 430227913232104938904171054051322003457820389492534858466616264208922042039435 188974303132727304997489598311051997568987333000774984069739855226004880285508 252259848828368227126766569512267370790340063243634774549524594244131735392901 269623095766578108373085675008733504949441452808342424528569160277661578880296 336708269638925670323387750864867974416640574252855699178675862542108841867646 507804538524720537782974691020697400862465194151701768352907469658076811836900 952267463485918184570534015953596432775966102924242713137815036879532517790837 718621806706230245252496741527184480361489210304155840026983336518514595624950 791807424623664910011265613755698306536028650039317886108449321145767289609426 458189480191210393788844094211474861404597474465321200402302646644699880810935 017241457988857205074696570310752219647394143055780125129325591906014408379235 849442704062442952695567337340029515654555082563203611731650936896967248327096 436163050895141953718878205475796470388465947303427916928634142484961090813568 562154975391392803976387182071621312249973756514009070191007517556490200482964 720869923276970349032411157289993767547954985170054927590395559831148024426086 786273439066911456316356947391799008523907492404585487768764017504800958296310 408441433204379706114280786035566603543474295487462392949472665879788692980994 402463741489520722940030672011851119059645785768844402815477228817673935541970 991416440653175837045146712227405819003021051365485821740354681716596852446218 178337572838699940994585400725433169384984525463495898866190406606386155656524 746471925297730091378487285619738965947686436729200390856820959843780846374416 963780866082606729253501831177376405189060466627836322447022059915671746113814 295642855424486245497245377924502121839170827050190598684490511494908067114630 745239555737272225039049361116779927695541242041793023541868506860699482080580 972017216138729225448362419557489251488064550000290566578304059167272146868840 287485378849024076056926976468400796775265094350964663345589215117507392158117 868523321254392157944426442239407539292203400293193081182453899439449289360501 476002445853779371495192701165741755419654582542387941230088806924828387324795 407595844623410712506073333022596649773705727025456116454483790825431610466555 366289726007778194194038012536364333091870350728575878750826275336022220446532 706208136216115290053344652847226073081093632801049734541897907193676892949187 986886147661239568729494187767828498446712461839642103959498655242260285385969 397379450728762389222767354868589772117615430015643737199611640310803763256509 746050662442772878830013617976914798788262182097055743570906006154629176101111 233170813691243099001020620335000480067360202124605707967893033832714359019182 784106204655918099314851137532430337690411861757428885041993138643022427412367 899448195139609335804699196191499168203447376328267071769784170380539215931734 369832835103143454914662674192369514235812450893714975511309040283842259159108 931761112864622706885159527861339522074777840906982827362753293189444177992423 183597598683017016434207532791982632073609286193811532002330425837567176664518 975761432957674616786875126715283224340261204207350157179576165782386543825753 533971867704335657724896510368623682266191333617896534380524872510817342517887 346835005461085225517802694473044256983521546435734515998742261106821985553869 813121996764230096451707939977543390471114528138978166189464289083540902036788 364872566647234796340293023864904774400328732216856822232839349940405781811948 389225026639427952345688938868329733085097924363416695183330638024634407322060 077061613345015499250089341384213469178513458421871703975129452050697775609748 489444808397058174083021422446297512682612574400396123763434385497913609503059 241269278263770294963281449858440509275039217919085753848215281409236799832632 047660009761449709007289066798243246416159215986946882142583701835345133889488 562103311405349916357637226766310777455990477145666416590184779162516244363351 308520902807421274221463624507387615059401592817445475850748778239861591423752 836141908752941665457617738834028499812788191930554025124619472803974216921290 377181178338426636670010792668469118209624163412404511920849450681478067656202 524313351367085746955406859461171925220269196224581820379461270882219926612804 911802237201268716242788229202668329240199486445271806918364421033938534151812 888652574012928832403123509745182769773805829870737913307091967277804107311053 510140662925322878977063826263417213839004052490630827709627830584389009457935 417740660917038958870703374587873294066303428243723004950405845948827900219722 700545996380268561015960999991481140805144041297540710180715505461070648455336 469256610860166571974567461914403331730303390696993694441686309807254782838335 914240588028971914047415765110642879555873737524318202084246034190705945744299 014526368207121894269639255506635348891807512862975106440624048373349745238217 027242496718705259234146713479229848038898251649823831147363335348395361046338 427938286818748981908223174185914343078912208748521421992515842566801769827080 908039492243359067780400646609098119255273073283016601846077845606361089620768 599832436134298334166238719202475084424802606271416950374215130822216991906453 197730109082257929825387476579618173929845104398703458275536099943409257893881 184797760229590549016174607802577716442126910181770816194760646224011434771886 082982987263354058223807256072381587593425500144290342703225457795260146998925 889848229411390411791215936926705784767836679878192136174613459708040226369734 456673667607442782221219039076060937317451226875065389263058544246204291196076 085752437993578553538929637939104751530177243384722538414449310247337804006700 309324862593139078154250501931211059357127522554148262921933852540666658937269 023981362626551803361443457277186310574631443204817869415828393928896214231749 562934853318434882020358881898856873648951753455818146938755842781827069071899 279980262220297404099539999906170903752431152737759513949528606446559069417654 708161264789069826104387140394650418454523729148388237615950706901020513005284 517664348155436583526658916079534063339839850764534703855468894098168581287841 492786829407466436452514949144323025131299664334995254835931575787702881393514 915238814963732101066537139649558891351286681062745837372372540490443951800851 275627362325173695572997542857850876716588658338157884244646417512068880422435 491000374265956881246708396946728434105555259493154888951327200733299058085779 659013274439015648227369069596399437744134790915988155181749207220347408491855 279049192205164091725222596223045446587079088857831692314626298992469968677231 714517110986767111516484232469827713909896766575707715714950519717129184856408 803187216425763079635552633542015616636539220663015158969986789402224590687944 117119045167740250117637716969127271679800403205679288067617308720653139646787 164022850284520494381695990155023155244090854248978621102965603985332428509030 553739086918229103371906416894585366739908047428624125693553394926336573140254 852397744665496940502823144057668615856450799747021482580243216058223328013084 140247972658249502830181416942022547734855003906141539192903288610345418676126 786479106051236535869554792048521365624447212870482473469809646704939444689711 259043708571448383316806076220110651910160299823731162687300967037323709237994 346504986334309232123206492747843099618676924320485154746612912809184147347695 233592504006729512327781432574595998610949503754627818311926111793222335985632 061314361089240016164475130928149879906964413613390965599575963898160478843741 681650069791159606528199047091016281218921174415149236110451818572068320212306 380329362518025759607069683719274606768180254558426559672622547008243228583656 303963668818863725286213165861870004069153071422704612137609721801311815886716 745225579636233577383144697481532953152995526377502175108703960452689606688691 506506738399645057164439455122413227342065061586859749413655694905919189905449 344331910840973462322868842148041130099697216719704152531883693897696345894044 026115964388411579690770125610429472859854896662650307492596605713161092638549 824066992767306021096674552590933411625561408631824660845585253889283527722692 359903705210528886200312847087690605382788867484863415307194531638369579527047 694715796446819910820415348062905221554061797916640351367384197122489050096827 127481152168268401986447704190546337937516118854537570403056980295796861315657 656579934258480314870557092441080290188626876168193829189546686969456358365846 410504735079661608061247298597786660299354264609501627781985781741204664098562 936682891513498745369516579104160580027305394087393124153963350870717023054853 507656763280989987698256203278487964663940665113866715061314951720398710558476 839399874212744701661600445487422500201475691556361451790545430837525321631899 143850505479871035810773635551192417519059697866960291056877513829816728366293 756727322025630488152029321351935649303241279041345489702531892587497709133969 453184118423975351333849404156739551670476767609789451141573765638484354421298 130263839919247287784315212764791846560874724810237270530241926412234716469754 932991000517177722423506917622430517347381742772600521786664672653935144875098 684285364386761374865414379433937578960681917983947064295071559478056314323980 227323151024149128259887067109152275094364935326760003163616774472183525200834 601218048866589864833620784116939012345649340374007447567176893547601491771128 296033342028404156676535219096579297525559110590117391522427088725850341575797 528727486986190912817122632653102860454402634008817374095916647550243997140115 318473735031086556113485876673685223503912396608744158217563833016269252881715 120146590395645848067287213138467055820810131242126984520895588610459014206177 924376996772441687997534185919987088502248029185965733413100593031787917007644 270870646918288520368437032351727873462204054324598177290212198027462979851790 698898295467214132811671778959908548864243269127533438534185052970821389179397 482323933064508200445496523241992072458409906467747008708866487626905676724756 531120596194468309881064298993859042124204271505595255356146851457046993691514 062901546867368800420605104253683434726265807616115317295000046670151924925694 388649030788911520065394766165588906647626533582313815588003337241808628929552 291724719072965119237437533356508482805747351363667880437040367379094840191167 009024190491088169277888333529609978369811309119782861346504368800469950184319 910389495435020074250338129493332245105583806726268387739962365175363257093213 670189337860984048402891357356545603643610738515119409205385729016844010630571 893405397600824928983806476329007637477060717720902786249191526590957005992484 891765337097507779033922352849571188358653663196089449456541953910736279025650 153907405067479271020196100712414615111746733656829568491711213005676207136831 409809110668566637015334534070891752926188583981067137156708671393169860925131 718270861762823464633025521250234150244855168995245491967097851492167069731193 564602104550380333094820454946110441556628872964119086730938730132410604674096 115128361247471993933895329213848561931672687248624656101541034300033653342500 830695969655912067472578058204469491133991225977572452459214637475672257499374 335735310774696419166247271200036538263552477190004725111537298354297562883567 435017025283738623456154077215096849716269582768013557653264735682449719181229 357923667957627394365742703318546650663220729675499941157794423521860404741490 747343439994848027195650068834751513556422758275319450689393038895660860262215 079079762600361550238510750640133973005189571636629592307036170810204732259000 547428500034910237410380553405985047272687612850130210948801921186432173049453 577920418314820390476321277152766202263164639537306175165098654855358886490400 775778168569332750176453281957671437504347488935754834181397243797291407253996 451010408700324309328312755641310634045335833163991538553067129985753687372847 642358579229906724332958324995230330174422372090227884947382558425274618358778 709671920196526111659080648177760370884858113244683227230739118553107633224582 229158899345994368723351416901902385115157923457420826776600974084299112535346 951106111241909027289348084250566790468695677951328653433667758931872313921507 934085280327915739794538389428645121158072038633161652336971052219539116324234 936855717294652676509887156702891618808718640395199429237602953247619518834840 341835363113744289250566808820816651718445623204295371921578931992678153940823 239120979889029734141414596814290868965063770066428001770440456127998047965322 300867404485541753444003937265677204421753941217246034123611332517829197521574 147823480768357316174571099591388475214509173652291892513956565718009042417311 382393100576080896799534844183052365058752892413464055879821726316815445632885 004172638904059181164175942684657037829750330440442220902293574733877597943616 766018002357109933431842764893940749706663979135820762968192690166153238632227 349245623922589985701997568442068551742283914887775090139186491938575330748382 298803816618033036588479597212031137694464987213251953604867899804800763600943 196160117192770422150261119631723859776616525703585731360138658448137388268285 302138532109344801328983751176966437480027967797424239274775169390341730101772 561610938048507242524134979814427729596863821904937240175980463677900162208842 663835545540812704224264034344699246392786122805088452709681851154390277098808 654033914368436127821917518738895873735866795697033112480845523693065107374972 357679684712312361244735923602257909276145557883242131489766322882975994859072 955297922150952620033184767814414828688235890279528563353418369935904996975922 599960052235025646565586133535126142403698382531042159037392297605074067336609 049882796284011933899255432942513575261043978117257387056478949898120510816208 821538902135751698481342621647421730952534493275096147288786315286158617677569 728775677124540770491178455140763138094313152606277807406270337557925871891483 344564481043459663862700383838859608501571126166494884913857681928898089730202 910089232876709778866990432374504408588466085147648327487790696173430545100551 483294189499542874115410326006642424367707368672189788608816477207488814174608 764677360620985461751405872798491025544952177377802979616305293766002306532393 492060612691604020067081283399030665072487919690956423133283204964388347007963 200819096074630290217668911251112902713465577831621325595626940455954816439662 877815688400260730357299151350753448275413513412151509671527291552132151050964 108747993068740909344870450989491204437181378871236681120117991263240486700343 427690032763121036551641917918048560777567419574000960871784589841514912030717 433966730632585051610654270398065597271780588165966087563564389648671049687336 021282565751540165193238918862228249629894032637863763714166930566324953358916 277045403698163318780261304105534426759128086440779827895227635731184026640638 156749888101115351401963090045510484505708904865808782448037772614148184536915 872660969576022390884998158894585032392778515333889779253379138075792455325780 788842081521436584957221177862245920671211165722558706802016705615445009500684 280401687011102469771280325110063625224723683417521446790335793890767533737552 406637032622220312718037575573929946724504932537071141500119805617581313250068 919018659841421803144304402138606498729954250029629570263493157381221447271088 195707403938667168536790781896613792291154072604529245203518554073852482088281 176022940794912648330238094249823561834307769386048634511091233365432006758930 872499934308113420645755584630442053283540857876216969986455854809937341190820 020739948517326860687335874630456362466457620643882584266536394695433483818866 439594728854485673679650834255198200331811270478428141526423488213627326221235 850562288039755851275813479513291325131820199398609212987239711432159655062896 336227521242994165113484145520686931195956908138054064451264854314019769921187 083979134716511032141057313940186875228190571408034055524222230502126143224352 062063490373144338286212087403110323424372613008383044852507823468474535836907 599358395461832710531382148683085425432531181260507892083284834647364704708366 711594510534048482956630710276602542112827947873478766914003309538994509872754 077646520052549740592114002195850437090202976916576669019461313162487741086656 388543047084132221438709399746375658898489311945459052346517944832115560618683 697194803325808054859804296030261310032385251488852176863095733584932995865987 570597467268015581010973675223772753733630101192463547185880518065002233021184 236012930540530311245096755916485735653930587722623593918708096217366776591859 988111958171933770825750137609173350164862366503476056273377675660669366283931 366192119739897182420848044167294395598584263130830836972345590594259691672669 046080953189682880258764967053515217577307051229622659003110441277743837943477 976281570017353061667424638417462520351961433437372828271487466152582592984049 993418555408001680628762065822846704781236706889439718708852181205079566214227 006013040186395120596446641727796375668151916605200827088924521802395810316165 011151512584075716913391387584572391426897951342791872488973761146599600809626 185614683780893478826309477906423653968026965196416972536142736165339647059967 370160159409494475810156239345133171086814607343813279695168184694975491197917 235935245940722244241427605898343338340385040281058359659235482986603697873323 901959169694156254366280963863106315567594289340325114647809133956647322699930 222223411371067953037155098849597198632440142983236530314013601877609658043581 862404246620956401539760420388564956391972217493985049713119648998959838235584 500368132513229194889618140155802360315361542841883920706977087305672979802746 467879148637343806302946146012239449348164320780940649607217889266818980306230 720641380834108859116445450286654350114378456556733931179610483941238735547507 792929863241711555498116963794901027819807277175970198677270265704606140326571 871281154799663648437445008538367484246443012637944239591328873265035011121529 560071113033766752712955156755691748355416720351966531431300914636723423792421 382296130360419892175124963817597889155977060410004048139585612643914568837652 365962998795041677616937608744333430603244935273623075447039611943287057280650 915513691211015548789236556804027679976653175943950216953072775618773876536970 867084868918194367467659376717988850840275688184465801814535279433166846251153 244750879528406526906955983291402533897571346726998729855992884163175982254838 787737007237395141471665991939057501492860835677551691244112902302908771691952 649337282755401727818527925019151728418099559714011773921257737943765025003963 662154800840302146968373484860277865458488568187215123677391178181307332919041 469298486934626598475504742645741023668218744458405745288046597321646739506778 332257447395531231197862476129015316631856591122538692098094047555302499495300 346547964598704597658277142215088956624432086523168375144439753622609261391482 786715447787286234204144030868600099691561071592585457408741980165155947011429 234969068924460556353627972384312435804293376437949224452594439112401331023963 278806222348058673638964627444552844071149679721724535089004577960708474237373 744649878033287385228892433275629834149454444865487521331762378628694609014540 391159221610559626303274233426137156759415013699384063474599340400840930048282 781195775525308530685882246211599407900319466892441843965449258514950309961181 970134617541835990106302158770467934630972968452070839383502394974727876461134 375373726664122080106245741582208521682633044341160453261305958815459097332293 617101200723234807354901862902110122230423443287446691384323187949561092035905 989076273612238188317761395378225472046695464114342564206607667041444892995107 715705008286096163786037842773428776423329025819580066362394904081589394437223 065577906791548054119924014810369018809802152726909506092562936731009064609833 398038538469641880998062248661110546480718912122162379337819733455041589424866 402375064032813080214820383603307816817028962126854000116367809519178323433047 735660250292670420450623212548357831497702872800487457042321946151105987635077 654835956427036065383085367048866361223459260241956383972507418050317770033647 073574159707717978829281412222850321721375753752541984329141750321940019361044 568146012721670769596534210812107149382709693521937332467603994054848948396971 094258804512527401633953698903589091380193512247471517437739454511070462140132 322898266519459858838311251012758700424105200463375740991912595171909763981954 256444542788691311382806966909916253826110090900779068551699895439231031911452 993549543796937138924275141591961153224481236018472984811653371786902312289570 361519230253317403239370375191102330378636142081367693279170783109655621514784 332478473370463966686778803157179430806855565979348318738970697875454049647662 732606809269499974747503018385166526386387216296682509226923774635027274389941 420988487882693613296710887228405282863897689044872931932358217972437733930858 708040971970659180129966593855674530480748683349786120210486425625928931855933 569861169464323458720226404602269394585555398725603183237294122443504238814882 576421032668712317219502469026914297969362483630530513652206289216459552615386 342280933952991036395735588830987946250240117020102446339995657981535825139586 772593590225979698613666247217974102190826358894863517930798665237647326410150 032778755362182296628358005082551958969284520736437623352320918467555172204050 746641645035420958361762032151690821674765746110394589097899960450654979464729 157526350124516107067325406977333353913553346410769293686175753943847267824450 047185418244937528285379411934012279691002475878771501977188107777185838552053 245825731986380143724397129974506047394025649408473733750677450276563908364716 318061013026673547123404289362369813654002606871237396085894894743725167532526 196582924050600050113978094784335503784909211574770625598854489169825962315962 170253607756006026255328940714949838056710407944693469391233396370669093544730 974118556935885625077490482267566177832950997026669653072341531309341843286368 566524535252739237523765075467296528681521159390626281775307427768902855276306 542678556768908561258979209672854315479281487942404750857354410732750566121804 144253693261181465370742480047345926136752609082887277880238445108187223479455 106376193240959537957368767543835705806758711703728060583759808912032647265376 121531921390225101750001575100243602927835196447662691156853185192113959724433 552637992705111390122010252810447999306533702359580054252735087530417147119757 637473540560285795967460451369619949304153718628991050570636542277972432506319 589326744151502864460757802640192039460474280199301431263935039452362514673688 639297665014188812549714851616018952559545500323437534866377917717554731211063 354183705313708816651781365369562138395847595303724985777050505389285409012239 988671768996908518108637876648082221666662791417955461432614799782494969888878 829761740035355502250195425568293506693341281219730757077175901604090610909533 304011797389947384215244383141646327045863946748410310053428828646383425084568 778815448155855819783396978826723893921860163402969386202673750869388211015494 269605797477066763097028938622664067066310794949572355010727147238923850140792 416708370924524898696457638698592550977738731535153238717520186590782221677677 370262853257696621246174515114039752279077473214837276802319991337289414053182 248688555383608658979999279223374303438936284419181230983665470547539459517991 496041974337199074555365195560138183616000417330123451124287504949563189401553 455184344272295512434406593630528488546690955057059716400835104867996776536790 060899197294617579104134229362699280463866284230603695857148577658019315865879 045470668456350867745181647416536722677619724769682090156941629661079111592246 548170755359704010121346257888688987824772407089820508186372136836742877379071 658403137648437232980108486923607924337967086393229187735489211145778465637957 328125571912807154449061441172366478937144650397152091781317979125686111447669 307679334045069159753370399836078351792365719415723314197335641109593117859295 840656114752075449519941448506829052494415949645606800909301088547138433140144 765240497647029317994215635457928658509920985219311678886785655658977970114725 660256824375053586901786990409326802530818443428698413731968817484812473835731 065017329671397531510621593245307413977058572914755449567588445610708426747957 710081086557854412241291498017822126718681780409805064632162242745483962710253 285875165645795684272960514473028176338689899809618791534848643868137225667561 684902763674918406917098598991283238365772016869525379580599246594079176212518 770440017942373500376489590406316967267499131220691109742088656288301701921642 527634706686013351570260082051765061290063385799391077562679684388914874698246 929138014469866539459578643497865564552520885983165574820543312032509365973587 962716583846447482692349316903096099149009036682291474669952471055919453898085 863267352105467081395834208300220170989414250544131656077967226153028220729785 721635617451076805935741759375086986922803147469437959684581862742491236626985 963172511254248104537337953170488499546797828637167184424124062479540318865206 077606319349720903153121569604254936487298977319371288437545236990981245938869 791492004411818090250983292386199355682249820451121979336165353738864816450974 152575536534576883524505383266786092769317644210502013484866806261676338907285 174447618775350794570097777616145841611318881378261304531700352316031720864939 670232919803099517254701371400238683204389139212804629448030381328044948211996 040577675545827841917743533042023670946829285284230774657891759289662147300649 741416829454978026664357634846194482293078288697284832473076433156514150160627 801680411394093364263351046225433050900246000100857303204632870311151234997620 749611794962137637354718214295827856066815792289350888103231038618926605954964 383757417808010250066809437520635830489701763727939160695332036027677915772317 004318336765633835867968722661776901902893975694885974025619569521787110046600 989939439357404712747976148104426585989300907623193072906451792057267992833146 535438055630816935565617139010299611777814519335514300094653897194629900130999 300713008084385463850647715267992706657449517177138752042424034480164852397644 760619447518747119189931125748999080475716599606558343072381503778029076859576 113823507943234414343492810446073478950999679283326491665127320022747227481036 796058284541368436274282358310878561184098290224306921954155887642962597660094 070717108378585059308391517476063045553115696515550441488721564075529015622532 819479222468625373785720387265224779963766829406706222581784619001326340219720 045156586797015232299361555514295500655519466078431556148837965083494933731679 814659386000426900107079958125421364969742037115992046829079716280682152973792 844615237236256573237418992950574463615113466987154372816898537171047294072541 473514578452711200037778152335810541013824061349505251077587959142963877725122 961715130810383123023230360696623912817708635397194045241555702024286931419696 967623112646880859376245566132129201319656302963092314948347422433170275719719 063316159772310817133124062505554071470538309849963525233215762359138674390429 264465575069973010047205444409006113924891688425699530568639491351276343832250 819134943168462070086551457880707362424407454531826542961588996328450751783931 833888198841211554649576440718768449513478294929781005574711606156387039699842 552800242797776858562526374544517052137188520634324646028518976362327066156256 880076382271765155118666070875819089070422829126724175488405829956621775987342 169861649652389855305429783747463565561113888890989739864072637389104682415457 640786561083691874319676499322078471196380413244058344962170632473747711165330 166741843484545440831391215613501388005821670372469163698055913132534199473095 978952369756967779953869492194551425427413590952059356007332026469130794100546 944535743035909883060432705175168554830448802954565461958312315628103058215695 599844548925388097120332273445005494956967747130812180570515999580347460079059 050377377741215139384361738222559247940247884492156693430842231346827446231779 379193657458318109523699878328279448014555239572859239402762404889049085232829 732593017221685715367701982344110029697071466994536795259110737938750518267217 963128853836604006000796015802322235682831889135947033018636309862841170019855 814755784806458988633501076312848765750749565123316785642155255191384889822943 569395973678990462399958381869888243123832619444073934290867429076107776043518 146163512962323303154240615882545028441144914282282311061328071212120607379588 688280775637229358569341611396404801332528489413455680777287148123435657027431 018872649395332397543242339022309541757919971344653540863056802188131523681615 446600567425771352465307991054934392381199474320982934835540124559649903605189 068219316500631974773521357632541694618564397541634588479153678492645607413883 247281036799476915369160763174076725270568783335989888633154962690156625964408 235710034634493202275173452513602084987478703285942984533544173815796487200605 818625046114881060099204625105253288393896530252848660874585958249714475574216 317705579610621284695054246645193450767831289438495040781770706413599351565993 710836205388719015605866495774219467742715306908800028604543471837633948423215 478768799695527787783126791387526707315706251952599940919781075720966487682451 556682625023167554228825900319834637431213140485365115382834167232004595364019 992833381695281844859106635392408313381248440473058482145913457612493756108174 632981632956674263357065019490626819176921349824291395327009748693547696864288 126724167079819300849870848681421144485126465536554150776306726361280615787959 276702812474448223885197663800126534620545721188340179539463214823044800554454 110472292276303446158872795776152436415616374697740974443608112786130465403340 871437537862793128274164008182642086339611262836028639117288782309685453409283 717365594276685282763808023020825118966160559238120399495213402094053562891519 398908985468432967628143734863334996087011472491042996889741580739006187342416 692681611894016719493021717112279939623169366779485194003884561107120734297903 900659434078480835371548544542090975984155905394475966499479008750803594980620 438641561765795078804474998811408978272981102724184250756593457748001463418551 696586207154683263611843094564555528995158422302886247533415456202665382686747 345082450853761851634063423514843314801082785392347790276729537718922916769674 211043668474273809508773455117842247319913890247027894863096517768128189752009 651440549555887982823621396168061501832843801482209056806485863874381520643135 745752431539230625141651923095159287781164770106339078151724042211620994190321 270537784065851263542245664316759536267775409730114322437847493509801279472251 882915280677418612414286204799701470110621385863131177534579844162777733830343 362761797159861601329932068724100435807549673131284139215184167246051368427324 627231588126831000994585920457173078856335762469904706497745473781030449582960 890188966716960753803168222852311370313491265511882608110249237620662822884778 465962444747181945423335479472679283860658715367805935855064586261937178686203 988069129659398449537725100658946037187586351246041076772013976679087698862605 501137363996192140300863849988404768145740622846883323650095760962377398807312 770356457096011675593031412275939063459504804762256345900852523577327149981539 061860898615538758160845729358606423490896178168980908090490094590086729426433 456626742785500130981872578805891181789865946704974690855166439810543717136239 945806221720922376462175862457720232615506330329901211005882896610302879367687 919699457493025409864097272504530464498797249273876777533189969743568431522751 316209063562194240294491473742969236787068732452079153653717475881330090498084 980371475421203962343968311859083086871628282173808967025013616557739624101752 114148850197788648035447269798555391588935210325130459177790167313416053721564 356427769160752644165186821239088252574829881576373923861334251602357104008141 161201162260512290756417095969793393648637931201012067650227484291193611698917 831105287695691896629591747420264946026038260435416225287362592398075671276139 122046597541670855361360080734489442187453854560772807639276761100285602239390 541966355302260741198304069044356446845348291790266329410737867376187331466956 988838357185511659680499681892784071069698455390599414952859414339648454979564 751430096870363529344666442412408792405438577646475455663726019417978887087557 046094138090262602786430866810762134444640826998097465665253865470266327852401 657242825485032632849321815408159809663198852801322571331361431321558107016603 640460674117710117203727759073263366888878908117751046117925632082088841322002 436939205089120024030708203962497370569238678995446850083575956756172862868158 131469858505399863568210700546074292967077862214001491108843401346961298901231 196412889600355528991470079910870880196296319015626096839180067143003401704810 288455253057598832624258608482080320284070377691344334363763995718600697195362 615759441448714261018897619799928037553491089756509002146223336942376485161008 520148251415240980185565342052650104139091797960379640969821706796348873701072 598148144321421811046397642288232037503816639380461289170496115005050998356053 652097242220851827453586326065362930937741237252561022440838705211374468441373 255831133686424742336994388319102253752218647280034604058389984845236278248691 108180183482435192644849799894876008132745169961180290695492414563251239771274 850489817651958807528127184887165317831045237359341641500455859211694554682875 998173631517958395934204104522608075160162009154440391172715814513941317771278 288397991613498896799091756175850075335693684343567351428392664128255590240028 459461933445919193492111741517012155576883483090720095499749240365899439372328 244240796981310976954247159191129289432984988116332026132714941773546121432993 263124403270466432286823916127617981320810332448197307413739278616861790794195 630437524901841553307505494857008207761823764500427728706094092428212345948924 322401608812819843763670917309069498373143691386485422413366883974277072579949 167413075827224872487297587762023666832348375101627544784090850614762891319917 803231310620543941443012413711151608645036937494307685566917818436473768709907 330398299911425022722973755200435654884442663738521871591123555204653020627291 752153073314580965209161564523160031425660214438206993233691036603477515964664 534720646035125170112160099329261813710930738855768898679109096410361994528263 707003132858499452911998284443833761702162726757658236925006790958503991993266 090223156564866621534166582868325474315408566536418656735448812439222743869741 775882196113539058843224985828338477919606655679257303499741629000538117791221 037274742352681676297651907543005723359773026844246221472239938811589816356226 123647821463620045290737670701342988890475217930767601274024260348483901821674 125001565935737128502416015575853816332086913671062735879168522307025217603301 228572140466923347847840800764134587948218636559189755956594886549484902329681 313705143359845608753305217156336333045278442574971891001504163405711292680829 506087342470686567662207897700910203186651061819990757823003523805812559577186 183002265968837565550735350781214166452562145939650030267797978962864892681627 912455301383212661565128690602464055552108224531559751429629495169227901434944 910977899713073896510632421235718490124339193844756810543584549786052058016943 852708182121570072634227824371475785150472942329963059068314910136232583730219 477493576719648128698465758465840085292642865912750736377579451430749197679917 423650627370031591254916645455425288980034659178586209287726593600613414600370 230019764066222416432127284907040631805860563707081753787448616936724737909483 974719325326774456400711644894281990130367924278054784678669708100634064109592 717412074007126351549404860405972640498122352632833457975584337219684792466470 051480714099049929571090621116323097748412623222107736485223566663810243854687 900243553283728049400220542416925654330103840680811091361692787018188669383492 471646949093697098029957909139054258374853952916358439942774432303742418386141 903215004930228601784868756520046096598415200696700114414562604208436682669898 209462277412341920177944674751464435539644383627999730120689839739391476453682 338156544012182754385144655644359517127920563137953061939828429205763174435543 504445881866676092397358526514067727853951518020177104107707618621571978120216 820922828005152539924262512946653673111559540983729380830387061376284121178707 749745327107224048780537966604279779071139892729247196602158796440676970201974 572013471018826781498867878797949464306594868216934180102452460024524559037542 940926193636208853229483266271208496819640829777279621912398615529010479637325 378304170605694842351720448273011487717682176022870619513846468744295269980307 339967243412463233708931022102881326478667891962574187327718546100733124805284 129743373597810805968679231557123930141691458430198810382503138707000096937853 677418193104527789733783370250193748186047366960610931952287427020659231230471 578187243879349339859675857599845995895162276331010309772333839894055891403419 381542688296394212274354761849649354411992636436980098741617894076840218431282 355024351051621414269065636846138469295843912581983632776963895081974996457538 307290283697559348735406629062475283466008655244569304548931593139679083956868 059789403640421485265401553844481059372666302114637257136447042221749479168284 218826356149985562609355242293572574873456341577045982972080365298710351147404 858018372874982537404531737197853607578339216690106649515571876650683307737914 506756070706174566352928439275336605393024228685154675533246201905372053025175 590145218932541969975662562402134593464506295580139577687268733523812051833889 489910646365952059023404037551314594998859660549499163786631184495743461663276 374986552092700783739227637755179337053228663598347481757469575568977467483974 938730907320707856908132918086960733681988254188620480227029796620205100698080 612877296169712075679208209015547768629203614607468263723028999368523593939373 361725223503602814033929502071287907276713281167256045133867599731881773293809 479258042642111550975663087759346170234428316102521114427786021970746385501247 585721299872583552923047824927165589267404098169595392804795547049456089510926 270709754136454396532433210300615720975248938709249337220256102339218090057050 373983672924458503536061755659615421654930989850577132982752784759879305888592 464961563258336147824317462633223923134610658243185422122870965118451078350996 956364150391968738509087563675756145918537185548507871399632331009838137421443 949898203948452278123723787307552792172264167343162016112126783156950312012258 117869068657584029443924505312038889806749033487646643829127825012523692315728 602992934875942789349969708852483633047660873485190487369719975312610031315397 272585372200022495735265602669116132276837613686019612144634260270009532134918 401977300784884998004838022147758330581920977401221232587350772074379925361593 948268518405513547934263020370050635184387268957127605536339574072292157821651 971047556001233713149934189286715270497272515608887508569699667798642241102426 384463529172724820539526864222809563340895872585807267406776637695347527951544 373924111766569520009417839842674279403597236592742197566582173846177109382300 130442623473779265945091738107421604458741040512464553304240399451319731028713 969893550863926412239915927390451027919355755998712654896260958180759779535737 415918836783108010393224591463079053671788432425785406413213848559759409490202 951428268183974912750955741139718605396003559502572521094203903147990491348834 391592157828807367661552377065506533171413507860995913161724963025128601148256 310722718044953957449248071153687687535778330290292011489202152411936810218895 354703855090967747095191838580914349063421907328623320083078995138048222886268 103703717935138059698715719849596891219848797060631586262106577362897041654790 509216731940749498300480202842369384597452639020675415186682704279093450217816 438878615690679399037662560042897149721117335619518849970562299489398897955511 832552256565410033497813343796672096251835421452209369616960495916160867091926 313602572587425869133716046964666321870502420997603789177325434824750803933321 071918332646380043089256373248540109249028394718425561998866303228434353168385 005501767645940704253687400276162107575746179806207406991962440154138271417754 218048675393055371330697583753021377767920058147210097464656423848806689470544 221193520755296659742289929939487334201902496956502801036548716081446622481102 649581146417961368913935481264314037709973458828981534180557491591063579533166 833279452477575321474314822297653661633169090923505378769083934052809793280336 942262528276281941052348040661535917809415604004791384018973783196818333616300 179647719784164597089710239601078726236308712604756837122903668069499085755104 393469403426427670923310404258108591307765253800501357754957294414720385757420 399089062022484140170190387923736555860354915969203059700386077185787862377084 330271190490047074129592235975197575440652551258764002871158051071022454222904 704414290175360040674089107349380160862643628892652876508218173551121886194208 793316956475668206730542582746830668704945619538454368508107361135406966911624 054108302101817148890886246522531710090852105992521137717038332808011745580666 618181981418301909267334392948025241559879467239728217924027793122319606615872 292087283153196809852979319504930636790854084636481652720253792267905300077293 755990310260710003308198249949000725848792246448831558130078899923016336698953 066415049599255441925204524061802390905092366148194650935917492976670731986021 402961355939618595720195073468044232118856862047694920476501073348266260990634 831320714936168261662783920181840846745033459287857444408010232368566225604960 558068332923403034113241718166401580110272712032407514998502451150871428014212 694434618057717233915912125110679032599089787713420107133455648271165500796617 571884204051192523143641993635633173217478655150266048566728842339911609395833 775790894788638740027200846039742066409228660562003343365009572599177670940152 855658217628752907556595657602839734574667045624189223913833570861546501822192 099948218298247806463566970633673106083198157844345158329778528635136754479059 830519928008994405761937302076509812150577325636881437766799129089088565934137 541250995534023094184829912629440179536572817680276870665599324095610217346116 785359639700310521061054359483308986673844331874175105192530727975608484351978 327407884669888219963514074410039498392634237905755996191627654898773061384946 832132728207473648366355273188681466455866578879634366224775647396828398853794 235139068240688476163930821034619202624192035523900624186182226616151055952695 762837667588784422828552853087460719744820687956142364062794269323198888114986 391819899494061650678406823289634781754951808561903547457149708275978610248121 882242723311544597606413136825160037514047538468741360719287223194825297378806 635625285976444559678567064448853086511238624193810063905398475006804689823042 272302505070140327186367294816802718097523503526505970477750133807069294508328 987807423411329845556750082699225293158135469376161494612245869831129611634814 058166502895630005832860240493930098470940623326622859630478422547133938004533 150208213270369837543142797320566603940279560218442530940611252259098430662166 597850845937311051879230645430327516083141501767660322544916801337191546532715 558455101196684121232128330337863373855997539746841037695764866261980890251761 528765050647493852534762792717792256646956647471145427643411616432098342797044 988307473220784899375738230864964775561155969839602919066971012763046771470864 489682013182851193288002572233266741880286891509708216973820435598838895518589 924489901203580323773467134475993019824127109575480049101891880618355870122046 831601508297441818767146420237734857038387922023597359142457429592723514925540 787563550393155569016383477731224367943790098364594578808699920581145372735458 153184253480715335095969417729755118833492115910178773911120237430064461042556 867931279414510855490577169126486832298275982332409641687700793634660393295967 162407817061027549231315143817435908975198424620751119108137899730938573842787 017380884123584785821290843883365600938817698778372477774354559197875152360322 011777402860616730836406781729115253798391244444578358414085488996042469459052 702471084079146486165448987944092690009016537395586336008704536666422350942311 560727996097365617198943531473609004973672755298286521895272828006270485811379 301349065505913878163999247888173124791991767544808810587710710078557494653225 779341488956718348249045507052219084721323933318667191186164330799050756007716 360788574291034833243473113840765775499691049937363838681265005406218787146642 462417532158617247715440819405287659183591873306067070230348352875881111660963 560495055566112570302803342101011601937150325586930502859884061501436076801040 802077391185711389851469542076605994656466602594175800876792704111289715690316 263679639483843185382889574352111522706196199532177046275174153066068082350823 489317564847709493570408537668507262585055754091075674496608967042259940192412 458603304518196030830904375645295004243606750597487302415760549234541678201677 296236526162047999601217448165147640745352986344650191933307754286973303661609 117107650814169831296155476408285708571084415745206186826201347894635623861489 272914779935395734706432805855070978674685589363672129124324297924279627179800 805240149776231566274019455517127992693605805496818176656937389221433225887007 502222650013793680977929650116296835953392562995873729073068797026427590631343 273197182276025609743550323835546075677033005654936183296623351734354208300136 714332777356911185073252553434658466759173206080141555043922999573402399523709 879504501632068506267293861363748704762889865120992068049419454026767024473323 892078255221273318146145908876498005199315602977706997340857231669213144077419 507814789037448058194324164675391155153673698523343654583725122836763718064080 776038066823117556534713277510641753459122111601443785832015326880467368912135 026650534717807531564449892350017376911066345836419370145816926955177471907294 380862814271695311954071824761141872288421580171758339632701765091745456262587 521230486769648053584415529708816857862252782253738487540776597434930883444573 267073016692410096993478491337829466097415869655474731708352777516338344741156 687675321776408742910578622903130168577909614867184646951574248333537845324760 464021066069000227283083313382418846506787032489424670459724809413064020594445 474805731603790566731975762639626370180882116638858066748823926301512055101592 096414615379683648948532406622931633321154504960132250937652575818841225512072 126379604167823342671126891720344087104200621214477476594903609656080369458686 201304640108525769144592072558901461613169131780495215120897931586030173092435 969805031533882889823314960898448386007764847490439946189990376419173029542671 637372409021364619302645263650229125704199286788011235914795911096695077648551 789435978690797349283221709888153101697670231336910559161447168596742775180616 532750945153628294651910137043570829955393966004659153712135207700060789723847 480665156881487560169341299439696553679450289138793951087660371946410010302000 689713521004896823506821939803334934761484497799487866708960511505631312735766 116632002275939299023901601361502642216735305893385179911467513493805920294088 065354077900733640115530448874485693184190038043753511982134957378495849142625 742936823661356270665695455404795168639735696430257382365330787199247642669760 019980368680904420968925657811406363403607976437471675189473251846834352416756 606666927165213657486106125921726932260795404291518266542918895285276303062445 253737027635530992747664215862738767057527474148568753617549000803175724781728 219196278706965155590700303186251342423419667552224941119931409886200087874259 228857923016472999566685122919152306017065805040980725059216345815973413308724 576606883411391595019554037539981161045226626491308915420549073251557628613291 111467017890059963003171099098135574821529549463361364220214192427155202734436 415443002452417119315972840712733362798602016176387936831968137143410454208971 813537809948652614590040486012056023770503927492530040028128690354030855469893 504012756265311930522780675526645534558708076518831683963337719720780115141337 470418025116261970700947686910565835321186130119714270816093883092590069956153 777221320350167016405245754475565889564763582007780238394138070647967042850800 240924125063972509880203560956821988285727244821795543407776255191720759813322 450451420662057297950040592328198980835033627190875059497105859301310941908473 337503662026189690085566397076857613980947500347258328834327308923076123386821 099457122979178822813915657167577128263771246257980521532621652698163407380698 554845912375786501801958972455298664427692739175235218831832992294726313140938 889116399334959126270949610448503898532881410468489373679754749436253290969152 639653809049022086953092985247676929833190503080139007541467831007998633151916 776964266819437551988217152869059817713181851941464505027613490383669313782361 595581896648376973807225164010831723409287843234494877714705541507862296269204 051275797888786873232850246047725445433659736148580790249359296383412976831358 244775767930468169953983576236107687812139863468744949198941184901361682978746 147804506630849384208276656202510465533098983700352783143897313851611090109978 571288200131246070742566711554517867974740213100898715262539585413765248522998 358323706405145968519048723319134806441556633011658427683924994621498674545873 699631368579461625935504317932763953701745687224685056582127187383517206960795 340828042780664901291906141747062321387459612927763702336770191445234306767853 044020536459986044743580732986781380854297910778121019216605952262218619094107 353667811663305465077101753584593356537295534763780464897937116216157998107782 355423896113179676137890790463001990341766860852026595623975672641138434836791 244393041675300791193067457207620850339493093749006289443272503699201481854074 848671924587957234821203981331484243501948865918990064424231280299824825606105 228670833331125852030074966257334078799471608932033505336265558034998661952958 256832834211660791302267039561479526946922812095897405773986985572805119519461 583650366759805104979126737598208930563320278866158797776999137305793977148812 132430654617572259109750982168746615657313979649738474048110902062602276757277 197557386706231063249843922957068299674107840368371780609767106509643012961462 318418698195452522706378112792565544673089275959441651310753925462917231518282 737833899619155625771497227318104271015183784289539199388347386222364160126353 459429537850195569090423282134738507648862665139396350473076680608495855301599 791437565791511613824437487920730330397077329119742592470467760341424348728300 644900617752841079537514011110722849213169637649063714446736385432673307545450 462436874413147045882873891040656710748777931909637954775210756391021991124582 283723238775965924495311687768785203443592462620088949700859215749091341184531 977175447440873413125224284022399839514768337295539566478014260159082867513444 584931932912872013370288316349830609876118380296257086244697215651811639932120 077991723492159562621628659661178833040252033989996179711897778385361144372659 876194540422156012232245725209188854455240646316672812364238679902578010588371 499169514155332950524802042709020084532125597200145247111374710250464810933817 866299263827323719851028100922726812397787102579970793515968343165891930278911 212748955404863457471922841983554296336968533062865037473063557546767042696772 730492000769427183108301750932116227554232698423868833765247020170121548427477 518532962945701947923169954865733994474546240524931705841963742176332122635291 505352635747338869622358224803849671071411354105866480342087752493162099014317 816388849971659260016031774270882296312052291611135001162288798159680195778234 846143844730461792908145471980613837848448569415298050265164787793133399128557 032747758116202144330859446501359802429276735101200818016774141681384615407120 247055002266250422037004217799632940619217044632230475939368471037581582701400 849706229750053662713144117031272486363125914088944363103342430133771584813845 510171342258374613135189367374545522457617132755771224951834576159420423919195 730625147019308169187050094409686648730352496601895326792225537028262848203802 658389218573855447006029319245674243418960584333120932202629883996087345445884 725669429981961460036584350992127373568093184714382146680318095721167458416422 090542188194131502702546324357154344486869831632007920802854567218626216969600 232827497340697031237402994080170226077953273106699585887841759395742884296869 506020919438007409101800460303723502273642597980155608527647794605837023105447 051130383944014635776253868226534219874707095824417486555208848587915850337140 684281896973039069422970164167528004908765872901333575353938529363096084973689 670021237578828462290511921695370395001757185718563805643161438329089747856489 762499705014440622047133697632146949092746691949246333248382092393997863247567 320968746941239663897459078074566857035178181405839172593094314556419046843139 981529195310950674290759866930338368114809233842053202492328434989295039077201 777960688773695362588297556334110841034929615513589366229404286430829489905017 846751672590706169476145654030332125518941780141490783520550035270973821446481 906944425160421865385011622156933350956339820743031093327826471624014644129122 827185531320162114455808372608944707725666708058219536693755235911788872215674 011294876525768652917127529293473366711511787215509437569110819715763031582953 121777282308734315898171210057585519892362409473167068219816615580292173753597 228271439587436686014798266302633951492855962250949485568793987532583276916321 468742853597664393723768699442792656288160440510643098883032353264025261342120 109284739740219693780761612362593989476450757302440541149762996139087716126374 536324487593006734148052902112676497133612616925735885505422514927116775186155 145902638804438398010709731103991256022642175020153169169990390867555537116353 013908964454309597657158403432295697646235877365198985965847047912354275266822 426792996469229274003762182597252735577756870074445210609038925719780859398957 405651832757148766840613204438778113171084873611906744150110092968088088247565 707878471155118803725356848848320496187155748556386905550680939837584844063402 039814839093687984442781715621664477419805309589094771635363450809314586875577 608813795721279392637397722339094136075852149061185475289224625879465107073677 969585097951379045941805011772804054799565603999174448270008007466095154985386 175450802679317587849126131672827846830499299088511496070948914357606605163276 335087659233255855366844379055728584366201944593508534470863609657410177585491 292641502047262453155443429108924143369642184572677720843573562510576793899632 049777809527160550272997482573532423361648923484324806035630546693655555410920 312251949644285962293329135068433929821248513008419475166053458093395770409588 309368359095279021992457923760121868285932707423894836034952638936432248797449 115195916339347073598237488821897738498566709291240251241988905750271676379056 933302965318392933620412820052389891307726622057655586254657152074367251240056 315743488773768207466121593327620857564827236555117919327661793135546014780248 319876206669185779036010474961496300219948618513547878789247735909279850826374 954770011944746652826502261214856134421193825479850995736820094461942029635592 106245586806174200747569827055452584371389958335341734698353845170743533996710 205886713255379171602921554755343522980058042507990544059204251466490666399021 646996079109916896872161115676273896581452395874246525219915780233650581089090 845595423559413944818335379417199445798992679296013353502111187062274189071749 491943326851495709642416684631907164230490927887798805224505423988143624057428 300584481121641829203587794496304319080851492845997582190484404613232656225445 122537128806758185340654173144565990192444622657448454115466870207823850485335 729415572598653274126469380260913297098169961148552761542795371735710061776979 527633365718258524403073969953868543051136622165667509728525688183257691102324 033988732896756559043181016574947951235844980424757460030526340498495970005588 697380177659741958385542296456241635001163307984435566038984166479500631226400 775306935352277647669360424985600659696477431751099445539829363040536654877579 549651677356245098575494779668665356520278032947566353162831918819501239367730 676370289204467378988383626615528378169170380445976107549795337377072666541459 922696561411122660621987293882291061497289962095380276726858353847160520321854 911782282602648160600724614460060159162428070294236576658981107754199694964004 768732111748653417416824797046831949337317258669429768869308860100868965826046 797895854863594154230770789150711363255843198663655135521403338657051704456279 925814016523163013508777895259215122869097157074264215808023627051630764544226 809657986610124122129103415312037776712190352990508600370830539650869144906926 463629547378788623186247542559626348554267291693814254151385239566858023236609 540048513088618307689510569374396720192030486087823512424916395556705165370060 915967841508555263571954293286848838413461264643412220915153694459018489548292 297086966590092126690303802971358001972279913263904056473926177329392501864888 855757560428460371348551049104090694629772765633742857223684722993617601727799 197919403875085454213844113867658571115999820058404780856510017420155869578455 219959892332607446987322060450370020410621943139178412198626859060315156808370 575582383228678613646118104087821336931227539862859375988078512729709500753720 922332175095972528350696719729739822890638743938247837646015150224921518963360 129827310816473767911437501929211041188026322253375952696723315381230383727272 593209220454554385427122671617146698772167131889128921776037246962040186229791 567231775148767380987406775965369289815422766193723361563784809190159007334470 956504399830844721370365549996465147810205466054364682085489472542784093218555 583028721940295619902518842558665600686477757887133612433728296750413564168887 925060609163848594636637671597840161653998214610588883735032546130167814296926 344200243501057194733589435928143100804467228859023341013112633022964497704822 173554781280997294011804718199251995496182041172967450878759496768051896293304 586082980664911479907125944789244075037829243579348840994354740342475436155380 192236024947050374030163538718421415305025518497868116731164239204858828205388 577507235973355336827777299902685324889858946673412299431340973559882017277695 647204780144858617289481956686637140552607438535451062980202401192978966626018 594996997718264936683987431370712793313828499106808701768087420356476006629132 691832126855496179982941736113741599148025033048988451142542659006755580159989 860198205720590453185531248773348698304042973837163098353861191295285361001922 225304486581057294321178018872172567335432003051386645925769706255487271003825 292396168716318627497340271602680844283210073294617788466311730623670605723911 523161387464536531079628937531669639593817564099914075237430564457230540341193 419986514682143548792330170825743090026955465040743890737901579325702216857542 238595984493976778598011863244619895549731779726924718500941574111924310616425 400318708111788042203019110915463489165771064428865133920231051753997885447457 339121813123329242620901081872536664724135657383462582015341083501311416526974 416449928206773837610279609475999052973182393909247791128298040010023771724988 780647901692688364358918677527194365063488890575544474411572231622982381528966 211940730314246608034174021929030361082776128502427726549403621778494247986433 434236632732020523179408089737196464283571117668829026791912620475068923261433 793887282717090786939413719311377486764700496117533284981160880229143489450896 612222756558747978463150841879141313693733531215015084919365489068107698727406 785997649754820335545866898257157711285495359207842331685074844079566715296028 774365908153395827233511500633013009734453391366281501982546911540798867164760 595549809151707770755661250216119789788976074915254830456170677570753810512867 271313995322263487067908020405373579841478602988532505283712234936131214646752 957495305548028391281405403321752787516915132948205575200146195221901196001909 737324705197260135181574447501677760851027283395184012265318070657465888701716 321356636466088340945301297096619223237533013955162473336161828176880998159534 465458331638709423654763238817010398663906193315910806378388824150308851180035 876463400155885995048629347953031407124546550018595719937811931399642283977150 575698715223920847491883438932444253987015833425450247017465310273978848959428 245661823923373002208082144811258639433185396323972281579109532359352135255129 720589550063431610019465591937486291193511352992059868591637014856242785222144 379813263926848278727451764901426778137660357612441934549040097597595304831715 385905776553880282315556761307784486258451152254024382503897601783692778432895 193324140650289467586875318182042047237570639699145807711071117197187851833595 186892141283561433772024618274317223322310660182134595629905507330847198275401 592283894451403942230986096120066998034500440535392209336060247876408829461027 889175476779537487064278884520171117294619833467663281574195203525807953685265 802964241632164618288204010837392381910149012118419939637440334003054073567052 260979082097298367470390670789026001955242380883278607358095398294173497011303 548417696977063070390676744559127520361292729822276066715442444080056387735953 874884073425685308772486502861145869930897891351566431751373051164853934446505 978760717815481875241023804558324972267483537156813077316595649765267641965624 790353493744059315241768227230331607542471529353038585525941398695154861147560 244357913202166710623187413714305106624409791269624146279265802949134355898722 809450217479674434386902740067028456879647308159860243621864282036523350233475 769130609975090263112691571211336033449606192362911812775504493281811021050136 131900341127871853444608906331903912825496234255879626260404872862249137121376 751781047848751748450138382508239501616864333007501107658042470894004635392310 915314308963746893628287820189353393671147372465199291848237017895219855962111 852459684140598759876045374846546098991249562696911327691967700412991658535278 622870057406676430726274037669304564827516875372325602823738263794783453423913 059945012925524609978202547435958146140819171550582984004219157525016069156901 507278108515278856938107786839126845958565355527597966425102168459455223125875 980470622324656348387952267496910173825131731712993824370290721520424339467391 574651134950768129688124239605601716118830104911014807905290463218304270853728 952275116003009010461852228154559842650518851843893794060078155594275367136441 238507493220941599139388108025351831819628575869087854379442584228473367981527 311599219110435494563479252828078275170758108481941166659890203171676582585966 810736105404678374319977376484989493275985579487071511448200514856422892556434 065910180115084947024655200483695827111698963908641367457458961549639526651069 457007929336770040601552781514803666481563476732160773437617406686162306517466 621742864308446259560131402710338847945182761729420187801115417264300909295512 253334512982972305939317997313875709917929361947056737422554308715259108723152 733218535310382139414197177254509391514324870254311290744699939815744419608045 834957416360562002525357477638155352066060270953624081676945115886629065182700 832779461296579234299807270634911393087422378570902210250597507917745086725865 991731388946599698241161312928248734856446106434739350379309212730664669650901 253127109133001796798113820441879167925699841921897295895110035708820683268102 416248288123545398875910611226823266533944951925345179965235636328801640793127 194986468770405302544003324991934426439318876968925417787192704687466142666319 567546507911840098772974754470804925129037974663111670469759728913756800127583 999932020314288522794393254304576967610815749187127562620921836167010229140327 417448156953515409251056843920937061018840961537225065221283433657352001356341 389855971791486462054741203698126594355909544407677236907832273645312377517173 917202041297867524557922573753898700329664993823061947394275688283427600179930 345762866229547203769128225722234637559326778118830813296576811022362427512866 783827916629289225514903269000345640047832752003129795857860434005591625103533 774706665208960020744375823435559675651231545160487787058363447966669038737955 258255216525068846371198095637819912594079867624244901891739720454530910762545 417552554485346751328229639929766925146449118499246501508378050032376821272348 868361919347172140795734457849569791477583899805763144596827938185435143083771 843081229791117611899864537529530720316573493400023662227381946277012800461539 346479396889513579360847240614825084898546838001301280005772394547275101291948 424152256170513643808300727362812804957116608443083507631605890036967254798849 295101018037620099930638897851609699930073248491734895532270604821831514777361 258133651755412687016765734509201682431076832629486331239275368764047479017030 619293208096243720842167161635013792238435960633059846167784276621692478364661 932434837712375557064161914650351404766572767687201100276449353089816546087688 242219478730921795174884398204802302386181741251125721374235647227355579935395 159835919184513998444471680433341534378554978656472655954665787939991526902230 005535390056438620591564666297053846517701896164630658769457669283736865044006 271663555092091759679486762052950592661664526892972071788106578863308696225179 784261670969533402150334018725087618290226200334827861995267089898424653133204 100481955286429971625984431214539472020111887406243772213724529901322078617016 516427676315798461823089631057344231633773530762505185572214479041670599052187 933928469026006433316381287899796252990019331684153102884931752486179542664237 799636970974067425832351972669972779655108447981503357898194497159816161532375 558491457385133349066689244422466729351286161700630046848237993794525181887545 224499068049851465892662512127273311994306228813763263964573369499862395553782 251546276360938011095849505357176902129770343183129592562240280994062994151279 330438069425513615053059515523708398837041168639036343535699739996245626035707 804971147244112925636180579219222584059843511271694608247938679371053559262723 950563757893472960970049007013130219008110850051383941011650272158809239089523 747637226410895470084124436982098307926143669903272528866188031790784632170041 947044097611317233523745409227382868315575902577782783840678156967159442045416 102416427214014570600457186440883047128183005461122157837440063410855140626133 815777827223238699272537982827481942564839025352302170139534809587311390889198 081762297362713669826427327426318809744321545896102043915336357052309499250639 298824047398506181092165562693846015638203669766622359814671429846866204131165 544517965999955832195766704419522898539222243370452452324888889392709048984046 243396178442166284381216717429383486095690515621870006523943235621964553260025 057084212850613933556165609617837080313651136049798297357870183910715609696411 388611391837041665636676686370955903146369929600070651374988351677347423339737 236511311317483849221749070592869390311677411457056341428595155149043493438075 956738504684329767043607070414526988788508141392741818118282248843636947312030 964515633637758914469237710158126174193831031478637691451193373700486004235812 744891347760144790425824602307869729713529948829136103981190589619388852945029 466187842409147614704825339470620212334594743176464345413859654701491979229436 698017629651181846424913053982436937020021423481374333693181277421812652652510 203622439672717921607713817196560568739470879980740666908027656334427392910909 191257523751208915930434467164128042184090972416041488875328657156567931996596 505315743057466015546597674440758157123465671556916903339740729028660442323717 903211721898464706842982228677056602700595872304292524967450167595352393432585 998136785352578065933038001965713380499374510168278260353344745796479925506105 695377705756394225963887725755690787721522277681498813448099922289891171798389 367254581090234771979693568541903428141396604109372027722180804678592238542509 248168003425621707535861552089497033541387980735832674349803896697931036072125 979112694544674564131754758289064543435356818010449866032984708231280988986725 675777436529099514875259695058038071741562728104661856512350011284045412054041 594741372114133530136160414255977083624375742587328992907680031567291626131219 228378379379699401529786612748634226040100812191566302141744521452765351183400 582852412964742633742576890417888797536507978397647600868255243210924742452178 934911630698479634657649182113533851831414227218521804237213432163793811777597 629096771526576305353191411035051070346786361407170170118768371560645140047194 550034520279724966323025704826810767960359628700557039580823062533601593912788 295344088383485936547020545476418873776875214962136087492760040435179379909927 511940885116819211721328083060916727114493402168188571065306314803743251259520 693160498096024475707582226479688071564804928306545742860402403484998769543692 287821359790409035328736285947592927707926766486361143424423501949268395113712 673965102481334568405779238116982726655714929656946593054922689242765046852734 823744406498487950865121084244954306757132130082358822272883055621819225390684 329854685193161918680032023641790729755668635619771540928285606065994901322820 406769124942013636957141115002219460881798463520760688177106598375308000409709 147331606356843986375537479404895737117011335435247987466521179369878154449363 633574830494892339690318073078765455454111690151551300489448401621842864155305 279004165601835197091985755999212696469460560552317879643837499576232226793966 591483958349327218145012667291226782252590454264995873160412073901250064240979 717784212367991549880212130193369185519991558055479767444702885634899132732646 084158280865187352802285539950982031302557213040168966119646544174223499557991 533783967091855918343023885331028219060544206776934779942819439952723446964674 524080207698110160565892604644338671583677156938549833641197246055774185718830 386134698239293053233070222099880557277552669349665167249991878943975363756016 292928877711080840677841789352199136414516480243657034607540891316587374906318 689361865716465822022458524728374810420202961335274271751707142555170369065860 328472822481784369287185519067704280070312175218143254241920098859512999882733 637277099887035335810693533529514512835791995838231323154111469649022417101937 358469091625998077678839743725800993017419837888342970633687771795766792453141 867796417557468260508458169708416269152234703195491927821169816921711963148033 247741026296640362247458198781359809233128952439157274043774861393052138189807 982312977015815387893588075529218996679278418322538841279280851743936084642396 210701155738189831394091787057190185833004988227120127754345485893770454932332 246442879501160539820311029998871556515566113509068952182562947478662837775349 757734002913325892753855980489969489747555405312950470233483863137863870453505 897996282520054438435122400965480476752855711294666704304954544277108356640257 842604011572894880011298486446951296673662879884315977036962670603519227826215 738686721358723615231606739257553662693596708878790267253385224682598626619003 817171263801176186968548579128080224121038022948039738799786151339244588189540 435624591234618998404835245997847781173630799696686652316699908331385646249804 713996576448207391123844406780839579944132222675665037296132619393896506240291 232358513739651894796357453003150262039835897365623821145743350732889276396877 423415412666071119549808149909159011979157133306883256420241263479829086292664 053080151406535440367526689548936821924080933900814557941399632132824044287647 621863255454077548183044438088551411880516403624683914503412235425199898671035 439692246761826317489534373260493876959033491566179474802432053646417973591770 776115331235959253072791449378663732097849702593500658960906330206475593183114 750052894867181301851381931318067629478471201291847011936197492299228588976654 216924601539407594927321913252528092010041897611356420791498533860844809960584 310415503797184838364969829549262847289525868111855222714130078684661797630869 766071031917648352982670308221776390080740066458810528979410414766450831035356 757640525219778710565878582121331910993562781263244971096847836564923197895853 559603033032396201821085264131445539785172961583848744564171885460384157945894 073807825951191984168695350104783504569317127703904453974419987690801423840837 620882388686086647883672866608465763166438277604828955859076081531220899601748 784903868708111974729397399751648732910755971551283425163323554743040959725707 478332356497825965448649222090373981788636841036622787388806024487315278433659 955739511964362927321710524756612811877530984747677137126008299430789251944898 472384888889245285580449851040480739535166584584195021697601780086294552005250 441054665187331302544469285517476119726854056959224333296244392023909119771698 889734300357306132161637206598665303284478598911836712572367422064947346321143 951916180261269878758627031105410062195115027144916858267443332782921235664733 917638831767836583003334167903088464344639596014626722017765529622045431835156 183733400758315025364707415807882421307490335463057665459574318559215040177526 152198547763690490102000760333532209713709618550757244147401357547288934890513 187495520495537841581503226145973722870709280436443295019703379416139176616866 362849358961973428260628362343430158392677160432108478965650500136776167756179 714082177957270439881976908684394542007008893591324037376054044379117252029680 368827693956694327975977158244153780517731272331291590138331597255024598584081 047825230541809173442173287779821928853527212611793966651691648465520696823102 786725656278176874538022587172078592060303412397451548375605425984265779902094 696880757909112606675092471329468311412814176938024292934999291211688885626809 764936402452009867209445252169110080548033034001161105327550006197359025904639 596017258464240382202622087898503103750897064770421143881478857029316520294004 174355756202370261884733091262204634139710677947576461983881838485166893556170 903801308190186050623972437012083523918423750434865713994534526010584308038876 957239540427918053728889756158255712329000655914178736205641749326968285192159 047047038801395194594175275630863850626510714750038345408893411670056934567337 833829202327842649776173241256131300421599365542868301066865814038544461692885 053431985118714987709321520047777123922126560927863388471328750772501659439890 061864712591959810456509416317936411554125294556505133872390328720352429452616 405746261299861593380325155978040406340304431327793419030194323284673527620465 067355515788620468762901149332443906324859528349164982453516363126924713816731 002518347687369258382981893239283781884092202302679643631069915988942381089693 531780703986041633551881902115199134856839724522919430284034209192839881891140 020489601072766896888893415551158319087762736501206920723906267524723131641657 121964632565047137242162742385645832560681275006425190147432095537500892809174 773833232394943406561018354034459861205407668779203467582142342110249693370940 145156201477972611764527358785813649556639368264184796461638356417056184679791 065672105992070171340520828692725335851446168695006515322078817200575351822203 319106874056412275538600523134082792815743935765436884432034230946156246363238 299096601434794735812540601736883155908570452011406438235639804954713455087767 672552805702434332464047769559565185775312140011488990684598235525024090393433 377785476973732069318967427617532945241405705700798618767238041937398302696972

*** END OF THIS PROJECT GUTENBERG EBOOK ***

Updated editions will replace the previous one—the old editions will be renamed.

Creating the works from print editions not protected by U.S. copyright law means that no one owns a United States copyright in these works, so the Foundation (and you!) can copy and distribute it in the United States without permission and without paying copyright royalties. Special rules, set forth in the General Terms of Use part of this license, apply to copying and distributing Project Gutenberg™ electronic works to protect the PROJECT GUTENBERG™ concept and trademark. Project Gutenberg is a registered trademark, and may not be used if you charge for an eBook, except by following the terms of the trademark license, including paying royalties for use of the Project Gutenberg trademark. If you do not charge anything for copies of this eBook, complying with the trademark license is very easy. You may use this eBook for nearly any purpose such as creation of derivative works, reports, performances and research. Project Gutenberg eBooks may be modified and printed and given away—you may do practically ANYTHING in the United States with eBooks not protected by U.S. copyright law. Redistribution is subject to the trademark license, especially commercial redistribution.

START: FULL LICENSE

THE FULL PROJECT GUTENBERG LICENSE

PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free distribution of electronic works, by using or distributing this work (or any other work associated in any way with the phrase “Project Gutenberg”), you agree to comply with all the terms of the Full Project Gutenberg™ License available with this file or online at www.gutenberg.org/license.

Section 1. General Terms of Use and Redistributing Project Gutenberg™ electronic works

1.A. By reading or using any part of this Project Gutenberg™ electronic work, you indicate that you have read, understand, agree to and accept all the terms of this license and intellectual property (trademark/copyright) agreement. If you do not agree to abide by all the terms of this agreement, you must cease using and return or destroy all copies of Project Gutenberg™ electronic works in your possession. If you paid a fee for obtaining a copy of or access to a Project Gutenberg™ electronic work and you do not agree to be bound by the terms of this agreement, you may obtain a refund from the person or entity to whom you paid the fee as set forth in paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be used on or associated in any way with an electronic work by people who agree to be bound by the terms of this agreement. There are a few things that you can do with most Project Gutenberg™ electronic works even without complying with the full terms of this agreement. See paragraph 1.C below. There are a lot of things you can do with Project Gutenberg™ electronic works if you follow the terms of this agreement and help preserve free future access to Project Gutenberg™ electronic works. See paragraph 1.E below.

1.C. The Project Gutenberg Literary Archive Foundation (“the Foundation” or PGLAF), owns a compilation copyright in the collection of Project Gutenberg™ electronic works. Nearly all the individual works in the collection are in the public domain in the United States. If an individual work is unprotected by copyright law in the United States and you are located in the United States, we do not claim a right to prevent you from copying, distributing, performing, displaying or creating derivative works based on the work as long as all references to Project Gutenberg are removed. Of course, we hope that you will support the Project Gutenberg™ mission of promoting free access to electronic works by freely sharing Project Gutenberg™ works in compliance with the terms of this agreement for keeping the Project Gutenberg™ name associated with the work. You can easily comply with the terms of this agreement by keeping this work in the same format with its attached full Project Gutenberg™ License when you share it without charge with others.

1.D. The copyright laws of the place where you are located also govern what you can do with this work. Copyright laws in most countries are in a constant state of change. If you are outside the United States, check the laws of your country in addition to the terms of this agreement before downloading, copying, displaying, performing, distributing or creating derivative works based on this work or any other Project Gutenberg™ work. The Foundation makes no representations concerning the copyright status of any work in any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other immediate access to, the full Project Gutenberg™ License must appear prominently whenever any copy of a Project Gutenberg™ work (any work on which the phrase “Project Gutenberg” appears, or with which the phrase “Project Gutenberg” is associated) is accessed, displayed, performed, viewed, copied or distributed:

This eBook is for the use of anyone anywhere in the United States and most other parts of the world at no cost and with almost no restrictions whatsoever. You may copy it, give it away or re-use it under the terms of the Project Gutenberg License included with this eBook or online at www.gutenberg.org. If you are not located in the United States, you will have to check the laws of the country where you are located before using this eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived from texts not protected by U.S. copyright law (does not contain a notice indicating that it is posted with permission of the copyright holder), the work can be copied and distributed to anyone in the United States without paying any fees or charges. If you are redistributing or providing access to a work with the phrase “Project Gutenberg” associated with or appearing on the work, you must comply either with the requirements of paragraphs 1.E.1 through 1.E.7 or obtain permission for the use of the work and the Project Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted with the permission of the copyright holder, your use and distribution must comply with both paragraphs 1.E.1 through 1.E.7 and any additional terms imposed by the copyright holder. Additional terms will be linked to the Project Gutenberg™ License for all works posted with the permission of the copyright holder found at the beginning of this work.

1.E.4. Do not unlink or detach or remove the full Project Gutenberg™ License terms from this work, or any files containing a part of this work or any other work associated with Project Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this electronic work, or any part of this electronic work, without prominently displaying the sentence set forth in paragraph 1.E.1 with active links or immediate access to the full terms of the Project Gutenberg™ License.

1.E.6. You may convert to and distribute this work in any binary, compressed, marked up, nonproprietary or proprietary form, including any word processing or hypertext form. However, if you provide access to or distribute copies of a Project Gutenberg™ work in a format other than “Plain Vanilla ASCII” or other format used in the official version posted on the official Project Gutenberg™ website (www.gutenberg.org), you must, at no additional cost, fee or expense to the user, provide a copy, a means of exporting a copy, or a means of obtaining a copy upon request, of the work in its original “Plain Vanilla ASCII” or other form. Any alternate format must include the full Project Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying, performing, copying or distributing any Project Gutenberg™ works unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing access to or distributing Project Gutenberg™ electronic works provided that:

• You pay a royalty fee of 20% of the gross profits you derive from the use of Project Gutenberg™ works calculated using the method you already use to calculate your applicable taxes. The fee is owed to the owner of the Project Gutenberg™ trademark, but he has agreed to donate royalties under this paragraph to the Project Gutenberg Literary Archive Foundation. Royalty payments must be paid within 60 days following each date on which you prepare (or are legally required to prepare) your periodic tax returns. Royalty payments should be clearly marked as such and sent to the Project Gutenberg Literary Archive Foundation at the address specified in Section 4, “Information about donations to the Project Gutenberg Literary Archive Foundation.”

• You provide a full refund of any money paid by a user who notifies you in writing (or by e-mail) within 30 days of receipt that s/he does not agree to the terms of the full Project Gutenberg™ License. You must require such a user to return or destroy all copies of the works possessed in a physical medium and discontinue all use of and all access to other copies of Project Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of any money paid for a work or a replacement copy, if a defect in the electronic work is discovered and reported to you within 90 days of receipt of the work.

• You comply with all other terms of this agreement for free distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™ electronic work or group of works on different terms than are set forth in this agreement, you must obtain permission in writing from the Project Gutenberg Literary Archive Foundation, the manager of the Project Gutenberg™ trademark. Contact the Foundation as set forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend considerable effort to identify, do copyright research on, transcribe and proofread works not protected by U.S. copyright law in creating the Project Gutenberg™ collection. Despite these efforts, Project Gutenberg™ electronic works, and the medium on which they may be stored, may contain “Defects,” such as, but not limited to, incomplete, inaccurate or corrupt data, transcription errors, a copyright or other intellectual property infringement, a defective or damaged disk or other medium, a computer virus, or computer codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for the “Right of Replacement or Refund” described in paragraph 1.F.3, the Project Gutenberg Literary Archive Foundation, the owner of the Project Gutenberg™ trademark, and any other party distributing a Project Gutenberg™ electronic work under this agreement, disclaim all liability to you for damages, costs and expenses, including legal fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you discover a defect in this electronic work within 90 days of receiving it, you can receive a refund of the money (if any) you paid for it by sending a written explanation to the person you received the work from. If you received the work on a physical medium, you must return the medium with your written explanation. The person or entity that provided you with the defective work may elect to provide a replacement copy in lieu of a refund. If you received the work electronically, the person or entity providing it to you may choose to give you a second opportunity to receive the work electronically in lieu of a refund. If the second copy is also defective, you may demand a refund in writing without further opportunities to fix the problem.

1.F.4. Except for the limited right of replacement or refund set forth in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied warranties or the exclusion or limitation of certain types of damages. If any disclaimer or limitation set forth in this agreement violates the law of the state applicable to this agreement, the agreement shall be interpreted to make the maximum disclaimer or limitation permitted by the applicable state law. The invalidity or unenforceability of any provision of this agreement shall not void the remaining provisions.

1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation, the trademark owner, any agent or employee of the Foundation, anyone providing copies of Project Gutenberg™ electronic works in accordance with this agreement, and any volunteers associated with the production, promotion and distribution of Project Gutenberg™ electronic works, harmless from all liability, costs and expenses, including legal fees, that arise directly or indirectly from any of the following which you do or cause to occur: (a) distribution of this or any Project Gutenberg™ work, (b) alteration, modification, or additions or deletions to any Project Gutenberg™ work, and (c) any Defect you cause.

Section 2. Information about the Mission of Project Gutenberg™

Project Gutenberg™ is synonymous with the free distribution of electronic works in formats readable by the widest variety of computers including obsolete, old, middle-aged and new computers. It exists because of the efforts of hundreds of volunteers and donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the assistance they need are critical to reaching Project Gutenberg™’s goals and ensuring that the Project Gutenberg™ collection will remain freely available for generations to come. In 2001, the Project Gutenberg Literary Archive Foundation was created to provide a secure and permanent future for Project Gutenberg™ and future generations. To learn more about the Project Gutenberg Literary Archive Foundation and how your efforts and donations can help, see Sections 3 and 4 and the Foundation information page at www.gutenberg.org.

Section 3. Information about the Project Gutenberg Literary Archive Foundation

The Project Gutenberg Literary Archive Foundation is a non-profit 501(c)(3) educational corporation organized under the laws of the state of Mississippi and granted tax exempt status by the Internal Revenue Service. The Foundation’s EIN or federal tax identification number is 64-6221541. Contributions to the Project Gutenberg Literary Archive Foundation are tax deductible to the full extent permitted by U.S. federal laws and your state’s laws.

The Foundation’s business office is located at 809 North 1500 West, Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up to date contact information can be found at the Foundation’s website and official page at www.gutenberg.org/contact

Section 4. Information about Donations to the Project Gutenberg Literary Archive Foundation

Project Gutenberg™ depends upon and cannot survive without widespread public support and donations to carry out its mission of increasing the number of public domain and licensed works that can be freely distributed in machine-readable form accessible by the widest array of equipment including outdated equipment. Many small donations ($1 to $5,000) are particularly important to maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws regulating charities and charitable donations in all 50 states of the United States. Compliance requirements are not uniform and it takes a considerable effort, much paperwork and many fees to meet and keep up with these requirements. We do not solicit donations in locations where we have not received written confirmation of compliance. To SEND DONATIONS or determine the status of compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where we have not met the solicitation requirements, we know of no prohibition against accepting unsolicited donations from donors in such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make any statements concerning tax treatment of donations received from outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation methods and addresses. Donations are accepted in a number of other ways including checks, online payments and credit card donations. To donate, please visit: www.gutenberg.org/donate

Section 5. General Information About Project Gutenberg™ electronic works

Professor Michael S. Hart was the originator of the Project Gutenberg™ concept of a library of electronic works that could be freely shared with anyone. For forty years, he produced and distributed Project Gutenberg™ eBooks with only a loose network of volunteer support.

Project Gutenberg™ eBooks are often created from several printed editions, all of which are confirmed as not protected by copyright in the U.S. unless a copyright notice is included. Thus, we do not necessarily keep eBooks in compliance with any particular paper edition.

Most people start at our website which has the main PG search facility: www.gutenberg.org.

This website includes information about Project Gutenberg™, including how to make donations to the Project Gutenberg Literary Archive Foundation, how to help produce our new eBooks, and how to subscribe to our email newsletter to hear about new eBooks.

Table of Contents

The Project Gutenberg eBook of The Value of Zeta(3) to 1,000,000 places, by Simon Plouffe

THE FULL PROJECT GUTENBERG LICENSE