圆周率小数点后一百万位


圆周率小数点后一百万位

π =
3.1415926535897932384626433832795028841971693993751058209749445923078164062862\
089986280348253421170679821480865132823066470938446095505822317253594081284811\
174502841027019385211055596446229489549303819644288109756659334461284756482337\
867831652712019091456485669234603486104543266482133936072602491412737245870066\
063155881748815209209628292540917153643678925903600113305305488204665213841469\
519415116094330572703657595919530921861173819326117931051185480744623799627495\
673518857527248912279381830119491298336733624406566430860213949463952247371907\
021798609437027705392171762931767523846748184676694051320005681271452635608277\
857713427577896091736371787214684409012249534301465495853710507922796892589235\
420199561121290219608640344181598136297747713099605187072113499999983729780499\
510597317328160963185950244594553469083026425223082533446850352619311881710100\
031378387528865875332083814206171776691473035982534904287554687311595628638823\
537875937519577818577805321712268066130019278766111959092164201989380952572010\
654858632788659361533818279682303019520353018529689957736225994138912497217752\
834791315155748572424541506959508295331168617278558890750983817546374649393192\
550604009277016711390098488240128583616035637076601047101819429555961989467678\
374494482553797747268471040475346462080466842590694912933136770289891521047521\
620569660240580381501935112533824300355876402474964732639141992726042699227967\
823547816360093417216412199245863150302861829745557067498385054945885869269956\
909272107975093029553211653449872027559602364806654991198818347977535663698074\
265425278625518184175746728909777727938000816470600161452491921732172147723501\
414419735685481613611573525521334757418494684385233239073941433345477624168625\
189835694855620992192221842725502542568876717904946016534668049886272327917860\
857843838279679766814541009538837863609506800642251252051173929848960841284886\
269456042419652850222106611863067442786220391949450471237137869609563643719172\
874677646575739624138908658326459958133904780275900994657640789512694683983525\
957098258226205224894077267194782684826014769909026401363944374553050682034962\
524517493996514314298091906592509372216964615157098583874105978859597729754989\
301617539284681382686838689427741559918559252459539594310499725246808459872736\
446958486538367362226260991246080512438843904512441365497627807977156914359977\
001296160894416948685558484063534220722258284886481584560285060168427394522674\
676788952521385225499546667278239864565961163548862305774564980355936345681743\
241125150760694794510965960940252288797108931456691368672287489405601015033086\
179286809208747609178249385890097149096759852613655497818931297848216829989487\
226588048575640142704775551323796414515237462343645428584447952658678210511413\
547357395231134271661021359695362314429524849371871101457654035902799344037420\
073105785390621983874478084784896833214457138687519435064302184531910484810053\
706146806749192781911979399520614196634287544406437451237181921799983910159195\
618146751426912397489409071864942319615679452080951465502252316038819301420937\
621378559566389377870830390697920773467221825625996615014215030680384477345492\
026054146659252014974428507325186660021324340881907104863317346496514539057962\
685610055081066587969981635747363840525714591028970641401109712062804390397595\
156771577004203378699360072305587631763594218731251471205329281918261861258673\
215791984148488291644706095752706957220917567116722910981690915280173506712748\
583222871835209353965725121083579151369882091444210067510334671103141267111369\
908658516398315019701651511685171437657618351556508849099898599823873455283316\
355076479185358932261854896321329330898570642046752590709154814165498594616371\
802709819943099244889575712828905923233260972997120844335732654893823911932597\
463667305836041428138830320382490375898524374417029132765618093773444030707469\
211201913020330380197621101100449293215160842444859637669838952286847831235526\
582131449576857262433441893039686426243410773226978028073189154411010446823252\
716201052652272111660396665573092547110557853763466820653109896526918620564769\
312570586356620185581007293606598764861179104533488503461136576867532494416680\
396265797877185560845529654126654085306143444318586769751456614068007002378776\
591344017127494704205622305389945613140711270004078547332699390814546646458807\
972708266830634328587856983052358089330657574067954571637752542021149557615814\
002501262285941302164715509792592309907965473761255176567513575178296664547791\
745011299614890304639947132962107340437518957359614589019389713111790429782856\
475032031986915140287080859904801094121472213179476477726224142548545403321571\
853061422881375850430633217518297986622371721591607716692547487389866549494501\
146540628433663937900397692656721463853067360965712091807638327166416274888800\
786925602902284721040317211860820419000422966171196377921337575114959501566049\
631862947265473642523081770367515906735023507283540567040386743513622224771589\
150495309844489333096340878076932599397805419341447377441842631298608099888687\
413260472156951623965864573021631598193195167353812974167729478672422924654366\
800980676928238280689964004824354037014163149658979409243237896907069779422362\
508221688957383798623001593776471651228935786015881617557829735233446042815126\
272037343146531977774160319906655418763979293344195215413418994854447345673831\
624993419131814809277771038638773431772075456545322077709212019051660962804909\
263601975988281613323166636528619326686336062735676303544776280350450777235547\
105859548702790814356240145171806246436267945612753181340783303362542327839449\
753824372058353114771199260638133467768796959703098339130771098704085913374641\
442822772634659470474587847787201927715280731767907707157213444730605700733492\
436931138350493163128404251219256517980694113528013147013047816437885185290928\
545201165839341965621349143415956258658655705526904965209858033850722426482939\
728584783163057777560688876446248246857926039535277348030480290058760758251047\
470916439613626760449256274204208320856611906254543372131535958450687724602901\
618766795240616342522577195429162991930645537799140373404328752628889639958794\
757291746426357455254079091451357111369410911939325191076020825202618798531887\
705842972591677813149699009019211697173727847684726860849003377024242916513005\
005168323364350389517029893922334517220138128069650117844087451960121228599371\
623130171144484640903890644954440061986907548516026327505298349187407866808818\
338510228334508504860825039302133219715518430635455007668282949304137765527939\
751754613953984683393638304746119966538581538420568533862186725233402830871123\
282789212507712629463229563989898935821167456270102183564622013496715188190973\
038119800497340723961036854066431939509790190699639552453005450580685501956730\
229219139339185680344903982059551002263535361920419947455385938102343955449597\
783779023742161727111723643435439478221818528624085140066604433258885698670543\
154706965747458550332323342107301545940516553790686627333799585115625784322988\
273723198987571415957811196358330059408730681216028764962867446047746491599505\
497374256269010490377819868359381465741268049256487985561453723478673303904688\
383436346553794986419270563872931748723320837601123029911367938627089438799362\
016295154133714248928307220126901475466847653576164773794675200490757155527819\
653621323926406160136358155907422020203187277605277219005561484255518792530343\
513984425322341576233610642506390497500865627109535919465897514131034822769306\
247435363256916078154781811528436679570611086153315044521274739245449454236828\
860613408414863776700961207151249140430272538607648236341433462351897576645216\
413767969031495019108575984423919862916421939949072362346468441173940326591840\
443780513338945257423995082965912285085558215725031071257012668302402929525220\
118726767562204154205161841634847565169998116141010029960783869092916030288400\
269104140792886215078424516709087000699282120660418371806535567252532567532861\
291042487761825829765157959847035622262934860034158722980534989650226291748788\
202734209222245339856264766914905562842503912757710284027998066365825488926488\
025456610172967026640765590429099456815065265305371829412703369313785178609040\
708667114965583434347693385781711386455873678123014587687126603489139095620099\
393610310291616152881384379099042317473363948045759314931405297634757481193567\
091101377517210080315590248530906692037671922033229094334676851422144773793937\
517034436619910403375111735471918550464490263655128162288244625759163330391072\
253837421821408835086573917715096828874782656995995744906617583441375223970968\
340800535598491754173818839994469748676265516582765848358845314277568790029095\
170283529716344562129640435231176006651012412006597558512761785838292041974844\
236080071930457618932349229279650198751872127267507981255470958904556357921221\
033346697499235630254947802490114195212382815309114079073860251522742995818072\
471625916685451333123948049470791191532673430282441860414263639548000448002670\
496248201792896476697583183271314251702969234889627668440323260927524960357996\
469256504936818360900323809293459588970695365349406034021665443755890045632882\
250545255640564482465151875471196218443965825337543885690941130315095261793780\
029741207665147939425902989695946995565761218656196733786236256125216320862869\
222103274889218654364802296780705765615144632046927906821207388377814233562823\
608963208068222468012248261177185896381409183903673672220888321513755600372798\
394004152970028783076670944474560134556417254370906979396122571429894671543578\
468788614445812314593571984922528471605049221242470141214780573455105008019086\
996033027634787081081754501193071412233908663938339529425786905076431006383519\
834389341596131854347546495569781038293097164651438407007073604112373599843452\
251610507027056235266012764848308407611830130527932054274628654036036745328651\
057065874882256981579367897669742205750596834408697350201410206723585020072452\
256326513410559240190274216248439140359989535394590944070469120914093870012645\
600162374288021092764579310657922955249887275846101264836999892256959688159205\
600101655256375678566722796619885782794848855834397518744545512965634434803966\
420557982936804352202770984294232533022576341807039476994159791594530069752148\
293366555661567873640053666564165473217043903521329543529169414599041608753201\
868379370234888689479151071637852902345292440773659495630510074210871426134974\
595615138498713757047101787957310422969066670214498637464595280824369445789772\
330048764765241339075920434019634039114732023380715095222010682563427471646024\
335440051521266932493419673977041595683753555166730273900749729736354964533288\
869844061196496162773449518273695588220757355176651589855190986665393549481068\
873206859907540792342402300925900701731960362254756478940647548346647760411463\
233905651343306844953979070903023460461470961696886885014083470405460742958699\
138296682468185710318879065287036650832431974404771855678934823089431068287027\
228097362480939962706074726455399253994428081137369433887294063079261595995462\
624629707062594845569034711972996409089418059534393251236235508134949004364278\
527138315912568989295196427287573946914272534366941532361004537304881985517065\
941217352462589548730167600298865925786628561249665523533829428785425340483083\
307016537228563559152534784459818313411290019992059813522051173365856407826484\
942764411376393866924803118364453698589175442647399882284621844900877769776312\
795722672655562596282542765318300134070922334365779160128093179401718598599933\
849235495640057099558561134980252499066984233017350358044081168552653117099570\
899427328709258487894436460050410892266917835258707859512983441729535195378855\
345737426085902908176515578039059464087350612322611200937310804854852635722825\
768203416050484662775045003126200800799804925485346941469775164932709504934639\
382432227188515974054702148289711177792376122578873477188196825462981268685817\
050740272550263329044976277894423621674119186269439650671515779586756482399391\
760426017633870454990176143641204692182370764887834196896861181558158736062938\
603810171215855272668300823834046564758804051380801633638874216371406435495561\
868964112282140753302655100424104896783528588290243670904887118190909494533144\
218287661810310073547705498159680772009474696134360928614849417850171807793068\
108546900094458995279424398139213505586422196483491512639012803832001097738680\
662877923971801461343244572640097374257007359210031541508936793008169980536520\
276007277496745840028362405346037263416554259027601834840306811381855105979705\
664007509426087885735796037324514146786703688098806097164258497595138069309449\
401515422221943291302173912538355915031003330325111749156969174502714943315155\
885403922164097229101129035521815762823283182342548326111912800928252561902052\
630163911477247331485739107775874425387611746578671169414776421441111263583553\
871361011023267987756410246824032264834641766369806637857681349204530224081972\
785647198396308781543221166912246415911776732253264335686146186545222681268872\
684459684424161078540167681420808850280054143613146230821025941737562389942075\
713627516745731891894562835257044133543758575342698699472547031656613991999682\
628247270641336222178923903176085428943733935618891651250424404008952719837873\
864805847268954624388234375178852014395600571048119498842390606136957342315590\
796703461491434478863604103182350736502778590897578272731305048893989009923913\
503373250855982655867089242612429473670193907727130706869170926462548423240748\
550366080136046689511840093668609546325002145852930950000907151058236267293264\
537382104938724996699339424685516483261134146110680267446637334375340764294026\
682973865220935701626384648528514903629320199199688285171839536691345222444708\
045923966028171565515656661113598231122506289058549145097157553900243931535190\
902107119457300243880176615035270862602537881797519478061013715004489917210022\
201335013106016391541589578037117792775225978742891917915522417189585361680594\
741234193398420218745649256443462392531953135103311476394911995072858430658361\
935369329699289837914941939406085724863968836903265564364216644257607914710869\
984315733749648835292769328220762947282381537409961545598798259891093717126218\
283025848112389011968221429457667580718653806506487026133892822994972574530332\
838963818439447707794022843598834100358385423897354243956475556840952248445541\
392394100016207693636846776413017819659379971557468541946334893748439129742391\
433659360410035234377706588867781139498616478747140793263858738624732889645643\
598774667638479466504074111825658378878454858148962961273998413442726086061872\
455452360643153710112746809778704464094758280348769758948328241239292960582948\
619196670918958089833201210318430340128495116203534280144127617285830243559830\
032042024512072872535581195840149180969253395075778400067465526031446167050827\
682772223534191102634163157147406123850425845988419907611287258059113935689601\
431668283176323567325417073420817332230462987992804908514094790368878687894930\
546955703072619009502076433493359106024545086453628935456862958531315337183868\
265617862273637169757741830239860065914816164049449650117321313895747062088474\
802365371031150898427992754426853277974311395143574172219759799359685252285745\
263796289612691572357986620573408375766873884266405990993505000813375432454635\
967504844235284874701443545419576258473564216198134073468541117668831186544893\
776979566517279662326714810338643913751865946730024434500544995399742372328712\
494834706044063471606325830649829795510109541836235030309453097335834462839476\
304775645015008507578949548931393944899216125525597701436858943585877526379625\
597081677643800125436502371412783467926101995585224717220177723700417808419423\
948725406801556035998390548985723546745642390585850216719031395262944554391316\
631345308939062046784387785054239390524731362012947691874975191011472315289326\
772533918146607300089027768963114810902209724520759167297007850580717186381054\
967973100167870850694207092232908070383263453452038027860990556900134137182368\
370991949516489600755049341267876436746384902063964019766685592335654639138363\
185745698147196210841080961884605456039038455343729141446513474940784884423772\
175154334260306698831768331001133108690421939031080143784334151370924353013677\
631084913516156422698475074303297167469640666531527035325467112667522460551199\
581831963763707617991919203579582007595605302346267757943936307463056901080114\
942714100939136913810725813781357894005599500183542511841721360557275221035268\
037357265279224173736057511278872181908449006178013889710770822931002797665935\
838758909395688148560263224393726562472776037890814458837855019702843779362407\
825052704875816470324581290878395232453237896029841669225489649715606981192186\
584926770403956481278102179913217416305810554598801300484562997651121241536374\
515005635070127815926714241342103301566165356024733807843028655257222753049998\
837015348793008062601809623815161366903341111386538510919367393835229345888322\
550887064507539473952043968079067086806445096986548801682874343786126453815834\
280753061845485903798217994599681154419742536344399602902510015888272164745006\
820704193761584547123183460072629339550548239557137256840232268213012476794522\
644820910235647752723082081063518899152692889108455571126603965034397896278250\
016110153235160519655904211844949907789992007329476905868577878720982901352956\
613978884860509786085957017731298155314951681467176959760994210036183559138777\
817698458758104466283998806006162298486169353373865787735983361613384133853684\
211978938900185295691967804554482858483701170967212535338758621582310133103877\
668272115726949518179589754693992642197915523385766231676275475703546994148929\
041301863861194391962838870543677743224276809132365449485366768000001065262485\
473055861598999140170769838548318875014293890899506854530765116803337322265175\
662207526951791442252808165171667766727930354851542040238174608923283917032754\
257508676551178593950027933895920576682789677644531840404185540104351348389531\
201326378369283580827193783126549617459970567450718332065034556644034490453627\
560011250184335607361222765949278393706478426456763388188075656121689605041611\
390390639601620221536849410926053876887148379895599991120991646464411918568277\
004574243434021672276445589330127781586869525069499364610175685060167145354315\
814801054588605645501332037586454858403240298717093480910556211671546848477803\
944756979804263180991756422809873998766973237695737015808068229045992123661689\
025962730430679316531149401764737693873514093361833216142802149763399189835484\
875625298752423873077559555955465196394401821840998412489826236737714672260616\
336432964063357281070788758164043814850188411431885988276944901193212968271588\
841338694346828590066640806314077757725705630729400492940302420498416565479736\
705485580445865720227637840466823379852827105784319753541795011347273625774080\
213476826045022851579795797647467022840999561601569108903845824502679265942055\
503958792298185264800706837650418365620945554346135134152570065974881916341359\
556719649654032187271602648593049039787489589066127250794828276938953521753621\
850796297785146188432719223223810158744450528665238022532843891375273845892384\
422535472653098171578447834215822327020690287232330053862163479885094695472004\
795231120150432932266282727632177908840087861480221475376578105819702226309717\
495072127248479478169572961423658595782090830733233560348465318730293026659645\
013718375428897557971449924654038681799213893469244741985097334626793321072686\
870768062639919361965044099542167627840914669856925715074315740793805323925239\
477557441591845821562518192155233709607483329234921034514626437449805596103307\
994145347784574699992128599999399612281615219314888769388022281083001986016549\
416542616968586788372609587745676182507275992950893180521872924610867639958916\
145855058397274209809097817293239301067663868240401113040247007350857828724627\
134946368531815469690466968693925472519413992914652423857762550047485295476814\
795467007050347999588867695016124972282040303995463278830695976249361510102436\
555352230690612949388599015734661023712235478911292547696176005047974928060721\
268039226911027772261025441492215765045081206771735712027180242968106203776578\
837166909109418074487814049075517820385653909910477594141321543284406250301802\
757169650820964273484146957263978842560084531214065935809041271135920041975985\
136254796160632288736181367373244506079244117639975974619383584574915988097667\
447093006546342423460634237474666080431701260052055928493695941434081468529815\
053947178900451835755154125223590590687264878635752541911288877371766374860276\
606349603536794702692322971868327717393236192007774522126247518698334951510198\
642698878471719396649769070825217423365662725928440620430214113719922785269984\
698847702323823840055655517889087661360130477098438611687052310553149162517283\
732728676007248172987637569816335415074608838663640693470437206688651275688266\
149730788657015685016918647488541679154596507234287730699853713904300266530783\
987763850323818215535597323530686043010675760838908627049841888595138091030423\
595782495143988590113185835840667472370297149785084145853085781339156270760356\
390763947311455495832266945702494139831634332378975955680856836297253867913275\
055542524491943589128405045226953812179131914513500993846311774017971512283785\
460116035955402864405902496466930707769055481028850208085800878115773817191741\
776017330738554758006056014337743299012728677253043182519757916792969965041460\
706645712588834697979642931622965520168797300035646304579308840327480771811555\
330909887025505207680463034608658165394876951960044084820659673794731680864156\
456505300498816164905788311543454850526600698230931577765003780704661264706021\
457505793270962047825615247145918965223608396645624105195510522357239739512881\
816405978591427914816542632892004281609136937773722299983327082082969955737727\
375667615527113922588055201898876201141680054687365580633471603734291703907986\
396522961312801782679717289822936070288069087768660593252746378405397691848082\
041021944719713869256084162451123980620113184541244782050110798760717155683154\
078865439041210873032402010685341947230476666721749869868547076781205124736792\
479193150856444775379853799732234456122785843296846647513336573692387201464723\
679427870042503255589926884349592876124007558756946413705625140011797133166207\
153715436006876477318675587148783989081074295309410605969443158477539700943988\
394914432353668539209946879645066533985738887866147629443414010498889931600512\
076781035886116602029611936396821349607501116498327856353161451684576956871090\
029997698412632665023477167286573785790857466460772283415403114415294188047825\
438761770790430001566986776795760909966936075594965152736349811896413043311662\
774712338817406037317439705406703109676765748695358789670031925866259410510533\
584384656023391796749267844763708474978333655579007384191473198862713525954625\
181604342253729962863267496824058060296421146386436864224724887283434170441573\
482481833301640566959668866769563491416328426414974533349999480002669987588815\
935073578151958899005395120853510357261373640343675347141048360175464883004078\
464167452167371904831096767113443494819262681110739948250607394950735031690197\
318521195526356325843390998224986240670310768318446607291248747540316179699411\
397387765899868554170318847788675929026070043212666179192235209382278788809886\
335991160819235355570464634911320859189796132791319756490976000139962344455350\
143464268604644958624769094347048293294140411146540923988344435159133201077394\
411184074107684981066347241048239358274019449356651610884631256785297769734684\
303061462418035852933159734583038455410337010916767763742762102137013548544509\
263071901147318485749233181672072137279355679528443925481560913728128406333039\
373562420016045664557414588166052166608738748047243391212955877763906969037078\
828527753894052460758496231574369171131761347838827194168606625721036851321566\
478001476752310393578606896111259960281839309548709059073861351914591819510297\
327875571049729011487171897180046961697770017913919613791417162707018958469214\
343696762927459109940060084983568425201915593703701011049747339493877885989417\
433031785348707603221982970579751191440510994235883034546353492349826883624043\
327267415540301619505680654180939409982020609994140216890900708213307230896621\
197755306659188141191577836272927461561857103721724710095214236964830864102592\
887457999322374955191221951903424452307535133806856807354464995127203174487195\
403976107308060269906258076020292731455252078079914184290638844373499681458273\
372072663917670201183004648190002413083508846584152148991276106513741539435657\
211390328574918769094413702090517031487773461652879848235338297260136110984514\
841823808120540996125274580881099486972216128524897425555516076371675054896173\
016809613803811914361143992106380050832140987604599309324851025168294467260666\
138151745712559754953580239983146982203613380828499356705575524712902745397762\
140493182014658008021566536067765508783804304134310591804606800834591136640834\
887408005741272586704792258319127415739080914383138456424150940849133918096840\
251163991936853225557338966953749026620923261318855891580832455571948453875628\
786128859004106006073746501402627824027346962528217174941582331749239683530136\
178653673760642166778137739951006589528877427662636841830680190804609849809469\
763667335662282915132352788806157768278159588669180238940333076441912403412022\
316368577860357276941541778826435238131905028087018575047046312933353757285386\
605888904583111450773942935201994321971171642235005644042979892081594307167019\
857469273848653833436145794634175922573898588001698014757420542995801242958105\
456510831046297282937584161162532562516572498078492099897990620035936509934721\
582965174135798491047111660791587436986541222348341887722929446335178653856731\
962559852026072947674072616767145573649812105677716893484917660771705277187601\
199908144113058645577910525684304811440261938402322470939249802933550731845890\
355397133088446174107959162511714864874468611247605428673436709046678468670274\
091881014249711149657817724279347070216688295610877794405048437528443375108828\
264771978540006509704033021862556147332117771174413350281608840351781452541964\
320309576018694649088681545285621346988355444560249556668436602922195124830910\
605377201980218310103270417838665447181260397190688462370857518080035327047185\
659499476124248110999288679158969049563947624608424065930948621507690314987020\
673533848349550836366017848771060809804269247132410009464014373603265645184566\
792456669551001502298330798496079949882497061723674493612262229617908143114146\
609412341593593095854079139087208322733549572080757165171876599449856937956238\
755516175754380917805280294642004472153962807463602113294255916002570735628126\
387331060058910652457080244749375431841494014821199962764531068006631183823761\
639663180931444671298615527598201451410275600689297502463040173514891945763607\
893528555053173314164570504996443890936308438744847839616840518452732884032345\
202470568516465716477139323775517294795126132398229602394548579754586517458787\
713318138752959809412174227300352296508089177705068259248822322154938048371454\
781647213976820963320508305647920482085920475499857320388876391601995240918938\
945576768749730856955958010659526503036266159750662225084067428898265907510637\
563569968211510949669744580547288693631020367823250182323708459790111548472087\
618212477813266330412076216587312970811230758159821248639807212407868878114501\
655825136178903070860870198975889807456643955157415363193191981070575336633738\
038272152798849350397480015890519420879711308051233933221903466249917169150948\
541401871060354603794643379005890957721180804465743962806186717861017156740967\
662080295766577051291209907944304632892947306159510430902221439371849560634056\
189342513057268291465783293340524635028929175470872564842600349629611654138230\
077313327298305001602567240141851520418907011542885799208121984493156999059182\
011819733500126187728036812481995877070207532406361259313438595542547781961142\
935163561223496661522614735399674051584998603552953329245752388810136202347624\
669055816438967863097627365504724348643071218494373485300606387644566272186661\
701238127715621379746149861328744117714552444708997144522885662942440230184791\
205478498574521634696448973892062401943518310088283480249249085403077863875165\
911302873958787098100772718271874529013972836614842142871705531796543076504534\
324600536361472618180969976933486264077435199928686323835088756683595097265574\
815431940195576850437248001020413749831872259677387154958399718444907279141965\
845930083942637020875635398216962055324803212267498911402678528599673405242031\
091797899905718821949391320753431707980023736590985375520238911643467185582906\
853711897952626234492483392496342449714656846591248918556629589329909035239233\
333647435203707701010843880032907598342170185542283861617210417603011645918780\
539367447472059985023582891833692922337323999480437108419659473162654825748099\
482509991833006976569367159689364493348864744213500840700660883597235039532340\
179582557036016936990988671132109798897070517280755855191269930673099250704070\
245568507786790694766126298082251633136399521170984528092630375922426742575599\
892892783704744452189363203489415521044597261883800300677617931381399162058062\
701651024458869247649246891924612125310275731390840470007143561362316992371694\
848132554200914530410371354532966206392105479824392125172540132314902740585892\
063217589494345489068463993137570910346332714153162232805522972979538018801628\
590735729554162788676498274186164218789885741071649069191851162815285486794173\
638906653885764229158342500673612453849160674137340173572779956341043326883569\
507814931378007362354180070619180267328551191942676091221035987469241172837493\
126163395001239599240508454375698507957046222664619000103500490183034153545842\
833764378111988556318777792537201166718539541835984438305203762819440761594106\
820716970302285152250573126093046898423433152732131361216582808075212631547730\
604423774753505952287174402666389148817173086436111389069420279088143119448799\
417154042103412190847094080254023932942945493878640230512927119097513536000921\
971105412096683111516328705423028470073120658032626417116165957613272351566662\
536672718998534199895236884830999302757419916463841427077988708874229277053891\
227172486322028898425125287217826030500994510824783572905691988555467886079462\
805371227042466543192145281760741482403827835829719301017888345674167811398954\
750448339314689630763396657226727043393216745421824557062524797219978668542798\
977992339579057581890622525473582205236424850783407110144980478726691990186438\
822932305382318559732869780922253529591017341407334884761005564018242392192695\
062083183814546983923664613639891012102177095976704908305081854704194664371312\
299692358895384930136356576186106062228705599423371631021278457446463989738188\
566746260879482018647487672727222062676465338099801966883680994159075776852639\
865146253336312450536402610569605513183813174261184420189088853196356986962795\
036738424313011331753305329802016688817481342988681585577810343231753064784983\
210629718425184385534427620128234570716988530518326179641178579608888150329602\
290705614476220915094739035946646916235396809201394578175891088931992112260073\
928149169481615273842736264298098234063200244024495894456129167049508235812487\
391799648641133480324757775219708932772262349486015046652681439877051615317026\
696929704928316285504212898146706195331970269507214378230476875280287354126166\
391708245925170010714180854800636923259462019002278087409859771921805158532147\
392653251559035410209284665925299914353791825314545290598415817637058927906909\
896911164381187809435371521332261443625314490127454772695739393481546916311624\
928873574718824071503995009446731954316193855485207665738825139639163576723151\
005556037263394867208207808653734942440115799667507360711159351331959197120948\
964717553024531364770942094635696982226673775209945168450643623824211853534887\
989395673187806606107885440005508276570305587448541805778891719207881423351138\
662929667179643468760077047999537883387870348718021842437342112273940255717690\
819603092018240188427057046092622564178375265263358324240661253311529423457965\
569502506810018310900411245379015332966156970522379210325706937051090830789479\
999004999395322153622748476603613677697978567386584670936679588583788795625946\
464891376652199588286933801836011932368578558558195556042156250883650203322024\
513762158204618106705195330653060606501054887167245377942831338871631395596905\
832083416898476065607118347136218123246227258841990286142087284956879639325464\
285343075301105285713829643709990356948885285190402956047346131138263878897551\
788560424998748316382804046848618938189590542039889872650697620201995548412650\
005394428203930127481638158530396439925470201672759328574366661644110962566337\
305409219519675148328734808957477775278344221091073111351828046036347198185655\
572957144747682552857863349342858423118749440003229690697758315903858039353521\
358860079600342097547392296733310649395601812237812854584317605561733861126734\
780745850676063048229409653041118306671081893031108871728167519579675347188537\
229309616143204006381322465841111157758358581135018569047815368938137718472814\
751998350504781297718599084707621974605887423256995828892535041937958260616211\
842368768511418316068315867994601652057740529423053601780313357263267054790338\
401257305912339601880137825421927094767337191987287385248057421248921183470876\
629667207272325650565129333126059505777727542471241648312832982072361750574673\
870128209575544305968395555686861188397135522084452852640081252027665557677495\
969626612604565245684086139238265768583384698499778726706555191854468698469478\
495734622606294219624557085371272776523098955450193037732166649182578154677292\
005212667143463209637891852323215018976126034373684067194193037746880999296877\
582441047878123266253181845960453853543839114496775312864260925211537673258866\
722604042523491087026958099647595805794663973419064010036361904042033113579336\
542426303561457009011244800890020801478056603710154122328891465722393145076071\
670643556827437743965789067972687438473076346451677562103098604092717090951280\
863090297385044527182892749689212106670081648583395537735919136950153162018908\
887484210798706899114804669270650940762046502772528650728905328548561433160812\
693005693785417861096969202538865034577183176686885923681488475276498468821949\
739729707737187188400414323127636504814531122850990020742409255859252926103021\
067368154347015252348786351643976235860419194129697690405264832347009911154242\
601273438022089331096686367898694977994001260164227609260823493041180643829138\
347354679725399262338791582998486459271734059225620749105308531537182911681637\
219395188700957788181586850464507699343940987433514431626330317247747486897918\
209239480833143970840673084079589358108966564775859905563769525232653614424780\
230826811831037735887089240613031336477371011628214614661679404090518615260360\
092521947218890918107335871964142144478654899528582343947050079830388538860831\
035719306002771194558021911942899922722353458707566246926177663178855144350218\
287026685610665003531050216318206017609217984684936863161293727951873078972637\
353717150256378733579771808184878458866504335824377004147710414934927438457587\
107159731559439426412570270965125108115548247939403597681188117282472158250109\
496096625393395380922195591918188552678062149923172763163218339896938075616855\
911752998450132067129392404144593862398809381240452191484831646210147389182510\
109096773869066404158973610476436500068077105656718486281496371118832192445663\
945814491486165500495676982690308911185687986929470513524816091743243015383684\
707292898982846022237301452655679898627767968091469798378268764311598832109043\
715611299766521539635464420869197567370005738764978437686287681792497469438427\
465256316323005551304174227341646455127812784577772457520386543754282825671412\
885834544435132562054464241011037955464190581168623059644769587054072141985212\
106734332410756767575818456990693046047522770167005684543969234041711089888993\
416350585157887353430815520811772071880379104046983069578685473937656433631979\
786803671873079693924236321448450354776315670255390065423117920153464977929066\
241508328858395290542637687668968805033317227800185885069736232403894700471897\
619347344308437443759925034178807972235859134245813144049847701732361694719765\
715353197754997162785663119046912609182591249890367654176979903623755286526375\
733763526969344354400473067198868901968147428767790866979688522501636949856730\
217523132529265375896415171479559538784278499866456302878831962099830494519874\
396369070682762657485810439112232618794059941554063270131989895703761105323606\
298674803779153767511583043208498720920280929752649812569163425000522908872646\
925284666104665392171482080130502298052637836426959733707053922789153510568883\
938113249757071331029504430346715989448786847116438328050692507766274500122003\
526203709466023414648998390252588830148678162196775194583167718762757200505439\
794412459900771152051546199305098386982542846407255540927403132571632640792934\
183342147090412542533523248021932277075355546795871638358750181593387174236061\
551171013123525633485820365146141870049205704372018261733194715700867578539336\
078622739558185797587258744102542077105475361294047460100094095444959662881486\
915903899071865980563617137692227290764197755177720104276496949611056220592502\
420217704269622154958726453989227697660310524980855759471631075870133208861463\
266412591148633881220284440694169488261529577625325019870359870674380469821942\
056381255833436421949232275937221289056420943082352544084110864545369404969271\
494003319782861318186188811118408257865928757426384450059944229568586460481033\
015388911499486935436030221810943466764000022362550573631294626296096198760564\
259963946138692330837196265954739234624134597795748524647837980795693198650815\
977675350553918991151335252298736112779182748542008689539658359421963331502869\
561192012298889887006079992795411188269023078913107603617634779489432032102773\
359416908650071932804017163840644987871753756781185321328408216571107549528294\
974936214608215583205687232185574065161096274874375098092230211609982633033915\
469494644491004515280925089745074896760324090768983652940657920198315265410658\
136823791984090645712468948470209357761193139980246813405200394781949866202624\
008902150166163813538381515037735022966074627952910384068685569070157516624192\
987244482719429331004854824454580718897633003232525821581280327467962002814762\
431828622171054352898348208273451680186131719593324711074662228508710666117703\
465352839577625997744672185715816126411143271794347885990892808486694914139097\
716736900277758502686646540565950394867841110790116104008572744562938425494167\
594605487117235946429105850909950214958793112196135908315882620682332156153086\
833730838173279328196983875087083483880463884784418840031847126974543709373298\
362402875197920802321878744882872843727378017827008058782410749357514889978911\
739746129320351081432703251409030487462262942344327571260086642508333187688650\
756429271605525289544921537651751492196367181049435317858383453865255656640657\
251363575064353236508936790431702597878177190314867963840828810209461490079715\
137717099061954969640070867667102330048672631475510537231757114322317411411680\
622864206388906210192355223546711662137499693269321737043105987225039456574924\
616978260970253359475020913836673772894438696400028110344026084712899000746807\
764844088711341352503367877316797709372778682166117865344231732264637847697875\
144332095340001650692130546476890985050203015044880834261845208730530973189492\
916425322933612431514306578264070283898409841602950309241897120971601649265613\
413433422298827909921786042679812457285345801338260995877178113102167340256562\
744007296834066198480676615805021691833723680399027931606420436812079900316264\
449146190219458229690992122788553948783538305646864881655562294315673128274390\
826450611628942803501661336697824051770155219626522725455850738640585299830379\
180350432876703809252167907571204061237596327685674845079151147313440001832570\
344920909712435809447900462494313455028900680648704293534037436032625820535790\
118395649089354345101342969617545249573960621490288728932792520696535386396443\
225388327522499605986974759882329916263545973324445163755334377492928990581175\
786355555626937426910947117002165411718219750519831787137106051063795558588905\
568852887989084750915764639074693619881507814685262133252473837651192990156109\
189777922008705793396463827490680698769168197492365624226087154176100430608904\
377976678519661891404144925270480881971498801542057787006521594009289777601330\
756847966992955433656139847738060394368895887646054983871478968482805384701730\
871117761159663505039979343869339119789887109156541709133082607647406305711411\
098839388095481437828474528838368079418884342666222070438722887413947801017721\
392281911992365405516395893474263953824829609036900288359327745855060801317988\
407162446563997948275783650195514221551339281978226984278638391679715091262410\
548725700924070045488485692950448110738087996547481568913935380943474556972128\
919827177020766613602489581468119133614121258783895577357194986317210844398901\
423948496659251731388171602663261931065366535041473070804414939169363262373767\
777095850313255990095762731957308648042467701212327020533742667053142448208168\
130306397378736642483672539837487690980602182785786216512738563513290148903509\
883270617258932575363993979055729175160097615459044771692265806315111028038436\
017374742152476085152099016158582312571590733421736576267142390478279587281505\
095633092802668458937649649770232973641319060982740633531089792464242134583740\
901169391964250459128813403498810635400887596820054408364386516617880557608956\
896727531538081942077332597917278437625661184319891025007491829086475149794003\
160703845549465385946027452447466812314687943441610993338908992638411847425257\
044572517459325738989565185716575961481266020310797628254165590506042479114016\
957900338356574869252800743025623419498286467914476322774005529460903940177536\
335655471931000175430047504719144899841040015867946179241610016454716551337074\
073950260442769538553834397550548871099785205401175169747581344926079433689543\
783221172450687344231989878844128542064742809735625807066983106979935260693392\
135685881391214807354728463227784908087002467776303605551232386656295178853719\
673034634701222939581606792509153217489030840886516061119011498443412350124646\
928028805996134283511884715449771278473361766285062169778717743824362565711779\
450064477718370221999106695021656757644044997940765037999954845002710665987813\
603802314126836905783190460792765297277694043613023051787080546511542469395265\
127101052927070306673024447125973939950514628404767431363739978259184541176413\
327906460636584152927019030276017339474866960348694976541752429306040727005059\
039503148522921392575594845078867977925253931765156416197168443524369794447355\
964260633391055126826061595726217036698506473281266724521989060549880280782881\
429796336696744124805982192146339565745722102298677599746738126069367069134081\
559412016115960190237753525556300606247983261249881288192937343476862689219239\
777833910733106588256813777172328315329082525092733047850724977139448333892552\
081175608452966590553940965568541706001179857293813998258319293679100391844099\
286575605993598910002969864460974714718470101531283762631146774209145574041815\
908800064943237855839308530828305476076799524357391631221886057549673832243195\
650655460852881201902363644712703748634421727257879503428486312944916318475347\
531435041392096108796057730987201352484075057637199253650470908582513936863463\
863368042891767107602111159828875539940120076013947033661793715396306139863655\
492213741597905119083588290097656647300733879314678913181465109316761575821351\
424860442292445304113160652700974330088499034675405518640677342603583409608605\
533747362760935658853109760994238347382222087292464497684560579562516765574088\
410321731345627735856052358236389532038534024842273371639123973215995440828421\
666636023296545694703577184873442034227706653837387506169212768015766181095420\
097708363604361110592409117889540338021426523948929686439808926114635414571535\
194342850721353453018315875628275733898268898523557799295727645229391567477566\
676051087887648453493636068278050564622813598885879259940946446041705204470046\
315137975431737187756039815962647501410906658866162180038266989961965580587208\
639721176995219466789857011798332440601811575658074284182910615193917630059194\
314434605154047710570054339000182453117733718955857603607182860506356479979004\
139761808955363669603162193113250223851791672055180659263518036251214575926238\
369348222665895576994660491938112486609099798128571823494006615552196112207203\
092277646200999315244273589488710576623894693889446495093960330454340842102462\
401048723328750081749179875543879387381439894238011762700837196053094383940063\
756116458560943129517597713935396074322792489221267045808183313764165818269562\
105872892447740035947009268662659651422050630078592002488291860839743732353849\
083964326147000532423540647042089499210250404726781059083644007466380020870126\
664209457181702946752278540074508552377720890581683918446592829417018288233014\
971554235235911774818628592967605048203864343108779562892925405638946621948268\
711042828163893975711757786915430165058602965217459581988878680408110328432739\
867198621306205559855266036405046282152306154594474489908839081999738747452969\
810776201487134000122535522246695409315213115337915798026979555710508507473874\
750758068765376445782524432638046143042889235934852961058269382103498000405248\
407084403561167817170512813378805705643450616119330424440798260377951198548694\
559152051960093041271007277849301555038895360338261929343797081874320949914159\
593396368110627557295278004254863060054523839151068998913578820019411786535682\
149118528207852130125518518493711503422159542244511900207393539627400208110465\
530207932867254740543652717595893500716336076321614725815407642053020045340183\
572338292661915308354095120226329165054426123619197051613839357326693760156914\
429944943744856809775696303129588719161129294681884936338647392747601226964158\
848900965717086160598147204467428664208765334799858222090619802173211614230419\
477754990738738567941189824660913091691772274207233367635032678340586301930193\
242996397204445179288122854478211953530898910125342975524727635730226281382091\
807439748671453590778633530160821559911314144205091447293535022230817193663509\
346865858656314855575862447818620108711889760652969899269328178705576435143382\
060141077329261063431525337182243385263520217735440715281898137698755157574546\
939727150488469793619500477720970561793913828989845327426227288647108883270173\
723258818244658436249580592560338105215606206155713299156084892064340303395262\
263451454283678698288074251422567451806184149564686111635404971897682154227722\
479474033571527436819409892050113653400123846714296551867344153741615042563256\
713430247655125219218035780169240326699541746087592409207004669340396510178134\
857835694440760470232540755557764728450751826890418293966113310160131119077398\
632462778219023650660374041606724962490137433217246454097412995570529142438208\
076098364823465973886691349919784013108015581343979194852830436739012482082444\
814128095443773898320059864909159505322857914576884962578665885999179867520554\
558099004556461178755249370124553217170194282884617402736649978475508294228020\
232901221630102309772151569446427909802190826689868834263071609207914085197695\
235553488657743425277531197247430873043619511396119080030255878387644206085044\
730631299277888942729189727169890575925244679660189707482960949190648764693702\
750773866432391919042254290235318923377293166736086996228032557185308919284403\
805071030064776847863243191000223929785255372375566213644740096760539439838235\
764606992465260089090624105904215453927904411529580345334500256244101006359530\
039598864466169595626351878060688513723462707997327233134693971456285542615467\
650632465676620279245208581347717608521691340946520307673391841147504140168924\
121319826881568664561485380287539331160232292555618941042995335640095786495340\
935115266454024418775949316930560448686420862757201172319526405023099774567647\
838488973464317215980626787671838005247696884084989185086149003432403476742686\
245952395890358582135006450998178244636087317754378859677672919526111213859194\
725451400301180503437875277664402762618941017576872680428176623860680477885242\
887430259145247073950546525135339459598789619778911041890292943818567205070964\
606263541732944649576612651953495701860015412623962286413897796733329070567376\
962156498184506842263690367849555970026079867996261019039331263768556968767029\
295371162528005543100786408728939225714512481135778627664902425161990277471090\
335933309304948380597856628844787441469841499067123764789582263294904679812089\
984857163571087831191848630254501620929805829208334813638405421720056121989353\
669371336733392464416125223196943471206417375491216357008573694397305979709719\
726666642267431117762176403068681310351899112271339724036887000996862922546465\
006385288620393800504778276912835603372548255793912985251506829969107754257647\
488325341412132800626717094009098223529657957997803018282428490221470748111124\
018607613415150387569830918652780658896682362523937845272634530420418802508442\
363190383318384550522367992357752929106925043261446950109861088899914658551881\
873582528164302520939285258077969737620845637482114433988162710031703151334402\
309526351929588680690821355853680161000213740851154484912685841268695899174149\
133820578492800698255195740201818105641297250836070356851055331787840829000041\
552511865779453963317538532092149720526607831260281961164858098684587525129997\
404092797683176639914655386108937587952214971731728131517932904431121815871023\
518740757222100123768721944747209349312324107065080618562372526732540733324875\
754482967573450019321902199119960797989373383673242576103938985349278777473980\
508080015544764061053522202325409443567718794565430406735896491017610775948364\
540823486130254718476485189575836674399791508512858020607820554462991723202028\
222914886959399729974297471155371858924238493855858595407438104882624648788053\
304271463011941589896328792678327322456103852197011130466587100500083285177311\
776489735230926661234588873102883515626446023671996644554727608310118788389151\
149340939344750073025855814756190881398752357812331342279866503522725367171230\
756861045004548970360079569827626392344107146584895780241408158405229536937499\
710665594894459246286619963556350652623405339439142111271810691052290024657423\
604130093691889255865784668461215679554256605416005071276641766056874274200329\
577160643448606201239821698271723197826816628249938714995449137302051843669076\
723577400053932662622760323659751718925901801104290384274185507894887438832703\
063283279963007200698012244365116394086922220745320244624121155804354542064215\
121585056896157356414313068883443185280853975927734433655384188340303517822946\
253702015782157373265523185763554098954033236382319219892171177449469403678296\
185920803403867575834111518824177439145077366384071880489358256868542011645031\
357633355509440319236720348651010561049872726472131986543435450409131859513145\
181276437310438972507004981987052176272494065214619959232142314439776546708351\
714749367986186552791715824080651063799500184295938799158350171580759883784962\
257398512129810326379376218322456594236685376799113140108043139732335449090824\
910499143325843298821033984698141715756010829706583065211347076803680695322971\
990599904451209087275776225351040902392888779424630483280319132710495478599180\
196967835321464441189260631526618167443193550817081875477050802654025294109218\
264858213857526688155584113198560022135158887210365696087515063187533002942118\
682221893775546027227291290504292259787710667873840000616772154638441292371193\
521828499824350920891801685572798156421858191197490985730570332667646460728757\
430565372602768982373259745084479649545648030771598153955827779139373601717422\
996027353102768719449444917939785144631597314435351850491413941557329382048542\
123508173912549749819308714396615132942045919380106231421774199184060180347949\
887691051557905554806953878540066453375981862846419905220452803306263695626490\
910827627115903856995051246529996062855443838330327638599800792922846659503551\
211245284087516229060262011857775313747949362055496401073001348853150735487353\
905602908933526400713274732621960311773433943673385759124508149335736911664541\
281788171454023054750667136518258284898099512139193995633241336556777098003081\
910272040997148687418134667006094051021462690280449159646545330107754695413088\
714165312544813061192407821188690056027781824235022696189344352547633573536485\
619363254417756613981703930632872166905722259745209192917262199844409646158269\
456380239502837121686446561785235565164127712826918688615572716201474934052276\
946595712198314943381622114006936307430444173284786101777743837977037231795255\
434107223445512555589998646183876764903972461167959018100035098928641204195163\
551108763204267612979826529425882951141275841262732790798807559751851576841264\
742209479721843309352972665210015662514552994745127631550917636730259462132930\
190402837954246323258550301096706922720227074863419005438302650681214142135057\
154175057508639907673946335146209082888934938376439399256900604067311422093312\
195936202982972351163259386772241477911629572780752395056251581603133359382311\
500518626890530658368129988108663263271980611271548858798093487912913707498230\
575929091862939195014721197586067270092547718025750337730799397134539532646195\
269996596385654917590458333585799102012713204583903200853878881633637685182083\
727885131175227769609787962142372162545214591281831798216044111311671406914827\
170981015457781939202311563871950805024679725792497605772625913328559726371211\
201905720771409148645074094926718035815157571514050397610963846755569298970383\
547314100223802583468767350129775413279532060971154506484212185936490997917766\
874774481882870632315515865032898164228288232746866106592732197907162384642153\
489852476216789050260998045266483929542357287343977680495774091449538391575565\
485459058976495198513801007958010783759945775299196700547602252552034453988712\
538780171960718164078124847847257912407824544361682345239570689514272269750431\
873633263011103053423335821609333191218806608268341428910415173247216053355849\
993224548730778822905252324234861531520976938461042582849714963475341837562003\
014915703279685301868631572488401526639835689563634657435321783493199825542117\
308467745297085839507616458229630324424328237737450517028560698067889521768198\
156710781633405266759539424926280756968326107495323390536223090807081455919837\
355377748742029039018142937311529334644468151212945097596534306284215319445727\
118614900017650558177095302468875263250119705209476159416768727784472000192789\
137251841622857783792284439084301181121496366424659033634194540657183544771912\
446621259392656620306888520055599121235363718226922531781458792593750441448933\
981608657900876165024635197045828895481793756681046474614105142498870252139936\
870509372305447734112641354892806841059107716677821238332810262185587751312721\
179344448201440425745083063944738363793906283008973306241380614589414227694747\
931665717623182472168350678076487573420491557628217583972975134478990696589532\
548940335615613167403276472469212505759116251529654568544633498114317670257295\
661844775487469378464233737238981920662048511894378868224807279352022501796545\
343757274163910791972952950812942922205347717304184477915673991738418311710362\
524395716152714669005814700002633010452643547865903290733205468338872078735444\
762647925297690170912007874183736735087713376977683496344252419949951388315074\
877537433849458259765560996555954318040920178497184685497370696212088524377013\
853757681416632722412634423982152941645378000492507262765150789085071265997036\
708726692764308377229685985169122305037462744310852934305273078865283977335246\
017463527703205938179125396915621063637625882937571373840754406468964783100704\
580613446731271591194608435935825987782835266531151065041623295329047772174083\
559349723758552138048305090009646676088301540612824308740645594431853413755220\
166305812111033453120745086824339432159043594430312431227471385842030390106070\
940315235556172767994160020393975099897629335325855575624808996691829864222677\
502360193257974726742578211119734709402357457222271212526852384295874273501563\
660093188045493338989741571490544182559738080871565281430102670460284316819230\
392535297795765862414392701549740879273131051636119137577008929564823323648298\
263024607975875767745377160102490804624301856524161756655600160859121534556267\
602192689982855377872583145144082654583484409478463178777374794653580169960779\
405568701192328608041130904629350871827125934668712766694873899824598527786499\
569165464029458935064964335809824765965165142090986755203808309203230487342703\
468288751604071546653834619611223013759451579252696743642531927390036038608236\
450762698827497618723575476762889950752114804852527950845033958570838130476937\
881321123674281319487950228066320170022460331989671970649163741175854851878484\
012054844672588851401562725019821719066960812627785485964818369621410721714214\
986361918774754509650308957099470934337856981674465828267911940611956037845397\
855839240761276344105766751024307559814552786167815949657062559755074306521085\
301597908073343736079432866757890533483669555486803913433720156498834220893399\
971641479746938696905480089193067138057171505857307148815649920714086758259602\
876056459782423770242469805328056632787041926768467116266879463486950464507420\
219373945259262668613552940624781361206202636498199999498405143868285258956342\
264328707663299304891723400725471764188685351372332667877921738347541480022803\
392997357936152412755829569276837231234798989446274330454566790062032420516396\
282588443085438307201495672106460533238537203143242112607424485845094580494081\
820927639140008540422023556260218564348994145439950410980591817948882628052066\
441086319001688568155169229486203010738897181007709290590480749092427141018933\
542818429995988169660993836961644381528877214085268088757488293258735809905670\
755817017949161906114001908553744882726200936685604475596557476485674008177381\
703307380305476973609786543859382187220583902344443508867499866506040645874346\
005331827436296177862518081893144363251205107094690813586440519229512932450078\
833398788429339342435126343365204385812912834345297308652909783300671261798130\
316794385535726296998740359570458452230856390098913179475948752126397078375944\
861139451960286751210561638976008880092746115860800207803341591451797073036835\
196977766076373785333012024120112046988609209339085365773222392412449051532780\
950955866459477634482269986074813297302630975028812103517723124465095349653693\
090018637764094094349837313251321862080214809922685502948454661814715557444709\
669530177690434272031892770604717784527939160472281534379803539679861424370956\
683221491465438014593829277393396032754048009552231816667380357183932757077142\
046723838624617803976292377131209580789363841447929802588065522129262093623930\
637313496640186619510811583471173312025805866727639992763579078063818813069156\
366274125431259589936119647626101405563503399523140323113819656236327198961837\
254845333702062563464223952766943568376761368711962921818754576081617053031590\
728828700712313666308722754918661395773730546065997437810987649802414011242142\
773668082751390959313404155826266789510846776118665957660165998178089414985754\
976284387856100263796543178313634025135814161151902096499133548733131115022700\
681930135929595971640197196053625033558479980963488718039111612813595968565478\
868325856437896173159762002419621552896297904819822199462269487137462444729093\
456470028537694958859591606789282491054412515996300781368367490209374915732896\
270028656829344431342347351239298259166739503425995868970697267332582735903121\
288746660451461487850346142827765991608090398652575717263081833494441820193533\
385071292345774375579344062178711330063106003324053991693682603746176638565758\
877580201229366353270267100681261825172914608202541892885935244491070138206211\
553827793565296914576502048643282865557934707209634807372692141186895467322767\
751335690190153723669036865389161291688887876407525493494249733427181178892759\
931596719354758988097924525262363659036320070854440784544797348291802082044926\
670634420437555325050527522833778887040804033531923407685630109347772125639088\
640413101073817853338316038135280828119040832564401842053746792992622037698718\
018061122624490909242641985820861751177113789051609140381575003366424156095216\
328197122335023167422600567941281406217219641842705784328959802882335059828208\
196666249035857789940333152274817776952843681630088531769694783690580671064828\
083598046698841098135158654906933319522394363287923990534810987830274500172065\
433699066117784554364687723631844464768069142828004551074686645392805399409108\
754939166095731619715033166968309929466349142798780842257220697148875580637480\
308862995118473187124777291910070227588893486939456289515802965372150409603107\
761289831263589964893410247036036645058687287589051406841238124247386385427908\
282733827973326885504935874303160274749063129572349742611221517417153133618622\
410913869500688835898962349276317316478340077460886655598733382113829928776911\
495492184192087771606068472874673681886167507221017261103830671787856694812948\
785048943063086169948798703160515884108282351274153538513365895332948629494495\
061868514779105804696039069372662670386512905201137810858616188886947957607413\
585534585151768051973334433495230120395770739623771316030242887200537320998253\
008977618973129817881944671731160647231476248457551928732782825127182446807824\
215216469567819294098238926284943760248852279003620219386696482215628093605373\
178040863727268426696421929946819214908701707533361094791381804063287387593848\
269535583077395761447997270003472880182785281389503217986345216111066608839314\
053226944905455527867894417579202440021450780192099804461382547805858048442416\
404775031536054906591430078158372430123137511562284015838644270890718284816757\
527123846782459534334449622010096071051370608461801187543120725491334994247617\
115633321408934609156561550600317384218701570226103101916603887064661438897736\
318780940711527528174689576401581047016965247557740891644568677717158500583269\
943401677202156767724068128366565264122982439465133197359199709403275938502669\
557470231813203243716420586141033606524536939160050644953060161267822648942437\
397166717661231048975031885732165554988342121802846912529086101485527815277625\
623750456375769497734336846015607727035509629049392487088406281067943622418704\
747008368842671022558302403599841645951122485272633632645114017395248086194635\
840783753556885622317115520947223065437092606797351000565549381224575483728545\
711797393615756167641692895805257297522338558611388322171107362265816218842443\
178857488798109026653793426664216990914056536432249301334867988154886628665052\
346997235574738424830590423677143278792316422403877764330192600192284778313837\
632536121025336935812624086866699738275977365682227907215832478888642369346396\
164363308730139814211430306008730666164803678984091335926293402304324974926887\
831643602681011309570716141912830686577323532639653677390317661361315965553584\
999398600565155921936759977717933019744688148371103206503693192894521402650915\
465184309936553493337183425298433679915939417466223900389527673813330617747629\
574943868716978453767219493506590875711917720875477107189937960894774512654757\
501871194870738736785890200617373321075693302216320628432065671192096950585761\
173961632326217708945426214609858410237813215817727602222738133495410481003073\
275107799948991977963883530734443457532975914263768405442264784216063122769646\
967156473999043715903323906560726644116438605404838847161912109008701019130726\
071044114143241976796828547885524779476481802959736049439700479596040292746299\
203572099761950140348315380947714601056333446998820822120587281510729182971211\
917876424880354672316916541852256729234429187128163232596965413548589577133208\
339911288775917226115273379010341362085614577992398778325083550730199818459025\
958355989260553299673770491722454935329683300002230181517226575787524058832249\
085821280089747909326100762578770428656006996176212176845478996440705066241710\
213327486796237430229155358200780141165348065647488230615003392068983794766255\
036549822805329662862117930628430170492402301985719978948836897183043805182174\
419147660429752437251683435411217038631379411422095295885798060152938752753799\
030938871683572095760715221900279379292786303637268765822681241993384808166021\
603722154710143007377537792699069587121289288019052031601285861825494413353820\
784883465311632650407642428390870121015194231961652268422003711230464300673442\
064747718021353070124098860353399152667923871101706221865883573781210935179775\
604425634694999787251125440854522274810914874307259869602040275941178942581281\
882159952359658979181144077653354321757595255536158128001163846720319346507296\
807990793963714961774312119402021297573125165253768017359101557338153772001952\
444543620071848475663415407442328621060997613243487548847434539665981338717466\
093020535070271952983943271425371155766600025784423031073429551533945060486222\
764966687624079324353192992639253731076892135352572321080889819339168668278948\
281170472624501948409700975760920983724090074717973340788141825195842598096241\
747610138252643955135259311885045636264188300338539652435997416931322894719878\
308427600401368074703904097238473945834896186539790594118599310356168436869219\
485382055780395773881360679549900085123259442529724486666766834641402189915944\
565309423440650667851948417766779470472041958822043295380326310537494883122180\
391279678446100139726753892195119117836587662528083690053249004597410947068772\
912328214304635337283519953648274325833119144459017809607782883583730111857543\
659958982724531925310588115026307542571493943024453931870179923608166611305426\
253995833897942971602070338767815033010280120095997252222280801423571094760351\
925544434929986767817891045559063015953809761875920358937341978962358931125983\
902598310267193304189215109689156225069659119828323455503059081730735195503721\
665870288053992138576037035377105178021280129566841984140362872725623214428754\
302210909472721073474134975514190737043318276626177275996888826027225247133683\
353452816692779591328861381766349857728936900965749562287103024362590772412219\
094300871755692625758065709912016659622436080242870024547362036394841255954881\
727272473653467783647201918303998717627037515724649922289467932322693619177641\
614618795613956699567783068290316589699430767333508234990790624100202506134057\
344300695745474682175690441651540636584680463692621274211075399042188716127617\
787014258864825775223889184599523376292377915585744549477361295525952226578636\
462118377598473700347971408206994145580719080213590732269233100831759510659019\
121294795408603640757358750205890208704579670007055262505811420663907459215273\
309406823649441590891009220296680523325266198911311842016291631076894084723564\
366808182168657219688268358402785500782804043453710183651096951782335743030504\
852653738073531074185917705610397395062640355442275156101107261779370634723804\
990666922161971194259120445084641746383589938239946517395509000859479990136026\
674261494290066467115067175422177038774507673563742154782905911012619157555870\
238957001405117822646989944917908301795475876760168094100135837613578591356924\
455647764464178667115391951357696104864922490083446715486383054477914330097680\
486878348184672733758436892724310447406807685278625585165092088263813233623148\
733336714764520450876627614950389949504809560460989604329123358348859990294526\
400284994280878624039811814884767301216754161106629995553668193123287425702063\
738352020086863691311733469731741219153633246745325630871347302792174956227014\
687325867891734558379964351358800959350877556356248810493852999007675135513527\
792412429277488565888566513247302514710210575352516511814850902750476845518252\
096331899068527614435138213662152368890578786699432288816028377482035506016029\
894009119713850179871683633744139275973644017007014763706655703504338121113576\
415018451821413619823495159601064752712575935185304332875537783057509567425442\
684712219618709178560783936144511383335649103256405733898667178123972237519316\
430617013859539474367843392670986712452211189690840236327411496601243483098929\
941738030588417166613073040067588380432111555379440605497721705942821514886165\
672771240903387727745629097110134885184374118695655449745736845218066982911045\
058004299887953899027804383596282409421860556287788428802127553884803728640019\
441614257499904272009595204654170598104989967504511936471172772220436102614079\
750809686975176600237187748348016120310234680567112644766123747627852190241202\
569943534716226660893675219833111813511146503854895025120655772636145473604426\
859498074396932331297127377157347099713952291182653485155587137336629120242714\
302503763269501350911612952993785864681307226486008270881333538193703682598867\
893321238327053297625857382790097826460545598555131836688844628265133798491667\
839409761353766251798258249663458771950124384040359140849209733754642474488176\
184070023569580177410177696925077814893386672557898564589851056891960924398841\
569280696983352240225634570497312245269354193837004843183357196516626721575524\
193401933099018319309196582920969656247667683659647019595754739345514337413708\
761517323677204227385674279170698204549953095918872434939524094441678998846319\
845504852393662972079777452814399418256789457795712552426826089940863317371538\
896262889629402112108884427376568624527612130371017300785135715404533041507959\
447776143597437803742436646973247138410492124314138903579092416036406314038149\
831481905251720937103964026808994832572297954564042701757722904173234796073618\
787889913318305843069394825961318713816423467218730845133877219086975104942843\
769325024981656673816260615941768252509993741672883951744066932549653403101452\
225316189009235376486378482881344209870048096227171226407489571939002918573307\
460104360729190945767994614929290427981687729426487729952858434647775386906950\
148984133924540394144680263625402118614317031251117577642829914644533408920976\
961699098372652361768745605894704968170136974909523072082682887890730190018253\
425805343421705928713931737993142410852647390948284596418093614138475831136130\
576108462366837237695913492615824516221552134879244145041756848064120636520170\
386330129532777699023118648020067556905682295016354931992305914246396217025329\
747573114094220180199368035026495636955866425906762685687372110339156793839895\
765565193177883000241613539562437777840801748819373095020699900890899328088397\
430367736595524891300156633294077907139615464534088791510300651321934486673248\
275907946807879819425019582622320395131252014109960531260696555404248670549986\
786923021746989009547850725672978794769888831093487464426400718183160331655511\
534276155622405474473378049246214952133258527698847336269182649174338987824789\
278468918828054669982303689939783413747587025805716349413568433929396068192061\
773331791738208562436433635359863494496890781064019674074436583667071586924521\
182997893804077137501290858646578905771426833582768978554717687184427726120509\
266486102051535642840632368481807287940717127966820060727559555904040233178749\
447346454760628189541512139162918444297651066947969354016866010055196077687335\
396511614930937570968554559381513789569039251014953265628147011998326992200066\
392875374713135236421589265126204072887716578358405219646054105435443642166562\
244565042999010256586927279142752931172082793937751326106052881235373451068372\
939893580871243869385934389175713376300720319760816604464683937725806909237297\
523486702916910426369262090199605204121024077648190316014085863558427609537086\
558164273995349346546314504040199528537252004957805254656251154109252437991326\
262713609099402902262062836752132305065183934057450112099341464918433323646569\
371725914489324159006242020612885732926133596808726500045628284557574596592120\
530341310111827501306961509835515632004310784601906565493806542525229161991819\
959602752327702249855738824899882707465936355768582560518068964285376850772012\
220347920993936179268206590142165615925306737944568949070853263568196831861772\
268249911472615732035807646298116244013316737892788689229032593349861797021994\
981925739617673075834417098559222170171825712777534491508205278430904619460835\
217402005838672849709411023266953921445461066215006410674740207009189911951376\
466904481267253691537162290791385403937560077835153374167747942100384002308951\
850994548779039346122220865060160500351776264831611153325587705073541279249909\
859373473787081194253055121436979749914951860535920403830235716352727630874693\
219622190064260886183676103346002255477477813641012691906569686495012688376296\
907233961276287223041141813610060264044030035996988919945827397624114613744804\
059697062576764723766065541618574690527229238228275186799156983390747671146103\
022776606020061246876477728819096791613354019881402757992174167678799231603963\
569492851513633647219540611171767387372555728522940054361785176502307544693869\
307873499110352182532929726044553210797887711449898870911511237250604238753734\
841257086064069052058452122754533848008205302450456517669518576913200042816758\
054924811780519832646032445792829730129105318385636821206215531288668564956512\
613892261367064093953334570526986959692350353094224543865278677673027540402702\
246384483553239914751363441044050092330361271496081355490531539021002299595756\
583705381261965683144286057956696622154721695620870013727768536960840704833325\
132793112232507148630206951245395003735723346807094656483089209801534878705633\
491092366057554050864111521441481434630437273271045027768661953107858323334857\
840297160925215326092558932655600672124359464255065996771770388445396181632879\
614460817789272171836908880126778207430106422524634807454300476492885553409062\
185153654355474125476152769772667769772777058315801412185688011705028365275543\
214803488004442979998062157904564161957212784508928489806426497427090579129069\
217807298769477975112447305991406050629946894280931034216416629935614828130998\
870745292716048433630818404126469637925843094185442216359084576146078558562473\
814931427078266215185541603870206876980461747400808324343665382354555109449498\
431093494759944672673665352517662706772194183191977196378015702169933675083760\
057163454643671776723387588643405644871566964321041282595645349841388412890420\
682047007615596916843038999348366793542549210328113363184722592305554383058206\
941675629992013373175489122037230349072681068534454035993561823576312837767640\
631013125335212141994611869350833176587852047112364331226765129964171325217513\
553261867681942338790365468908001827135283584888444111761234101179918709236507\
184857856221021104009776994453121795022479578069506532965940383987369907240797\
679040826794007618729547835963492793904576973661643405359792219285870574957481\
696694062334272619733518136626063735982575552496509807260123668283605928341855\
848026958413772558970883789942910549800331113884603401939166122186696058491571\
485733568286149500019097591125218800396419762163559375743718011480559442298730\
418196808085647265713547612831629200449880315402105530597076666362749328308916\
880932359290081787411985738317192616728834918402429721290434965526942726402559\
641463525914348400675867690350382320572934132981593533044446496829441367323442\
158380761694831219333119819061096142952201536170298575105594326461468505452684\
975764807808009221335811378197749271768545075538328768874474591593731162470601\
091244609829424841287520224462594477638749491997840446829257360968534549843266\
536862844489365704111817793806441616531223600214918768769467398407517176307516\
849856359201486892943105940202457969622924566644881967576294349535326382171613\
395757790766370764569570259738800438415805894336137106551859987600754924187211\
714889295221737721146081154344982665479872580056674724051122007383459271575727\
715218589946948117940644466399432370044291140747218180224825837736017346685300\
744985564715420036123593397312914458591522887408719508708632218837288262822884\
631843717261903305777147651564143822306791847386039147683108141358275755853643\
597721650028277803713422869688787349795096031108899196143386664068450697420787\
700280509367203387232629637856038653216432348815557557018469089074647879122436\
375556668678067610544955017260791142930831285761254481944449473244819093795369\
008206384631678225064809531810406570254327604385703505922818919878065865412184\
299217273720955103242251079718077833042609086794273428955735559252723805511440\
438001239041687716445180226491681641927401106451622431101700056691121733189423\
400547959684669804298017362570406733282129962153684881404102194463424646220745\
575643960452985313071409084608499653767803793201899140865814662175319337665970\
114330608625009829566917638846056762972931464911493704624469351984039534449135\
141193667933301936617663652555149174982307987072280860859626112660504289296966\
535652516688885572112276802772743708917389639772257564890533401038855931125679\
991516589025016486961427207005916056166159702451989051832969278935550303934681\
219761582183980483960562523091462638447386296039848924386187298507775928792722\
068554807210497817653286210187476766897248841139560349480376727036316921007350\
834073865261684507482496448597428134936480372426116704266870831925040997615319\
076855770327421785010006441984124207396400139603601583810565928413684574119102\
736420274163723488214524101347716529603128408658419787951116511529827814620379\
139855006399960326591248525308493690313130100799977191362230866011099929142871\
249388541612038020411340188887219693477904497527454288072803509305828754420755\
134816660927879353566521255620139988249628478726214432362853676502591450468377\
635282587652139156480972141929675549384375582600253168536356731379262475878049\
445944183429172756988376226261846365452743497662411138451305481449836311789784\
489732076719508784158618879692955819733250699951402601511675529750575437810242\
238957925786562128432731202200716730574069286869363930186765958251326499145950\
260917069347519408975357464016830811798846452473618956056479426358070562563281\
189269663026479535951097127659136233180866921535788607812759910537171402204506\
186075374866306350591483916467656723205714516886170790984695932236724946737583\
099607042589220481550799132752088583781117685214269334786921895240622657921043\
620348852926267984013953216458791151579050460579710838983371864038024417511347\
226472547010794793996953554669619726763255229914654933499663234185951450360980\
344092212206712567698723427940708857070474293173329188523896721971353924492426\
178641188637790962814486917869468177591717150669111480020759432012061969637795\
103227089029566085562225452602610460736131368869009281721068198618553780982018\
471154163630326265699283424155023600978046417108525537612728905335045506135684\
143775854429677977014660294387687225115363801191758154028120818255606485410787\
933598921064427244898618961629413418001295130683638609294100083136673372153008\
352696235737175330738653338204842190308186449184093723944033405244909554558016\
406460761581010301767488475017661908692946098769201691202181688291040870709560\
951470416921147027413390052253340834812870353031023919699978597413908593605433\
599697075604460134242453682496098772581311024732798562072126572499003468293886\
872304895562253204463602639854225258416464324271611419817802482595563544907219\
226583863662663750835944314877635156145710745528016159677048442714194435183275\
698407552677926411261765250615965235457187956673170913319358761628255920783080\
185206890151504713340386100310055914817852110384754542933389188444120517943969\
970194112695119526564919594189975418393234647424290702718875223534393673633663\
200307232747037407123982562024662651974090199762452056198557625760008708173083\
288344381831070054514493545885422678578551915372292379555494333410174420169600\
090696415612732297770221217951868376359082255128816470021992348864043959153018\
464004714321186360622527011541122283802778538911098490201342741014121559769965\
438877197485376431158229838533123071751132961904559007938064276695819014842627\
991221792947987348901868471676503827328552059082984529806259250352128451925927\
986593506132961946796252373972565584157853744567558998032405492186962888490332\
560851455344391660226257775512916200772796852629387937530454181080729285891989\
715381797343496187232927614747850192611450413274873242970583408471112333746274\
617274626582415324271059322506255302314738759251724787322881491455915605036334\
575424233779160374952502493022351481961381162563911415610326844958072508273431\
765944054098269765269344579863479709743124498271933113863873159636361218623497\
261409556079920628316999420072054811525353393946076850019909886553861433495781\
650089961649079678142901148387645682174914075623767618453775144031475411206760\
160726460556859257799322070337333398916369504346690694828436629980037414527627\
716547623825546170883189810868806847853705536480469350958818025360529740793538\
676511195079373282083146268960071075175520614433784114549950136432446328193346\
389050936545714506900864483440180428363390513578157273973334537284263372174065\
775771079830517555721036795976901889958494130195999573017901240193908681356585\
539661941371794487632079868800371607303220547423572266896801882123424391885984\
168972277652194032493227314793669234004848976059037958094696041754279613782553\
781223947646147832926976545162290281701100437846038756544151739433960048915318\
817576650500951697402415644771293656614253949368884230517400129920556854289853\
897942669956777027089146513736892206104415481662156804219838476730871787590279\
209175900695273456682026513373111518000181434120962601658629821076663523361774\
007837783423709152644063054071807843358061072961105550020415131696373046849213\
356837265400307509829089364612047891114753037049893952833457824082817386441322\
710002968311940203323456420826473276233830294639378998375836554559919340866235\
090967961134004867027123176526663710778725111860354037554487418693519733656621\
772359229396776463251562023487570113795712096237723431370212031004965152111976\
013176419408203437348512852602913334915125083119802850177855710725373149139215\
709105130965059885999931560863655477403551898166733535880048214665099741433761\
182777723351910741217572841592580872591315074606025634903777263373914461377038\
021318347447301113032670296917335047701632106616227830027269283365584011791419\
447808748253360714403296252285775009808599609040936312635621328162071453406104\
224112083010008587264252112262480142647519426184325853386753874054743491072710\
049754281159466017136122590440158991600229827801796035194080046513534752698777\
609527839984368086908989197839693532179980139135442552717910225397010810632143\
048511378291498511381969143043497500189980681644412123273328307192824362406733\
196554692677851193152775113446468905504248113361434984604849051258345683266441\
528489713972376040328212660253516693914082049947320486021627759791771234751097\
502403078935759937715095021751693555827072533911892334070223832077585802137174\
778378778391015234132098489423459613692340497998279304144463162707214796117456\
975719681239291913740982925805561955207434243295982898980529233366415419256367\
380689494201471241340525072204061794355252555225008748790086568314542835167750\
542294803274783044056438581591952666758282929705226127628711040134801787224801\
789684052407924360582742467443076721645270313451354167649668901274786801010295\
133862698649748212118629040337691568576240699296372493097201628707200189835423\
690364149270236961938547372480329855045112089192879829874467864129159417531675\
602533435310626745254507114181483239880607297140234725520713490798398982355268\
723950909365667878992383712578976248755990443228895388377317348941122757071410\
959790047919301046740750411435381782464630795989555638991884773781341347070246\
747362112048986226991888517456251732519341352038115863350123913054441910073628\
447567514161050410973505852762044489190978901984315485280533985777844313933883\
994310444465669244550885946314081751220331390681596592510546858013133838152176\
418210433429788826119630443111388796258746090226130900849975430395771243230616\
906262919403921439740270894777663702488155499322458825979020631257436910946393\
252806241642476868495455324938017639371615636847859823715902385421265840615367\
228607131702674740131145261063765383390315921943469817605358380310612887852051\
546933639241088467632009567089718367490578163085158138161966882222047570437590\
614338040725853862083565176998426774523195824182683698270160237414938363496629\
351576854061397342746470899685618170160551104880971554859118617189668025973541\
705423985135560018720335079060946421271143993196046527424050882225359773481519\
135438571253258540493946010865793798058620143366078825219717809025817370870916\
460452727977153509910340736425020386386718220522879694458387652947951048660717\
390229327455426785669776865939923416834122274663015062155320502655341460995249\
356050854921756549134830958906536175693817637473644183378974229700703545206663\
170929607591989627732423090252397443861014263098687733913882518684316501027964\
911497737582888913450341148865948670215492101084328080783428089417298008983297\
536940644969903125399863919581601468995220880662285408414864274786281975546629\
278814621607171381880180840572084715868906836919393381864278454537956719272397\
972364651667592011057995663962598535512763558768140213409829016296873429850792\
471846056874828331381259161962476156902875901072733103299140623864608333378638\
257926302391590003557609032477281338887339178096966601469615031754226751125993\
315529674213336300222964906480934582008181061802100227664580400278213336758573\
019011371754672763059044353131319036092489097246427928455549913490005180295707\
082919052556781889913899625138662319380053611346224294610248954072404857123256\
628888931722116432947816190554868054943441034090680716088028227959686950133643\
814268252170472870863010137301155236861416908375675747637239763185757038109443\
390564564468524183028148107998376918512127201935044041804604721626939445788377\
090105974693219720558114078775989772072009689382249303236830515862657281114637\
996983137517937623215111252349734305240622105244234353732905655163406669506165\
892878218707756794176080712973781335187117931650033155523822487730653444179453\
415395202424449703410120874072188109388268167512042299404948179449472732894770\
111574139441228455521828424922240658752689172272780607116754046973008037039618\
787796694882555614674384392570115829546661358678671897661297311267200072971553\
613027503556167817765442287442114729881614802705243806817653573275578602505847\
084013208837932816008769081300492491473682517035382219619039014999523495387105\
997351143478292339499187936608692301375596368532373806703591144243268561512109\
404259582639301678017128669239283231057658851714020211196957064799814031505633\
045141564414623163763809904402816256917576489142569714163598439317433270237812\
336938043012892626375382667795034169334323607500248175741808750388475094939454\
896209740485442635637164995949920980884294790363666297526003243856352945844728\
944547166209297495496616877414120882130477022816116456044007236351581149729739\
218966737382647204722642221242016560150284971306332795814302516013694825567014\
780935790889657134926158161346901806965089556310121218491805847922720691871696\
316330044858020102860657858591269974637661741463934159569539554203314628026518\
951167938074573315759846086173702687867602943677780500244673391332431669880354\
073232388281847501051641331189537036488422690270478052742490603492082954755054\
003457160184072574536938145531175354210726557835615499874447480427323457880061\
873149341566046352979779455075359304795687209316724536547208381685855606043801\
977030764246083489876101345709394877002946175792061952549255757109038525171488\
525265671045349813419803390641529876343695420256080277614421914318921393908834\
543131769685101840103844472348948869520981943531906506555354617335814045544837\
884752526253949665869992058417652780125341033896469818642430034146791380619028\
059607854888010789705516946215228773090104467462497979992627120951684779568482\
583341402266477210843362437593741610536734041954738964197895425335036301861400\
951534766961476255651873823292468547356935802896011536791787303553159378363082\
248615177770541577576561759358512016692943111138863582159667618830326104164651\
714846979385422621687161400122378213779774131268977266712992025922017408770076\
956283473932201088159356286281928563571893384958850603853158179760679479840878\
360975960149733420572704603521790605647603285569276273495182203236144112584182\
426247712012035776388895974318232827871314608053533574494297621796789034568169\
889553518504478325616380709476951699086247100019748809205009521943632378719764\
870339223811540363475488626845956159755193765410115014067001226927474393888589\
943859730245414801061235908036274585288493563251585384383242493252666087588908\
318700709100237377106576985056433928854337658342596750653715005333514489908293\
887737352051459333049626531415141386124437935885070944688045486975358170212908\
490787347806814366323322819415827345671356443171537967818058195852464840084032\
909981943781718177302317003989733050495387356116261023999433259780126893432605\
584710278764901070923443884634011735556865903585244919370181041626208504299258\
697435817098133894045934471937493877624232409852832762266604942385129709453245\
586252103600829286649724174919141988966129558076770979594795306013119159011773\
943104209049079424448868513086844493705909026006120649425744710353547657859242\
708130410618546219881830090634588187038755856274911587375421064667951346487586\
771543838018521348281915812462599335160198935595167968932852205824799421034512\
715877163345222995418839680448835529753361286837225935390079201666941339091168\
758803988828869216002373257361588207163516271332810518187602104852180675526648\
673908900907195138058626735124312215691637902277328705410842037841525683288718\
046987952513073266340278519059417338920358540395677035611329354482585628287610\
610698229721420961993509331312171187891078766872044548876089410174798647137882\
462153955933333275562009439580434537919782280590395959927436913793778664940964\
048777841748336432684026282932406260081908081804390914556351936856063045089142\
289645219987798849347477729132797266027658401667890136490508741142126861969862\
044126965282981087045479861559545338021201155646979976785738920186243599326777\
689454060508218838227909833627167124490026761178498264377033002081844590009717\
235204331994708242098771514449751017055643029542821819670009202515615844174205\
933658148134902693111517093872260026458630561325605792560927332265579346280805\
683443921373688405650434307396574061017779370141424615493070741360805442100295\
600095663588977899267630517718781943706761498217564186590116160865408635391513\
039201316805769034172596453692350806417446562351523929050409479953184074862151\
210561833854566176652606393713658802521666223576132201941701372664966073252010\
771947931265282763302413805164907174565964853748354669194523580315301969160480\
994606814904037819829732360930087135760798621425422096419004367905479049930078\
372421581954535418371129368658430553842717628035279128821129308351575656599944\
741788438381565148434229858704245592434693295232821803508333726283791830216591\
836181554217157448465778420134329982594566884558266171979012180849480332448787\
258183774805522268151011371745368417870280274452442905474518234674919564188551\
244421337783521423865979925988203287085109338386829906571994614906290257427686\
038850511032638544540419184958866538545040571323629681069146814847869659166861\
842756798460041868762298055562963045953227923051616721591968675849523635298935\
788507746081537321454642984792310511676357749494622952569497660359473962430995\
343310404994209677883827002714478494069037073249106444151696053256560586778757\
417472110827435774315194060757983563629143326397812218946287447798119807225646\
714664054850131009656786314880090303749338875364183165134982546694673316118123\
364854397649325026179549357204305402182974871251107404011611405899911093062492\
312813116340549262571356721818628932786138833718028535056503591952741400869510\
926167541476792668032109237467087213606278332922386413619594121339278036118276\
324106004740971111048140003623342714514483334641675466354699731494756643423659\
493496845884551524150756376605086632827424794136062876041290644913828519456402\
643153225858624043141838669590633245063000392213192647625962691510904457695301\
444054618037857503036686212462278639752746667870121003392984873375014475600322\
100622358029343774955032037012738468163061026570300872275462966796880890587127\
676361066225722352229739206443093524327228100859973095132528630601105497915644\
791845004618046762408928925680912930592960642357021061524646205023248966593987\
324933967376952023991760898474571843531936646529125848064480196520162838795189\
499336759241485626136995945307287254532463291529110128763770605570609531377527\
751867923292134955245133089867969165129073841302167573238637575820080363575728\
002754490327953079900799442541108725693188014667935595834676432868876966610097\
395749967836593397846346959948950610490383647409504695226063858046758073069912\
290474089879166872117147527644711604401952718169508289733537148530928937046384\
420893299771125856840846608339934045689026787516008775461267988015465856522061\
210953490796707365539702576199431376639960606061106406959330828171876426043573\
425361756943784848495250108266488395159700490598380812105221111091943323951136\
051446459834210799058082093716464523127704023160072138543723461267260997870385\
657091998507595634613248460188409850194287687902268734556500519121546544063829\
253851276317663922050938345204300773017029940362615434001322763910912988327863\
920412300445551684054889809080779174636092439334912641164240093880746356607262\
336695842764583698268734815881961058571835767462009650526065929263548291499045\
768307210893245857073701660717398194485028842603963660746031184786225831056580\
870870305567595861341700745402965687634774176431051751036732869245558582082372\
038601781739405175130437994868822320044378043103170921034261674998000073016094\
814586374488778522273076330495383944345382770608760763542098445008306247630253\
572781032783461766970544287155315340016497076657195985041748199087201490875686\
037783591994719343352772947285537925787684832301101859365800717291186967617655\
053775030293033830706448912811412025506150896411007623824574488655182581058140\
345320124754723269087547507078577659732542844459353044992070014538748948226556\
442223696365544194225441338212225477497535494624827680533336983284156138692363\
443358553868471111430498248398991803165458638289353799130535222833430137953372\
954016257623228081138499491876144141322933767106563492528814528239506209022357\
876684650116660097382753660405446941653422239052108314585847035529352219928272\
760574821266065291385530345549744551470344939486863429459658431024190785923680\
224560763936784166270518555178702904073557304620639692453307795782245949710420\
188043000183881429008173039450507342787013124466860092778581811040911511729374\
873627887874907465285565434748886831064110051023020875107768918781525622735251\
550379532444857787277617001964853703555167655209119339343762866284619844026295\
252183678522367475108809781507098978413086245881522660963551401874495836926917\
799047120726494905737264286005211403581231076006699518536124862746756375896225\
299116496066876508261734178484789337295056739007878617925351440621045366250640\
463728815698232317500596261080921955211150859302955654967538862612972339914628\
358476048627627027309739202001432248707582337354915246085608210328882974183906\
478869923273691360048837436615223517058437705545210815513361262142911815615301\
758882573594892507108879262128641392443309383797333867806131795237315266773820\
858024701433527009243803266951742119507670884326346442749127558907746863582162\
166042741315170212458586056233631493164646913946562497471741958354218607748711\
057338458433689939645913740603382159352243594751626239188685307822821763983237\
306180204246560477527943104796189724299533029792497481684052893791044947004590\
864991872727345413508101983881864673609392571930511968645601855782450218231065\
889437986522432050677379966196955472440585922417953006820451795370043472451762\
893566770508490213107736625751697335527462302943031203596260953423574397249659\
211010657817826108745318874803187430823573699195156340957162700992444929749105\
489851519658664740148225106335367949737142510229341882585117371994499115097583\
746130105505064197721531929354875371191630262030328588658528480193509225875775\
597425276584011721342323648084027143356367542046375182552524944329657043861387\
865901965738802868401894087672816714137033661732650120578653915780703088714261\
519075001492576112927675193096728453971160213606303090542243966320674323582797\
889332324405779199278484633339777737655901870574806828678347965624146102899508\
487399692970750432753029972872297327934442988646412725348160603779707298299173\
029296308695801996312413304939350493325412355071054461182591141116454534710329\
881047844067780138077131465400099386306481266614330858206811395838319169545558\
259426895769841428893743467084107946318932539106963955780706021245974898293564\
613560788983472419979478564362042094613412387613198865352358312996862268948608\
408456655606876954501274486631405054735351746873009806322780468912246821460806\
727627708402402266155485024008952891657117617439020337584877842911289623247059\
191874691042005848326140677333751027195653994697162517248312230633919328707983\
800748485726516123434933273356664473358556430235280883924348278760886164943289\
399166399210488307847777048045728491456303353265070029588906265915498509407972\
767567129795010098229476228961891591441520032283878773485130979081019129267227\
103778898053964156362364169154985768408398468861684375407065121039062506128107\
663799047908879674778069738473170475253442156390387201238806323688037017949308\
954900776331523063548374256816653361606641980030188287123767481898330246836371\
488309259283375902278942588060087286038859168849730693948020511221766359138251\
524278670094406942355120201568377778851824670025651708509249623747726813694284\
350062938814429987905301056217375459182679973217735029368928065210025396268807\
498092643458011655715886700443503976505323478287327368840863540002740676783821\
963522226539290939807367391364082898722017776747168118195856133721583119054682\
936083236976113450281757830202934845982925000895682630271263295866292147653142\
233351793093387951357095346377183684092444422096319331295620305575517340067973\
740614162107923633423805646850092037167152642556371853889571416419772387422610\
596667396997173168169415435095283193556417705668622215217991151355639707143312\
893657553844648326201206424338016955862698561022460646069330793847858814367407\
000599769703649019273328826135329363112403650698652160638987250267238087403396\
744397830258296894256896741864336134979475245526291426522842419243083388103580\
053787023999542172113686550275341362211693140694669513186928102574795985605145\
005021715913317751609957865551981886193211282110709442287240442481153406055895\
958355815232012184605820563592699303478851132068626627588771446035996656108430\
725696500563064489187599466596772847171539573612108180841547273142661748933134\
174632662354222072600146012701206934639520564445543291662986660783089068118790\
090815295063626782075614388815781351134695366303878412092346942868730839320432\
333872775496805210302821544324723388845215343727250128589747691460808314404125\
868181540049187772287869801853454537006526655649170915429522756709222217474112\
062720656622989806032891672068743654948246108697367225547404812889242471854323\
605753411672850757552057131156697954584887398742228135887985840783135060548290\
551482785294891121905383195624228719484759407859398047901094194070671764439032\
730712135887385049993638838205501683402777496070276844880281912220636888636811\
043569529300652195528261526991271637277388418993287130563464688227398288763198\
645709836308917786487086676185485680047672552675414742851028145807403152992197\
814557756843681110185317498167016426647884090262682824448258027532094549915104\
518517716546311804904567985713257528117913656278158111288816562285876030875974\
963849435275676612168959261485030785362045274507752950631012480341804584059432\
926079854435620093708091821523920371790678121992280496069738238743312626730306\
795943960954957189577217915597300588693646845576676092450906088202212235719254\
536715191834872587423919410890444115959932760044506556206461164655665487594247\
369252336955993030355095817626176231849561906494839673002037763874369343999829\
430209147073618947932692762445186560239559053705128978163455423320114975994896\
278424327483788032701418676952621180975006405149755889650293004867605208010491\
537885413909424531691719987628941277221129464568294860281493181560249677887949\
813777216229359437811004448060797672429276249510784153446429150842764520002042\
769470698041775832209097020291657347251582904630910359037842977572651720877244\
740952267166306005469716387943171196873484688738186656751279298575016363411314\
627530499019135646823804329970695770150789337728658035712790913767420805655493\
624646412600243796845437773390264725128194163200768487362517640659675406936217\
588793078559164787772747392720029103429495624476613082007292507345291707642266\
210476730378631699542374551174565220227833240968035246676631908610112067458562\
873174135111622920788651329412448154716281820798771683463413223622341177882310\
276598251093588923591620551087632980879931651725289380012378174348968321515905\
624933473702068322321001186373957705674738671021732123752243252416263580343762\
536068086691635715945515278178039217743228234366337728111863905118930759016666\
507429527583840085446354193171905313636597249051584091065822018147347990223590\
671381469051160519223012694823161134174399447148330408624842691395023367134124\
251238640266572581309439676219396554073865242298978797821986379182997095579247\
473203032391164104459069079778623155183495930353059237898175158914576504080251\
094791234217584828418819501385461656803017550355800549448948848713516053755934\
023457489795166024423383214060300959371055884570525157042662846003544028236787\
685509826781617655203757956554816778960389274983556087915411777494235734007641\
610932940038999821992672570869573260687749742248020233075251876502559684207606\
932299885875798988964607443817881700815488952265167228340452772191069914157646\
394852311267947308658031950764551976756289574288817968120900263871452578583152\
776151090886317402436956805678730152354278047934142664952238337071175112653755\
039423720987846680491394734465307140796225972871305030772587148755705025825734\
668666138023514260561161974055434365486980054448792959702875903522584097826835\
986664465860456942413907290952662499329029734405681606838057266260572770884070\
734714960600645614540707344327825140874742755067223048453570060922143900029929\
816082117170479176145051910081326703752149307405678533111060583529127810073917\
499491978451129159136811073940551752080196305393507402485095537725003670546651\
623304304250874423242624046321150789973369299854070416562610419767002024150948\
924118560924096376044296120023645907064497706272079190192359648070489236369798\
601982830872842285647523531628827913242955248144475055219096720460806895451817\
122049303218537406272474215197403057690436026863607807920047762324295518294735\
220272443763390277213920877670657162416397517858592544269234285352743288563368\
507896519620725194165560618703705502184628454342578503830000953745182929584404\
649188386857934839611512971605816657450967036774958366666931218817636796449436\
171304160372430506584851317492640558551940180051809084752118682246169761492432\
383194864344159085580110730703112015022434160731579295287529368358203970033891\
121141706852193665897894595031543895890153038271430019295890741499435928940830\
970770783628759144840370450386189669758112018523192318686599680385838123703291\
562075788359487809416882055316051281901526475928075749581545642213414593781670\
569928682998956119823538371578804804787045841753946654976901732203108900703033\
629117673084484503721456696444014695451738574341578101586187838392785526093991\
305702555755590609470514980934877733200727975730382459894668096808222213484858\
738229992817940908256652095816554724752445667436975944746863763324289042697761\
067919339109833004223102937282987989032093910926828363061736101738781236798986\
451493117024371282858826304862988844922074156406071470591374055246657569718702\
173552872454394277148091793644376506378618613243486357974112585208634599278036\
887924983543632984576876501650651153450086957212395075447856831736315571535270\
465242352597375134088254616096614407466755142268360319598010721524635510691718\
713357316854856312808578344356236709596509499469688206611851180860342028213318\
012494109915026014354500174327307936251130702982504994179942844511464793291545\
995559095878076216366685917910654359660652535253202736507259891212556868428020\
772464877220109966318295595529033933122843648644759735608598407609472983895424\
339326231532399189818522641808312963335463568748288634656185048106322888055967\
378445620009414656034992808794051153100575871295525719641115068503407737106043\
803712595755969859493620584775120263549473475347481892622541903526716144292848\
998575367406921652716300860606543737368235565886264863436891532180955722044567\
771373683104580755845296128328326063196297285279666743629748008213186279218690\
442843426307357607039996694307895081472697302538173756949227517953543261569120\
405948328609499923664122878812264191485048563280720664185570595203750303229168\
944894275783060909108524106014006832742055839697738231507349961087587637042555\
649640868550719422563449667324306562592504745817627332818160170196981665424263\
787636014530359465384503254766749997373408356651381860251565202836373891710165\
454148826744480091057041861626268379711208861413572796110990882929702296921281\
809787989513915042709367864449831964201345668339087759430064424856230121246145\
116979219396344095080832292812942704365991464827499843759421130204182973084171\
788130903795585456032471708191953027714657945554755447542844344081393889086097\
760178573893075186619065050180771650018407443258540241843605011182429907023234\
172436745253653495947990633345407543718126993998337192184854187359798453489345\
922685150681826624900780293350126588249742262418853525266367028276624993498294\
887483310617642084290169230528996089786041300651090281798050405871076711790411\
302174827966823530019602202531855767898433175868063783599687916015389222202365\
757655815866114091993948615992091599175533417830333476431316350127053906970793\
265678124159064342847213602352182367412147331244999443341559152743159316874778\
825331550927703362029012225977948098553922000645271622808553982789065842334475\
528212765176505726632676911410750348458718969964348757751384791481836351006214\
668185850963488870814569767220201679911994624177766889079171368659459607264685\
388107787830021613682766970262234594187374767335379988844034270468030425516941\
271587393203984443746045478161130566251764127598211819396611018505628805559425\
660600323121161809946221293010024709133471506822684304586803009042428616820255\
621409460879000651910994955708158165058289833407394660844575657806366902728434\
620185873282529247965052866814085035385198375236374519256227954902905579070302\
839501048548359298345428144873043580470533150815105030015214281171753936491331\
661726212354055278633080020831770556302949635942016543330940941771963262341193\
871051615701017980535516793708602913667569860971241203685838129576953077981413\
657001747613569669861460684914396995738376316958246025133421080726217136019430\
180872098885514150241638183259752595931655318658331171268579415272066122184226\
614118251546574848783126103478345467492583087299854474212064450952332450508774\
314961665552517971680209917200264093749219075699368963302813916472089635817717\
355558485927065245048625164195405508013435103233898133783024977018227549063814\
999647233340796130414697394763726508692733471084156856084309213162404346298639\
208416600559045985064912435052647660676003444416181864036700837741141010943205\
889555986586700778636718969440896223213740341135971991331359465536854466923676\
525890121084137774324821918127478478922872648929700323718734561579815998348391\
004126010507469645994303319788106349139238124905030614334079183280040639070986\
725961970983112659601474737253305268537177421465540058739246237276173649051987\
133680677239525707813606866832613950143295094748515947246675272016843165866088\
075127685847555411843811690116220055521134844889606682592274313190079630115870\
846701176549353930465633562253112447277966690058311906161019726630739705425314\
398184573794494867801346182178759390769996020290839656772878469057364015640150\
476964489939475414746083399186968892711569423454926512466455077925540281050376\
220359675305586018564920560628790907694533392088088494778288948511221547432301\
913832455629938810206144902668760102077532109156849778307408596498579671526170\
100394754945399176987913235465501064073558169994097562481499674432784292027626\
441897939181583945627081733015821602255196598987693761640198612074667550488611\
108557267645070526224461302223358520722736204850572892388158849387545352291863\
997143808840617572862209501225065158631042588841343554319737298562177530720226\
294755524830444453404348888785811703413453425223543194078779728467601815832270\
977451809293421931898158124828326589500407048552060998937839003419141630446391\
638805496587865013750463416956551566182988786307058423069676602540530248114710\
078997842118304890104640568965397028855955309255586360521589573751140895649058\
441567749371058596480143158746144912505492531911646538215851973700932801945303\
205726284526580460463378166314299330766466465307605905489628887241897160602258\
826175775399220551315093772006248630855628204935757527249955670892216342339836\
025653287310291940070411769192208500151167356701019589710017970195781208929109\
694177543699043682025630240548226254019056965077105815742407214963395603652702\
833344073057500736745622605846498861151016896121811190584717144610687197610174\
565873737967406971374232387538390303172002002072059284887851239117464716737437\
379232838819662016876221913462338937625995270256721386221124589802121305014072\
889043003225355040958668187241393699381930691487447171866461831119426031616640\
703773164870018647996002430440032422418094022785333090115098808706782688353172\
007675225531380088187804316901900728048317992874141254761230896068330958283776\
676882875786886830929760010119745338983319525886196301329170943858166153741717\
944963191771543125069598534812856846193776698942774591709188025200127499055594\
072896965947933316722436215678967769667080352290390184857308062756708676586271\
047694092035655930253527434189659270022270492331868299915609364137570049885373\
045963961527346293969749517480626964517930187199867885375814159757993148066085\
572325683743052827641756700502880404894298995809481035348339341449278859252621\
924155472319971433850866373209266327282435149336407045896838523456247443611752\
567669877675972234392063575074715529181027626140129924804228839902978799254185\
174991296302839907296355885798905933177959087690739056460256235335672215522594\
688382984528829229662751371624221729546786707158409241840841475575825393852409\
633020513497047406953995678979817278609204622868397357798151118681526598846069\
497589654813146511503926263777495137615572481951161198772503445647107385134359\
273555387124623755981938132142384415819290700463897716838872079163617414324970\
791096581627464297170728717251427458983568970955346268201690853561089448984071\
005819203021769451207717745887955195104733841847399807963067678858451675757299\
043069715426423834980098708699336709121083944535062459224323123482785496603746\
571880148929379451478705406079245759006012196221239287200172155886663457349714\
095337211516559857579417244198890261670161016115578343150254603287811984240274\
846085107224066767787608552476177738330895026100643883505502054563243461678594\
519417956698749685152448838475136181806671083161655642093692705206118985172926\
171417144346555087063060635510129494003097591677991584260491971209543227026784\
326542965724032720887143219996453132025871096771651285496699625526986073117637\
182074988273997706019913620930832307368382064557325637659829125781314922242204\
279712414416299512659456397927593803838047826231604243253991328511230322470375\
619423217330478540785762440132917179929792407833907157579814268168646553829468\
473992058886316559349198678969628404473449680240770928313764081033522552427174\
041076735654244410044833474401017264410529547872963458986405012036080244511903\
509949744939736171815752770937802092366681358416362683192634067141827974213425\
462207054156000509596740456168404517717479527903532549325891204833857465900967\
817304160005210889346107687540042419778030828851812001733695591271377141950113\
613044097532791905048915832463991434835316486815485791786329351239255525102111\
827885736960602769313014696614334496423021143824837056335327938588952676720766\
889712744358156320881066501495681435587965769098577659027687074536592763649755\
534496173080781609871032480137951361703677634575949756862080139963745517624251\
477806287222659714554829067692957136435721526744689878894188207512922257565091\
435528288746141950978624275278815715664007637210378031940430958442725492699871\
692343318900221415031139987652606887615667402101972017196023908610829749276395\
695411530322754601738707956259935797853024434767163995914623179312399899869284\
379757024923695515872976838540052276514956144471059719628898881571094151717015\
181147435136438540051162462021311748007919837497001004713634325232815789113554\
504533719052750682291561850033284695679262262081904424733403625038927920715859\
600393631533688427243753667996986479347411331983286194414606539227840999031438\
403545650470567895520248271760118743356436902435030856313095590552503904927316\
133117349225846446090245350791901844112993216997704518328535864804285568222087\
372136164905863032563689130841037602156799270200053223554398046531193397754590\
440450785680213984650096934295473102692499475864660580916699841606846460872939\
438082743082858174796941728729903110131926755738979840913642534796949434803777\
033646349584768629825901034707278612186230019866079877826842459338356389195702\
068535216032116352300649887446002001704130569853651546687520238593751832803728\
511432748116996836928492204473805706334966187112409478359158696268586435891413\
598542535776887749327436345147544886408688180303696524317556883002058607732569\
597160864854158344684324899630770113713446751569302448854820771241335577323069\
494580672678452359436315078727281579015730700331787968544362795257190236232746\
142628687327380094977411228562376632149046532940720261975390717404222595392428\
881645597965700309571413891069368450362682310539867437532400527015347458933256\
795149418545378088270634572959621690853835353703814181155738163782090325615198\
697453576464121254980760051561417072980469948135934831505681166427932193352798\
227147157673401860887215187996693502527007575560997198828630642854481282751392\
806947027501481632897273143473485285295046048832716739789815636788047804436021\
090073207273697493446304997314425715604331336903876181009488731207134827108158\
898574832658542075100779531183268617080370709359276149367825308583404823510036\
321663789574262025503501168615434073795045164828967556983589355220201736795480\
757819095026979812711487034311903631122461282953038205128704309294719745946908\
210256347889954317715243796962112812245034260663992688521330791963702777804488\
579205730469908009234401866381132520971230964760599899479257598510081730396068\
222199753273016065826285275825766950785472603493829813358252817867060851265600\
226887178112535978293373477914127362841886561759208328794474109697038798547369\
840254580632948350223593935435874802239897609162962501104739311694491006669072\
306346931301697118206325352692440438400937242844282097093648569094689200873717\
532525570305435398287278123011398080938670154748858034456318713196026785487938\
933162050076752641120443902375833427242986996547863685341028488573702547255023\
656634186809190383886707879072084036194021646701215348379781518328264725786288\
152071010814995589803381189615694417567613407170465385121709021237778843336496\
518721199054075818773943975283641439530442459139031788130041887918871145531482\
674699870555879310402403888840838506873416250716572741851349520849636709555424\
504394839480459791562282824837879341527203622633695618055563710768148888936192\
757426599358235594315308879330527675587475123650658439694756042971920023198680\
243517199378681003611023125683642560795974105741536282971800464977485737183786\
390370390153973749116546854997164539416112164176107171454017651905650525206622\
778831290457196932059902413753959838619826032054958395016755525096441371182225\
614960140030230354078992096986775078672000380742679705303071679322960156486228\
085184033523501706085895129122232461178302531636289439460736527713365116316464\
461990990212249224123151689927678558637363155260025034884878132330019101893996\
167027314169996265119457426367619650024347371727290284622097983948710659822700\
099549188776961885054326532118022194442822284251525561411874340180419461413945\
147128725275923912559644373568339728963312676782349103563329612947191015157143\
115795490933903261411918654752376247215311020793691158487422058227473432017355\
850771224379698579654915806279502740977168861148076163151618553068566924571717\
692204436684331273989337941116297224516999854685622157024175947117699529165502\
116855001089857619346394559088262707753114657752238846343519376539734984802454\
976076024403080844890106838786972612370978357824516680117148598367940552904619\
826216566917202742628548239339600182545994092543081696910329784112340228856001\
905493427502231852947128296096939768137341977042781213001473286776057194059699\
792755124617184349569856417128724811834654206423187145518241528676305675131162\
677177350617511245463387994265291270105789956718057214365579183506917779307040\
757329043974949958224106238105149176502385041827300966201717509405908054089572\
837554063551522199658207573513157075923615398639459211155864000988097552610538\
382568992721584785041746065161511337883360976012114848700556016581249247068256\
844272045472896309420306650445298646223594226008554991589149953606498428034579\
492757009497959450602378775019470624632394954957823082283066840818802521076639\
074230973720916285337176806216446935432317917855305833171420847988630340846572\
642693955700268576057539347888587094600582723230519108117514234912687336585960\
799891732928915896001815091816337400806035475200051511751029012299248709615459\
280262060761698272181029167315548929423740851967433079166078499055782101935713\
662435990883613859808516156417476946054785540081953530670803089697630452946868\
233210532878237438944115685176271711636309401479909649456354592950130739003626\
821007326370082356150691269643183351716254390304698989314261544263595113634660\
573786549512445747526216789547036289048304849968040377225134319373734412366185\
869445880640185840731476337929403863404359194198723552630156546080518686760680\
431608451284591604244132698791253856029915996727876619519505317648831346932573\
668946443825581391084862096637426745798313012223438725831244220330945714575414\
704792938758582389977385152135237238955966431223564326262860114748908681715928\
106687270840082033771869215352352692634722680908259898898400262081521782826112\
293131182086600709968603654098183268075582477670695041099758614362435521619453\
530292002546673679964850433731334952082107511992589266389956475698587079018561\
237915788643744690378715095001125502100388453119236529655994619004748466206423\
479423296700605290037091755781887081935221468714272352776325598980869487211138\
459800141238421638278244127365424467488333816797162011288619141540193671290947\
899026466644315609837296150196862422825067230616672094354657142514930864248877\
859868275958874906507726025095182953676518118236861694472436078376429476246922\
631949892196464406831692876616150605081384631941511620257790786307180123115945\
860389656252655422334623445450739478869026815949751311688514369452102168831904\
461686297633252298638518188500492869357276476682385556463655449640063176482855\
757858666102285515648599088209586894443625469867952382268611596991005636608292\
679153375381606611224786953132615853187176388598937792918890299879387981000369\
730784895927062541048485931585432339568310423902990702634437978756918554340897\
644076013084448197862650794764408301349424358342818859152592934714363175337495\
897010728735012707889804816350456766676932075530518404324461007403216764718360\
837084750651269307076608498252990003178503058536821395127350386382460564251033\
777558098646433980171862081426630741725922260005110913426810746701290143016541\
010649332122837908275150010035300156545975083237729654396973820477416265710657\
408216499606262274961879533479070659889748717795643340648417456457479069251701\
494998100953534135489087548363275795224072069862910246717035792514417667038866\
099069857262605812408253362252189920004189757457653151230000644457159317017716\
886354833330519215820559461173577163211322339319653203861990051161781713340010\
705766526899197081692022194647043237953564118660639205586090344570641517977821\
450547222788529872101978588460700474200284688737958442289499743336562718779917\
211379161644925413297156528795295326397595385359209501386333805075613695308995\
475848830242619627589859415137805158050257675404017857958524488311721050892770\
892272734319738238846873071682302487886885855101080735227814053714065207581072\
708481672639770987314551626469114232861030369329843303003236761627142640675878\
067318839715150027981633747790787750383079867594045910739210345874042196170349\
258081899072059612915864202028857340091149552388651079113714953346397639881839\
488045300750747403722809368205354304949519483328334700751619790086872854399629\
815756058916376247230691628711111376760864803237524596649304117539461364643378\
046711650555046706718362212857950480671656304276267114299991134876984470503706\
379001810968886297217579517324338027806174704963020424929166191718862433555992\
820932439194457118863215563201616542470553759386966246563341215410140322869909\
301591328858088312412428828763738727428380385907102927486333515030904453280525\
977956589205545624342979827941348917563824007716121733247364285401606100443376\
414572207859217155914010378320201321338330963807789040957238105588293927963743\
816606868351950592770195153616017221589042878567848206829194416987181928627308\
270444163039625471305328438833791337476873582612211625836027289616245590418967\
702474538275839665229937123516304898330124214174557885915942560597924277218199\
085562798486056174536844789237969079755945551546468531630244623256740348958454\
622567448582020424573919942530942642245042026890381501526836024125598075975236\
481628093048912746151196231546114008220563967806585354076686882275426503812259\
991620760170895567474465242344520176616503259456659129667863246213799192229614\
586714224824928806476803210864779941004100600339067927523736254602774296007347\
880383566875220034824576949084568626960577157019191748922606352081297387974438\
354832861369395624503929768057832234021716765559177668403757234844094617629312\
884926899368713898388222710602790379900190455833600797392774109266557392331470\
259092338906543884223513241153880185592349561399302239196450504503693529270115\
663051533519186418648234424999192720272953459599063048723608041595760029668121\
116831723660381105428035914457202482564561057140554624208213435209481084171582\
895724450720635468160023051201408480543587425261710176818538835575587174154247\
754497722214192613155252691091755633319323222432185254221827291491598105836897\
025035228130021411924860142480680797536996477719394906804683552808347327610306\
049409733091690316783097934636611832784531868716462680738833656704566010423768\
505801395074436479639222841126979451347730049249878649656367949099291327125289\
776519181754279628060849323755208153611132403397131655043918879601983821385850\
007732424617788491875814596426423378897933308194881600401131265256356932446593\
984006368903152547229239914144743770696338935761926039189247936317800831026114\
195485436051577871600495578865657970665885510428824663630572077789022667770425\
126815719795332251076389036819762844028610258805392339329474672024088541276492\
386447602161162620824212991660362299184923782236300983478119522913821847326342\
285759120979805478285250591837983368017874112426447460022562414980691400740979\
721023278539575615128345806165411117926710427990579394497134946328950456512868\
847841871758020504583283874853137369113510255062010277534580943910500102183397\
324565047288947687929892594501987507671223637918758647201214966061151280487096\
488630562284408393694438721692120849200851558381251070741955187208093746942459\
731172811721051928903896370394235776862127668210931827636649840421249381440979\
598631142254364839654999834790843070217643855543512574368282281530322223808347\
679511135570148063182004532207237948918635721491062425269939946710153668462341\
051533381426847706275852035240992079720869914537301095516415033176282001969164\
115460268207236692552751418429969920539853433073068057372380504167197221127374\
050789272663406388506867344585607732666483845780277189114758013231055198784133\
652185190714606813898688671031475982646112937954395266728672759948335902597445\
878687684964626834844344141359177145877660880778453571839329371937393236408356\
337576688468211117993505541020855618849010201600505639541687451082206035554108\
176664605241249662244228045452432160320360194641356097920019590240497929236732\
989245539901019801121402908686999205758917771880741461222050247285857153675307\
478143897305717872683663601576136100772286319638852646235125538077319459563567\
965382362499926551804330796359621106745528521429026294982656755335273100468788\
657310472466493326567927331345122955059186232937393326086077451350775309015744\
438294873397796053228493583013618379586264803212973684748175164769136621103603\
695091066665051717115082782009327883587225983940463068376318118089044236262199\
881236826807857952621972166872017455174726278180326830585488039709770479348310\
354398559078435527766760331398846052715031388563324676889271045958519328951391\
678238577357726581004798256393551935200552040800287059678249739374788605283564\
935914978380377964960005212445834779001756042465866651998077028839438516380955\
043049219603244360903400851746604296274309768387151945982644735940234248211044\
757291117779587731341553609527595708986125867714562523994500759380206093550248\
920084767332293085742222550206455690239126543663578524272429056053205754030821\
014512382090217466975797653475172501465837478848080537735150422224042957603613\
754324861996558919392205046999821062931609675651790751322960777857553310265858\
425760866867645355209277482755675451771699508789411805936305249944967012375980\
065534998739666395394417017059698101512719333118407679232718539539809764048527\
846743872316432910029065495308612833302664007580129618499207022002555972156957\
588376168784364346792755863573972253564884133060119289574642809357858081132331\
433115287482179766039712579528900364071989233281316116404169377366280132597382\
222374268189176489596422703380390592959649696482133114473166765041976781108490\
966469425717069457007871264014486522428469488976172567465352205061621073001019\
262483146821203551699501522007316384004132030333242312167082685468931758436630\
430784350785928104478492663952652398718644173380085681692321347429754583269402\
161253332837900960648627785494126679513674045877416945596140762656625029900692\
267267876036587137932796041848839393393469263543415480951836233233175229370352\
102914641331275203711716675487206347389232937851072902951446292741546761947942\
747166916030497829288961474587026499797079206387240825023006425544995904011974\
108535167844409018806462937483544396144003535233103040411784572289029581805810\
321237438258987027473704010683777715925126453570650830092147925834989247512745\
362200610585457599736931352970781437428413405519544467214894150574528391716037\
154530825255583432025125424166244575245629644579107697171521470951850550035505\
439063168825810578507463565620479146676805569843845520277099697198898072337148\
695635670317768776378974327349282934390514556706074460797047693164627812141713\
818274378561462197088087021064211057377851471358837377388240765280451914271374\
881105597447183100939375197659802100241012511230813682603384744910877161322857\
660263938849284959898236565727204263572026374825649494912629141917130646280595\
669825493603261320192528043461704390289260279931404361370265820121312851488158\
573111782104131033572888718172952627112000814750640268304641898876974787917317\
370381399918882424169942121527760451859567119094180737347933109970928315546816\
563952710104611376254066449586183854638982208996778329550111431499593680398222\
303713632957423217357446473421097414917436419947319588400526387269592318364232\
549184559550453437784670947045095942012021142208641912790493599452137392487110\
743231495113804293793655436372172634819075711353127093079527295221124795314989\
699080894665747695565124360561142008663990560990003803025061242360775032934134\
728905013167728097131626834959634092922430311950848788671035335200237127302029\
165929752526570392104214963495238570856057234346215769569851340683045483315459\
075364711469968242091023214311717692277385347704177940764410013010485960927072\
113205231853822274448702433271039878114791275460808361156877921513113104500836\
636310075175110259002808642771502096271366239740107528844546833161821150278926\
430729763557610551124620332480053105995111505431484829553432959830574272451737\
886527193000732321736237587327314890910945537402704811855571990516839387453520\
679708592118964078548950410940569965988715988633620779550452193215633612468530\
317470544394029418292635524015545231609868255313897018801539704596250169179664\
812501555932311482673005633835797260328601778474149600456972578349562058732873\
012451455576345230298648149544100907883529801207012654109525184606662017674204\
525736799469077190845378748206080290482516701766198207306183312392193535690040\
705215498939034465938809047507724169543651858075066490459443188862978723571603\
022481352204601090635214508280639749275512847694354996203399164488791974379020\
957188863200247502079102379073072963746326336674594275563784535691367345524014\
897125909480368566282321005003940073106632075257283147115192633289285206967239\
347175098295260212549476433019535743835092582831113391153906337661737307723630\
279889869985799450165923769067548837988929400605162826140048150469482814033083\
916434248650939635458909132805951116334550365634824519150583179498083182728134\
795050772717335949663371882149192837871164639035669257799424573943554730449355\
593968480327902086141968150826064810924688543383329866390745478052636291615627\
988031878282707451630327863907566533621975063224248645769459753596673200603898\
262930000761251494798008956712452569559827585485769012463686594942242277271771\
518496417510715984163572072412243719680672039270647894278942171284264133427118\
318479441334606472431411501550985511712414668243312352062840657226926069047479\
196447297528322749569819632778728162595401202053807329582500497445930809782409\
529912965423318498798800771681631986086512088315867256506594414061844683749631\
892913745993421603484822883158289730942161473689255851699271553115588887600721\
703410244587440208443428273004673097955556668115013003388895838023146431382900\
260076322850347583078087889518031398102076278898517435347822512084675949743002\
443789584289568075266320362769629946018083494199491270655913084000586265639963\
911040685104128200715324625642637145635575769452849271126355771963250658965455\
364821254592633552572925952814993415878776515692231191510233734407169916564763\
982000896984629843997759385398112133218103281989699457926176493582974837338775\
235285946403513823823062694536345810031936725020698280738433341175283157314342\
639896416347127053034775699155800311815918091137880268838547576972923398882860\
323029977043066628869553012102727057633959897689410249968479498168420119925613\
480756440406559462383708723688812548949148794873480861416810552114001845517008\
444484294847550732736642827222063365824017454988082913018839140156809050000849\
546573730003274779720991750746178595157995320223728523592040074251522563861667\
562031883981176186119602216284743190797025036745928280467817853664739356003540\
382782818457669478233745711382212193261672950104270694095202650280522898590935\
002394490874562620534522173119409577830195360518503854961406218253061820365182\
733706211198939024488975386358180994491815784878336528865436542248302027892417\
049689651104172759475017812267858143917486494243573009091712648771605959209744\
581146295542231002200851205225897647781148270394267766642782746259395117438071\
986187222655865040300284691469278646800318360346381726405702707422620342971875\
558099386871240465622333891464658305543013155095285109726300508051882652726853\
353729373385691826937171677303161186474948104242151279159101460656979533313377\
409593674932644146370242752453933503013099283364854070698403439912124524927558\
029979882409206644640425859662008887419164987730275403729204215810937814713136\
226288666694547421244955284909149219337193623402943371255755699886529662364503\
535192026777637942482082860568936231521523178850145213132149146986854835944706\
865850109813142058926764161151621094053567807368100897342458729327052108535726\
763805642288409296658844777952795467107351932954747130150792208403282322044289\
446782183965471109021173407251397247573570085553127432199967512595825680632358\
808838843662032622661914149347404364980002473983320924118386674296092694607014\
183881781107142824396577963884398647823137154249894725830411451495268724236189\
967630588168208463274374412103905527652187107355645257133601145580455856845586\
504328599176765196193271143498665407774514500473072711714795712227572018128864\
464407775174603282423173385337652989810442322404677246320479517980971576025800\
885768975134059480548268772884776293846454960402703705085394190927699370668045\
517194160403763511801855136575451095247034602260020741742823849481782254906365\
992084749037583205744677959106755660640775009347129817005818769408027992690460\
594987211763415191488225186704395573100179371000466572921803728487979715692278\
888397041982545657064289089858279586256599013759687500785698534209443995971523\
667673559911557090061413018853956006933050826115788315979018829128777653969640\
675392080848582290475561905186375490594176472080908485239299663653777468709856\
801423613707637046742361802921867959247697776529262929041798392750534329433844\
765333985012282836279851502637454279667177148419757339065728715430543215752354\
493205346537542382048448508846345908533866772925385204449844131368637518941176\
848626136036819373635133932540806852269214743073291344676252932264084533084493\
864715156181394136343503648177947550976339255988278690369632386330342579445292\
292377520328744890200405326681393547528550174645317172145995081455613646925266\
502271153373818175978557950419880754858113362891549009039080607754157573613737\
559880187573075362487370012912238261134381039234372313536898891533749493786324\
984941764281417045284082969399172432328677256415048376577311449335215538523001\
781108276163630370902052595037790925341104705700465652519779256793314108866326\
405926231788931260315285758716424211903337987257758742901290375936269727234314\
893572572418837941862768645667758686920276014398050163871435204776738809005789\
283633817797388457344100149966433235822257925351711059485607891824015219982852\
269465095876314924712795201644676474027046895454351030698261799914022340728548\
915468068420957432075066211544876266446757986364438802325863608869187594422715\
214296506641613849638150279721730712659205782660027847181400342092656930703090\
445702459646757649018527813931481315092036410498459690602253144748229457070252\
704363040611144551422276693665012542523720743940182775250894143291521517059974\
545931259468212143510622763303318504339488951276720637291512493681935703191046\
935729052762887687825004850548005973230753265227792552419913159617911522069419\
685479187341566997810967025629939932081645071741734905643398652199866390557093\
521198524390679861502144862392843873982018760228547123039494596615725875096503\
200712476657593813721248011341535506167547203695791055974610671125417117453695\
430147191419937319722797169021161357262524311647228936664414262124385498136236\
949635712821160368544160710823177510780129830425381419089224920859536461082139\
564811320531607370777207605599349815034240640775123315121589992462974978454743\
857855952270892671024791991996450430401660056217629623401492821816115205046438\
140512010176327979026932712227012592708163045794086959388503088585777767698805\
771202774618583728185859970177211160371098273932414719793766386484316000841579\
272530611640850151500165203002001427433763904187886226352747022589848494690776\
947476132763910525994056603823823716369435554706581748273071824741827263627240\
462399440284444736424586444751046902997652674973443569857085390578191599585996\
096750612830910194748865650751261397136329276415834913042083009508511004140745\
574437849278985760726105769741819633696790755188383220173443764398053682962687\
328518939530815972138409987536577466354932531139362559789543000911914267407538\
592549690157973419183710401699917900945678359628573224471479073204569647197863\
154908628412333251748127848288098487610221009742783475164627905539385196688956\
965108760628729574590889201702386720740106024538941519547393281424662231268923\
626502720564026430217769031895555206112711463146717038915773390065452869232720\
808111578757374991035324446693616535175221246886608059397380546894867556025887\
068710308118989220242174952934582195353009915613553607315909567346990699248742\
680019538217524621053498627010613215907572602408043008278683562931983842710521\
983547275117642330279958926872730531183558056875276124091974244476335680956874\
844410454670283523651415276562700804363097477453767809820873498038498259924881\
067029775494953522829951654655985068742831762852085719613937978285057790149962\
321392204623415241682380388944662426737300189654337647650363412518285095120888\
648562947143987795665592807491648962562185926715414692176768396054500821642162\
605610642314443579823069196578047057471484600729681823722879775604960891581786\
867293632379024157920472836469702103139751800978415985500070553649387532125749\
616748758725832599259576150743391862284379883013460445408808178096854911945411\
934702689650599198604109976532111965810629665500511618365170620292880877609149\
846167316442686419708923064846305675457388720247601652577608529377210933584453\
871074027292591915246267623538179786930642153401316337011357356351110981418211\
296622107367262696156726748307752488744484167665737024004850839370255838591012\
266948358068391545479166016456914863052393597793244672558867174160485503871149\
031760755373219447283058221915580788075245369693274460174736052420586469686975\
770612186776197205874910451651427154954238539202325269751234954654630906132946\
005665072830987280338737351553752235631835702537006494092638080317374634854036\
114660004846876242310894723791650074517970524862846727663375517303687368385644\
037049806617909200831710788210498183315526148505373540750351082239392474456301\
096920422788447371696889509111857369268903366597185225377703296220167081065518\
126758009408525150684775792191389321380928696119531220905038018107658748836831\
788278142527862618796676068219770390932600672961512755712527864370698983544440\
961391737903545485180403973331374805235879109555830404815348045391878540382432\
369073043102740626417777626573010347033840211296690848180461624964873947345844\
121553025815222149945822249941941954725641031750211442280865230280221342409319\
393272767819599060811259862396733945898961907167977778025951163147757626402858\
826251481582164399441350619608117589046195115853908261335496038803237135222451\
696811805975121895900285917973908665244952804078271302700453774372678555325048\
503974637573946460984085658930184822341614986583150346608218622360580194811455\
490351547426626606129502687840975477981407268239569314724876098280345081189383\
404096153431486301124867646531547875845494652222753187735608908350438370811208\
824417599385864663093970481172530040203058134090447450511563770541035014166861\
912485252694933482978510181114723298740453961275402222190958440508723066232688\
884970422345670001194975185979649409914897138536227945887407609904328542281277\
305818304024945108706336986946867400894810975397100908494768304107115295506388\
876524905456599942607738863473945525114489720361047937572544723966023547748127\
494160698351013147640236419491461059805563757044651556671236525682827015744528\
476022078175397233716409698626492055766876156445774464466492547734672972555705\
388285907892317597067686398249662945556019387315271036272012429312017642522464\
480318195446833376399461313836144570416088834222537155878358070161156027177541\
424723331527813566940098980044458238998420064074895892389238927522891473294553\
124042477552083805237951012393843585877545499900127206828665999857909842930384\
600732962384262907972182333727476694640152692048814304227394388383869880723650\
340088095245127260013615257041577497895464274592866962164154275190720789657656\
762047087629102592988877128340580613171820688795096273552308022803665885309302\
704619400614464491862785664244942081621020383276111696224421386397311571301189\
918531699151581650258342812848741492753605073550149275164965568949868814457828\
072415400901161769365898628113745927903225784890933976881608670857002995345721\
579420980997220532145751427154112209398869874562801165332079254551969851910384\
281572683512010923679952429068679954568308388593013667218521135364172442283704\
920603648154449717799886187390619701265066843706404251244599519090062260821798\
454151398740861561892465930844027470147101672547160166860173976919976620111199\
893015535406281778132823867987398831854809365141752690405027399232695322939310\
360456984252059471087760223210167746792793562530768337722069298099521332754934\
107640682936962565380979829922150200761906567133233307191753110953769674314458\
270474521918565656173056185321660425946455385616883759934532767382788781222315\
372811134173554517073553208276044077452544230785453748112596654635574596043270\
368542157386962244479609259367500830989140006853836358817787486427106882578787\
407992834182519771408422304894979155179876782746847540849289938647634983917539\
244593293129138080738765005052200666662727343844540498968011834325534999762501\
192176787558098067233241678261782570891163017980881955837910754011805096216010\
930804225701805492976467841153876914307088247531217231379403723659287710434554\
469626659999262339332986411371001268040811602769694022871365072981064452520165\
517338604686504062129245789271472274267638614268236764085164119476626514371013\
938556806427007782965968048607751794922121562917386716354649889853835751532497\
431583541399132213650515513841090309027554332364412022530077042821114714191814\
757096183313782294342072543410315558281866932838668366072691638369677932010214\
202904681337049153438059246547114970835401227241006503949742164188669227447368\
995062528945027771898946913296346758587926423521163354647468642605485613157784\
036114314902695442750564803847888794329565560484433918406020270451468278242315\
140650702210485195920723120049337176738352370930885652643448419467734538241329\
688543063024778255435028195957175433268735831728279337741010263471725258000551\
089980879204274477838536427497206543092247960572140033066159793981569706136609\
839640552028766999172254724020639606096429945427059154600073536731549880773908\
300158133516035730111114109280154122806666705878555092703338500983115676285161\
649242550929283039087709889349460723490286585602054220670371568046350038260527\
637108239865979318483093676416563607907066052334341113779312161202058809514614\
377394768353883950472129452834986548086483788501946767694562326701998713318455\
453483736084512767180056787542358871951058956527978045378344846504681469516775\
381369518451030832390374965716214330796386015448161449552393511121218944302382\
695405786011646737366479565206587250815927530571313438356992004899961804325495\
020521955502061792779930564245836658721675351928175033449923918332562361626502\
081490355786124405183440403815991358271738433734045297449996405991865666415356\
124243080016261793375092142965808828322195705784317169794628455133096838246000\
369899618059298795066037607124327255975365088203863609588090400380017604750786\
697443325877232154383259983998643950114495415077009728226536958394380850912841\
104162909663701274249881761634410166742340050683616764823271038894223948202530\
869672229252434075060265129885763587813750085100568868743282747187323242898477\
335425815041625895502385448906849676764892829707281158435116760776172604891355\
851098147895084298498360559365937105320205997904436973534016628764532063718869\
382189780157321907629981036125683876483872698536012944816073176186580668059683\
733894119826500873262426696002409088320762261178399915744021058427898450630360\
141993392836245540276835099897204218596209020162101565192235842119488202091237\
839275571856055416562054553471969786612350583489628212860820840349731199881077\
259045458633766108505095823850307512842596428597494715967542592403495586097964\
340196646672175723723707078518464663837067170299541698329886912472818768027381\
254962938987607223408465709509894320165487604793394679468513437326303922309331\
790687303169941800740480006872513659785795859947801994965234272868898871781351\
617155057783915871386404057895659182321370814005871380883652304716712718220060\
186088112572603398624035420675212769089210815522603293004441018906372365919571\
195303028824858684782564883005251812608103542135181224715840046275105924448705\
837095408353189752152361034204084507641376742347300588220343231604746330435062\
814232108294872409025947644118910322337404979474085782776220482618219514282179\
811243726766258468951951069986737402273230026026150597064215274602326999497006\
158235928282229783286840199729036537816816002884117306733244966283840324353650\
413975362055091052197490957998605957269413840242675559674863774293085831406648\
031844531532908153215494345828804429373556800527667018000947887335886091364949\
458385268927913655943428817418645559410296179299581260809706454746509023426184\
034501081240335390006107346941209783867162772161370836145151105007720117042140\
575102955114913702554533502068141165244769178458694354034118791350719472868333\
896624761011830170049726189561183989816053909200891172772452827329958680838010\
737813140018760672501269264546450976733747002367678201352356732426247888048234\
362900999633010976573057107450862132187796828074343989648355242714487573058303\
218024945210923199120417862983211064561898234504950543971618030395685126538014\
922516948784795547241863827862758232782129939782074286755471092498218244686147\
958081408355004668755962615790617175902192718697237845472411298557573179374795\
351829558429913369281405884804215715380746853113023354946272141844005632397445\
875377275180714660165706503537500007800054761003678636991113239858621322182246\
246434350103632239859670172899284252341131543432629303907359534291441393387428\
218721484186131279071626858266847205954664035651133279272928367042153333781564\
897878724347231657710811890588115922053413447767521297746355065511098018114547\
089217012441063492394924242267383494394078654658363868597002601991541683855861\
557896701272200232200316861954197028924757421666766801524808240221111561909829\
095288293422784064903953396720086499569654470752118461343409778577773642631658\
691698762749541886831332475145315900233544095171491408135927319114619200677579\
215856331076125470709339611644150880072729394563684925327185891551688147209601\
141540566400389210281186485459504119005580079283947161996760030187700072991661\
348781038991897992779330826033333833405791933860125992663543506471009126063462\
523857434635268474929790657800172876659682562194685410779874218445504710482511\
389936542799445932024438989851344256726693278613295048517020426704168104239887\
877662828350193125454951010870376696381206031276179962188931877783052045019481\
204742705204573212548733903930286680853928985514539518307016773725339156792769\
039073362485903433514761178705177976647101075024507681616557253954820094809110\
586317329891753118416036402195034635732195947558600832082926751237884955166725\
064922072060974120312931357435374521855454983025804156517986227801646893748172\
397133811236953637358110573939105369179739293431977518803252435258608082755374\
099972101540080046979927943422345447689707580313149065499764572719969962803326\
920908915583817603213989264488023769100827420906680800437399250454122368497194\
097746704673167378878520494165644737071325437283139540962318133764738488941218\
277568760582754721153484064111928660919806142282295524907588525871140721341401\
635238119989127477891313975746828093424728231102189843007024439996429064445084\
478802766865394635783597863301435743073855224801180578551630030594803517023052\
917619376680448974551900622981417402254687938598091422858374494142946684056784\
478629968730373668633975101391007984558831971893984042058517831262556099075164\
256666091448576606836793744806529724037099333962928343483326610413687134472596\
294417153661683256929874607519349004367548712450125173882289594264322061718377\
059516656649038896234159034283659246762389215431621094739650098692570895075041\
141578197189457994851682923997676852605909408476925555603209473017988926182294\
738346886884787742147478211246290050487616242097572295178607339598869641860539\
956912742611053799648648272882147298654479372705114310364153995043024924890389\
871904738048121737057256637134651471541312220563195699529710744845423257854093\
196070374806243288730574037414313238215835562671427568755755136182019176330108\
628379725855115674172305047190608736162770832629644295804827975636308237643616\
154555406169800458196446706678102433478459880692484772748952982620451694370037\
112019129535311291971380175955779745321797068998107869799671161406472583557313\
852803781447946186458216347452039855897512317136407974683851455920414500521772\
122914466992786476520100365397889970941956779542290004143845487143488528556517\
630802992516764442476821864906215121917234256868516006058597808966236688320128\
396531227030746548182119994822538814300401681144503621167202444620482829677761\
601656378975763497955487255108091057813394203472774484748769898419218280856304\
164926029917623036263225044182962965215438562876070374218681400473863094501591\
091325421030325613511075755828734786562608093256450743463372334224085585816338\
537153069458782692020523950672724753690013980114964316594582971648686322048417\
952196424498327948806313464620108913932870531345561503788769211459272685051467\
713559958906322386507647782826901680360130617085698288633635339821664116613355\
480403703821003445838081505583034017971208224939095038566095855713953746347628\
324042175193426566863925591774337832554820703861056330126237628769817347282242\
509461531890702150820504218103977489407657214990832478528545951002467959739308\
411062725225415696493892368273581434607727598033462643125982788894418184917380\
268704496038867071864770831564787589117803543082013186565820343540734229283474\
557696514986839150397614126133607894809975591648249062551685536794824740509846\
496085681889172036998737579643980011652952702772372260193575557202326310147686\
928476263628518930484926909264098547249364818141283168938328312579566213598835\
544520667408958409231486257559110519622000503080204257370028996601241363556488\
028033999569465609588576321992603000468539755980287655583171070639975066604761\
486777635632261161271522426710967361840252910825524461538857766602779608089830\
283706877813984923812545171789875779067691651324603108755181479600121676201685\
543613887535111144646445965948986286850038429381677597961912729990459134396042\
836227821457438491080662673720398159683311458313277557371939647621394703694871\
344837965336720886507609494431067489386281016686080935487620406295314268367901\
622324344216250096191988652825018478075009309298961687893514404852784485210194\
972931491229336642838361095835911792669732105032865863719619130649857332086615\
243198917751756133072533690606289440140362467357916861241907679730721538960992\
609147780039218290966056780515742453948127051582786560861766280887675485282643\
534579297510910374324314804905099720134009387120996799226673274569721997573974\
983529556634445324345570326260278293136893889629676914900511179164157396415162\
234596241438799849972397210625910452426655628296014596790128617641535247864330\
478558149625711139560325150363183745061942587907329747990654033781293234354964\
770959941597021691810368147338333306415138771322151733984093817465683332375212\
452120426351494801795737064857482558812962411141464692661774781738601561556967\
768080635428081339262222680573586043957391627387714350848477018662653169748886\
473868243094196018928758912021387277096153848809506565320734420589849785682144\
810993443271437941292340729754793264761829620403614436411274652404369175428358\
566140595943326100913231448641642049764947955201717108651706981224160848217072\
171016494824798077491801666631807604571639525183860958271832720865705298255892\
664923127405067312348772034977998295609410636030516581681903848011147030423901\
820457583727316520859225399475109389001211221942666544590867792691371154950789\
666576676546096288277775199570554507297923666208523507816894340032047543740400\
762179909188135109499396694313427985992158062927042138267562143534059246720235\
020642585410968595512829598880167947485348827623226089882142602796694948833997\
353809115310261572752606151664675747231126731130456302101644275628278219148792\
466989753209783265292168258433047908547833654269758433077955719520001012078724\
019881349498443843676382704117421003695116901118016832699946612010086053209415\
790192889761397840351651115993464204441482768205455063418483061619799460270489\
648952438970258434171773190315330932147980542020896195125075929364901627814740\
773224772573220191350456805599978569277543054657879842859468408586784134114538\
241240720656755982648262576190303383417425184853854038470371006908765080853508\
640217621010156728291435673677110351164397836344042830234780735456691438177047\
450894587211787839154166530924726979519526863928233003716850678762078775481783\
910819732182904787993291396078874176833081865318199940659792678221322713459632\
471409529463076197396749984634936360975806725366155180785981453495358216014802\
602331762520150636639939135142877511535321241122515057065723115208537650284322\
101584061898257004704391718649072412089171456120249173004379934999420658663798\
578734606048061922811946433156292568671087969712349623640619373881121802073791\
598180109759080113272257843002501113788034957920439189928830051624292176003376\
410793371968133192067582991826078485247571177524201683493481941400539164639352\
182737104891500365804792597615834365135534943843191509214629308199501835916709\
425302654032980324967615843963471143532471437039221486178438282611386688552159\
846134450580330263691439417435599175378716668814004529689343519876527230084584\
655015656598952113011048528816939415686706351783192218559553050002986483254447\
747771995501650826588967139640889880567958066916065806094048513928010222769761\
561382608319076033245484652866146494294839667733008070732006751042625141429624\
471453687509706878506600593940265187786103276547028063257299061968975918873866\
723051101237949329259764957482625519592739447176400925561852118577244308889458\
931304570975272586707145565142360341819890315195457218862114917103453059657845\
082618680743649773583175770086475879964322744548950078096671196162151367695085\
308923361238666283481102939804607435534272724428104903280756767003377271120949\
128434487450813568822156033050438835175410814830375344342084122081683605813262\
345767754279316198604543050444851055580041167943376713205581470587272088253604\
731064967931847963735278844788520587318286600656334932560235908889835377725079\
702005054144021055946107207649244091363372278973994663975123411788366312509006\
141623227657028541048506797449812718146764308414103002375256537304952767275484\
545999787163325331050619024021518146810014651262851039759839412882369862113183\
152477649679577744191332394798552871653023199869802398398473198178817133310344\
339890837958000051319653452338339010909704447143479426502628574031518152035465\
072823118385198658029362135224379754319380198343291431250275776675431686988860\
286567701350037258969644586868341764738783906654442181923585773107870023191744\
542871416003026828372404946436034787690357332618811431010813218855279858973034\
505344033037227691514045318236187832171998898905508290896624197658559805783414\
287373064809852907821459411264949921965113612567773076994605802064072391808669\
002017569564175955272113593375897911604759823155872535644568257143746585668898\
203737054970452907158469737635558706092801201769780532935796783807950227922001\
052016768988732541083893192509071742888108107086232075510184800417696968262903\
923998393811623663847871308193201855592678658980709850229537394942175424696253\
547043954732413392476485210376117773112313850016187130471064778393248758500636\
199119677877532680713924689844038826593605108546523692226192724034991210383162\
262972411440835568680499807460483713592520753901701446937391640928648639190537\
573932945565367754356329489530854791973561811689434694434436430308714442549106\
098294828815811595635629933779473922097851104067216644803205310670913037594884\
345787343984737076537474047930809034382443397058305326958562998479383048081779\
750890193239788196447472813485486485639973679076903930252128591950959453303137\
975185298186626201176126095321392633918271825632758305911893721069157764383887\
227842285290091226125140805231508120272624773706671615372979623651717118309181\
715228052653759337375581282348642969322667847133869598876915809508115049936337\
356905900842892007054825254617689541647107780117586071432866240448305523642593\
775798552448696080726730590765024885140814761891799989629290795406069165098627\
507033091008866119931836534781106895005532321232310409943156697571284321105892\
729075626652983068346126881743502763445734873130812787853966825948045024450899\
453850626222815657206656259080710600907194741580643428961731315157060558113998\
960765684277239548120624654927922466441086739301705267840652247504105360432350\
868815254382188405781522951987895606499560698274532892273270385375845209270924\
294667346895933777896580676951285904490573991307948762539798998946853448670842\
763284764409804653488551209436064288937383710535155958795075103681999586009247\
940522051548807777499830613137902641282737157571061281736249783647450207227756\
195212674327358168549611969888258311261669505222402188114669306257495384708699\
586574599887892786847387198643837904804637462228161268712763451130947831661759\
970759508533257460284937400104364503455658044944295034531833812907850888333858\
378697710849820665102062795707669833445177934527180376911410207557477431542932\
903262953211497882620351598741254642288439527779549928956475434710589858515900\
550849005696903693994638054127440782720795881206109501826667505282910042864401\
159690915602602458721174560455109407684697973682748145979040455219048418011545\
663478335343808815341403723981788190775763064723383684807661718788752544407318\
658305011864756320301713983390078987542441102627774925945578726315160874870250\
480620381626062841567542997110084572360794368388317756971160717747601977362998\
608470922561241903344303868060751607783650278916662836093176759695530149368127\
979354666523938986549220821261327763789820294679958162439870593623917051175070\
504939244293712287520721004790036952035305417470268810031314275311744562464073\
545200130335154416116128453063638220620318271412034710573330570609561041999774\
412943789723336195293680711629464974174674606161944284195771506421244911540670\
731221384206414126967154566438915947177796949351958346843367832214130374310734\
291743734376354415907377380776833554545220416075583245001412712899741014947054\
886472434158991296092282986240745516058914963102100059587134719209797239836831\
280110175264318686111835170173586754064926579151374058216297242018837510297720\
276922807801732353658524866103735524636051974175871823490873819774519960413516\
046880860827255906104828222575767463581916629034390705475970348090440043043333\
174134614234541274567798725892324090915108730592024279001496737015134772151425\
714802387818972789099319232118851804003049762893873119886876339770569031907414\
517629750558295079055157128977260343546722251875194722777503478062988815802764\
088305858873211408993562565445263256262930428543993328255032950289369907770549\
029470796220083902932214441126573820895685434478522535584373126933754793765994\
306991005699082156031450819886494389488679597736520237763805269495558714542706\
585174744459646823526941056851933737004914486237606597957437429493137628495423\
747696298423620404069903223286254828223354201652282912884434215751270602021538\
317845218564841150669394364364463390329462869215001200331737223159459937024404\
665464401070954637786273667690456425997758603414233762759258536312643708973075\
795526996850313206909183067913265420306400314824559862392657597573177591286253\
089465412516622840716337014979026738432530161901013729788646954034256945572630\
522038762942326480649962381630855003126516805447885568199731089679575544268392\
204851309190268824033771201778639860463980025603720606929534601536735130093516\
649047599690415348442284064946435783962739597969701199959968970550071398026714\
315391239146116135818340680876053466725530504223979280965662210911118477896503\
351900312819308140470647874036715555211403407030398907223233915942351265297171\
121449159128746969645445570922804347338410138588742805072514932018367654986544\
261906876750303979569390242134374752592028444937070321982409508528743929412781\
595864754303669533654646504381229553856960187081463036000681022319353567758842\
217066271778752289539374973944984606881958992605790426632428181883297682570878\
308901643540546417536779752140149169816134993044910420427417299073183796985131\
245595860639919965966899610800504940072963970989595175746349501131523954054363\
842477157673057968997809351123101270006068315601347056168842081862105906584385\
468535226530994080955068645181964310455005698528640369722726449640722091072805\
065651759005363319425718826190168520911094446230493872762260130096650980181502\
161161893149917554486648451019396408924245351858629668535880723702520862903963\
751354424084167679610625407745354397187202203898292588150488174626321440193245\
912638467764538782149003218736052884016158146769340972434249669596797455129521\
524754130038382417596775542251548689034984675846106631594198812117971334525092\
753070140856142635030152714737087979022966356830017879902880841938939224918844\
891176700803803875888780169770111345334911534802106585087570025517363256882009\
759552748712253571825516978753150955690868985464837948430351870614923135734029\
631365279127615262306104314092395653522974932610180235741449400201075752924889\
589293245803518893483362322662110704722279517896431135332221513311128130269965\
705654236666071242736067583376783519101251099443703046290763466149644955996730\
321258522840068128863206013843915352393209115790604734139362973234927591808942\
336565260939483133648102906435863118308259658785978471502344907874767879956674\
248520510401039997571039402206306917347420208969917560052888987367593966293674\
017209821954183371282339328624773171964386256653145512699222367766777081986434\
967998415260451946404590163957896049279139291043490275683817268404705229814089\
067131491526250441754527101123578680129893682849339139638336607814229179455434\
491680970664913188453781202579621552321288398882948309602541545158301556456231\
328450317418576979979910789556567996082529165537586122338380700692195796394198\
374261176767691005073575014710412739177835963479441159241607409649189238641623\
144315098433799999574123860845568790650179660465904011900931064914597645508744\
169170936159780546717465899301704137539046825444198493069773963033614330040322\
637044138842456485319600091024035914860434195671889198585615655465775089014431\
777128616456862190012845946074216074295710458314004620124639011021019323688746\
231874639063905184609082474661222258683171698906360640254048935087506001935383\
235847779777771841566927112240044551677054193107303883694387978890462421759004\
666609104016362270064506716725632981356191695775856133339039827759965225099040\
387093278986221595494379970630648070964941770800581227055933091621184400463589\
378563243586419106154006820478790162140445787717398102952607173000991217971137\
542433348822666186718059345350035979406261016945589487985287382394619259273830\
058657862369012719296382659263937819596877763449192781383915273468510317128350\
116775412896963401763368803347613242500654794483551600242312566460801078670258\
603760993908004517562600906555541309840427357430050066877433135282061707299033\
893705322254670042058896404652393614283079185404169666783240709559587709423200\
941561095553433443491385438840861082486242898596197412565717042400678767123685\
935372271091567040606219434726020409941395472013175524491583459442749191929135\
023558344041872069743458860538337018589765720622546686389914740617138440911140\
542444892418125280587378444375990337027144323207852046419314755947583142919416\
971906297697904498821308019258759048587570102804989009276466743181741931273879\
879190866705646017414104518365473639211201831272642135299075075316741860411390\
850791740441726580092889664003508561829937247213684341314956929570401981300160\
608754127957466419031797332593924021074167670242353517422118285715161832976814\
222607309029636948713308807785556663239728334225270656507307251890309039502297\
514554508141344442816541436441049217506227064362861017571711204836658149705824\
635780075504562645374462805259328415678857985069010580452797562628572208304783\
543668131330317233238135264707525779523301528916639528654318999573174578016782\
672814602226403818995669379948424210982489742008823311140013410440951609308313\
090546550315955515473977480221462406761105271613757998628354396966578355245670\
079360497518767958500434785944448348747345525999632392588201044528789576723339\
110852081379948423471531895261281875108905121354654969246066557673451857177405\
113980900507493228007094056920655442879928976809138532882392312742649637907197\
997852490903046095850203281301188191897987538612770509831126796867211781006094\
288603341607408020448532441414457945472105469892916649981941599750811708399758\
552531253479307072377194823738336760655418502113337357535711604984088630696264\
989015115562982779223043334984493678391519856268504325200844798554629691262997\
883130293630646337045033155263752040473922415707285777998802963532890069840076\
781896975635402176619429442475372564984572265506787359093405723897937819146080\
319827113924804979411004922981431759499199310328089795747253376814606174543313\
264489248037013462642669263173424435742705177475650675563413336005917831376373\
759203890204265171691865422448413609465986362677543332217290972806772121812294\
501776642327167331091927523377242450590808589275655643441154844388895321327028\
560540600643524034011774394263831492694203667677312492334460461527922287117473\
732068207379504077538070248751397369748722080794183627245792671586058756843738\
256966015288450159363605799764879554666897963172764144582671409839302605844437\
311832195273578242992380530460979253217595294376466967178599565547975260104811\
160900192559877031603692890535464219693617900985472078551257259753257687803418\
428239419301167647127802001324490541706871940608748642509924900412437779902567\
236238752134487546868018057002677165904571741675093585374663278466147170222912\
775381648935814037542041316317966204626016830058358402780842508470610285632146\
763492164415596565399512441115272252098855763180788086283744439537336386628913\
943990459186935629799316913207431084912387826967081737983802760073283523713057\
038353881201921780745570539213125048219766934063942802345335096980545219196416\
496966420519223222933252249809906809438298608239338686773954452673632194440159\
865904066528670206510049409786713024508960506363114749789754318632737637932022\
795300108771768440261821800385909060770293459786409329695112338532614945655859\
677117544246194620867417898814347780270237891838654750736725070123164595421042\
303682530154992729230497065006887445529088936646551481938480563745544703197171\
864227209658706300498343665718303094585252856298925461326079017237462336013820\
894764047217671021078363530632839185289426309708352418426880666397245435194987\
459495272368823511064759383705313614945233262990060613544202079008007844359185\
142381095406246359288007491747232601428291506647356469491490753130404119487461\
275842517254229933765619132283441361596884512305097922908093477806100012024307\
933675460695671886784758902916716281510479109848199687950537574761034383928929\
818347559135337283428884922853939659501645942296849021635769846036566677068849\
790614937895866238978513950301955252071159479162430380571339104412351279771742\
589499718132089939724094576305043817654202377493729292366664085826356304701889\
428471366217962807794758141064720396869005733588378323839385156436769291095321\
263095302372341887763775951325585719886841563511434654449213461836258200177391\
119635659736209174802895107119119312161615049356614001989154067719147406045020\
084890078521044898407155872491318142412374531473909585928549192619551275281540\
455554894860530439518305516386529635114358554267895788433224703032239846296940\
370036386670597551896228216684947215516799401023726052761920617504560496637170\
762638459530053344438789944328543663014641420751502676529987148414838592420468\
435150528589264835412959996419063836222550061620298517908079995517161428927433\
221628069635121629029650503454559800242920380661131224998757487778145433349578\
136558008300458790545565523759643089947282941565846898062943112725975546930218\
879127310353002168642276336610318905110863359639860709747374195529341785078013\
653378687767911514738332525130023719102358758867980393855297049983218303899853\
337353315103458044340257304227586826097239834223150176408033273176226319675659\
897729718394229716522776196734085734441374759147793179333989243599405813960322\
813465924785587565505751594286116131767395528348150808518520715479514392667287\
510574413867697189020877761195924593592908638396962005768650996293038181454912\
807341809720403203633667664994439199362641452271450735037059076093857524400009\
474822971362377215926308360221391588559094614074069763012970865696906676244218\
618363552047279035331753093607797787984708023902185958744878960745237490562837\
474189310268062804817433813001982212777060921847008152523271459867234378543104\
978390436493058607645357560259838281625409849639983181129718814386395426544082\
800861930572917995688879881825724409230860777086263513136094630976774099702847\
276682966685429084540520229190030343224718982049938248060751638727945668940849\
736665162281336948828583395313505021705361118175021010169609373728821746838926\
180687188721171220320673364983128125457269276310564825879010685752080806339287\
513648175837581096955969933848419910626922411365611711295479677781238623934934\
140085470537845837828515123279873088409373572110045860365454494530186810732937\
611086797828280343661333397805386148635943716350087711931195598480218289926777\
976940913930849268923971610875162598136464279519116303391796129190017609532216\
557349110374712094579004186028992215511759156830362494716086505186322797429561\
365198303518971428760223750716059990468522702848242025700962993827914781801540\
664169179259696502306167496772478419474142009242977297138883251166552227303389\
644473052704902414772756471540923768066416528226112216605519035104953216953829\
995701741146510299848982516439056990939459868204985525831287644568389843421093\
658943105114075558384927893699740950138919882124799162098883924355873655545237\
536238906410726631365733868871501437667657439282983207346131403949526170953084\
489658005655846309523296318712451836616630427749852736202349067859155769362205\
347242611125326389143025289376673739262860646099166425839998746474341416395267\
773224693331340898922821352367160956282513492348592680407355181536071965673950\
270691353576343437674431172490845537767032666988414491148088848013249302584381\
770118785666357293539878114064658836941728387365708433757510447991235973659724\
344557427183847336205164098603931021959212112257203436510013963890649452967142\
056089086176982883163882838252297076581896118954572982581073394540172774978345\
406877641107780044074292966398079580266893129468908915006186184189218530416433\
221694927821339211827719021675202080596726274946300280538877794596218568307438\
429892564630240890633667606473897049687362677347143193464378269527837602861465\
838927893362323616036869658885994407170901438576500856237035707472881230042776\
474747037794632000554372747365847240261839025081850203994131095039708124812210\
776128324595639956407303784228294941790417991353653370609295358041284490195677\
174363265587334302844014814990754651032818138782109072143398374541509572180872\
332163931411848854048824761331564993540303113131971438856668338021766683608295\
032360405951367759271551656796802958597338036134406930781375730116130026579702\
426559178634319436264662301868725879630575563660782899695363498145223886600730\
147718791986416066143908057772551924487070829109767355499112006123175361847813\
176543955729503854529236536694133485621787892615474045615045230885311843897833\
507480699448020815830478029291395027421867886919801765554681814454430741911022\
927219318644407497903172599397713621809971117614689000137724070092348499633083\
203042973219675827894000846652350711551118348103201448352947448851886324133039\
606763958576623927274353864765533259261139160105897206949121604194384362769225\
020408360183481182715855343925553745823628255237262533143596996463666782559338\
210091759874444027185225129064251574535947961305271895994888478243531722562754\
131095998504427747535263888711892649770717055022010568232530711543895647583031\
225511628763968835143262728629815240755887995962098043946596889329519044901057\
419141998149858790000533489612069163111754682534858290076839537662641452052739\
360786513805722415068971855827765389521513585658976407301488111133738692458889\
098227602297339512441350751003872589482066478544539290551160492546556830179223\
635263775546268409049478003726847161026495088262069357484631643968978962700833\
763037430175619457389078848104243092855236310298355174517454466065297670819947\
432059951652915960087156521154612967354139573277516784434848645983391375848562\
505546017507922098835877193386013948967514833763802139034152904283626453763745\
808782815379047085445759676142103772361232961964022920228951469688114470582893\
098035700150410369484170547286922751970446946972920349519697662176641436203210\
987497172990814400037157392818915284083197422943733677477825870921871722529840\
693055569352258367862538776990371083298779795051691696299576070266248772561115\
321024522871797030937380056335405929310890187400495751330564575546864588192534\
437227170484110760458345052572429176844235610013945668245660428800047407292619\
165754409533650005445833313333486658197274927600124232382251718468930694085723\
246155423928138874220276616937979356634410450371155982367577143124912796231411\
501645288804409423900517346456378036293953277878016360441042759186420251677118\
235910812494784489548807258551257454960799569180129713172054038424909608736362\
135131097528620986224262418742435783767729126417918801376752003205633261892410\
186165130348102440068568086061104811294274090093752748578585868409229731577936\
688608619964429073615749053303451074679213921393573414693782678405331319923544\
330346071951552057006610011693010611464556489168050091450055613784940454369313\
485910618419330189545486385219860080820040286332226857792865947499006936075105\
780234742015035317737300836494989167289350909354212097520747272504366618800613\
349590930611407110464599244759717542401996540730654084169735239250415635500390\
264400292275155191086294136723600026941207127811308763653161522443351622669190\
123101713629501331698077009767031225923340995423527648984420891092439027564816\
170040721739272566024295837155710671685414187130035713102305447259377064542064\
373028381478419102186882184665671383261282637806975309886082906633039669846839\
624674768851145064913151861552462947924811159873110907977115298058809209285816\
227706527567771953931120357319433459343473372951899415721472276190367800430879\
590479992664242819620163009888371488450439801224462455602660408616133199723284\
978761593171268140040450561896686909847082394137085518132619963768897021241523\
137818733130015601121995657035414106535356384524396556426727217434505317089708\
620347654758674128146407197922805744695406849279599459045820901873176586616251\
787331296935726248763018274805306560029462418101514313186902408749384112421582\
150837307412833731003222668395769073506988176827548481773049953913103184653278\
383865626717476001806278875804925400887840392798564649645155278927345020015410\
031319050962710809628895237689828726513914081945116719591666318188533731279822\
794780963841863308123249343682732708847168484082306510680498401989966141848682\
192923712432262932844248302361017983910042699040774479919083761021111239606725\
071929979313651770673164504798623225519797029925665315101596604596690150887068\
882982527286405989514250476556464386139713909302025719458558252713927198113277\
588869554462920605202687675221367966827468775874528760778634491382699563480082\
544144131825347204948014212654329829678466860543779061338910206076538974678379\
909041982264282917135698004347246669699301575114953715204374031918107954868943\
240622909458623262452209667574495285660164657873688424654026560457697329001295\
837874201711510057426597492533286825866257024583781152182201277576078722787536\
254417678516818491979949497649100036934909550819450205563811224964796766249650\
785802327123689446228669796319715390249901099117672053296592010243274158366462\
851035194005414571907148638824694469038224568838850078244103925016359715374849\
056945245605312540379176033101653477500199864958058355366142071699741173310552\
540420552110773185810458946104627355807094714668352878352224424395195109596480\
193399728225441237291197533523339788200500320948307780662833646063246671001800\
870666288977157613180394453085177859979679161756236424579913187479952951873675\
602067243360786278316446550471333425577456220329705837065208461481461803279556\
572311289137915061078782367241706315742790860275826804832820482530595944865355\
305335573608943668378778877908835773316581566564046333631178965577553867451359\
654743792882443277617766529977537884432122626758789612663833068438490058005776\
137309460432457331415978761655537226301616423353451002374635368298942478242558\
064807664336180523774156314037893371269990081154608408142405869284464087423891\
245775193664669946373591584411931779500858480652805204513861789723299109646117\
709762971698805474148640403588839279500405680966882682526783325875358351600505\
794585314848377702967618326360649136605647118508049163591118168057356862567675\
748362796259542314440842686944417808465459001098300832470127327673251862965281\
011987566742512371854719174196446109963814369225276487686524296433284880267104\
880448880155910644769829183364432563837983478922499242473473474925585572931518\
611034534137335672274625782767187551285229615719350186325172175999942277944125\
127694916659641176453311307678394358755701511268339788077823089327672921967390\
656501679098849598999718362018377246697916468158884004015083264133901702440286\
390700883106649068349767628800880971315772643341647052515364717730661392722405\
632571001397299899095593747730559636348560061598496125351831074504282805991011\
356152764613718732307405486443870951037623912931744139267996447473236182136331\
185858040699365837776065584149533283266028778546968943002292685310193430198737\
058717358218098006693891250766257084746595062899184683469499119620505628810062\
352434005024075121256597621835683455225766840491652515707584146144132895209700\
930687290227163705638590610592169694573513122969929258356753188344521095375701\
735632618166442459183071917325928053735184818309872294562621725404441898640397\
503845136061110062107180886892905388556538032123197766450079788089229139071971\
832155337660714688158886146659370802181184864094912441578015869647372390959585\
803117354939639342323981218838583222690622730436915479647732903620310231584622\
821186608285896081690940900061896442134617344682521433863060864107649130309630\
386061561226947756727056616419832266128295594054185267009938944181452669981512\
196539671905138431353655032131380682424517348894759250312419248417525574038182\
351139026163553709368646884710152598668200629666043326715884702846725282736751\
363691589349857215149576969573937931293333878685870155864384721219088131194713\
370873382327500056239923744771721034792168999587001504698058956236518854268293\
985666712723058331747394679893879179844757263966997256515093350494496239329894\
118380951152202738593619916208931559373521319380127029848188296824569246640158\
910245224083340735294723767660187190835662573439468354704836224454619937129219\
945521607705226537983475106667694632555115664949116807052305281730869088268238\
012941254181467305845934358127343340746347109810169733784511370003614666147779\
737566767622118782539423603706549237225664751927002508248888604062234098115451\
133342239017736841135991533723731846766340507156896681938103585480799073996134\
538888268575672435045918997400691044704111628786526792010616132471999844823715\
233499783637523014313513282695539529010864942058186043961590530582597540015734\
752997498272309538705772100053964188697048745289735915687927079944165810494426\
879390222782002617388424638959221139263874954114195943300270846714237068128137\
782298487438922580196067322955766462225607265008320437346368920697425731014887\
778328145970055062112529709439551348206970678092045789009005563599319303007467\
104257017918474679952016450985381510153969617354552778043062677579487710979913\
625936622349370648370598168419144090086928384175813696077026265263739842179275\
186558553400180249473884247950763593696251658159800549011079707269532448861374\
349938844083661468592090201387462929729093845395689309155247032545649484834255\
843539275002683980891951243857147278892288180047279791059416493716641756765094\
433746540972890144063281301891438633928063344349424002602288104716999725533939\
570764107067895059052416329022129176157072028133796306498598823224267102982642\
645482279327154804587649921241321268182767230903475595793031158482489483014173\
171934310466356199829342266084524197727430008947575190644364250704011573813177\
948095995339269155798840054782895365239563674165729648804634630573673711721580\
999020989445373325540664924455565704797720791458123045061888066934773161154921\
352859808111096403564201032065031387832981444308563872065793894070562327958687\
446085284069806283901283199404031753698172910119302742164874460186196321594468\
453807557098722129647584261058043710144144891074881337667213835454142478713666\
653871820712848476170700280230771398620015232852846749805171600941770084830607\
816307406741291585704585798091435416092906134945970968892571056791005567529007\
475043799463382111921199900912215396556317263329873593583866650018970210376810\
565539125811274256503658921429101919356774007966612713823071408188284186493254\
567005047890235799834629665205390345267229736797112229647576384279533707030794\
156328931174663489962869105186047227268887787587979536548113309718525774883625\
499507808962383116823946505116854708626136402178204452762262185094687714584666\
765889994793710284570278582886494557819210247088409805488404942892027586325135\
120327683691655093337575687742311036161066838321580802564333464542717220249562\
180605935860577836839825461822364498335419919081817549239621687105280495142246\
375891201136159799843803455389874368637941643003051303788958312792484549868399\
065860064078993352812785194098401671972972706993221339071842095517824752068026\
846361653977165123457434030443246614781771199610855372824309171126351950119153\
810332261700960781979229460355260187876692362124863624885129035442839737923251\
389555064014239130766546753811452440247068376528064142487208913451379638599944\
935160867710746014327477238510284749466636334619417230160773629762889772512830\
025808468772653015168202925087300134621992315653871990410605507419303633901844\
423978744233849982606967605702053536845646427272703489439236648459002459794947\
394860416671133571702812092268052781568833531326433175902994653857485218471097\
204771824805672156192313199662763782820670627977864382255808727403553887557637\
225829990506735915414714947437264983978705766331150533421161217453408965415215\
549774624788862911830352604036873282202507089353084352345808150719569588924126\
052875718396496305507662860091116726175300728173888458812373598537269299262642\
666002172976904093229166457800802861573105013834059960521518020233746749329410\
957691399996766385217537464885072146422768364860918319733236392159249039000696\
788812101129746358373405258687854457022214620873685872796641453017626335415588\
794059073212225394670737826546756081074649604180433957953872113306464679928612\
294857139338563297616178508911558276611979023379998663577047496379682239935095\
795450820550511189303477935702443035283044283470241059046122468081137539970742\
874343512072417982710008293319137141928877140989863705462711361421706031603887\
715873410756266034626034693205757463632653061205961474109678643663281284892462\
172769906044003564831372701718432611076286907062962876782483372521816784952087\
018738888352668188068856155382102917938468812597592238717575687377663652172791\
829359888912481290484999654764459655545951531923019867342143962690524533746344\
986037179272054279681688929555879457553413146588128331024557479280502008666957\
169395778015341439067707468844437199722947314209624309846450531853965219060267\
110060566217145056523961676291582141003930733389291862567033371447241709240794\
482208195793496981155249255732540880883164819519948492518859797181791650718864\
975353694319576366026242617229242548005605957217481535593409253828324333447779\
423450894659468295480156164008840235503732349654987866217107668010625102744723\
405477738722823370632442234657130998335356361790451296645359207727938793927009\
546601461050918027326975551357136549094051709869143338343735386223956625316705\
081322123467368781442761854788305850058107851555678807693973242122087306618262\
009083050415060798786720780086387483147104679622180439475755630990862442443828\
090707516360392136097396719349408198200518930846341841851377586942138597002519\
235721035235978147565628370064989358061942774783767367165686044012425353942546\
083747346222496082982724724021875373415104438842714089303290396631705985272743\
575722491980439640689369083307046069033634037611356692720080172060165258701662\
092465653183217835903483184668496336231773544630393379348923795838233801483524\
662070768884177564682572717136191483552894403611579624682534709995778541481648\
466735735611338031920658221354967829629458379489925909065715085858992403687772\
470956022520603041059454722357343076199202003870342440222349094967180951194798\
118123176621613281265741888792671780402385780055985292325615688246765163590483\
405880044838458230241998417624203975028214420332378136469561291816090880705226\
927447850235794371561428549610330999701394772146061745007882475417006791781881\
337307355387867960101242192434173987328976322809867622937453437289981172593008\
222324624375985400183726608738326471207255449130643364499510019478254452554256\
119854446896338619233410886119023663625200616717734072684448767087078633992885\
187857488689069559520575608065535972362554866576806599730026961449979138639491\
376433439511781865616972457501195552713987666331024199364961593673423336765935\
189951082105085455865902404524395014958657097516880177298008199222597252891615\
283264328713301912072026225055993021055200593642720672067436580819591983894686\
241507538027516566228260425584487236963423152737049647360124729374705823518946\
377728760858627139523599906922325870359910709275360771787312754815094035127013\
817079487040027946364336884277169240128264044475383002168060555973991115327567\
430425079168966493653461066490303392645479826245075275297035511702938954939260\
502611673280508063619113504150387225535480524950307259220832129916769939385789\
605219190402265932968932015280538558488326767365756858379942868554314884845987\
804319937107848408933741977908003386369665963270004800753410733130286958286013\
592876613508856941307268952706221194446570901350002850781700817329693606994478\
080116508997746983832753354462231178900414244561256592361906713778221883099012\
620503871386374611075471382433334260661119112499604311974873003557846753855809\
319405365641438724087159307028002233620240342092669248410365413924603252815139\
106025806900867924694784641513774253049081133374859256590325210843787058369018\
030593385329700109696000874250448141845892598569653455698082723712762554004837\
927076410170208700067585244432577526457903618268036052623878996687562686845758\
711349482617027872642077405327791783966059302468053761252878362242163181476420\
476433345658692429156194617414792930326727453319879627590510582556439064127960\
599605162941055835770035365632428567139724330935998617848544097181817255447779\
140932095918405016499843861280737887188167547887565056631963197673047058648946\
240459492697664532851091987443373512156644888145132509782997998568283018302927\
181265875799749152594214260663844934761823669436130100077834745045443839405946\
382531641746962167963754039491521160083553404587300703416744768853863537241759\
119191257302962875769986698306028450551254255778130491965735370810975388980514\
498281958517209632887924975966878585576268728363857714282335234665679589269485\
489195448742419522285402758101327257258848460465495185162225272148589697272632\
895152661007419195971783288365945597685705772628478559544883724075791628836314\
849064779145534872657558501119422648699624391090095948421950501182854570218987\
410345718389817904863646490829677731508367769973355150741700812202580538852451\
953639834531876177812318292338451614920189467872021748024528159190124225586516\
987472590215507624974912267376594563307616602119434840323979914407024881734343\
302927257109286573898942406495618109097976549851184247711339007288092990163018\
694114212611703437224966747668259888183377748915300135800231460242604720552757\
993198994096431611442985283161148698973174864230826264934163168452780162228694\
521765248789069955609915109601587941691038845956359668529361259912457292837693\
574949960006374540510293312523537194211565013315475373628090714281577318511859\
276331001448478115773051572774116363217629955597106437427871640408298307104630\
541915599371481539161255478112643743890397452120735757677775074211505082981008\
573752383518383575399332029759891578248805041207059046440732276884830874353451\
226454706269409754445136975725708915057302324257356727210851684706739011137210\
182805804603224791660073832691454159319829243254337464860496339653422481729383\
254751114037593843778055810026790235933847989586548607874194141688407304341734\
969042406917428958291133881573943227710156196247763551902402171274686278247219\
799676266290091917695564381053856926401859147616695431940776934896555906031303\
415790944551975602966248754548790911175326993709371263806722567514630607402334\
459831482057807785525381693436480535680794520453868887221458052022813716526982\
011625061657297379748075002972339219097501220494749417006593929672960287387671\
952225506308643850360228641843766240091747190328339083995367474686131010932754\
508537010324881645635754895586036799189361129787619083567373122748237818270185\
310642630961347248714360549318903770261332912020741185702039654923368590863272\
900347872223765989418631895233975752644826232284678147416783941758787792841341\
122301988055483719196620859931129697830338865167585446227913405384476083942355\
534490331633000124757996527616852631945329309596273131467261926618198321945664\
800489127240421657304136383304222664897851556264565532197114472973260582132148\
615280100972768015104029896520206386068600459816142852374999120852093472923079\
773503015339059776478342890747487781517348157362688287288473096086418866453032\
947600753309358538027704926007328843294119520864829711317593752534438895881425\
554838517329528360113779153290113357598117475908082955904750657658456860498951\
986993050662506017097078329876063046816009521097297787513601863205458955781800\
595875717191172323509157871375153991255150526069594760593315763509091797733208\
336136807194551564074953303571884225636931711834397325160573650377473214535005\
635956382624749363822470583684752142607279199552510745513042443383364054939700\
333371348800299785946575449427651830341211197021029987336199117764793004764932\
649152190991777236255805271272577992841862212722025947295783642415695183890426\
186293194985023980882790182277086708707193539801835763828047217627026149024918\
463402523612956451260017975449613122087284837388331938574020189082817678502985\
052621563352750833939410145554721256376368546407909464765381655080500179673737\
431409908947484169143006508118210399009419171429055442874348691778082841271632\
833493337387601898051923823637302197650070299199840953953640819293935448443378\
672525707772959596138710071579214721837075804150054413498600492907499698937903\
488102082792506930057423601746771263982504447987947755138368875388820775721206\
353195865003008391065447149075492797115572184609015539457332518638981285824687\
769598008274176555499255652637871847498870632914943908030741726036758968025487\
183739999619682932661224121706771339713788092520170262301471782080063916213598\
205297385505558209594033326470891561955522356638062641257479134638253749259912\
880143126144362011718100610472258584185002863415621156884418566202827276600655\
362434165318617270547046018295233295364896057333074530647300773945817405562218\
010296586954554296232136268085193584500258735730586665195617446371811134477563\
610293164229299977128484739924791499752469757461676524013339887118993502919950\
725940354177678878427586317338620212314331223245499952102264641917059020637215\
636487044104269833633331382169588483198120936936835919041149316234787276366275\
921545684107024174052979256942981914981740639527144786905118423433719559261231\
919375790621178580909320588479483630579561215601056518207521648952936475049978\
364259687880476092599970186536111131360484481043431372673271493251764067795912\
827041809284099302148095745786634937792271213755371254949836461321910547901195\
080548163778231755318805404834474568234829552821306383035954647975531338603713\
165764078334088593594573767196740862525180978181788036986011661388347129991537\
711238341545287404899564690282603006885427634518962357355461815822221407196786\
684310268265573811519493713161823492530436547791887277303957729166760359890682\
984979275326445793020562500419821581783367975832458201670334401637519436130793\
606687706059615507458187300740588554185707771293765395461112355201773745267536\
502771236010262637114085024937545199723881184972004852954076053757550486334985\
176039343403658952960860734480553122955335688214567118057604758841942058349633\
845421653770202262887320328142627192419113469807153506236406048801061017613964\
306550666466714597747927512750131334659676463960699440570311860560878122806328\
967816576537275062967283576263974828384647295018917985604824919850079916092323\
997667196476783301263846508088042831110985025546612968618556503500123610685297\
435664465619849209211012663758311954624011266194893008382843865999999283333794\
876598213558839333097596539435168747702542038052033733823178938782825430477368\
592737723574788865668587360925686910563774468511315594786736516484921786038920\
469205739213739659762934266179938759886105571384739015869538001440033773942596\
352486926368960908705395262510961272908873767982224107476784882990262592141720\
651354432719916459983330333820509702367037918912977711390002179646455681701380\
894182584629598768936359243937980370126043700019545375320947585656686261869137\
769323655538553373664018114260401171263453205372512446880839250455380642547662\
809345060391086151194883142464773935945361134626325397903053106155154047570431\
835806988891168508827835754062604700813348942775641988110461503391081966974360\
385607326708715608776658858910608960720874715826970169056266871992681584833517\
410241095060497613332210304683200931629481966641786641089259633540386292413015\
247640415195327618247072352789772769577454314914572040541799531857883749810850\
505715767111058158521670552201100240312147171579846458543324890734109876109929\
564967615654471880624428493371942227474044983798596475584133489410742608333615\
212077501929801512946567208421155076388164598896617646436976032892432451053029\
825051224268070373121280839351220225540841513202947999805751376864933655676167\
849947133492695625773907848371824828315567929819728778686290363105606858009907\
222402153876614713644801965614811245388627165423342887561979792048557301929997\
500417588186220355084352693742241834775423575605346725549561541898838178560292\
676908506131365952880391735556024568797177231060321745760497595023225629419637\
906309379558104490958762135916778658295393030657653092307043986757062576067142\
706385260554759595253213047800632610710768083216210014579464097769268006913907\
193727253192285262742895738950413768547745929603359227262526666835217070318949\
628272456528458241425460630372804077747979885412946353979992464746913355243372\
318304535384890808089315251813576848527285891732859174645036561200688294705032\
047169041537686780019293050636695778550885505423698901222980877912670610523562\
973580602220182943158073555219093758657747362647369928888127978293339349986977\
352324137599315546363119298207065372747860725899731206930627210401572394384260\
875603932638706392902219030858909877722019855938537268814793228829223698259046\
430933978816522998597111438879191681125563749831316110931906115632552892612058\
651598514939761270556240876767140605906275936789728632046558940753192715912951\
170184437557585352369782060346030811140856162220429042890528709348719387536681\
994211967871603447511656321704404160535134139017313668946388738555313863682433\
699759859706164570626704130459126437284989148356890455609093481011580923180730\
184599840879909046157493109861431331591978406063568318841950570759621032685084\
075395110460713677431506318655681175045684291098593609486346869593672277580773\
060728837988142468100342685874419533203422259222591131568718551298843839977181\
848177575276528687274786799756095598144332697980232246925174800848043735402673\
868444648250945683719869661983308898587835257932328100478498000016592407290314\
660281505647241103452031576527657717145051080460305129759639033690487822708390\
133104005385149373537497295161348972263979021198896344486620188190295769295043\
464723057845265200580679906453900495542748739603331115133434232393928153928575\
524189254275336899367076736032707695340715397783176932998580029024738091222270\
247003014973214830993493324188082111825695862329465185756368975416357468959866\
026651728710637317821154407328308409582293717686280368564515915257032902756903\
685712988312781187473459607417310097884731562838649486193104350166181226630376\
959372676458853838094304945302303026801421097550250389072148424600933987543991\
538384213775459724640986873792660279416620470866328438766273660878272150035989\
277651707445477065383961960283431028523840913387237856397953682578837058304894\
726634813482131719088833963367241231536397295203799561405420265235573318226053\
603015161076727016136677534720210899524060190190731071671157213153131399108734\
604994855887930555732907486675692499177914777762752572153315305919154375764020\
855624311494453725459568097025647576424442309047407014493872009314855661267386\
418994254949313631047596189330349094993072843240900986604296477641606362128947\
695172656741692210412679197620262917558530596160588359815094381398881554647395\
390022108597871859240596478027678892392428047732324168011508809942907513006728\
614972737850416001553809727869101165381637602995600199875677105287434179648634\
948759022843450810248452324285061945646492828833802467453143600766539393253169\
069347153411102590915595098099960777108192404340081740190904995224169459367084\
155126335044683742354082912646538035494169538468719159478644821690719718827904\
537417589786565396354364174964211383323912726608538295677462642204374861375086\
965603814411544678174631824157801254897625802405672218165190255256466551041784\
031399315527349701282746407837967734310395750011676435012323921872173693956157\
256120962946586125817922599712293601560483252932466059000746753828911358876966\
050230432754644157727204135535343106923020990409588280284249254566092255047367\
866335359776701147547793789512216395039174883700606920832143131056511403216591\
497160545033152608756244303975120162704447566549744508291084491427532865125788\
432014337191619507424345854267127681102600799697732731091087404071388839859302\
056854770568128370032410609948808912037233751569167712944767701057362851752692\
267386733249041105761883634334373993174057361935369077705806991870011038755068\
258651233963419298473309667875732032904837005690335362168372869158682248493164\
586413099556128076135431583947979650364579844225293998032521346097286226953626\
724707628997177963276334614112070415414830530440196754581623598606346657273305\
740334246756825399885570038420395650977199541002683762829751197071569287780588\
231902617101475800897373783464992100430570761585953225073361087295702715074312\
297920313721103151205786945818242017418320565151175338128457998173296130009722\
859113082820909053314760119678185038367530347047000578748360997590909129630344\
182765505119842942611742125017453108837615277210320916233088335710208577216259\
509925298643641820689439656908564775124318290301835339510911467513718534246305\
851770744343216131691304544562072955779149889048547850294942518699230156420482\
367299678208543277081713993729713647285516236910280943949049809571114798735326\
336108615449092136210719578627182658984645459587009069249248820523435112868738\
626912529335695565624401533344756716240947811826571155954756699368423562499979\
227723332856784786245269498130382957671588368253903484616714968014138599194055\
597917917858281975784812372478022962734271327380701712131593454022544168614641\
620641854955622017580271717419329604030724285575914037487524125583648684782653\
057902112930150460093009791132893911020928422212628874397239879299987221712680\
244269570436408269175123947288580976631735219034774020783010825008230686748165\
992916214204378559690700839634317491570400704911133097023046876615857483135080\
144475992852020727860406246909862458183710566318254920666633928689416422316813\
978537417455898355023981413476275686616221186367561134540185061230145050641464\
766200254793727370169115091057005880583855287751553568346135550888143137449856\
363777369433473077922369202328195126019883348531930841391296921034511566461558\
171845160918653048971195380110248525749893158647233999267453725219148787799788\
807562673750638723780564697643526861306774761161564030889810722990061362029138\
553864683684245835443420724906526943131926363064557919103281746224652305086811\
453922379034699935761819228384117831112734266093171716054723027485870001047866\
059835368762042349093563146793544370070867604441608093430388964169122938462935\
021661100210761640546614532826133025098992955391927596299462782632632116565874\
319551733594278724799548287227810793149777110353425543816635050218200475598457\
194707642967827158772684836236111806592445159528291523018180897167227176349652\
283750680731317414453350933010558621571973367591051672048856745415728163217259\
397927018267765927879072697595865244447986278487669539491461017760577603607110\
750866034557555712962345406637758448773140658050218144414570121613889442942543\
012726143996039751548809684175388778709977105315689605779553635967007806998565\
011955361699581910918533374036619990661867745865365937828951586192168358385372\
055171819669900290622524429719647760765792120834997981483108425338006646056465\
462844105959758701053837837669513414411711576580152919723932831823741907241827\
055621142924812595008621934825451856553970125840647774590941610778984486679878\
798360359430670508264698506509650714242879841665013303364759597132945835690587\
596970583659840237526455951428415274309347600284805973744511548230400857745381\
944142354918783809292297831844140223844361123221688505624335418588432511544720\
643284962084563281194108270588318935428845436505484535633008842668569356364289\
020276692308486633611829914298726387988068299808612394976329510463591338269125\
251879466945089415396493327345497299448983629947399175474416471971731779872683\
943602401052166101498152655416254038545177952158400249587987974104952480047535\
581645441160796496743747671842211835815737673704896816576186466844739957457386\
389528495665189574478665977781950752258882987024789009640653185204742376952389\
335501218478599660074089650383859514701804072345776878385607580956164533921688\
489754259830599175376101323206354325344240488600003090822619003730634184868861\
438763736494178874012048260950512759863390509770242472529801758826392293870793\
673252211167057926441409085437401485304590250371696374774586071914054256943815\
611701443788844188830915922927192035841298716228668505324603894356500230734167\
083751864595368025275824052092374467657335127060160117034908068222327234121408\
469596673325161565758066590243101303206411537511687407756787406035925878861719\
736349367711142654304847081133303231866339855094943143974804840787647767832770\
534880159671410169844356697808454878051823199575640739788317702711356439242044\
520333007609764367969990040958549556201313584805875374947256934033090917283239\
418369219324915186872354773939212756117946640185118001380750102777217130642042\
532655536114323907882035094537707508434889230102069364851728497612938332579316\
328040240236622477073584885055861960214818950756889614649864710858464453732949\
655233372641883832621271178272406932265715707864175572896145338291644891865204\
955272952633002810498231098573394308160225669817111505642180307494361107813613\
896822048773651856670209197871094272276503470633850855008421170940405082569924\
575628282627813751332708052945523221608454057654378540071799081276883669537497\
522864067146153456490112693874267114036215138204775875494285657227853366584872\
908691749510102375874976607230169518573650905794918186915420495148189506331367\
232336001791924439759401641677198359451069342721729348371331527082522858781476\
449540661682660663281738590646817084809801956309540191002303038377210748322781\
390116820825823892779361395612062162133915786407904096277774306239458871168135\
932412443371094483087422994896572704969668919097678729567856837491826622807594\
707308763909429179184646728989350381665716032383413004822149073557310114756043\
910764230704997141717927224988936251185377184456536112435366803341583471099997\
812750459310729492016400404387368910848900002206589689495098835545433034480634\
690683626426926225260480503822296566585644546381725787202422393060316745016053\
977551655424603074325691453841406677000933481726253378578369549688018197142075\
830479025045449329434408065470696670920819668718095745182237903331168666010658\
854646162225136807558072817839904993820325403522221479127873573379240505817047\
934361116046575203509649920300943063385151557010396543615600425020917540836802\
510756962724054007061307391483997821549752696200677717461253751774740807704214\
694980724656692103138036559013914463193378524956076512895884703956836005240560\
377322664848897675986472222368704572600251314653302789490736683175428527930436\
416844913090148229779444145397767000504764545394419974425340090220649707950657\
786676256257904167879517193228216048427904222814574555552585011050511185320512\
824817044934085006511105859679661134805431579901002711637041462558845146953150\
161376530986346793513983064421721253914210484840180699555558933864698447097220\
729204416001744645744857898852191332549713302548209802199209468670551308850411\
232159894030606077640708862153022528396306106149844929747045128120643925095268\
393316301653540689292805651871572657874119402174780917279954187411811373735348\
232049240285444372854241447866735317203972840999210753385213768521899202754763\
751550880323820345141044903368786105511397455564453441335280589331495072415453\
650425368635876511464557763852861842225003735443386084194572025780836246705161\
354412193605212492654785579790112658159199332255421473361025220356400358279085\
755073052788354315946741793742649740740947948944779573166096230217323972884026\
016215508990745102462967183685916037890598163574392667278295029918179570280686\
365101245445154413181429654184524519788730520200288020433895520952126242506820\
736251646482968883150509597010002264372135348785826025335789842849926425984938\
269865559157455227722304478367004512926203259072844700707182646394299397105796\
504924027215130909020163225789293646620690791141890917095548585817099969398458\
241888623043463864685370946920190866442500142370490706054794401636362244842049\
461414540733407720561367537799471743464186961441635564294715919709591245729889\
392338150010412294395852881242903163818939118293640475674801320054837776422413\
083227337901680551345611878652637873908460298324844967776765267144609098427240\
922194420872905077724742271284919986275288409545361224426081223673026362416664\
636769565823405093478650114354522301721104318296746118127124772674755841834739\
182964689242439083589830410778612221646674139274580844109344670914076889081154\
804269904644766179037069131864316448729348116247531427094795121837118954308016\
061368674233086520685683926148047844566474945748323298371127834849457568184823\
573812967298602509445631002138707680490430110884104356065956329135513636595379\
057745086346584183793785502138550730660620323618920265343796554240913886678051\
764866023556868010244438199821740818683080632657934450136606958831163527659019\
637109122168302179943178178115975625693348118175901637045395488002543869195029\
394842963338788023245402686831159207714726609640814729742564135237707132655865\
672926093521313563269738633451392323794912727416044071653328372766636069920782\
898851581890074068178835600338395502491054421913694943840259289757680416479873\
887544190710100738825026002505293715712059882179975190525154813512892650703503\
129538879739519680714631297973939885522406771074781329661125142444094254620586\
560563864841176973765093222320058137389888598930223363080952193426522815067530\
677311683499200307497844953331739235628772498890110498291353809943234673870647\
929391838298473650917415993442241801360907021853768394823719725514881388163528\
250823780875617730371859331023769015518148956680264510669556676356270331637550\
428218469355260793128677171630081522970525013994404111099523758782168987072283\
241554043785949364881659710601941701117753081977960061020610758095418438226377\
174415893089344024548077635898598386460044819130632918212125220072806340890562\
731361562825142597291169096962116740824716314518917473600695966991423080878338\
378686590159867022321428691570141424807045897219105420047904207261838945659167\
576624337481652334310131977778750626481447896237968544918333932544522632823898\
399552143508647239988246182346783334120349696963465231029709800703127298113002\
987487588451556284431013156099089461587840584003836145430627502838434516836793\
994311551940672336880332618381301906515931686201918396364388118286970411649458\
769422113657698149517318604394476819223940067014551279282540565303246423524190\
837891152091652075345011477513376176131603034635001583043241198303450459731115\
480235291472675565285396154982517322187028118914755821925109751881474996270183\
201238664665544709627032211967352066825688348737596450725120796914516873963998\
729508929286150574509391835248986417115156337107720704371942989785258541065122\
020872198511520119682006685154950907756992161931680576122550841079956447357236\
211513844260591187852361111576674624616760589490884732188251188189165372941301\
847563650836229040968772707590630759517373446538123581672056998615449337441355\
115808285999797250700054256958448290421570329632969541837206112532778185078243\
532391872673797539010604218982133356800149176292763589739749151033610294485487\
554126594588308262730872974158135998785058970815642932415956520572243886015842\
078104750426281129044255263505482966134319834755788519322226718693036456672710\
264959940051166308663731727404454569497374874852110331775493646253806113344743\
108068326308466220393707731052442799951374501935266142352255141868055104005021\
438767785929901108592518674991313145000872583711669369824976994084161606242840\
630833289799716187050576519624049243165999515189664975475039001147398903189687\
832645578474537251804522359726877668762428507538166167924880008234090320348071\
465228902223080614965742704477221250266192371423562609291226018250583731811971\
039075175338577137807762131772452879479158317148432273147350683717788157985202\
303528005999986977666937008226708804204330427176103604436021195740531832397750\
825376243533599258744806695231314095082672974200827195918716169601534065457814\
757101243294703404989011724031456270700708589135551306594748305010926753310504\
767668510068727953244323689649387243491401886858021766970655158850256174152070\
315092726514587358857716690741189566762941681340578424067733886652984335828209\
920927960002560537316119574865172971711404358368302333102692447556349630182678\
573511105639749473357081758063298707668034213096682726128479506043615265442170\
363554065832901954741126321617941436862387824468108851006087982065719694731531\
688727655829254841006002628870847072641463698145467602306906484800019508915292\
088347520029483301183570714748604600323180366466301137834614810208010408241624\
643986285802753525405414811787725784498244012153580883263111576793883443994167\
425526718127068704857905001700188276611540259896645638226952840861257000003120\
151341462146274358818811375215962355090961869348253038196808508496757130802652\
210017544521504388244696353913545222948382275219397816100630815713947347571643\
310028857201156174719192266771954369283128266043960699254637219602914253777973\
983167443812080972188188312362266033870753267894253855916918297728332731261550\
841748495123598915798601931046302040883658123282833932828775274859787053647329\
515614114298532461034302555313019496430116703792865637669569854796374437404695\
144047524862747673802558967408496302725388581738320957777270442659676450234624\
195887257359338615526808120477513640278605967148993681237120118621234905481712\
924548154302380410365014875356745431118006045004261307876822158851442673029620\
840482261369497426208176099993500334461976884187903041595951539264111965464774\
820849603536188945761220485718626461432327497191880858417216502492556122848670\
444079452809182539144469876181366331943960646378224508161381778729282783976485\
911046345562271722217817692297411538678621460572420158898217549455474948636317\
672274364708980215462007325013023705721216266625220053039613516788310130085680\
167987713860080874414496085961030410411974853698311136710708247974741971708082\
430169166617707713127633313638154531589133752541683984084786431775066750394884\
663677721467921121853612236316721888038066106985937023790963186922402591191463\
458461497417121925501992547479600484600633459818646080115937447037316631953518\
908792056481072811877724020397440246021297391101349926966489897822336465536512\
949732934154340689469433738182663778605034749343327029083756180110549346901793\
394287399056637969763478106955289619876461898507220863458747577535586844687233\
572491790476548077510392373639618546675333495970891747050103139694380902363404\
579903070724852963285143088878668807424981635856363393141947625230661525205658\
963070371420915744678667376833515582244422637175552905493953288236668961533263\
314935839281282245849325405559410719507137997035637423400973161309864621393795\
308709471653612565080331578504457300009414139460014745254414038169209933604115\
965838005063036825456630806282500948802003418002145584175546348018765356776441\
151647710438436690085370611690503253031468354371335818092924007680509581888880\
313192299660498665119235533344271599513076908208526629677403102594730225917768\
201325910777315857844773120758864509339877561872662539383623575762515880562030\
923121386657807216261161812700375605344622634949838625256665242292344365139697\
208237825995762610809984937542273567512241092324479307242828029176235375338637\
087638735181552748211124480024591246405111511149966446261984339005792546353949\
622888924362325218640252481049059595540836502868935748905420009125338674343134\
073422651959981448876264483185527327749412287856130622582187812001162857352133\
808604365252012350790830150596324546828189224759891328716943598514226757325815\
092498212489905184659072782376396492321190420564384917255643187344162296200604\
471901611612786080691597050723383179902400106211647477584390237574678913169570\
118226462177028945711913641268587186863582493271746562706728075136743159750756\
577475837640633804494482066835217833213332789677638365744674620172883957236721\
109815401621327006816874023136619483325010446485646460364125317413333237960756\
729373305212297457933352566168558920043759625134203063834294306097158474095380\
197411549530010282165055959259459194853348227327155444873521365344729423949559\
645304788053179455862934189010777934902760221808499185141257165316513745087503\
140146677425197647620461669311332604538789645165729084386151944311401615142307\
022471639399010043790686410341623679074185064637682566038955033477348967311334\
313629428543148876031247313354196709800084526427401420976313695876225859100931\
112997379360013553352920748298536720427612698476400667669866105345520728721873\
818067910581629074870107673696521668734487874382771997327186492554248066842383\
302741069609185500711535489241744407943370423182545606838670242052339330580317\
306477885933229299655466216870571281806631581075969880379541902867105158968218\
399861722645652372721592127269985616688430859683960287171538526694147931732893\
545844953150218593008668911797136649492410539530174013607858891547134085003976\
803645381111572086129563947096455742708238731268749887309705900533731834616896\
934170930000086168027800589567415228443663002296526507013856265684358886297585\
892712289731225045019397539880195992958594667444885279234641037247334135338390\
259480773955176406741476465801453303755125878391520600273054598058280083415867\
508782021829802912417977315235385770640677116684521336866501090644399184664729\
143841522843559577805241786922134390262097035903035025270328397986765487111297\
164150657689153935090940421630029212623423471285210839542166491175188768489016\
016350794990872514594428409076951969961803771282792923306313946321509657936648\
852867185365898542823240463873382817848153020920308831569726734392558336432163\
206608988845807113627763999664957064813332430080443070692281796296832861316394\
983415817887142621966549905140449994905132275832902039733890285425751366407428\
377198389513758460356859331967636542297879597967568283998310181525423666598572\
785888868064851894597071620346737035168045678974108321020687769153105056687668\
773293349200238935057443695445160234297945780603067189315767951908958081128270\
486867856517949494253179898985455846351101662924150670161176221975729255773222\
299579570269514273134125870360213259374764294767723385539394960803494329630814\
590799338159431146102374364826090527489260911499781759924252339697286952524166\
873150092382041212854261361635324913662513786628744172873692777326685338999050\
914428805931696176825772855927778554889122488088669629022220090710531986727332\
035012560832761865468606900461217655114103453283127120443522951001679479031335\
053425355678386919223431249052133279436125690468033045406425931433485989352987\
882254953185742488103764137541484499829522748902796950898149864690761644389575\
234356650649798259415250324263255294411659694055989586650761215339929748641052\
808309887919712372876169729073029530158633809543194018202669104693139303526636\
283583219629341950220558215628115100827837021914223186157752894430740125120698\
223625704135116212793447479373750708585344904025189467769147420649139024731524\
047392237570356833125539744473636977591310167248556425227049855871329918475843\
821185152491532108660870938947746555890976815009091552453184371101679704394227\
200606593472786492376559469584717164290257863271834360438706061526799319925178\
071960601819978896189144132968153273553656553178278789877045484925656831540484\
336866358934827911537849960146294330178535918922268713560211563806688873602452\
428615177077111067128514397173946256684077707258589195186572002830268782748806\
462486258045143333445413308616378682332572962579538006735091060533965232557596\
824150482795196197494590510082179623656701477056459027478980181006309518889621\
379037693653372987268128208847887010630825541585042133410149582854277180694946\
338138816824519034448050492243551000331414292089422576831348019510419539564834\
283831689946997068936123952993364773605967379563016178031842261826199208163486\
761966027586644711808760325300708745350853575490894833166708013253482497118067\
652281580236070823339041428117022941352536003306330261124551686492275338976533\
327508837308735465914111897983419770812110908047137442356324199743619581423276\
740560044467491569494557871493554792225417642982230757366515960393956787295208\
307621299572905646333279790560873601966838068415216005340982287176820543030494\
829640714377958967789178526513442090147965699695860332176102839832232524209091\
874975695282502362444942356873501034701874199053002938096986090876149456728711\
268068719599242400646532771157004612346955067259630156672290905445568896694903\
638197937468465866534067955971944629775631645824343862403793489804730057570983\
951582161392144404188942268166553489541432820615539268199333813234143139879087\
206556441176100519791030792115944641248229869540395866978962963602248076632631\
118560938170907553225965817149254580950048642819307237586533109347410268460883\
510176552329792792588642969057722571390829119090719641708538459454433599189629\
618258137957661952533777093959309375586959791505854695906008160034355707922057\
284184858559961647715619063376850432936554547474297930822840340104214779400494\
818065457292244834261048015204893325978936823575947758489390796539861320097773\
887838900230664965067318652650568283958219625803380702097089887141462158565442\
623752543139384253212757340745331911629551711879136992703539172350814998662377\
944284188433457149292710333226630993271591811777984273789750147894332684972051\
543072375606399877296166872532347099071746405402407398765307649992827255557333\
971022446852281974406356741544233989522404042548339769553714731599039115199581\
609495985121037453659944243964558662189512073140201773556781853195745001591386\
191064089978693283136483900961375710627234780052282421184264275528316128586976\
015660464318335336103972337460199915388931573028588269160920494884541300922625\
883777140487965516015543593745110789847180884700960607789076220693684073784963\
360963425095847082572563368126700642910298222799915761939412305010665619324385\
291312270883071567471968202186272019484744691477509958737748660296312621123936\
262684323153391719356913789891966066712770973432280825198475061954062034493330\
703784267983799417718823847785730492398625585661163352861527957134353145248103\
916383517055077877222976239792084070887115866239919233193364955741099493754100\
667968801426502073106663321903729688246980408070541863178851938047827141225654\
179999425208472883282034768584897255257471819411411100417415667999996419753284\
032409331190631921047134670233785151816822986613438461795592228922727247929512\
697119023249639138044043995740500927120818613254294374946808034952740287866386\
243934171088576574565098594766948921845006405465630078576018633790396114271309\
657046386091763460387568116961674247700175701209622415995297606038534885700148\
140313700112802969454316372351125088021191385854262210568994899518301809141719\
061592636934736495307154175906667880722820148829198820515570776358329567219112\
203577042495168506188295308898891337742800926055748231190883191031319392993345\
592313428229082449525800523923120354684095918118037670041104124295206004167497\
605558227538402785572289944290970792203734798808673500170223540288707487241568\
779150621465248917332552477018448633360423791742749855343362819513765938627640\
328174263624814720096570576172733932197137016249943760722325613278742493777785\
892693303359640162133441364984027113913384274707577695437786011756649108619427\
071829174412426544459813637859434402043228658975463864348272914836757909061246\
208432343903919234433434967727735561114213200143944432273203813690857297957363\
267447789438657748903859180992598862969779258913747052857795461303205433036775\
220335508550526418524683519492934683524328602941689945753283821030700597142644\
539014090180299182333664744077884707202162306238560559758221344837729629959883\
211943413369458344614783596937028326827141048481452882905261664032814940818402\
437682798083149452046334013147931875223737780641449565756210605303373736314667\
499714281990742397055859815350366620904650584483582903706278821795170109549763\
960329104655406069264586302126874027033337628709008636077571723127591619507653\
913377632919582215602395743429344688712980846121802689710424341709083309910985\
888888352540859422769177682881207561794396901190756634524170061632008101418475\
332908113003093109758677073036318425452933453097666152917523663236564742169042\
280616975156053330599250791768250223646459995703377476108414750188599883026552\
040683225323910587244894132149204201507636619728900040605927204249627607199929\
997651568985047882085190980357331157415446555005241314901243989950767377911479\
714212766615553657000299806435223585594633402915196557447737257745255173684677\
241148228763726800196358448624260379864986575821308051254867753671804496187001\
591044738793424304187854617870457854366494428438503041164819266671849752526707\
365839930254006188659463004425934986421887367466779140102899219351903419847325\
760225853194848393382061146480703648997867086531405317348151432465185340056408\
530192899076360160091407670768748649878661447241643842625492285981679108129205\
218822915194474347041036192619822496886501832878812286552614944872433559864067\
055348866764216076996015355082328241827071561819631434310929628040525693801721\
006438745609358563665337540961520993684410900642345559496789925865271737498298\
037176386441554083399332473281309549009091169442676470996060513667034017441183\
036622504899102028224104498005306393922465176432819632004447864310710645181829\
249015547074663013665850277505079676669447092311169507428457926919864654796897\
698574424712025026199362769049186893853796977482413020560763043389224736757475\
383147134175467829749624477066540938198182940533952786677289838848282991142392\
773632457160143733752630480263249421654556576719767519347205464994425160098915\
085265375080025107560543265537727234223071969679452722466159738660217416890391\
227225471338259155322845251522669469728173031755253671085191135887654254435790\
412982410354317442327643432713706542099632157063640609687138452462456633526913\
012207892078038541203760206341195539453469466949309162079581991165930757419826\
929877866650365908258531021071701501844136752913848473908192235647086656219503\
198651985556903747671094714087613531548718159302781883820781394000869999670451\
740058902929472049512466807390951722430551693010480382781475446419377026942493\
272433681252024601571534861044060759056332037417883714753521439572777882746386\
184160872134325498236900483738218263840092510215599762824924148323911002469278\
925362538480776998752416827751579814453455921809123520162309235618726203561806\
371374370501246256812488635116226947566896813619087391386116827810422466418488\
137749163775823530717510933636515920783202850748781773294567957228802702925330\
393035629609655090811123459904500640983146260011339766003729813388131614498624\
607384004103873895233467701560476564767743753091353036027730649485481818157985\
558458713627831537680464822152484180500243604859204248195328836784036387899563\
193321631831778397529919375524219659608965065537394044608982289650830886050908\
902496512647211910969229403866059091378266635979448407832676362544382973826316\
123851271358831895110725809941985723942638965905949827824178092350475995807282\
287983383670661002041595376456908759360820905304646456054983510903778477908765\
197460005749378268569622689236564736896640023761421391404088530228530142292402\
293423918474607289182440158403161965703700511650374832836121305179276792029495\
844961075787312193123627924907087747049402772076686395128995958103791825552757\
370199035639855128240294793513430470149853316341488272414708705113722107326378\
167707957042443525424026587849103230994421850476571047629262215263799117735029\
455404147197973618939164136467958250810525362210095673087070599535110232822554\
068808184242461329055034112463682062595644292917574019200970574675178378709497\
383462000351520235096582205132349518812880974170138280072774927060738429578676\
545651223280696018735927938422502982394526545661537689095003761204162565183010\
735370039070291502047537142778943688059173203027118577899176666342571642695371\
669593318314176864699203932928731478065454996105563585878580355988938253256278\
427797527748695905829017843531703864196779140765048129809438387688116335995347\
497834963258404256655648835230230971526389610852632841399355173700557015792433\
145571339263506491269103287457433680168470883210198318057258996356417499479991\
411764640878309858738876012622439291525135127431631142409165957985442311940742\
639141995737008193686324395428889189215907335571177725165886954494464905156957\
324223604942910611398818787978145692300825681635089337688536087849150976140767\
272201765263270063040429882985323604100024040182990715058209534866786585491475\
231039176530439244445196651342514858865935725306187893317329084163403552216474\
104154352613758218181879127906528210805664458170081884621209532764188236193739\
371584541654500461376347557269167252476102557802111982212191616769247994681485\
102211083546869776047065079702326979179446640582545878412351378391598786857658\
017471735758400554500216991566248934327757053162343985746512112556697615957941\
655004309278395806436785620176109369534322744203237277829212641072792733153880\
542657187195231461476085124120711621453707052346098735285253526398555173759886\
215228325270623317177105764683442071121848969716263292124906141666241887604178\
683965335208134039931999745848516368676490886859104526807873062160502149585919\
378227149265333228609685365050398614037995783932359268091077890548555861088592\
428224225927744773651178182700198138853160730568033657967627178457774291699979\
193696296290729972681030497096970617503617848728049157145532340248970086518250\
571841390970899814432108632743076295346483010602917603173983162988558076971443\
395677290152947924948925730531036288092988571097742034339038942417749608496785\
311587575244607210626352217999579448328249649817968808777035604906974060975581\
511209516205013277091078039134611475100496986771957804672823682217588508555121\
873788238435502397135356476753128488751114558439441307561669080219404705402509\
256163887305799593571007095421524240238973866144984302696436156975938350358000\
865252066344823250934289128159468246881311076706480727153921338085490889321744\
630597885811274425344881319621755074539046922922607786828636587515668094475047\
862672273570769537148972648601362808015084422632659722114711872171544581877426\
158697079388695592310355347744844271027727918126541939125547604844318093436796\
646334042828332733741850629865499460012090566860910949503520844183899163403069\
633435199713722340451018393656283949057157411991738814206864491885648968163335\
519506600092884333252480673558417133749617150550934263718940232530354259938439\
418771874208814554354356164303489103148152057658869444782706449109953352128432\
519104912469054321738051067941859880544012894251232589909962312324053877398210\
144640584965597415865952320581449885251037693065497489313506032936074481814998\
982011182749277815201132404643038340009302231080547259597551216746706659229444\
385710758293568651598011790199480453582471723450301763989149022144948902160198\
684151758737919168266109838573845376528041890093375503234876758875765835081680\
848980488994613463846758358275894500466480260224707959607311234708701901229396\
384219925088768537111998543312937242948475788361151740833584375331090665942701\
325803295439815269206810548042155210247965114545433197115305740995493783836932\
001706564102399396852034151317330925138608298396103448375643485470945637411060\
456166683280263697605594107860053014854032125282532232725173232493557882265939\
595083733400950598453008448615493760830772932369780539020694898436522867928580\
781581080858064953263317305646816091785147125400088072257937135985919602032117\
698516618138205726664487971456050564764174273684189145067342456756416048290309\
818979175956744799704418481543956047023378435681267617715798737487316524458821\
001641061928767152951977309612579504013279951251230446071737653304434889758377\
502200674146778016973228005456734499425372413845823677596399572285545930783851\
914039504744136175891007414622681929769694988612865298551788024993319663563824\
838294192474319235584267635073198580303015343074861824378325227933579938356853\
781132755653864730024767430672375844555706643322396705837897501940110984584530\
312039741608149528633651224839511514265139521361994928047761456722848443128565\
961544973138278595330767369601494158637070362175658670104303586961145791714834\
458205482295971166547021136277282493540794629070601403720169035778923993263032\
726072545060040364605028380929610076000676210935821615488096827981804590876990\
755827971114967485871036597981779005599204619921086218833393864367675453578236\
336989088161935642182109559511009398375374775546586077865594330622484912789787\
545081355800095536186322477894557821672858215655834857416920557822343615032535\
519130694519600528949869404686558645288393239196124043995947790575543519058225\
812702468257321602699353123762173162563897324757116285960699970829394959814645\
468124291192894493216757893635877523658708312626129768952214037121333371373636\
570097496111467954738940216254866841463524981486568437129932566103690320984324\
524436374578928327453254010137873546087085784915339133018487965021588810929903\
714350114962119197243727036331890117992931009198972066058919499183852698678005\
809392309173781954298508516846681299233425946670761777675588620801261412614640\
886156063703867564612888143788618168840692105737310071471275560282552384610494\
287319949838014192749437510069479060959762757040742560527920403735132256437205\
320096902712617878841958243923433165252466820942546627297934824209502732777029\
535981564982473381806163938715477491975350493217917432066843409206201758084778\
305188754961244239520118964907047660186063573332139879373467391490808812351345\
513774071558682223545588457544686343337754031387130262607146224011717060240106\
522549119864684309641572194492446028281732525366703537230042424986606480531127\
501954356523225687382635156061797817749036314750495732032582722820879015800370\
394722078471144085353021626740506650512561669500573990832732506899521269752616\
060272524728366524467699546935694759472575668558118942585377725768098397685880\
649644185753871729087162366584295460006457283605313875813863629441043134629953\
741827762718530615919342612177132010310021145256576690287097455533109073858111\
289551403927166875224799849874991785025892689021482459578259051864454825308670\
960541524639164867481996956919637597196303980961058033546132789435981843508697\
452592000548590030372961683071957622685435364173118174509579933164776907746402\
740259052553880918629368604586739521133104685547484403817107250663691014557314\
738282505357057566139391755260695186896492503446866474914652615608550503791394\
202981994222199473543823178322303684713733024748559429826380406512984891971277\
312697939942446836813979719308945153130102282071760241132296391228061815709537\
618452022878633617842610353107341759203978291654370239534309225910850108056559\
187725277755480027001929461414415376722756825533214173720140747134788443436316\
759161438722559433049497719612338422266160489643962420532677970414308024116401\
196808910109206342903802792551569679532441619283486641083828605441536996436593\
196913777787005936030482022913026514592296134558029718272438419687672437084492\
636755070563340502683719944935473265265632066274380836995826335167607082354952\
985615834331195243922970039879106752683149442248758705971197501357168808077088\
016385784327781815130277868311685891946114301089589218392897133594139288856488\
545091637259398359742076715707460714975246059863989669574623157776860487972014\
803576795648458982197028876161231947013209559242144883555057627232344348426426\
011753223061822303565850804701101189919325257172054996292664129773504285043702\
622897235852816267563789630203898474355948061217387390668535438453039293129881\
938833041183423778361478059757505840662254133629335780931947819663929742350390\
848059320069789917678833968691319748258864747086279971313256137172730816533406\
139462568550590727545864506864656527768255534297214088338372788201028902932403\
132421020026106356642443696612083041768693220104899345155973211746630090867120\
083557242052922510628503029406692705805044006818192273514256346584354811095932\
073401274969490002544720797360379164669703195033832848355167676058310365452708\
576554980028239478223137188703965216420784140386320050168755928924424891643210\
796200313711074626069359189558182399883659153109700423581742946007359612474329\
057210929097629241041065662092350379244313926890303062203407870584752136844349\
814006643996828177728832830680829674748510726842285639503119239679399702278280\
832904039187942701256403173198670548090381729010938267703276181873338233299287\
354251791214674169684443841609957921734925475411516955036329294606721879838177\
984886836278290997984302172041753625222996727432571630803326267942700883466799\
312372277892804907269063435938633448273734946871808806945088824068997261658713\
437518740712443535899935749505763910550260234884831930109776287518455556142797\
284284876039387213049090254184884269775140116269376139550458568990473003987622\
256956952852270270070700223631278275647209189072366145338315064508660157166725\
030442531345730761424825299347355082009481110740264270328796135455899723876924\
388109759704444572797225595582148318579221168381920223766601470535503329905663\
899611395020035590039531431485319997339561100645962955582149616215804551632496\
152498462549133866615566130574710730660649476125925134739867240429470527139458\
700571144617743592489199997798539858915545801175707545841985707464441715735287\
088318155664906711613720524842124067568833334632630939467440591539281243468652\
741507636710833294679930796012132262362971922889061129439568658906746885822588\
883989165018835533075233198157903553586855155782065468218332159074291034746956\
756633924854152236453715003886217890263431378530266227448817999987385332341525\
005050759944529160103849242964737923144851996764003120426193110183900107455976\
932457439965196822111570172250000780185200769092799527481957223522490092455102\
100832943506047090382176234012352784838737727314319812353312167350741624784195\
463253446152082891223780469229085093862807526773733648916752751088671869074857\
315117987191127589737172122200697902686270153977033376235391685730235327780805\
150085259817532955508078778866728156509666916158391127216986993887591126886484\
854534528983845001720075317880961273477440300452416750323930383670617071013055\
043805871730675668335337453783036855999377590869513062184655285792359339174191\
712054179699872561324532665773975697093217056219380046148285749989375231643513\
474707365882098106057788654165147324898178700946301385079255922260729715226203\
881943748439143105940959925843344656576817396893261104598701003727543525116377\
441612272999941018619566051421596941206355131448597195452860809748682548745244\
590362604731380648393797344681866249700721554710601935002386483893437562276350\
127925849417326436623720232785535941949304500111524937011476346341575426409557\
473943069445635423620812122411763735769708677763593019356383644402889363050783\
332280366747439432486570798950852508727418326835271995157792652719876374997907\
620843894634721262036078308173814280478785549782897862274724417700301632550133\
970537241768281532351617690692199702556999620546424372653577547251024031299435\
538645948314701949401560266849430318378369365546618665662547082586074894839728\
251558916038553495064513847442211882756298620633135692134350535417532546229427\
385701851422160479791812391358185702336381354453571127711719432166046614310154\
741982155492904756210901895720806062349088029040678545667463724177248681190074\
206557848221929501065966835352086790875855344900927132510735378131123286004105\
291883550482825682124393180978579666414416419743846503597543167041838521459077\
943357731496484574214860854886745291314574589315184834205058542721160275207010\
530288121820442571850407971773519382644415143034000038965083547606952112614351\
514494096991515178332585172479894740524206100459840736384351138298293353702855\
164153281846898780435921758197601110371882601157152121989928035754608388740947\
375220406391233628982806618731953235529204014220009515480880706100745386563972\
589708030327985512405709675299487752503483811914844763960690239980085887510116\
129006008076911943810302609494806598476196904805932178521399828659016361397294\
733342452975784299759023288921228876174536434315837531437849574608874737342587\
958758219901935389814229423917941515613153979302514641379860895988767541369432\
304048702855541978092295804469899019290455890684659783833799449251271604941337\
790706486578589496757599405061755763293475680828922029111549186488201592146177\
654499211827254988676568962251706361483219514060308448688429474908171412276698\
952976652846718701072919337792928244353243138285206357061580769259282603222119\
402768779042924083653232321510235407534232109476053210171678047889604168510719\
739693991861879463461896797135467867224402905164443964782932669463584918661504\
011655032137958238846403545337067500146824508939635084079633883393164400215576\
294876554514962298494573570455639845828653901031203119955863297898599642742416\
545640221552693117618219340405280497700139581856995045062690832184422098580656\
036039665052040509265294491631122474122439854552334593973602158488959564576035\
601123947226002909110232358183270776031819289578931912004228297227192768010578\
564466733402031860657975998976736300451553441212227464921178419210429930233047\
545934081486957338855853118789257243599624701958104940834271300659716364375165\
746371024987053629169290060997979798208147147131128995085184920039864046146530\
250994914143403583695568842161518200066725398585320356707875344741018213449970\
395917873975349621147236777151075064434193206709784810139061194681429965659469\
499803015015050439499165819364340617547120060232533051005685661995398852109699\
179681030651566276114001239394412740504065600221709854777964424685874863196946\
189551035133391641195903971893876105442642302464412785966320148479552732274340\
928634620098405982453385763861519336443209833918195749629505252717041594110329\
416055200707970044527426550329106801682918215054886572979083065733200566711040\
393166428946073974276132720699137735888776468407672601645037969090673762491231\
815694613258421465112430180886283850187273208293049320534883490802257999620893\
153820434587462062523629681224077557166761470833253074351802801564661524123357\
726665459689501535120964074098799335251124236839325550804077953890651359848693\
148572687489949014085300106254036984402433985738212677629454919277281927072710\
075950541945450379091805163615808362888700153867243945007027498984321855676474\
032471439236648434111606209310196018250317806835398572583913357133449303614491\
708665979723338814530921740318117477520325816743389458264967527525203611262736\
721097645431340238065872011251345146117238016383594726875228176383566558961886\
132167299893940149412510356465833636887760906588376967418291919203119456469780\
942498386090416033096376452927942341930023017400543432258546250947435455170968\
354369756035650199238514737184926705972332775797911738152474353163342411729845\
894129107504555042885877762737340663304160391808268741726065961598933607786330\
701992223184666488893045271524055117461202230160366192193936615793786736961581\
625973005821281128255764679594940281466745760455774706739022001976983182597002\
938195414927590811337332360588587778716100672583596232604960016058991488934220\
473616132710075452300484394310989991637221886232625722472307119791823049444351\
403357447663970836106986071445700692763966397349202921834629764438186018937668\
805345127770384815690854061403280361502803860949033534893230357925117393530415\
841133265471290567398884435930822283033032221165929854191965597971848854238871\
580891403693016171725700155706148369068127422955027934635226450068693430774820\
746663687476147620022750181551796978266737414595043870588723873389632912139573\
039946630543402891327746816875466950216141246550370091265917983029038873484176\
139723433945569356600838016094355613785537468920714544233776467196313846465263\
157010171323583974874665442363027792854190450156664578818599794789712514811405\
023776902617289793013080656571631212120791429070542150888983795453659164355123\
341745987948092769417511490311746055224557854581355867021530900770319556558995\
997468057416133383616416911400992334155643868362258664428079403362670105226669\
361924674723713640905428985205188351003692681879974656470525450682683936264069\
944223117912997333641066781735915971628983274177288723020526098042487577710069\
881962403729127162845583584784034049243648781833724320371618788149318366321324\
242424201471879866012908295449020987399595428721390667769827563089167942174016\
882358765397504203024489864188963690963162701205576819699291549927751425437881\
294676650832503512671684664484445472404101245280642178327322277604369161028807\
835887184371005180840179580141083528163516360380534630763891947615018698673670\
605014755654519125563485474406162027393835035627856152958894681701699940143323\
110952872124482704720605460258500667040757911141368279069786865871177920435611\
489299687198880325903495462586850786451560737217153995339107054574208447004899\
811282899421602122209262449472745405610358209264251267803981905452659443737519\
428132171370336125910575516989928472946953424298072325629025888362684267844702\
983631329496605441625386147488283479816732288109784876941323436718833482975132\
775552098111835661299848568702173449715945581420516760136316810447498709163649\
431566670016341247315263146646944702228602807118139928158887516372142668321214\
150923172057318911173288259805252015609004155477759524040891350094036519708487\
007496783327432335886946312687900985023131720661411321086076048619570635662452\
304872049297016794578145820090361928067821394589374337776931269876868117124816\
408491052538842393336908946354092358023108172557634997996943645975444894856647\
732804498867623578917302150269879645498427712336025239601367889026391276316733\
486900994658881028631022374955359950171618779405954272032568075099172304060405\
924475934755878192311507086038643640016697693588444107736870284577037940928349\
414028221295864075270639353993044472385084396885275777983552083175810709482686\
545514923467711645118856722380760062998781844878270052720312938847998209719432\
022757136352039888007560979354968507222173819096427575684664407843849762359541\
643789860716673486049953642921576909269615170952825421086026688812876213228288\
701239411121356084998485602261674350348830521151995222130947223118824547392608\
085441215344210434543110428353361072322446109504754903082384976233787723979857\
646707148507270115503350791768894285532565557856891411105393768123007641727332\
335555556958197951616787651611271588023817370581258433764454963932090336308884\
238313464741325415758340853287016214784675273660353298142198999001039965166398\
578162708358962481375811285205027468314346218654210028735798453064197217331119\
032520073461929812872295178982451117703283234759864039562706190854550735807916\
589710077764022903519770551651463156954288414243755797570968942232887312501544\
659132356822348563230881862148691752544420425031155171125209326672093524453853\
285759307857205196311267715965633535956460663812156991761342710503579689346925\
609775922911355755004495468093959419880769193752888650248971124685916195119118\
057366233650749218367328395749066939668994863881254658855888383033086427922354\
597161408639132801696867060967477934970251369670949211851826806837103932976818\
279349090488099268529794978557333715456812291190828899996496173672758296772254\
271826422328664001327243273092429509230566221346977560274971311377496402160451\
869335895994334517013147431671669925355352625191822960685511025521066176939130\
589930470440130555394785866316843769182864723435324859388779733700023743444052\
230578338504233697486700501600286637163548072142572742363471659825920005995273\
502863429413906679266972379873043735393795775874670438709507356712455449660309\
789611819455417024559219300964059380552294276921735098819503385424390196223556\
566509598118950849558347583267944137194334777064417430687607287323860319093764\
674529189218392734056524491250586956517611562069812500393153884581844064908193\
055138220680810239336308565359538328508151852860249073808881939719741926645634\
161448426511541316956283525195911244283826288101030847554548973690254035882364\
831424405950604333637217231136979737662537789832914814676854754118971023646587\
793294524553660846298717097667145215393593629565084168679388747451776846470197\
056012062911196593927169428782001047384226912084203747363388386274792663438170\
746008618165177012473800268910283248614546728946437703394342046484241967025618\
791648972518386746222304165160001856431299654117598208500563323952416320466755\
350013353729684917467646319413499223744247224633022021859547406463788211882345\
939408996899586677663701142952853127079355663237832561966782136657092206028310\
256539135401190662142923938164112080696172160438099387993003279135193961605459\
067259657242443886673098839494804050019958699540877610669138906842799356469502\
459908786561048152626194880291622037728544043107619152330967613456578986649276\
023103467080783909926275476450002311159881515250166756373957401905770341261342\
041635904480839076537485827775259666285431629883314207477826120950407760433388\
366358024308924484034883541028706147339632834646578357966974592587401134634576\
232160810423976222516895973476817428512737721348884312642986891670696316238734\
200146948985214230208355107107105025571884627785644037605341548737134057035304\
716047710677529320079908300857963350589136486977471509376122562844835142793387\
526367457072220025676912748342237943660613198626760944062105152371984859747379\
297406177243330777353802543022189439576676950956672798124850084862642588484579\
677193561466464626014964951463471490061886726013021674810746605411192668918406\
378835311056304417080835780199922329564347430329597913588943793800972704425821\
506927979988831446725329768967209243310967877870437254704049693782685353327799\
678176291518671277541365726683693491087292566065622815915263350446694975679229\
497645839604031247826096808076324572917963135706380553018179506155893461920055\
250204212768920472652351959084416370597622758052733539905727377292458984311346\
620894693568462807708795934236143426183573972841216652601954384817745024429687\
378704478184580845669859181675745936300712509929945590215797971267979286814183\
617945293811474383459113049494906254577757396574482504189366105015672239114063\
379044269327671783572823478402429229040376747003971346834385546406427071026117\
530091308476127357563889344495780143671978013898265342437760672048730565920693\
328169737707720506732140005736755344980895540538688878671591124076024028764936\
109146485632435139228289616920538474220896046608059038230996591893342589079006\
223704080066997920297981944092771735027012733684682086738310270794793553022082\
277521544609273562071517195538748966819084680286066268052662617307395592893243\
276656082055892649228114572078932587782368082793050500307417743535142587643209\
181854326694069067600791908213420396368953094525633402213073020986458629768965\
547248652624284611047366575090417717320523237414075658489932392708682167942643\
268756947351912174769111157754079997199926682888507939039340610310421329646825\
040770647705217690955724326859664717698638291411537797697600025819272394469201\
049660042850854700148091808108172665045679671866880646205847880930071167141907\
849713393914993995255245452094946507843497198103614287781840332205706946395154\
769469727677477064248646079392351956543663508307025207982465374274256996945775\
646261198738629434532805415082762099066227743584448627037670924884313967312656\
356805978534285819844609008250228150510636726914188760397883197731862657293142\
180732905509353856244448880870515851205561944137370328540547572214634071373693\
265521086932227094239075429940899442544459068675741143225242616723435219127825\
854388455951679782993283236427374574525445460529398968062635137335872148508088\
202055186599580340814883297012537812350567930508188185685057312332575555424196\
054273583194479764324992288226604355585233496066809055029052163377847463519347\
497130223294939655104159878397401675166185936051793389503924662052455112688373\
111207852572442457996232944501683417135951402520951792646811568298203136188273\
964266233216764415246954875581640843582125850442476706996938037585730039057901\
105154147795571791693127290959982213641159815952014586136789206666635321839445\
791129429493727464246482392154779756157336708957618405753220985047485835708917\
663527278094953542744825251137393829123783351841471827848818093776259467255433\
420690238375597658467444988572971001533657025938386098378883705596616566122618\
812454638780740364377558292593401364517385844624554076490296162202292447917789\
014243272492456246105728329944276796783144819346705517570835029425673263352649\
065141412102378610932967188631037171704617628931161672590290677122398588365964\
149245530812072857084100660761685435166635303413828011338196779122899741266552\
449513483389346361812822564990534115031791411670938307677687742325698034291407\
998029191076113965307761804076221944515194026040634703567993538832743785881520\
110804064908851752700820562380205128642184248230026324320559979983469262326656\
447019563573006795390572441503981642390821362351327177145861912103281123572699\
330876625534408941512051799027314738681826266444752804067274640857238015503894\
189125958937399265016877527437697415337481724220377071286644907711626031544171\
194141083486068995295074447722033627442668184711965636157137724246154560704796\
508783129001334349111362929755836090601759494537968615068179085076075662127381\
001179182930761186299116355745026020212756543609511385690948154244767226073400\
610373342612736080448553121475788902375590577113174550094118597486529627058856\
391738971595159889870141758696486541853248637794337805069893455538805052331249\
498418875730464447331444598505524739865399707346233819398008577304356954761698\
282658938100306024112186656859802072533716561353350992188595601078815219559929\
848307371141617648399503300378988247903454105325020549556935880161545989189368\
865721247489636136718628188546447861792435817101125518513178717745043073536450\
297615072923011083308025515349518692948497169009917303947697333789565022956148\
778780483665828348275402301923036903858197885343038285582730067215613042476796\
509973673898639630845953309944673660052789535100775106235405180950620729591214\
778792662633854287925897759586305806465044845262391335383426270504308670094670\
362204063397672529913651878423065839667022625805621222107335411618502936356416\
166557792377663958604946932445508059036179864427557412949830210469698616449313\
701037027750848601539616658645128535453048155982963829859815455625924865918632\
881763011014997372069201538698774186216557820878850289708567829701926958276952\
394082579589346666668839183588155490694368307035327632079349451093653994509720\
428367306703514419631552887532148221893259671737078127140513347473860809636945\
635120190184391605573384080516638291488624793513794037131979668758562594829420\
746324161481962682888498009688756413177902657691055508025432280312585899845828\
720832573588947631349260624962718322007318135424395364377056481929539957001445\
543839108784491441936804710651634740311703744824585051857881806866288441707935\
660426980031632363491203029197537009960106661938962173187622670718263148522844\
172794334068181031018384175349973496979013526046083898649384170852934692791583\
455942477874147581862606722466248117722498568622989744043843921840245603609191\
236989597824880644631955555593083281673460231204066700724877475998063268452732\
025570156216876628405832688949305051939005049504958701540034854277602462485884\
666673423859744545671611419843038357063974266667038555609645239035702010736523\
283527692067722136663585746080761599482575890261556442866496737256920804685117\
462670246787668603228796511978576164426500255366220799720399986561469155119965\
918926099875691957219827550950647597861562647423557864501138970419935099764066\
765571208502958421155914947290752355349927410085129491938559625940326382025249\
882249214444755882700290036795187052357627644235584183330712046012462993991548\
419581355125514677093447144330924763732150118612798381856025571631417442644210\
392318412486156130470981480247338812569605196772694383214901046524099815011833\
941450600842229131941609950099644961963307661716802799661459649084857174082378\
057131294396610368772726979043490318967493232166572331903721541461036471884246\
356801971257097712420455992771894016308075557915318038863852263293491228689445\
871244071873985131098072996000054029691390863266714179236497562971925021288399\
097084846804390717631982983862589760312738181027549342610128244583510397246172\
600271247264410283930603677754398403846237465571177660427479404471102532275260\
708819152596238810359449121002592156755099903598490287366394653336222785601987\
852448078120000922672556304311870218783254738688044091883310482551503395062370\
353459115756948715844081222535466146121336832914177138712079113256329969610586\
306388145503829307065076425004095978377200913542843287311066940704199932530568\
316953318544062180960834613197799338171659170654879552114439934636910391325853\
497773805380142494093450362761658136895003095126105708412344562960132807039487\
146758901016641151703939321469890302667266058467350596475274805617807867953935\
510326849129867665654263127329885291927008247087740022137431156586969076065899\
085477980877564865594130890270456897729741955965501092219356932384978162258751\
764655242092557409257176954688605190100031608012897289870528610854229739093968\
150775009659717371460086115220926226085270829883643736243877981277451170822368\
080610770774136633479557435335472506634409792898991840821815020062629005813678\
154528485775952733595359748408724500538827410399987019521262331698628280343884\
972691416958629503620272297488689849003974147161674575114133460273449742355058\
780721866552587350641253083245738803560851576626591008479072047704536889750719\
974356650630663167587611347516441890509949530441171998514991673976622942694451\
662140808774913553673453065182999775820146575308157940816750357256313082689752\
768694913175166031419627412271620957829974512595073689499764786513098304455391\
676187931636640409697787311715800412265552886370914062581788469239036439876794\
389944195963322773315106241711111175895820421382268247158558623159366153128943\
219165489282119597622766581435967431904693189707095462549848023495501869231129\
366402929099667008638784004289044208624836617790643020633059339203224343651607\
943257024658684668977153432807721709879801181485515792816444921354300152529961\
377236010772921085951314599524616594227164157476323657025718806117063487629262\
732360083125256996543432189374507796744529154278947127228947044648131474412422\
116659008100572172330443870087373605331646830292870055572001906994319987064544\
655062428217271171245920681242948105505040470592410528835740065648454724560748\
756247634725962019554163080869913086567869678755397008127911768669194968381351\
509880852095827679294878548181584339038957648028985092572460862530061488862865\
030657198657936561579559825729918943289477161896205693546728054418563501846263\
442674857155608884433767767751811195879631684185363912337497661237712587055753\
677142553545280102361912882466084685673608493413331195799335404233357735889637\
805318390934442804922703521622308714944360673004231179796828639051719515750520\
976559027309967099890200513002263326473818452023997691129524606155729336699654\
182678756146447436938872908878942599227147563262066667329080946986292953431110\
762432816432736086308641338648646683683340341174172433613790860478805680045975\
432893327214060803444750328434411461171909670176253984282266864683881706100253\
649900743173847000861481761643196421460919937381887765482706997939841539389749\
094610308060895210562372337339552990648545654777111323511505835187239748697076\
352293343549725610030112158912678328492646452926571161151465300344961441304070\
786937141792331166624769640876354873990174775371020182114281421448246213204890\
136655231442441340428775298118356673485565936917962558531536751079806714527966\
374589942103118815474548075246518531702182499670582009281703471433056490611030\
296600778862186439586203091262195374593191550111691331559547339411720861353588\
405204585927360463219827022407154206140331096148629907590810331330659147574953\
943653870184306530383427904014305982988109686628793960684213401058668136877008\
625504106696553622430760974869206667440684275559470825940375954543932812646151\
978601094092210039466239381000248857808215305396412362630356804450233024794334\
321344188084314692816183923682018691893983933307825793915187659886158526588303\
130548206474199238611662169190459756562533363184467689507529925867773089781132\
205545268932341196377415807042979172961849337651669375621514648813841726621715\
323622710802784181377459609786557245216534926787608800918807075144517955918932\
074648407619905173558584889133032806350787970523131676769315773731879594907212\
372637992597153494224165049186095916392980515375415305601083541412442663508841\
170889542644097702742282321287378185848137739355097493355511406244664368942045\
355237930229556990256888924724764828569879277717704395843692472400622209413255\
549432923268062651006560671124877997880399882214586345295917166624816532287411\
553275264112489665623653627179051708201531002673539588247022352816399724015346\
412203202579778082731355120501936842815520818554997514915110169914127116084454\
009076208300514164618825529634620360873716790190582518946838954046826629717486\
680083930295126077669299240694352257774386318127596795069437001560625056278559\
143415124133940303277129532531071186174802577223494892925219809743089521223146\
195766620759235563597266907679866612332910595279610183431069077020322287162520\
836119564948117529971327497305978355285212857854784428618168525710739979164485\
073794630194794860109379383640540030350892499489138010893132270306436604092136\
152251750336475912552993362345087462062522116152134533464059073152732407955939\
560032748790973869426066361431450934795793642528207605767366822455612779788579\
850905074655759995233257680197851647322235734446612494779990642933510320292417\
061814769571050772801917271665422720280245480655682926562444571074844343809247\
355832405957279281370093179495842802006781667030234830107405474219268605401978\
802767061773311698549010053252658070039193322183255176221950049560232954318807\
248709892249330737590455348878518957734282512509676519718567996529101719951017\
464781430278133357169564223193407571376783460869671224381217307989693831217042\
049112414515862212057381989260281325336165063327096126811273544576450343862718\
373919938943796958561167126683833937598558264615427978133179120578291237899892\
276277256159512584275400014463204457910654686673241405336586191842804226258216\
882737103215382122900160538955574580481497079514288287427566570758148260548242\
022106120376883410734370446169531356584731584649952332889740861389260374365455\
710313573097870305157976741864883330833346830617761996495333234340591686783886\
452470412755314395794027884216137596849182823286006692891160507611815980980572\
296761164235609054782755309990228360118255687572387881258582934211212064353513\
623423335454800037637353922844133746644754648997271532487062343247393949407436\
784904172725426574267589518279602033436226061843406548292910969473277581063150\
058025056894921339837057106195538103699251006160450062319589568527763384145338\
709215687875803212746031128492488714697592389661216541007845166518759992660729\
902045834562796342043971565244565003933269758416152741868905281033962277286801\
457027003189627877077513728951374928538916013451181479091212455428351145074766\
206145020787405527198310649131950843193937940513935608624487120632823309725631\
065680671593587120399214096663322511910445083216535436219937775858432812272309\
717649727002825335202360334694516082287284727522818468777375072298833913187683\
690263824493488856434606147021410159335537083375926119354381437532583680506869\
265160213196385900424945026077793289829297493102574748519154758212368427556373\
977810151502777188467396734397418256427158653009213673388007912311266160418917\
228468906382678717224697734147003033770948629424678362291721791257397858895723\
049380035859123639968963121613858310464837079637662679929761566821198465934155\
933916744468862003556896518406189650209957879494750342134510646829418913576240\
994955771883376474844936148903373387364084487665128579906005691803558021757432\
822372098296405413984917686142541135780192328432235662201253375699710382103714\
505361135215808754432588751773149812341597900774841548524687471869828437164277\
567966121882258983635864612337270873161639587829938155273415802880622289603227\
447919731513419589488384195292905675291358284702889972904682421781158812544500\
275773489756610693699383060028442488304085568975649116156938287828620459017159\
206618355597055735021830926911960506871136379219891638826470030323985599825852\
973720675968502122325947960921370133154369004734758005266973163662808767546868\
431544120054451810963963317799632707332700784242615943287198367100185305221100\
049935858980934727278261324522255474466336523469026079952018829848657929356433\
410586192063576580213494971238154233326330818249633020386361806074300789362848\
049457274765559689769047963077258435896097235562688527717695095754854674156318\
936544434526825222687331658583367174104535186016897390037051140387216074925657\
286694144634342819342201078799444793152890807044167837208591403807871920204687\
148954042965778274232772630067548268392572047428956919167600520523215382114088\
732406797255883699722977039781747786554451339369528046730979198754644054050153\
559842149017649397089933682368179786182637137747761899242139647546815218023565\
700846506246212580093382393758939853525532473703072687613186932612577333372902\
749196950150840481799877283736652550640271936147773259880890814946394227307546\
211379742525447857306562061623275845663368716041054565558219632284442580016130\
922925611695217058561742929711699372987985526865736798162230768594917332186376\
150773517153378053363994725317379046703857552722373827813588564532376608389812\
022949751795849901416896634521878608358384118931384728325768648734746219535389\
978008754241505867497801560159311365405520709508035255004812123123771815210729\
800323101759183786254056596253994854471076202385234083415014218901838963027669\
086460628899731583050006054166105211261833245630887494237613211173832359910267\
154433339809030107675192156068609150992975794898470913404847760372533164866332\
739977457417078705885849890364782505006075652766776667301814279834629978631154\
724719046381308270269502715524345837771328888401133228561232764247580549141453\
340043073513682001671030489674079132204173293655886380819902402504247589799061\
997394494240613938590020437450817126160362783912411472682090856905268374225068\
910991937677220777687371267701529071296822615843757149665346296154035289806984\
981990238158813249007282842031664545864518677871817717727792832125269683229766\
412454967397152787968043476589576126533852457391513438137845005187385915329634\
140536894844397225508011960792690281162293670434371158371953865778600341946713\
096653442535523561350392637433355902487780093167585566502026142451755202310518\
037979241601868165327213490744741879263046379357019572546568707696490256283113\
949083065981392587716575343290518298830744220931539456267189136509327785275856\
141886915058431128180621164533834614564998610279908878315999233208349703499009\
644828973619972608413030501613834375735033502696791991003945764850313988998040\
534762079799510355628009427119807714138625374689420067112929037940211050993128\
817678635571212882205845259023298827844889728557676433765513209837208453651972\
735662945407520786837748259937695085474585377854401518668703212703251083788575\
535253274224674561655301752946970492860349352376631937758153126911215712505456\
493662840461315754932343616114386894155191795521160403279413870405973659682877\
235554936953672492603352744989288822044886844365275158954689558858907183172928\
912923457744284419272505276847550387027063282979975853882599387906789963676634\
726367997091137000500451915150705020857447053203113428375303964506837349474651\
525431616406958839656960477624810076981257623240276563247145586781166535633573\
841332037563285771114579477361177589109784495974871345499454050089749431237026\
691600227796215160164431446321556746579869691343020917375379329537363102934825\
941848515313457700649437390976420858957317742314576728829679067502992231525732\
869833026341233526316349020649042970821006326488156767632425444687039213337678\
948960012513626523547256517022255955699862842510886689684710787260016733242215\
625124292721308055932622130721409368643549968987874303526768849221231834492419\
076374715747446252159745764663572427527952228915040642776786566115191933191817\
830567164653048138101066673424591568641744576883906241920186541022526697061538\
909990725499842854841956681924545197470930614227531512984453091827577151361181\
673035809321460322584723528118255047060621542622432455144689645726938231665552\
509598950410934253743085999797137004258858340304497267109629969763233607776743\
734798788356730102864713845459287916374901454066475193948993522123624743661317\
478304868846315160365922435767627623446665395897964687905529239027020107572189\
191382148316268524904958486754329312418264134662722820936532772839766755726728\
973193812934194305723962072329200718638674667030636460133111116425468025122894\
305331125098538601201236070449699785210958598753293032771622679823055107676926\
800022074188490301650050385344759710183016737826819436124165696392522947410357\
431851765836560341232764339009565118632607917338991262772072135161752222552418\
296124339628251823286968625444118623812330640345331556016406957472320383651456\
635574987344116859941616551824960425979839267816131483180902534507164666442670\
262761185976491324768295272780570322383435150636721770663763740249030465909628\
596027197972553780014182019981018139812595042348662483440439211364872366629202\
063939628845314483748901026084036148407312006741562291596696366940836032643341\
496371209854547525017736696019714617846451555599416726373970858649598779532421\
583282184109391640528356790706864210780346607571979891481554005420051073009627\
962347272499701122177816567984491943322263341503385675308244677341045503274285\
611574553874214000719284301774473142300983657607515512777962810147220530668174\
203505967941050980466563136377825172470914099255524710368126705138246752117200\
528494295219748862848985277878356210600487812711440634990881645924451898010442\
935708329047220160726966046198426077224783107171439093492897379507505647105380\
291618749188699463530135729350187320668731150173153109129679486254979581512168\
220757123189190913833835344710236597944808047123388274440350534679995291335460\
941392728446513911908360762265798398156424638291599904416284527681893532791356\
747403227351506890987754721815574998488346694622271194343513957275609331877672\
157428578303301830422251704963297161229683675274898329472315069749788741400219\
267006720656772921310849357294076359289561828129001109784724328303846519743758\
573685912309817836030314052823008130266313304139925339921794157647985347081786\
361137720014085708386394377035291834974037418351162237004017318826939326308750\
548756645290932656650302439445362272791708003815785132529023651056809625891794\
240016387149612121694699254423986747262060057131153878388338830780165378838775\
211593119449359569491793940578848860623959444184972892872308495579260721132977\
121372388696986360236829162225464710880621094479132399015406678160289346942821\
550627212605417982917817382489199733829530168266790617780135336504718863397842\
735335856232791853579779226627038024456968296862549118748685305497857965989184\
862186237485563935321563048992834865561541540649512210466103765481806025067654\
913403327386294169117762638138347851183641056999660949202044895026294461684668\
551060662420883145374012687794781398595777699039877073994170325653193556130005\
281435994560612616083223589903248956595675275769853245744035607612886079681857\
619771788765561985237527447223599272020602389167187908147088670683027939897683\
780233375796837484716792042056118846144350842383697378594825884978259521414316\
768984959213193894128750695961491932711470358745336608149437546971429195290310\
193894356371835937491483074230449340295962811166523899581106000938622216226552\
529766106507452713589497334474072816739263486222629713471555329362444579946508\
231979087690744585253703457090077440815341678638701480996741240038378085234273\
977881746910805353305091194433138730408380430675060306862695321245229016675038\
563185858593174377694941574108105727494443840013991522952924016806674584246966\
055691076975969873109507845182518576898000939428637121910166980788517105711446\
695070312737069620047300356753682352058152491868239083974088092648527045816800\
639153401349373525471509235270441619265721100423458480853223980930819701215864\
173291305325898717158855168420606503405569968593715915621939545955585570093477\
116811798359958427981955643563653093890509419646418892434176612177117545737144\
294027293771776591831074430581515315960948263506336557238614139208130754146107\
405127413481388906875208965175472864434890201501872018366138417280798827295820\
189774861263383603711094140868044146381899755144190511520140241876289786882338\
665288749564740110724599055379921751556478198091849558767527782808038226298180\
439415639795617256940909295185774478836515944787206826785963694547637062382066\
962023966206659210812781832191274680814530314217798673533684893808266818969129\
998351994223212726387715975764285213215158837171464854288124231224684028390561\
577968199897855625102710706283793994319073579797536228737199478452103831686685\
214208220192667231558101173724423756091514893863436665265794260371682892815806\
931590571523794802566191268708876475069508501113702578802333818019030210029759\
755926818216359535070641885719005949744467974174202521309472461919502772132372\
470257029616316814647621846436446517995358777590480917246955673967945537349710\
322193694559627789377919383406972537884155020629583874830961954204615469902226\
843474617677113197374866000879354436073024336632808653684733506687074089001847\
030676982147531337315428622151551318140954149797246706763436976964583092867952\
120199414066540432666834408196869186229176544103649208078572924233887550618098\
365912226537972884111201306910185760304983295326942141884259428662146952768806\
320825719648671342246985264194190222362411863391302841718447248227557233799697\
074820024375803717921807342020805369357406187656641696077391209098134947021207\
251972136996423442093054784650692374464904208887326302261563579196063092369916\
027823649300034497471237794559512408582397099465702753667598133047775050505366\
345747155165583727731007857817871530316132768489253576078462114788603518040297\
656960584867175676366593087480160999279507871789131042038494789432860847970515\
042833265245718864231983999328563422686078834437453092728931460925442990607871\
117367669598496330621775148848993377878678597852652805705486612173792135521247\
023953256081906788528038324229680755447174377489501430231501469612254948953383\
627569448693046741980229225550650874297727580760951068798271091938371422909682\
687285963219428367272424774439090600368048527845438548199558287433441890955230\
992659295884828977719675054392057716689385523977360925820906934305789867423572\
953120514850903846524931400689961737317358162222944554161493578714775062703761\
924980363844001609136117137295576618089263864679402793656703853057799129885739\
447837576390926794433365054967707422859638087218703995827147580004402224042140\
033035903609605480047188473046782868077409898322252624531680320340844351093743\
194993802990812417921108954239270965425821958485866799241157884478152195574983\
222583356742267989600980320093548651085494676767134053103434998643497580002152\
868358357213659782084357326046612605704644092005206437488086840419995854086974\
773160175053902530649036204494584764408820400538605715251822177935180194147116\
600865329482810600219159446927834603798292688186777848837827131481606681284808\
747904302342003771308964647817855994618375106206884413586284506303464419139428\
937623547427775867690146782289070060926832522503246399533375667289976602542465\
979519632609027426151574818652781929779836811013313396516257933184194070269649\
889513869239612612753695920602296900874208347208408331884158268380193833589732\
243351364122443211749794047668241678096352035664154332541509645019779105414609\
437498159904457928380288801335624818140726114232759728948241418870259574549342\
547227469899768771623160993228850420280708381008140918873526333183584207407484\
465733978384298053471060023742199872117626833349092090738653379590749280892830\
301072075504724508511833346763047598206617899980044627448033701965550213204413\
964236745069537087816973799693790616378482011697962707212703584804794885806583\
089632312886734029638482411287659521853624112569697491990574782803262998612317\
247930503236377058456987857745316103866706755584406824089105118184290258032985\
140961573315387563114385477921529836638382158713588240820127783840973623264758\
443526302816647560799932214839271563212499908370989309463295598599287284335212\
524274334943790238249494457851649361270326423390945448086200283535262617529818\
355252978804650281353991128471612811534144603897031654677395258765383844457461\
103515616418092733462541422179033107147203105992949538959584368857734894952259\
821038315964206232730714837166917989674445418418903725112728353005929827393747\
375710992776523563703606473487247848396842037423097589988743878765428415935659\
735883450609361299244925874676915428045981328158258729991103007806315924817220\
522132060107714923366010031827100667272664889495509423368979354810557964237715\
449541371774079951775014666954655741008015579341795983013187154617138382203332\
872631369978080937562816985753529253902365681143586553982842832417000516419900\
517643835120057569334304218029315236854114240598680573897377172090328164862383\
954980500843602353585825546188559424426129289214341478982670941767604522251349\
298729974353338206276224063310048837745273811887225818199822194282936766660000\
403799148700185686745544123195735187123793059951482159548677010540478202585390\
833356406182622252080286486668097631561071376418909023606039541245535703806675\
356765247266803675176738455646966935960226342580015557208962384036477132142966\
921934724207987296298616757967460829597127485706790346703915786585811127382574\
325190397829954457674305752992830286341862425450224962419791639827349043594113\
958984043489575783324648221652497253318119305558561405031050765485899155255426\
528862875288955457736787420297703784684756366424947670848543073541328403616349\
134710744683298589809511102012425448846430712271748865869643672237512574076638\
075779685938518232158037901388513245670422527853876610135195682865233946040200\
356733860252055134753079007468945261436163812466020943396881829985725346543552\
854046361041312149937692163026148315182346942096279115494171946607206655284400\
443565753266414389342772209055751842369120803473798867079692283986937508881614\
607383824642000815393674001886257307369534997308367252810149430436456349752135\
453195195003507648237036184538497563616339744294309886387198988081880867474958\
317602229846725019591837178700154647194377440245879644193433052737786174502452\
497071499070005187269292834587178630917484387855063975477813979761471029748052\
589306922166622252353734490113539862660281419264762937097680131872041406668762\
554595422292493849462711775501758620213788767600298051574112378095519278181590\
820663636540356868332445566200951604633752256882558545829200193063815338736565\
179457437025887562647321077322764662315226993795825381625074119359925754347032\
075189639279292162309129902590445512172093189661799346949541502186833770152207\
591130088868902385799152826398678246546088746278526226814247331885885724166512\
619590003292244047284089619602649237730727930328698350719950917336222069042662\
113793573787896339821927111179243751868381757621347292273048411090528931273975\
665464401599108920563595395506226849034817783401638880747758591060473586645607\
299400942000631204356230811649814551496555130058546117355240521671556660413334\
758759879204455921756775632837672276901154164921122464223603954033684550113426\
542474489895459967920364424296652482735068799649501574046214825111167401638128\
823705492676679728005746329061945617997309444872374670630628346193769263728437\
102506294302398387471804112779445151821086400015584757912846401287399509776297\
708262263458825052078183457605053081571276816461601267456151310391071769738455\
787322413300300055347195116690125811352080156303730469080930979273536585649135\
747113509044127590764902991938820082621739395928612333657297066464102705878385\
513189346579626859330479560260115450359677101400579933368890040220753848251399\
308637163433660079237124064576176500364106122054356886881774062530570060230189\
829110915340711775171244237036436371589022011623171026356501302439912154042701\
273039166043485289217176780054435379602681447698747940557159937783563996621006\
692741927146810896204073611163472025898624647440819612040336875208970108806335\
428443692521801742512119678569911058334944999168309449469847078063675466677678\
253837230405284892911730548029893106132822852430139744212784010822979922563749\
918616190953950922923524038726563349624474469034805751356594650462503096250111\
859963630240365418782445707402458948806050741683907150580324241837558626796044\
894031184207156184266389930059683519608809915500540819116094261561779964945557\
389362335095602169384530294074153542201700885059341080215377441689697655239000\
700113109469280003444356063607661310302728738927422665249899098159012376515704\
327731921850284488111933201103571057194443871218352322554867726440866734045441\
353674039901046417928811413277329570523323399878009160267002892904670034550632\
113551822596454563655802704621531470603214767803873454420398877573153641972943\
746586782763362311198646746083171624959380516317910160217431600363721351355065\
556811627671648322879623900371433163480958689243847116904830789651005911049650\
159928314383120189325251667689558973105180207091561282127947857682315030996548\
701378014203423508621889445113091741552012125037797657263051175884455791816612\
431914793499879371889746676777827243329227024826454802849998567554945269468703\
275037839400366514426856820813090209490578996221008140773669655662797895875993\
816037392940818983260231197906051459780384494121855073472344404641363331714829\
781976698669655140051818454197633105563504488497134223603391300589797173467823\
734723292305173885050046360256819980627282581124555915860150184390904098641809\
717100754618847739349112735711271075330950790361979461708733446648052417888060\
677311064558841428743120553686450754131237892050164182455985291702855298234917\
568151981749535650404537358800409736931002101619740994088572336813989068523058\
021522578307985844449884900267221549288886129250288528135271737803182076280866\
581987021339186121133602461873626491285983857042460547885994420824018091973627\
117515404746563411804862886439875110526018600763208664032080058809812466828727\
691582888514535559929721451343188177166455645026663362751571422612127028290235\
870314678624273023359989513383310690803679122897592232090053533983610528084879\
743470505105124297994696958773290081207079728796535839232426576733921443804703\
617065295956729932344168693092018662571582035045922274601133491784768678310636\
302367243553709325626949823072618631310910501643206126742460867916703779309406\
696071354477720412401713871525414787133745660229142745368281009292055889007950\
848372326787186595562128376549304312274644597738111563966740927499199030967831\
570443792739641666751097892640931174682418788465392879439142807191372281945062\
111996049420141675675141552265693285969399005410111647767529256494404287958357\
100368450907034580190874999930927342332379066474107462898117101040277883382145\
098316061371850584279038953949613459869455343321733883804422922186848247101171\
485158347106099757869761968160124373302306844692710557893261660012959934985974\
917184503344610562408400109524903112915131020735366066991425097441671089180442\
792638502557662206256643470568888120913431296547816198453967515482108102441606\
244493185873512142860108581558715194193976552610624780925408142475964662701919\
437855071869834968769265751713501764020035993835301783027817671022024492886556\
546201055956741577115904728583016542256142005482685137191627689825272660007703\
368359267689271174661458864432562954417051216860837357165976102782388486067014\
463296368213637303317464871763201427880067424934856844572688678255255509250061\
546975828854921081222247668229027751168223695025439873245618612099967380501457\
521453467701080259152981604212231163287602645784892088144425417823517877294636\
849168637871033559880293528797513166009650345021350087861481652756934254915758\
254478587897790042101592801135480971581549325386490211513898577566392705820047\
833081031935861720959285030983719779563846649873345549013365660629589933126670\
354255179585895342556852221670572063731668209322415546565287062082026853326008\
665800583966090695049703022545349369418434799181485403175216153188936016989829\
712382727329618815135404187049273485262656664081364863788716802997434199218404\
526700361558020387500409637218865537661056462525859676231120914555806149237446\
224865590525941467834123013364881208645131781450546417941645672385775090452177\
054997583323609161824686637311995974256373924319368360663346878883664893997708\
709923975176942932704315716340505835198994772125986124659567580313640200779332\
879786511301194767901228493345593727454467773069942456260202388754930902233573\
983039664285659923462394343075435576614858518612844661731439799759776844709297\
927738276470935627949450937574975809402297195543701438592212160580810042397438\
533045434671191438712266270914012615384462773661088651827155664020489973871853\
842797408717803985878574872168926362934079370551601837140508771496281607873833\
623355597883713608096663152189322875105227403710184125482971285689541641949279\
438506394548386171545286329870074344746461465034144602561936493892557193423209\
623857284093622072055176469825304006432287560380697731469996601018610184090834\
745280892809833912909149258303651173029967654739251518450277244844953768047638\
864019063487296774799021248561273166399844273618623088551731823996788171581832\
063096996485147295737236946479442548250144837278643035426699644315398152771686\
798446857777731767242149930635976518135953927680687103230458025191560364641845\
527228861482514597409299719945291059983347241041854202720851360543073574876227\
384079200167634661510906147191081330087692439890505428382858717459600200884576\
448251903137554808601794034109441898837265231940718313705379983523443759548981\
321534240842874824428098988804719710545292339984765517177514410963503314438415\
742836080790134130163961579445590873662789091442759845229763054393408666782643\
140163757170561881345065363728887368457730018975435386415363938173762901822963\
330494418919406597305753851213398627564624984703279184151114912113525010468511\
900896117079021888918806248825384228364119065587480883812073123231413442333531\
444336096562719210824764039272060888862628525885199283013330589057652728295714\
261949791649958943631773247495809598414916399608724055940589740951851845370108\
423911078235447953897722079752261759973799318017660258416783458521545313578584\
209699130699520991878609886124440106074119863744715309935103342861637568094850\
359275704744265896795661933828768847466738762703577987555965494014662899892099\
869716485407230339888393676110133037840451130783799704331160533262199544257703\
071039684397527969197308128025112622360077754000513085974983046454049513097048\
034261383540913445405641341014621937160565528044484008804530396494929738268650\
227452822994845774673433786755028009975605100915288666465879026257768957124187\
931583948729738877148353842481293119168316060135430299784836863527731202903029\
710778302774738958134651942756160667428436070204002387686104592077696567626787\
819706560612033973047229654813734461913219885892321867439123224152577419290782\
257091414018156957284573833622918850794868329493305335931935720916763645955813\
679923869635567492986511324827139460731628550124132311737264877398296514923426\
741322472886328460210413669666442677281041495943027672387634286066448079048426\
771915985645126086187040257274427745143079017361515617731515750059883996401418\
804973069975506691012924075303749581557846276831148373516100826421056868786356\
840858920119268252437039035251766690092384082646752617092602697104070471481531\
020573979976815791829812892353041464919875936156322124516827461722779681573302\
532557352230229683398277994160348264985693826397360590562321392948550742764853\
294267105896994589264214411960008453533311450406865373131957148434854150415172\
347068715966588934687947761605065252053255188779427620006779291742862951480363\
937155624921492192899450678409720543460019562984744096748624653637113020873814\
175483338166165615185111911346847323655382485319878581818145010538694131580428\
941053108502625828157123111145551238854904453479867002570776217413802918927623\
452389391402805293096864556020870747502963056856668723977499859113562083485942\
647022385403313966555122940520677229821077169887490683123218656678892534843739\
289398243039270631046016785592875306017870222133068112991425648726649716803285\
494390895401159821493770170327676209298763615294761022963864003909946651742860\
527160651172140132509592705592948397361299817981025671385331771066750331317827\
873251215013278377486502070331355062275581304810800294605171798864186469383014\
272229157943503979917780164905282771302956245709102784944459005025001264756232\
514016120398203255027526969519670742351684211910982090147345534524738516054502\
034488652611948457946739103249460175460659491334735648784812681880187073525918\
380839036790727219871365126911287379537715995274134266740529860582672777608419\
974697064196590299595629560556000221763788281809646584242944311604341015403241\
618371124118334133690860407381821867859296600601526097920430269051432225681436\
574696554200716104926071055162136298793005559121326652543344723751548317961256\
407867774243070700876622029181406550213601916638438599988612327515290352987034\
953210752896906114040165980218828037680534871490208308719178047753136085841410\
659675196043240179858915353244342336299100339036772618991404668102761485787215\
430327575243593205031171651703430242737608232710098962149506384969100290257741\
671365850448982075513534469441941851991214566815068435730758765412713166542356\
681222737222333875877673936228746034106368156518664932281342304242040017305391\
395804503405968044825751340555490464163357843816058868602279917915156776991848\
385745819789813620129705387867266068895188507220074426102970737128356942669779\
338208780912705267402281903448878106828049595910794308881004695618358720934323\
233044096976123771968962982119916878709833961134526201769594003458673833978234\
147321913824997499140658967734474340283580315374798489967619249699851822401768\
193052100224551085786038469056876636412890897515543665065616506192218185586063\
952563520434789459161679812323605749683748234389055596433504292754772607193219\
830825380715538852177309242994131441902635580211053579886653626415101464607119\
855982928954907551481369440936071764942629103403817182161439604176985281732820\
882103690612597704683140598765898142685317003106627425740828091023311681597595\
865485617816146064344765193028717343009218001005873954834544037627646013824276\
340532946558088847737466836256169083430972700699748178242457419426260777097989\
142290035008433211923977359095594574681566469478110101036963569468678903093375\
711027620866070878210655553779260881641337529391559615391062381538131481317662\
760323198880497921677961104910238832275063964710076965247441460982262594476729\
758448101388084101452159329887353851807306981009460126167868930860243784986072\
082802669244510981539169597360182132879440792230675841298484903656303436908701\
425831419899105413985226930754669501999027720119934380998096571948285919876724\
145591715959557500060243914734649999094962280732089018531774166215707333892838\
863916441375939741779799619064527740965797692825365348782886469722536557545252\
280316884710392694299440177441505654108392481853809722462655146890300020782127\
549450527915436981754966618751347831918657412558355397407737334160156114452815\
017161751179996399406119110086304704795713409531582791149697550614252596618790\
194047452875733438892990800297698778930869873399027324722936187651932972809463\
921588010581209173303560696088255232179700576000415904488179392298445358037974\
607129470760820065151683365645124128112940020791146082742431095203360028505785\
103178129690111967320860994900367426065788332367599890317467841882737621128226\
150437357826128239235832602350621502538812050380876107577923411020066388359646\
169318157504286066212124025308127579700257872538449057874024076775176118282802\
205700768033173143733222497208953222317699148309229185252467490518771658719283\
391451272224391076880381467647768256051991624289946664158685700335897100581727\
461170013131727201526453957506701723887331443852719496997537245850451851121245\
323760092430472399543989332763258474199660212612529805661849768230504120572683\
027889590129847903701012363477732672039081071163930328926896985898027604285309\
812579195732408053145359995068028164763767861620499087220505717926326447013802\
103274475785095981537692794373539955990692011086845727615873747414978132199221\
009794636168368837698006801932672463563313936198022844660290825749708876116126\
193917988989141472036055993690883893058053593693391145031666583767906825338101\
549463368505270216052865898969422570963534549240879532449834501523023103683349\
308340823516829151896416671575047629019534676550504543318915726570514987763841\
490791267283803179053794039065513432425793133041324948076088104697312495453454\
578562643292457539754436311066043652894034438429341310299218563861969039536229\
361901016399352853501057299327718394468786490277192411969477667967432169166174\
018371906560463900076521196114835072075559291017853787705695420746007253475463\
298759180083020271502977497891528398945332554071951666575323092649513942114255\
404511537786456966234680050010557665686222565597532000694853643862230379848569\
368223874903195490049166578339743669860918339199872371947258845288725401284645\
056630547236271099264278570245829223730422001039892514376074181197679980049611\
584889031365744048147277693497933519690791241286804950501774453583056740426732\
857897572640251681129144017289388939060078622033980666196507858085348249079437\
151059318692320640496738656353128130407910722221357665482187805198585300198832\
071946026351214279937006940708565595872468136554341671216007026774829236204014\
529850560212244185483378259554164191001106984416061119361341572843855737682243\
702736802105490498596516582972944555191824151604065511839707202720208464020439\
307298630013905543486080572720871181258779384498490437052921037497010016639981\
519494762949998642849373675253631752188331308710888079788392417704627889360773\
769147013802057889504947811588756399045026857550561741605589946250346009210210\
935213094767593435082242287365273888374232113471060109204939561731748853780227\
314662884160388678815342375391560037740786683286939848348080670719236001585719\
202923111341735102217455941199598354445613756191796311070401804744803809438397\
548267445519775059366593295007869513983479298733887810177945608175447381355918\
082998124982315003735066265433776452183166172959235665505036298871193560120416\
793837252007715931419035192724580169449393893968861290001191170558851515798078\
321975863643962234115591247845187082904022020705526888567677675720843301962157\
900852947127982339707670466783431019043137939095674184931794875599199055140961\
968939225573319387182240165404389424297616591282596064556576789626950067545766\
105749703494720985496417221922641518102798911059033065391546659670220214954542\
925225680119973223318629930128897726005488830518019073656178487244896155732164\
825745475381614346708401825711363753394201684005114429600303082324276272440249\
343956105593933073782790939544010805851085381144126655161542809528681170509607\
828910789971952998934216779462002016998984965144055336949093144156637478982789\
278074171170977983171522522769101762906375367829868692728058988150048230697907\
349216189955367079070334793754336049453072079648770163350386612477167988940461\
720890124337095817160070941224936215496495754923913389052137928481325600654070\
872192952041174511465783621081106242854180781661949418458010948482260635786400\
953180380553175259088246744194408371697512638377222189990351660818503784010369\
641914891107162792024978840785035770140561634787422640000635581746899577459816\
171765424735821336343905574633670041826313143611418160332966762967600167994205\
533403640351816660549908972163789101933149352978816209395419682065819064283642\
662413237059039256804645463665882027057632649182915871363604687363845054497488\
839362556344690258479973397243782686679200489425440222386948917200466558257328\
802332499435398108946466293862106782615852789957371136482549194966699900465148\
330478673621389610739799157349933726567917382050679489033578517034801568487119\
057331503073236481575437192770782678884988301848646539821183228847745990682339\
746215612585382662372283196986025204337862773557515550720101605978712174650697\
369997748850582368618239740596282389906171845816823966993940423403802715214934\
164580665060942551663306049310716719733083603311809122267282616536491778154547\
133361395136935789707903812910081720867497056696396275052837274397916287648645\
576810769790438777885368984373003601431294866492623107727490370595621425875142\
932668782847880787628478186245956781686625830268203644597885098295089252594417\
211353558594114239951535124148861005811481337144762057489372241692219063913137\
828116201787876086438886050658708324086986394651945116888379527746353597780059\
964225118812756016017915902247521397691067986320928338406008610218467139811866\
120510377179678586471588911919780820651104987209273293674446645552278333155612\
798465198834836197608015831317906745512410020867752382206554614559397489786921\
632321555311929060258852766336700281085004036776020246255778526526697703400695\
921577615647642596347433564716021855127675264892216759980154725911835301779011\
021484702267325079585252754842316261589296749128014980057541492894372407464438\
111610968912792553348665043947776470166897046624970217334733680794773210861934\
434226421608580130350246371110894166810265036737521403282434293369193737263789\
168983387513755579102654529523137287857195672725035232725011490885240111221231\
522395356681417563608279688942019932324527491150005680661906710073056211312564\
018295049933428178361120044138708304541177799082829852391031652175532217390838\
633772407026085160186509754722845119753912039762759601990538382949498226841606\
942370746852851185966687687972298646027571845029912469206489946948977483050501\
351974592227789428049458889362661755755850166849113803454065533840450925477956\
483685314132206728052953221775767997329750000772090302585104432463993406745109\
433124358732359862858793613228624008278150765608155394815807462635927191062286\
452912195489912738899347689840630693501530580839565139440243232506662242987659\
239682694103113083415119675553613783985422117921941144956191653884918597957076\
432673697459359381066877511045939056158759634966179567758163129073143952002117\
162416023638780963299013324703785938655291405189485402021747743494118074693780\
365326131399462089455574906039769709495500802649687908339222077306303315271994\
479489978198182895663978726235996505384508402261607128870691917955348341272915\
563450783929095549621763780941447603926762029912097978526101261615871270753558\
678860701332293741480098053490197876511723501392603202828319381375304617438618\
548707315228789604380162602151932172781250101536609553959394826629785009647214\
769630414209285608367553697145767446582513779268930034981876730953665615409401\
818121381451571893485211413763239747591249359704551181113512626385218226841422\
290576167233622174163859695942855584152660325817356968734787152825385468661708\
317156789798692079668579385203867327936313110970175090915363971577478546692389\
841880008598498493115913728360813414373935984087726813881576316452990400331700\
614355158713210484908604086309955458293249851269415089658896620196441030335698\
575787971913718747479419890239855764454275317591278218206791940095979448898021\
655199474910767021949659610071343068360588439806250293333929180504378749584578\
395597521918499399156656842076444015770263734973607980438943732337103577946294\
959569752864241690766716259743117028013043352721392098959101629315031440616760\
330448713108889303292520953246042438715807137411333349675218946784204352012005\
101715588810140727903370901390608296232573654349022515857159734383964325496828\
242539277712422357476365147462686304216003673739057280974151802633253647788062\
977836503169624788766304946589041398145368349648376763797240301315465398808417\
396936142586717938191404814312622118490104771070020651363401986558245954915189\
360886020775433744258793923503783385025011677270527206099193802611795015938187\
100439454786426117842514617256027238047632869979661131161471745987885542037896\
030485119369471921087749508553862899585037777990447987976819174494142900098035\
975024431445721638798732593334748433045739408125512479377208382988604655248714\
452068120314432872021824917133324123894130322035955727805144049560581365140986\
160079051007464455743265393945391647302445540904493591899500930070180617233371\
679820223173261954865526065376596240693939127964089260841611488033064649940540\
746459731482403965686343215931299439370778216002709558712592639380626530906372\
271590302144540827890353670167098152389832704238400163481012749869965938331877\
195079369730835694367288565061102509453520470419059542468201989827961069973226\
213662816736312298905624737776292375576101165400655938523727391506690645767946\
392058971652286497743450228414035088808309344618168366673715725141638260562684\
009201088413783889207601230008640272331058740377923680777236337609996334549142\
295140263407406950003571920163554103905240352907273269823891464585498060712197\
168339517746845727327057830016504343852267328906604188841138250834136137996198\
101697052736772471979593261177622344539819532047244073394552129375484996462128\
287798947592635564711248098447886354857684404007964540865343117844698666996315\
507153553467533182789421749052954084700236515593719130070765320610164624284605\
754459136274080249442643024742038723113681403501164916738803397962812882370862\
631477737109509252116696677284000566965235533123572734471225058493342100065438\
046715335152491823178461651025808818016446049994058848908523540861518389404360\
719340671292367260694480645999780777249220902903862440744586970142059022198880\
684609651517094823060009646570143644076680663727968756940713515678279906490790\
632772090445245032485757928070822520326239683354851586069314597838528361694563\
361863149568957512520542758340843376543877357558113323322445874169130446233328\
853040341681853276507962953325671968030466262226939292423381761474062176943813\
018164468362506028878688263884862284407686498705054382292580658487040403556257\
325674952011143193754775407709196207953718148825061663069254831888871623685251\
554848108075745353475665069108998902579006747116536104463548486258453296011166\
055248123665813348443402303383876694730853114682295290092852033970729724784595\
032639730470969287727556674107879212706769691471916296467784842643755418575698\
510816587182715147495503615650037132073805452127386073713493283299506794838104\
667216961316674556498386410665538519571147797989780405313153130469535595601250\
122307301351228235903089741315318724606576765069273120754053562280539695667094\
045543310016992009340160301510967007087033089628658695481117116447222429564592\
624702284383736316827618263814545273819011571508952201669555895255462206792074\
276777692308115226475110682443391341650025240406933025859894563392703641944075\
397812008218213585045547352157480438705096537744614781134687165655588835197279\
213185045506835539430760503690093629623878364086670129443989385444418785088158\
837508762900011444690128881295585567752375216598684934324220643331265915748872\
953995338622517538068215345051124474409469110451163239958515057551231258294012\
367477151579026785466343783299768437518167132466395464302078876838451413313112\
004383627209472896677974394888903403933393477149165560987844062612358122351295\
492562595858319163624484491123953657658710507880739670881097669121051336720210\
884909249834814108085147197931198325601491340711816926537717669488632567738508\
113099293924279731126967745834906089590146797112197545328687949100384969406070\
056456723771053491890644506528029557447570185785935333025343731414420530358189\
472502565974199223900855033384792966237076723346362903759950087543075025796397\
415020398849590375857682910017344100301639017484856330642201175201778857984274\
579591250260727814703573118803108254072233705618403981464308667013264139910735\
002441887725563513180201251858081489754097369730814873054088717373474428409192\
916434244021024496426392873573982403810584200373458695310703279798502293094662\
680690179272417870980625238297549267427174010931339084400603177150398839717565\
171566425066140863519754573459747328546035257708163790805387315806922805330698\
661071761704723189417223854132675676864108506936197728508808999120593229478701\
723659957911254740490230421735611643954893538440386619667832273836309911100528\
583707824962506145518825693851635763993030755907074091779176896009094216626863\
994593098716651875276280612167765599179102906097798876029113129385895535018018\
282822842512717674142327943772490834468421570946790104913429397381565935133360\
706191251839663489878904947087264413445808102413965253897144390891777522524117\
802201688749824301623732901654238958880298757500628310445539487277012493083152\
494979747126764811041792369032564979086214759140723385699856848993207228126831\
503709899193130760222768091775960194196631360653375426514541707897265642169499\
127767201935651871297423897420077422706008183314686892660294098085839553452981\
326433742948397137157826634893888175852859964321524684920221705042364386297153\
170378612025782854723968550109472648686527339361327053170918496084286797306300\
436165421346267661010170035987579790699862232054880264185324862925109616879659\
807695389765453614545744554001652239142481489297293814279062558859701223872834\
890240573855246423443911993450272065771715210499127908992116992426409704094162\
072318039496941688985426561530328072246825542458111142700957323271901559885378\
957557116192459631233900138923872721527861242038168148964678214166675876691828\
545852443941373067714640373433094041364476929357832575675472246049237725453066\
312261405501756381159994319702788365614699745356186625199217747587896680220466\
677625977438338995660390403628298614827021386190536066366845791514514912966241\
491896900808153987865583853781157034266034430482255013197866047676271115191413\
296063961296795675148556053596642717648733877548421668073267934468273745356610\
801508605743399198621529578787611185592447235271316900900727602292778572040739\
492840810280038898566540215556333756222914589826405817184880903521959232298455\
919169463929579675300915498710901410398873834792493628931057971150462061769010\
546893013669125649607645519105336273179156006459648274765480572318894713984109\
860130286486656162666295762500981783944574352039379491631861623245084104361645\
553981702333968280754081606767892350510276470520409956971481930783215993225562\
257913369017793709375425041782576570705962239705424120671641874246415575661781\
751832110091846264871776509119033457230778731788048493776544253945247149424091\
479337073513487876314576985100249674982967257183895783784649478639854402312145\
464070231609321036055594619547608318410781549758552449473221438932052337349758\
294772936978542447331921658533831755522494658487593974612031368176924912879005\
517840370751610615086328433445673849566589150349424052007897413832212149246717\
980852846342868204470275783698828657304473701798754988339182164436320438360275\
261130900446100374779902794907612459938112405161919960596513900779096342935831\
190343056243567157340950561636287482782058761548998813622840063195111952017808\
096749067049765894282031932459132425596171141643166944161801552406618863311739\
950687964377815538097222929745986867436434377244602250082170131493699181402454\
209157676839550131681810740342830411268652549868032645793231845029509774520138\
980553581941410191319848338679855548199401716615848836118148504918646756391772\
863305837466512519099517627862182217783739216042843812365855035987768316798876\
917667864037696003396728064045734525975201932854039038432784751855614753102263\
637335938463979994511977345685665446742838958191103508750244754207501175472655\
793430406416448164000185489617235736987650020914631244006805066561821132029336\
859567547226664660246868542008039260740566298299662282788667330645065503288416\
293882956258875540969468070706581219805085789240566782073019132006706036421683\
649165256313537762548308959484205360987229555827524593150094334190090781546711\
225727107985212227375561583261030239205316792788614118329822645975576534045423\
461049029572239587533119579619502289460503083569740319848247937503897398279538\
992068971891296270970268160179994882368515441024906345037933046385059805006893\
688509215960924934546170186966470225326193881930168212264843687779523961813687\
773501783987601428797208483664107732876428869253587146978397261888103384503337\
118151711484715753572829111377136313197782120245684609697774921963796847374969\
109456442146235274675272612853018007895735430327535505890027607241710824277977\
227327359006266638666960135223025608509729963153757824337925071621720744063331\
379638751714439266238114553939004388678518424717587537903066366609326888319312\
103232072351409070336054165750822090603372016681138850314684644519169504365588\
661521259506938284344581528708712282931407275559336996812109903515910164212560\
711075765634430635117056731674352895819475495216114251931100258904134528900750\
775831818122670748616937051137474051447945461979530174760061067934534837739405\
521359299881834654586798258758604317340405546011823364935533063590832243916668\
061210292859293099627572450312748943909642963320873077467150077733008339343158\
859637012443376957769454826077160976708615481666794238910350609046146044130396\
871368948867998350878040680643816217724063479178119162006295777701399370934394\
432172497221823195212537941326027533674568558608844105908511230270606553796894\
861190333431182933910876196185654145709689387436957061234280197733557389624076\
816315844335848770733607207064012636724168412550983009513819576886151246486601\
910441900040538733356712015287826261145314440019490501156417180146235530033460\
802176758915614799503714673327458150272811272118264669225554441318839859509334\
196239859455611849476747865322071492014140435873483891207105258163644906920398\
813879272899285398846067946999733862878432225100374328066659264199306084693616\
756774847179955538224978574655672505567489493096000388111650259900059937401738\
666047062621238852848170109467101387683522002537004909446671047557900086274869\
986075801005598973977527485320741834661939937899976107539930251144261568920485\
519723078407582278483831235864781682863472397050703377015510803721686394150717\
589120252352003093644538161000890881305020391693411591082327549299699784135448\
332296718754241822465520037962279043106977024167654829394976164049500283098389\
394260224304616904843558047477224038717866934915392885786302298924314368417304\
703015701090230606750370244720033264134872856010032197236565201590949293414826\
212299982317332073064879601203797276473155636303760929383734234682091833203420\
880375831996892409927493635290735649847239275179648356460381131807445271846223\
458597944972284318052740625000578442004830052382387510848554266486618405878804\
641206810359198983960987271311506410818454904555799276094354218400671764535486\
151052824756829626859818060293772829879244252943870854120731025294049832789179\
127749003152175521488252603471416018195384541767118062521836875819415407036768\
156157661817204779986923314640336138033465204018426158039026418253618572246844\
860612887368699927202741626806376662112069290346196954581136434474159871401892\
116604662265826615905420697639435931236620455287560342165003473601194342256149\
140320157941711851715427563965172568645384670954524837130594898582559745277564\
378372093903737606448757805380896666613991839630554346351531548185886779262912\
725363426288985256854464698144974618924149586366367198140065068588860860224267\
337988127687969406497029915452452721325754281953249173115066208586652077490952\
965100753404049227356548282957025690629358881690414651069717772420955446130258\
543817863048508060589906373809054306950261384242227053753545985909932669673321\
651519481725345327473336027447258527245394785787049054847586331157183663323591\
323475882593406415210390728719363267963759284733131612339781549856507745957426\
301925013613442181778657326845949803925741969699998764598249567094095595490645\
143192997532969902929018113346849189397316733740473761021534979028013172233791\
279986391471010573645808824964037793669144260225224329182203596947965229632415\
046259303763664328408656160231216109902717797940482442374377242175453274369030\
749262617258880652233261410603381653209323202669910870847586819856399049857501\
176199636905969925410436875329181907200415759826234546672701573697113335704140\
320937934512660607079906558687961615799849341095409032124365443108731615863757\
273748174501786655737939848669229117599204342247600648597600549782806294187391\
474966456601976892636165982896565574458040991426890947249706735220470116191536\
009452736325306664402010023201873227819761486866348989132734701444820324293117\
841009152833330376911197051252511890297082942974883981371499778052781649343705\
604326005352698106918986588689816108899269920434547815535740465293822554757923\
965125781698498673421821853124073431152960821411209199994061601015821912737301\
650176958118619036689779275690467857101810593937314388119291474944356522189626\
028632586636519017453659212186387681077742091583646909091651827398075310306649\
980624484927747561884529732947271391489972684077858977868656048723305752422857\
172473443666741818123270841591791478616819780032875242194648011931593793515239\
417409041909841257809909038894077942046727049153450002486042745530730683647222\
075893082199445234721452184282562092914376814387802139693639978602212632210982\
207735714412941264065376526428543482970693655116806728306148155350067799273428\
746717408366660205372922048484087025230125857179145696657952396359686270645903\
720726805879439813400667670141176581252233481048386867717405879736896155996217\
846549730739340954660431458601540495615776456167344721264274687461408302063879\
359804284966224722325504660952317681724586362611284833874076507582889567745895\
887361095197420723212623335561519338247176021818683895300679750212076904388381\
283562581450125007119027156514434627064814950590196996139040560790673726072411\
292447199477028384835318633298176199947312833144915968777504290327977034761938\
062955123840138422910035767692969859590544398289266660878010344059670559052076\
683702101595219513945447731187410723527945608443549466760792882681935676466658\
916136214042478564279268156254485063166852683275246560027477652412794270534193\
482805462670281599245391248739375580940125919778346533655735625937668087699752\
574602702166964925299837753819693846254708518861510475226475136489188335738189\
169712195832681004195765377021192118272566508896682467504866699659885042041191\
615332089885672380926018142811762344795582942880858136988607372754974912130687\
437421943014866766259691695195368856911749382319697559557940217938873722515159\
971405447289708395510365486662819650368486846610392745568414363590177744038756\
512080771456364877728443833156357249683675631481039438968092119282337414507618\
630565777737794145333025782078879337135523281930667781034744878814533022767115\
982463014677391318064699017145323181957296401713829934458665281042390292044042\
050301085037228897072266732041640758383521162554729354209770671865262076294672\
043633643273505663204112521287225894149976280468914855507597361465051176412579\
302836974532036046506156923811972132510561806134521343817681732762841418102164\
413417024917558436568114547977751958280662844249750379174772362042042450573630\
609111548402426995643360035301436665975118280328039534210540491910305673142107\
541302357934877234239073959389300436891328148546882197053482680640613344760357\
465909065646098009717176995752043755635452168504422439082780834807215680031213\
805137447557386633580661289825695253557232663073951954063697946913927391950929\
709929134880148676072714978516827026905071076789657653044046336262688872262742\
931202875173849755421431504998907456461215695542535701520147462658735882915448\
693671682109726387703669298762703332692676405112356591787736324770461161187528\
378640880382801363490414508513182955873803365715923755404374036600943126624937\
447350183694088350123180570255108941846936668830380623604361689986818150462814\
543993708439467237952819530328860609963154780541105397983173910481917987933763\
099182400716369535925678358669990852568283461799920448492158286825542660666948\
065905588375476747789006303076397732011916264419312313733282236418119343830505\
865855449829986899114668131171194218916017937360257596321853210486874992047347\
029942678712761333423766834282256575650157489720280343180320624484957230973900\
571509314538918434494382839737345157998051562591643226270141862062369447593021\
410508502812036049109939053684780560216627046368552572741329060422899563510252\
284751907030825327384995555330449578033090259275316352218098898826291159803371\
125701721767669045456806492230515747468915571710175672403541893506112888730240\
431443198695865218667607330385490360277460963545019525296534070301597032409851\
150252930588656719011250832847149680648943813007837186239244681790216217356912\
288723948021648464737751768189421222071035655596507979484499008271935528147914\
340403713871720817609031988564587461081099105936917743794712879368950324774186\
485806481967995614643670824870899368395131507203056530300788685982036072066991\
673761641475665428771935359104452116916769281639636456297834073706478827406183\
405435707741216138320287378790378585893274553614956446125505055478266874544550\
908868894692718598894942344950748382185018434130323620046680700191750459262840\
838505364312676869803402681158070981034589860413084173550995694415179917543233\
480633073261339139979788000382109132766014549611157042858028160675162338135386\
305242956383309503201928781641324922300476117953582495605914530004246447880621\
302468978655969262925763574028799401356921167553904002699664556025682972369504\
959099602717097381666168678004832729299059428102968161574696306060610106226717\
021253966747951389381374853895351757832945136426006936137777440005669930174020\
113667731787704469450601292260749691106157620763789334504137336511956003290783\
523596465326574749743528672111629807567585108385016069989693586715225964630570\
091390876287416492541708169096847309548860233298288800101652962808976987723196\
907421027009348880934455512188188336519784318535596067476350722161178728735639\
465655434276140685594124259121417078116303080101925876219938098958943050939682\
518277130330334926648853295618795266446319063493896492797477963058182377606580\
354022796691081809322672514261428768508550234036395970562141251513762046722444\
289799785545413190137205600294567063403824299178075125724484463577152589347223\
368452680005049057940765926118340462764699835321989331271173271051129387746272\
008131726320867124724783103695325057116684669339199938383416530133092477294293\
584707438826342400701321713209728274947961163566782615071566282502125206276389\
751566585134060455290109261126381662242366899271064904188627001442112873592393\
998250056580064325060750945893585007218072932230824610825818587467133406733443\
268051547565276112290094215465561831034126870172286541622690757446663740257850\
581983903372668539128342511388977610370155470596978428438121104166749642361936\
898406356138762279595452151468928813282394396366129450138781676590929250897532\
471669123683482751546078272804451824345375965504925680648532309992814514753455\
092755527796279414245574405255218825323955625085721179963530195675811774436762\
550973197511556514845137285424074904838081995588091516117939219104261909284857\
816139051482314744553101516159178414599947122390516596944103972729574115833974\
593906205007758070959676589892496143734348781563774420837499914618345134117857\
213565765100288216534378838906972299886294622686851956288323205705378942178959\
367844899972838082251295857374295653148704304032195433016472204581397905745288\
020747285881031140858798747211863286489844734053114604400480011189647421657199\
931158890372059003146641812617920911940887850066778010999185461909348926691850\
911899853281758015614963442527274202132308326262537829753747808496486205747377\
298059504902145550108969348064510974333005997985553203313182691751915919500655\
848843655165633523507949744148699554593468266676174984193192323919858493142907\
033972490741043353155071618577128445270455615148720821787901075809945990781903\
407684845590803485256121124463883238877600772564059505857614506172929101763421\
062016322763133570869841611333843351915955219934239104565565973100823169947997\
845631959834114305637058884135857232439459993716084515443224733325747432690293\
211134055360526090724168837533543614128702342378252708953823576585165964173281\
100423670224794265894895420024627797793098934507602136241713703106513275975961\
348992427004704717253332642277426234756632022517984249524982127655951139456814\
127007662315485158257359633538267179226699363339180668550948028966397016335803\
063577792061512929958681816023327826828756138695348983385807840486775650291623\
281022321262862370364711672590911162207449944470337154671719355796034064957218\
399132431571758689056357820119356227777634216236724756676876172206101521338942\
884427554638039142982934097063768466511699684549774924842162345498790190059012\
230711024880588049920820267341521334526194822718040452465922884429554190815449\
214580890457049392729832168834134299536825867464108367284683313287432198123007\
451303144400768357402446278097701300214218712351188443907814286457148671303162\
743814053388576038852946905077691124396402844275392116011246848558859087111204\
331369833551298317704475439527351180945626273650721342386754878162350966398758\
989078105843337220397544204986189921453439457001076699302333404507062355822832\
197939121071633904478457406495968373683599961027055981093432754571822658191627\
376408326491944633925414125704727893001218140995028817766321849854530856667900\
703762657705838273174956120917523247601272848854422298986799882662839508678945\
771438815809675505801148163295101341784549495324847435024616682604908605434986\
260707695220684576930888101993638860205690810166450518721815005743472746924004\
566280135244242904323796847683264995978599541876796098882406497426652295844069\
729776191462648978315102874006697923620332060404453547944198199894752531957170\
520855316177791641077276461392157117740299135555015167097966196524062222914160\
997227029865408714690791932911101746040120652081190334793350740933967335438106\
677644251621091064097827740393472409226971399864193240183367625787951661669211\
485708440347311098577186041438065703058114089652279903370706792777717324019606\
366905990239660061747596602743647723341713211256406957304300738718969760826253\
778407616890456503696412101726055110506318058783071771045716789172093155510051\
312624885074971257088277608184629735156660641381318577569232194221616981981833\
861591091112129640683476454149874892596769391552088999743483482510977171733477\
484904241570447657365745775288703137087391907218250577299317720421259661778909\
462781073748939672753336694977597757614013390964005994959912477424058226022767\
434791404365977500711749068727626934563752876279153861033480986929574289849008\
704137552160375946787643984362695913728997237720073145336673352699683662926085\
657058390388235938311896147636133170436652976443607494016496971739566002324847\
531278261351162745169349859149728425780115663540112574883834495782054756513486\
752535339309492987778566824738322471363412781566382459050230733983253608300387\
302483963995418402866298087668996005436067463747817597385932001097038400943290\
848252148607855800720302839262481484210735676894365084782917239431353773078338\
286204525607937143479890247754480001573891165778949114366003679354363932067762\
630211052152101359215469454499705888762836579334060613239110233812347891165133\
960648232734302761158534325707822596745669263994450654928199905402788150706299\
036213505045231732501367062439410618076676137866141456378576604420749242292697\
703498450126514921671769633105167672678488372954900567865723978442763113473249\
771989060076187591408960730665821513844913456155557115108451321597382911001114\
287389599461623938505836032323442082881450433915073780818631937207838031136417\
583734875197650793352053542610648396468002283180323476626782438970343828285676\
740993880122455841828250616588718419177397134842495575355361542835106244832821\
141075660967969951048252279421587069315186868228906599054454289767683407842846\
866351695073592900594465251718651841204544327116374524591249405103177497432716\
433047861042520357940327121038480844643633301371529014988427523779498345747998\
752815119651594344029887214917065555918493963736202353463688821813143720813493\
658980418852618146166856463897428391505955837039471238321734527348213615696128\
326308516503821529565084208247108348556368415289277977777563665982862156502212\
507461167590321165420965414701229428385457567214173899297998005246418168473348\
180217325219882119503518467058280842927115925999701537509747900795093033188056\
558010139808122984565468161871538579928128610376600684408308498397279763700416\
603065246148266042831177932893558742055934518813264760502991798338271637395986\
023588785134609267323195158872972924667709763509894677014028229224590936493192\
519317428596941523665646599511192546858864800103777931630738794443787115163435\
808683855098036167341177467955250541569632555175659300110987103438333592007520\
317718713211694297373666504816162281397436919436021979331891137147757928460485\
105745428328748179328722787109615896826041519103216035886779474792592988509994\
990492164849713854412553391673798326983742448741274547096206337139047404836079\
415752936336390448179541411173493620260485120123053605543688879386291448078791\
005255598932825277335435924706739997269227399277565339725669671524096773073517\
612992214202555065314295490874261705335850333177746025891528937886543076661397\
186947435020469696687505676637825001336654434120149780395334094843058804080871\
386953158989175443230557614844599297128725620764700238088330825578637544806735\
453859876380858476365069526736280986119900402679811302046101019445980359274353\
057449296242273773395520169158005332066975513019731133703912561191330543297941\
699192948293905572679579528177269687932911425777320500214760199698152202061524\
517942389845818526827978979744054165648056210083302860547301031605032014574051\
888761984535029699992646579565001904482782417386095401791037025463814362445250\
887029226639233664043519678003566545443642503625079529648921390656484140182736\
971450214526431646621003738099504185588748963082465740733426300253099497815591\
421287519705271001157101716377498833787956568653934426611954407741443992487423\
206042266159771478006548964334962358396221135312572898201355984815657020457482\
109173737866280253930704465543688974749065847794940959812244787432218660153009\
734548024696172671294778795194415134401730118832367448720447806236637003524258\
617656838084857368856902370922908821222720834170089791292565435419407826899305\
573151916990118070501895885964740481390462609707341954494227067754033537102964\
836062032755617310215914346844155390956590974654992791537633294735996020089802\
640794682925361277898320585360585618611894514061132224271286111668672502570336\
348863158571739711603288212386637491874566260429531898520879176927985320596870\
827320607720490875624976239850639187378806361073721159075733629897056657468837\
735159852306207834856672673994501972457061604170286561431266850797557168950806\
738619613357613077933856652942611789955761282203962786163036697657292746317600\
522624881300262015934469599332301304443908514144069612949095143511324043728180\
378030527016147459666973182339616557550910094477201123130169927082110437284835\
364658022798435317648760439520807362259586407873458191531059455825240310753772\
157432145713447781843098447499918919885723488153921904520156617192555429987533\
454002381109748520270053711471238979747010158547538626802813231702862012903865\
851442364486492865523581713720293880175294101022520285691187186079645010876529\
842532971631174418650752018769292746421061313176203085067906658825606161624512\
329833385602122519961320728581640702090623127183448482230078940409243916327452\
408745667813673557003975514278073920034353313212822873286895420618818832914189\
042392958293492930594813919419210154303243567447699243068489549520239545645503\
065047097125895308641001156968732728057534628882092894998037694276715237246907\
452768749411737611248907019198792964232474948371863913292204033404762728529048\
057020058877226359767881747157982142176417664349005485153222335130502004742660\
842602758111430811587735785368141365683667133917403160705650379085284322678216\
464359301519207099123433844476197489701363751895168498630633471243935719934533\
251192434024867226850967122444228095486209670642071460389235934010684400475369\
638649751359735833109378326001909251574431920376122937708905574543628477384533\
513756498116412336892295228886685199915916299617867208191837173473070068228127\
018606502753029833901466999574794461070267161116027871706500234454852655318046\
152798030135889431096643822247543977162304676463531802819964493756623711511605\
197875870834292146749800015297141091672570579693615487561571782358311177101359\
012535395568712745799720175926065461900593796089784619027221814507235879548427\
149913315039620305124110916504419669755825132181861783569427554061455972705352\
382673571102318081972085394860182205482689866360286956681834866852454461440840\
695218263328048760444691900826696762964549075457223692332744166491319556486439\
945889933877587009880543318639985540493230677615918285928743896057804640984208\
974055068329611397239222226979036469776787551730396664474157472658465478065963\
956489535819557003579716689122694699271512844864772273981174181488663319289946\
594706008921131898942967719657048618527686134236881500004172380028297670052779\
227655408485543334861688984973871867886189873232380042400963864067984351716251\
126972592465867872110705380153194957716494850629815798946941714282042164165586\
659907286198493849175480269584619642294779314981223836415385570380897890076139\
010323497179696325471965649122745582635413234142436435745947492979278569607763\
591484728012121820571237229125443324556605340748495181446769058959806952003492\
300124986619376210850051236442547826435733821329660966973165353542562473080902\
881776113373972062983643050540861940622183850244985475668721260067633974373153\
257838354874824409780973933614873102023904533809474159776645603137681106298921\
409016612327003900505022947613518859124106470656031298014608889949278623547812\
337075637352432127180061053085517170340536033073763018711366935321769842826017\
611218600635848965341436067091419977924640972114274495469891463555482864340110\
401472230084740058971939425556775578440399365701263770092330401772015709714022\
618972549024996396256689084858977504157130429271592893380146276281780424512433\
461156729170872181169866958713126106655810971551555696334819844224937727899849\
001691334065013922558374525364458711315377496428451540053640421859769093297900\
720083629620246732239658837413175290586626269446735210442603791931521103560615\
613271779583324238941011378308624546295140958171894165381882609858136255070281\
472074410103228385697701212667932146472801159682437711016405882920381222982282\
550564885020009031599084096698014250159959742561022026318361725571114913921443\
611018533845568286070315766448605768250919462158506950828494085301806644991207\
142867598986688412790646539483571531979162968219164287626912567216947228774367\
226907463108534195440611336084871630083220781537154815435464583702594850361674\
707073027584996723132809601629361233574085051675867047032285987247398086473267\
940394913937913084973632414139029439284576638351984218676346643018086896069214\
338319604221009472098439766652282254436830422205470143256511942687039719929342\
480639118311471596792882765901606584811613722944199433263769016822243435592607\
990882034002343509905859139297715760494727077028309575842707091369770437135759\
020267227121355344973304305067410370544077345958430922769374840395638204885926\
470438636211199354225500002561144970850527050091628929604984739830597708931412\
041983770187000638580784426177361278758099551595038466620748481572501821235408\
254337982027525680745741779553025894681945776460653749932699328882053951518474\
085147443635682109242501710525863495345791590287152212995365959158076973734068\
649381356148346862593974252934937239229911260953527890147415209461916937523396\
079180058881837850668857882217408930223767078926490559017835733029049861047566\
240884046301744209164607927659240335005213697505366658033405013128071242798970\
006273729152590701666746437245667874325600195554242094453363343939195676804590\
871330983447962129663258116376546648089007112474028151564343463108144532733971\
543233454492686193074483735329034242902270632344509081553795123775716104927121\
798185353585099415538718219449427086114969262082228311054505260176469442149847\
969162493833508643899797943725725850349473321123642015645445958323210258673382\
120827201102361718132916281347693613362316300055518541699451237030874717693475\
306380949148828231811460148473591765019683057147047139716805417120760854152779\
061484081543527705471113866193551918255549673768753756559018915892076743526148\
852937632107873123875720648408237375303288464023488292875867457517411964259554\
732547129988784413376971744782895148060629750159810410965179248737254241586060\
709263434511221805151576805039523207983907038445590802489767512428111868311223\
535944953623328051564284509116382532846827690377989405609730496598216774794290\
605229064271154090759630490750045786694806442407914160424989736396223835534265\
688248924903094013532275982922676180213994468018996032067580342939794795005811\
235633986972790236701977628984073319861429708994553409037260576822344748869201\
029764887194618758629342131709327277769165187100249899666585508381133567896174\
811392400806920441462566538294522339155160459482487027752402656030802416084063\
358310499159313085394742690732347208841191820248470757329115072124544689852685\
531159985111793938108020977347381749339998889738565369940387595253362174823947\
154783480058946039366591889289962175210471630466038444412373450910382932483894\
560012983649341732042243216564275828626964629870549437086474634277118529382480\
439358216019860700621711965918325918075744936556603190574210330697537073223014\
044293913607299742314821862057127972408432297422253064784702228772898891720445\
413641683018620592669478106500157727303468399829551105996427519834420909942982\
394136155832653884068529837501961002674327960832267660898243739923045838193599\
445520364710959082518991662915931963986386099844252455919444237409807650556117\
505789614643591992556426759631196277837512874653796523866525681695700326964287\
850720184716605737922725209523210990761127024194913962807481696514943204319306\
489969675235237780133601715355794152722674404383547747834615417136108071971047\
308860237450312138900813256243172049768868022829255024334939599178274676959411\
554430985036164313163944257325967461417580663424492506040232202802946987375182\
931270655413778298861958481093502663645207509319615250820150239512810696188302\
083787791753142473780066613661071255613809568754909763022481825473369577744250\
136333465052729624195150307001629823433990910006155502494673712884321972353399\
452938067223419621701616343292479375744591466577156266828511079209801382360277\
908524908614061323820470296033614212396789169499234232171528883297993911294665\
253847268640531873197932267770276017871515711271319022168364169453290451952046\
150335534734469787141522447087707084561412083149801106667165207465553671878728\
737469049871627624680530857583522804191995607327665917569577300287920706287306\
356228290710931722541244102899656219439303393597931272982490188505998207530280\
581826873453626207698842883892896355177269977552708928071198383271264164981358\
505660929746681941433220376360160317023864540103804193375688745593512383982760\
565299379694631115736236765803515756436802079790980697358928950333631027509478\
478135700064703167653179843748938593199284467970505014658422277826960675919777\
431422848983462296380957522453292343592235130441203459096101274485891405058274\
767759110361971874811262596027245866765571472754939412055513362289169042638208\
357399520615723946451744498991297021106570959449855647567105391013640465590616\
591177906243645957393460718577711706111845170015454508099885004059315587509512\
061655456314620073873944332743915654082222655166711498136135073739954893391748\
086374196648093278171002639550259140477751934720526936117215529192894891128512\
312563105277097234938677089309885624797358932759808463423218516249853050362731\
645550860024480112879487089021875287345392941316146620881482680861416201591554\
912204198602598488609910010089355219860042743405731012142734029475943567269776\
285427772767597954067832154999870802605838132869028183862100061003376423791980\
019442370442063331998932146516974334576991282231826114090708986144154081991473\
747433681644982432526608166696697336196953321277769129772635798430150971081585\
627795241014031219725399500985483700699157263817493342319841708678485963309129\
366977383562887078408002392235782310361229231334313870871375607264795530687856\
767876140867978538841839750850468350928414471968343566924539145396972670386570\
317296241838979235453687070629105358409586252881729281692471046395913765433977\
510330386186905416278540679671885645231462534683464300203066362430077280418391\
505048399774639065235270047668220337015691585237701399054126383476484663841179\
107634163945096265761345248340913898753793488871084408225150247944719876888399\
200357379260736576854930155343026843848388931402721966820387276849040650786414\
983954838623991443271003548414285714663675814108685756849749642492058856984374\
594686574480184934228027958235637756438826823262418776221622607090451984593267\
734773501828543606939352416589601174507376114064068959882929944645381868606647\
472888991909822960178929780473579124796321869153687036559529444334995425160580\
908304927359408810125128045910650504766496267582224133933158027094209234354824\
137545730590871565675676701092095054671117837732104759766979436357024999172477\
640990996184223422593896684699154418877209465300703443718311572870573206739875\
957821407940736334236084963832333591790227712682630327694877532004680184757705\
394343007951196667752439615916630827808395905383229511272338207550744153078897\
776286771662518810911875351973300986377174786188154764116022239030319559678981\
537333332582983600451889734131385796009297774588061424010459150147820679739436\
362919935582276023675103478275564866271218825552853178253586010351082258145026\
112047470924017186025646900684617317679905734901100727287689261945275883358758\
221947384320834578633052807557454938289523900598456827291413464323488171485846\
067830594826014535968762159670812495532305763781564934456525782552293824962657\
511707494988668765441038270533740898921040368677365604542858451695031402232363\
375702641796577852081754489246557099240813236655786985264535388801118891932862\
519259222135566768155760927630615575930662647392608983278347680214605557131593\
915751341973623814379449788885811963343728292321966320335780126113077010857215\
989820280124527014194405510821109126282616707080627427106208073756237473911790\
188063039151918982517186661375757275971038981146281320941182432120115782881787\
555919083128416589810129599397245828288503470905302829222517897243132948789737\
432150734138953199236450940330089444177994978550611469561529485655311222946235\
263060515601499246416469416535817179065975346477474751894490338863769454910133\
847537957012434353283214492982757320649460057035879741372847308556850024140578\
069949444209656454542067040671269177034205589354592147513994658656379532449893\
948072963453595989773250352242536697552026259661902239113744647015156377494681\
734403794532885953949267776387559086479724780886800681723558531314356329754317\
660439253838540575689974298509517127782488540660920326559828127019571356428139\
254066130983872519138828743230385070066019921570688871565313698645866717928365\
735525658627188144014431714367937481059691370932121680624247162372966171539343\
995336805414569867938971784889101598603095412935298746169109192523809742944551\
488558318499498594795902426366425548655563314934689356150341488374884631294653\
005659807467697736019455981528630627612626766355773597675811384216123733145970\
872986047138417401248888918797133273636262511311334676537629299840890377895200\
008539399763584744281979857678072104896345990778015426697174567542617238402203\
277336476397551754916653384472733685352496691562976924834362650474619882335945\
593854238873901364177046945395798118752712159776844251179958071694546686174982\
003891413675742529519923536302864099584773808066759416971558083354262399667913\
719181197456509501421574144502465594282308668548345475504175328090492439697577\
338340692003659626982380632105842116831153608063960003029834869862501418951961\
597709853098934159069182644746212429836075434644624346418375891269938235380143\
849573643323589088034003650356294509895717318211938753606040337502573311825257\
046693447027575665724602024343580517617980430500157661220685910711916447836787\
755287555765149553864629003147784335242018223228186288983604995567100947130736\
251175046568288749334511080043705700857207322750831967368410921087264603086269\
870121760440904028069794911183964366052184314923073516315889044454805679783225\
559628577325030639073862370333133937948649073559546851796504296661825531052645\
982451735375632502837394355101805927205309010514290924335273127869001515130558\
740539553595264903028131275892668785026838027753980878419695424447075982652771\
476368013445122704646965861601405000598135542660045553041256453856489931603128\
055964697097277176477513623793186953564285143044563012761042826494036797480293\
301901344399860928405868810026888328778606907005752229163788459542951127123641\
629041724925928703351812177724572063474441407104579870116834865389408608793464\
288581405323722052203338827824916065507514284988950267304733868941466577151917\
067007154628493341305459532617825762474557786052890705568120939213636020794840\
019045348227175019919985035172181982915553739405244748816084011428682985421981\
541739946151944675665399110862570266172891572116167086128078644225968780654055\
240840769809262297989089743886487188124121528586210714417131468273941512454023\
152718464160210458750969483759431807362021929374001190274750271765673435942473\
670661803986776730560640185899053575123002306608370871168691475791336384086232\
538434926718606613904668433787965167900709509607700445453556313624051358161617\
384399700872078005727973747669733000195181571665144821563406218186569555695230\
599732096135279604360849164645440098534029608616745334380968998239436938249495\
509471695416706412839424517141260191624738270866976931180696097101557258147853\
194625746145350397626055465125435021452414343298249241381217713203403237186715\
206273592816337441031547104639631117708345350154482594576086659775717391457660\
958775366724984051724570082595821245485219616437893131098824817003842233206328\
850043254208492159442373470693012469333391888763956241425406832442961396568624\
031641284030587825646523428183365665189585503699094325953094250608082468414255\
314370373906651098967653980873587499377033458953019495195170217522645207320360\
275463941311371161162228990045708028475403614063814770890413618963981467936090\
582948205418580676537456845215201141451358474004249171418349791085267557869236\
460840510296405685471629114796051660512986011642189235847067744783697916343692\
203021988896384901524172648351087367313458395344215022462615533663361483478643\
233561380530074966762084287575307448476761221295204640268425615740219898496340\
903610921847604312888296926638081824774162432149180517457605165276714859567236\
058544814854402132907532311933789705421376692598941462443758062516153217997346\
963717964554733535492490014056074366310647417667998572569863025283994443463799\
305182425984125798358649590627890695365185495918160282523112964886245466247414\
987802348961990493472819666583071475772532015868355470778367282575623992435546\
393774544779733829602922395391013639248424579908952046563980451217891118683684\
611173674956595237321588319222476966429594969400736850502840377689062658085002\
467172958976399152885528712794692079212206720132052809396452263227086822123147\
580066031785861841069345045525790977739566180123341874179413622157860500783390\
345912525245404857543632770893637348137625065838802048457015329172877536585102\
843043037380946458279446317034769613448682880549387474207836072091819669560779\
780786595574070960443029786093090797207307496070108155868501594809753435305272\
934116171483174733966100517521700230147990108690345229770487759840572862989418\
102152969007455565972433483618503777150550860330111505317616416961877236613812\
722787109865173452038573787302166127222580623945634238951182710638999382819394\
680890891714268678748870323697423698254355888832460845820284023483626235883643\
493266480175590460342821517219563963495304300848416621782715144945954090117944\
885259504947265569119457920367936540376113867493761913528838976548861213181153\
030471606196867043644288434988225523312968750291635458654268660889460469293705\
964951284489740485678003585270403993562604898282215255571996993525794545261740\
743270859891130014290671400225943274690218982995179553442748718111642117429343\
466185812595775017541353411801559140012523994839390176617521611923006320392693\
503074408005564853217364811681583302031705897646782329202381824767644909239971\
574846690066268487079269797454361050266597917187256545818722599567184718953968\
963563982739116945400828677220839735648520196059606726455519342925230681863759\
467716574716398510375801026645131490589465320117025939029809267215532618811216\
870595841647293227196915373233155149878813034739889489625427170463108520020308\
934976074748096952314381448595233628759639315703476429000525190908752531657407\
924492946317614112816050060433236781492170244718104090002523572907450940087541\
909448501323427737790282037687775988388910224289465863071885783632584011400402\
958201515727775055220497671741806522968128144535963077468399197436150775560849\
014830488152662261688754968034628330406849672488458314489610898411164185347246\
790495429842336879295028505356227380869303629064349610638902734239816444371298\
967524622134998071790983253853751824514318229817014980471474405208206771734829\
307574244607177847252459461857489049305096509795390542253069212360701703837910\
857146983022577248525173845914560791055885370470662930526861151496257016777566\
050987152218931199319086080409589327271465200315991180436374064955449852221163\
110792402530841208587432750830257360467355905024287620096058217825407072535881\
942427482290612611565067099069000096462286669193502613356980448499030606977087\
917964203449470664734358313049859323970595890765212059389769761799954609902557\
501292529505175646332819377848179827289216268839791503902841548928484050101832\
934301693930859769188207609832728889211355169823445644473332530729623985792356\
457676844465574078818475328003206204091248503790790336969679985756985481175481\
183866884928262489337313463656209623643601760475628848255746879835231668920327\
581208311926727387077628308791944164060207462803182215764029456583397476087986\
917525550317049629196191712150721245277331363754728630499003750245934859600321\
151449928406621582574367422744755010639122242188903912068857149902812503322293\
010196259879383127482079514574663690869011102131053057387506102876258248047297\
829759703788665270217441124608373700727640915037133336149717400905160213542870\
186599060553712590929896988757268780006791586909108457407802739901018725834025\
027067523492790845564584723383879369483932121937056631027358110963094423462935\
733587439546101715097484176032594835362175167124900482878786934431786340777895\
613431476530447271015873083591865442275335060945004542709438295952345006179508\
154991222606770536954034708723167037735800385888201853606077407859203091001307\
366861533205143094832971286108366025245559269732660010329761411191743742767827\
897475103029546503081040604842126629274922587131958043783255838142797282061046\
716445453966782750663376119561547180811410663728904450860711216506603398923855\
553767532053879934685050349218586536215611625607737850783368139484509250569703\
460543116890143456562307724317804512844149902118799309048288989666196447742952\
614868975745732046817013139309051170561296813362465657670327529978842563672610\
468451395578761745542614079499278851594193234557306458553637676662779045651946\
875235905070702902642359376892174112583357143985547271796933471669904524573857\
657346363234020958011223544764441723301996887594841115885919388026520824126254\
157759239535571390099406192578857624383439670825359850867717452030647712597168\
716292719811087226407167316203119950574953533507855790580552280567687094003588\
621450841939451102129664180301025071900414351802625839184169633428710839244701\
121728427303277470134379841173301244691377597488172808378086328358480604109242\
208657677287522099632400804299449293049868849898458249983713858916691314115948\
053797704200159706893471118315733890104746479878081565219264411241753662668216\
817707694323814663364194867908638258471341439078678526625420255079875005983442\
086433532034033854071697004858954238194164632023644992186969351976251487589536\
447516344494064161989416711341044350148248437987463916000978580071488654135135\
723460466234792972728314241559208002510346789545427521942413257040263069769465\
401613548546879857144294868030391018441086389041448112375443712853308239937328\
366819623130295691856958566274113770338858536646227471931672503361104073315657\
007652071242407975699950151716821900645117887028746352292980881877100729033972\
992256642113056013757759771901399412363267280845389400319096154214993192613364\
112255536011836627327838526740198754781876353935733949284710295825287103809975\
654397325671294875582247836268074527390349037453906581151941957264558587882696\
188599474918395265496354475713650412286059311783277470431717021755542733811316\
446122057779146073657791463076230156987779427994708000666933390808663128520372\
580428713945527569344186438283216307542493576743406689842924817540762456348435\
859978947995073584089721127260109801859131872698582043602154493537342282099832\
151279967547715108672556888219897690679432319918500345646597546894209085865186\
885415650053017704347774479438672703930952508071748114388066769440408803370027\
622892294039495464568694673656276512157444272755618547272970923160771008330327\
612046440019501088255436661183840175064330798789601849572564092270264536383848\
782826443778467646788945218613735355436563776064766781708984505435511469123142\
741416483679764597496100751751595807391647993195111269366016485848293907331879\
739169087881956186743588313735155390613140986275515212954448771045808977219105\
827633989474849102783391699522543776814394074186682375671244233235148234658676\
499645194524763308705364406871414568326066397694548019309437100867957512398911\
906085980795618977028617046714020263900407552116967903967972007171335597714677\
918457136111494079667124629229993314776342165412277835748258627534990067921119\
780603078857495469732841964644872481549238845041687488440326562774709529606774\
811952785925148107028490709150186522875342941836314061123708587326294024339098\
198386808979186012746208189395020988748831959202092020419914311024328861840438\
672146984472180588274776118855314334547759499157081121547243048811098267530850\
187927122360672654247225549511677834995137607049303136759892216457674176156088\
948829950931142765681879504457390726038660155812138169555771358420435493478953\
642023389746495492766853536201317528657055058809440977166826187785035656932488\
370061916868813257698988921537701642941547703528005611948422472985187487774953\
546599864731283766810231684783864208035715066104376080275900992417626841020731\
910411686475234925060364563867772961804953661056181453874745364735629557600768\
283850026539033822042359255398293284193944942050008998872489180621128704903913\
002948556514749543445752448228715834065454230746784942749309634700151432631241\
612982110976577978086462089636434720880591553642322648312645150216051965026584\
720667061301204933869699220607212055074846983132504456790361979375114510561099\
405972270610245531643418423159313539053072773643156367264580132267637726686186\
334792960994124327001774495398230432040025449854464125821814920560149218878884\
850042818418295383774717036791912893763087010427207210527934076159095560569028\
788415435937041294487067737642712638215283791146308614599688138515495896934947\
775300910908956450628879874949987918977330055395549969672231130329962237357438\
567780028847289642133583266974725834606152803712627432217243252933925759249244\
741154505859760314253954019027327179534824534471181832675337725688313193570020\
831617831857934695550625098741480850738372620144835846400353369127055621195890\
629893555627791783990885764956240379714308839097111026422589746293176689672234\
040127892499944003014646792202038304216198807717346647351646810982056584456771\
849874997429162956952777441709563128459610269014542233395364432479089882752945\
116320992753074993793818983147567944412459596372625788487798245921701280055758\
027161475792168773028767724142783904590739127392942678843857719239680522994034\
053347073573334518367251554265826396199993098367307950372448686461149373049576\
129415707070662032891811072389155275383366638170804303305567072752616774194630\
606087015556574452308746558396124050301480579106145816309013148988618821079382\
747513047641248682780160190849678442189011101839255967801588844050853939768387\
360141912309606008688848409587590939798875457125098902772115401440192622172796\
546564989599214375691142902020411115792487312650807559597284727869968278916268\
278694911524767458519228110865267700981927943533791355350051468985793823713882\
735357271717893830142216485717141029006997282353232884846219281128940817079740\
244219054436930380174929970320843401108733211145368423599993209089515669085964\
915227766722963969422424234188318035210991164028064348473544379832000036280819\
097685584925611752392977416582041844810908951268364708462474117396127148810193\
294558673819432508612653588373685599202590781539608212879073060653335449059883\
474701016808696373177373258291394020149923292096927067831675968147669667520807\
748268071111678492935846198418626172110925322160685253881591855988062776872164\
381835160495538527936421090313103607816243891471254331653700492954357313119180\
428419650321615780904252013312485605320360859144817671705497669073927648951405\
521520609254132916570249181716644372036661368578767332511082859038192154476652\
862252463592191750130342843933195491229727926976395317486223207878920268445083\
520412496126094785976476405051344616457799579741920939413873112767240579405410\
462075597015741827181915656118320966587774081467691697748376641838608175254785\
968515246948077528179062939927065252312930894866450147904547107615155399799638\
954573549956164209646047474598537724051945204244695155110576014942214459850785\
628980052001501442172360303944283424448708887381117569548458688101588473050820\
293605143013701045069902681581989459515045374857234879807161323689988928620499\
341347784459648262388689344956413068869396801624022569609725905836903591447830\
464096918458265475815349450077651607581956641240074336117286666057806409790685\
068438390865501366034171566121774136535246662924038527316315842924751071820737\
619974257005266362873424852769709124146326043911646825719384474976527412791288\
332764753400458797875672197285080251587765490565589220471496205252104012016698\
764453817493876153962176209981866956434937752040786704550275749542082834382652\
727990664040463085556015793541580183887088771405230057777479101336075834637081\
603741403358166217105237795477803108287893113898944795861169392281377248209766\
223153741655518707243003784468387344461018587649662483023535529068562088936705\
012914503374712977082985920552405187831056216521322461228800347547325593257117\
509161765941664823949729133523705438862724084837055281700296298090586508047949\
546245822401357141584900673308445738818119674451429115214342793926996556225719\
864391960677530383746866722217035568908425034832947667841503678368198974756263\
607605617395949590453787288708801196541878924765307820255412342152755546537527\
848511642193002104006960154442855007174370354007033593565053986517857070065820\
998041957449512358764478124861041475565904500553778745425732766313738825020172\
648969616129101048127932637456731347387116638770998454206702700296011172263762\
727267452101811865591052586145338819701289911963847350290174000706806314623013\
080539754577602872474099097506917882619283197164721284958737918035495590854500\
617988132119821142982583753056350978991235940544860179024862607671948351844234\
905871907533729443395924091853528029572010383942096233427756208747723170117527\
568724101224530281538795845096348579839104519213186349569030391256411390596412\
540194362929494919213530717153448409684207106422822898118640267635071607969350\
470210023187810985613567910659306600789776255319789825006631515629833544391644\
492580570078010616280321022019570475798656581168093324230005606648967369487624\
261724101199075962069434685940406164109057115534545376809232712872353999074435\
919539839737211013349491656927142993028020314774560505446618457532305901707861\
564430381970179149567653940459435606066050701739389313213462585038107319503867\
448355601949182280516773057685026884325495890895608141995075256518935540226366\
100848161462038654464771071218795163069833620214074612432738560733007417290853\
413714676466208233265300757784578012755078726278301618250870084281877453320787\
977894296485859758192842049964829620427354073385310054699395412546194734721703\
995270227035779385851296836644067889837465656361354447806668384669765176614999\
618543989623502371767110274089091939958314514687236128713849724206908095044223\
678551028762868042518816358402616298518072115283322375809709057453569178401938\
160024396543257825045445196940348840924340857899982771915123030947380554030823\
155608186071615834339556172810637331106060152649641481568404319462356043630174\
317509207713049088685604727385517309538084750144865176049756773607833154472292\
534335963845630215217104987385925310203978958143336638415592992550894460278070\
179622745210555067119131632626527993669635989238300609698160016708813443002039\
117719163070163778003830037112641824146014987041714805662603384977517560384954\
919157914179295368495970628632971745221494526436400040116851275873879434866688\
375722889961342993866402364058944824529124282016580047816694184780636604784838\
176185651558401746037289782158565908314893065117791985723171647647241893043153\
199908815499713774207210118331968619684944051847134805103762448875818172772334\
427215708740008524939194933981030831999522885426263085181455141049674896425768\
172031457741976055401166514371933763721881865065248544503999376609226777707479\
399801422580866214987191247013874698956765809816342407951357037334868399460740\
014838188091091227850498742256394710285890361789248694551999049171162317092974\
081951721636250623714208252611907131791876380037382099894155167362903105494029\
053725379895773700088178658870490439209102611278111129355194227781921470074363\
737351900832947336873223965494763299282753183518126240071189203456588554680950\
302630425192198797773744326372609289111090052198687553722810530557641476148246\
398586371897727977619373087670426497044115114128900621261138853060373672295958\
161170213950300741417661128483328860167367167320358804701580247848646398079995\
767647079233106445662603373073615899226178752674260135360072952785114473129927\
914524506233402909639717592321979580111914669928396066090546200798237452122450\
360169104115632219532972695445551518284094539550786740409371853236603877962805\
143126766274036439823983188176059785281346639469560555811845893980705011357516\
820680694894385529135088285447348281517609715423859522132730861322041292330776\
565586927909570047843039556819940159642233595945502281056543779954708624485590\
800370695015608019307214648972673163938925538159958617022059139730270900638588\
414953461627642604428373891251918478198500254982630358510063410344376334073346\
990312703558308011243548158661164679904704099547923812878971867801098152049788\
060504766682036629672509369396073136693374720367243003189666204997506525201754\
713578657346438364676379268501958461510696765363902447489954321997231906116932\
962287789461226566830643518956163899574507722109451279918853244493764877890405\
442242334709795872652176937776370796040732789702455829538696164126324657549210\
448122380893363807649499671963486155406090914159497678087746191227708286844605\
325727180192324631999466767892603035979578118279000471394092171939987407600099\
970695816344792336051061664600778755939545785813561911797348472427564395444690\
018537030388994721998308058834058367204730105933716458537773337382618819978607\
406745090629225548899083443584470718683462839079294708011696863948511850811643\
813460281234771266500937086434980810611925116998390691124112788492250107404670\
010024987554980352405636737156440483483522461021967504033422680901960919183676\
975391844888981030769313603684649075185192089980796748495206425281503988219929\
450163122444192907905821755002124641564387801147363534860323181769769925688623\
422436511614137835848603457291845645973101458014423391034366190912117514143224\
004338147146495702803681747815733992552787675813633597536055953938401768676743\
047462011227916421387901627178293633202573540649829431595005547141144066372802\
259064990772972153184835396210592075094818702230994825467297018483782461121232\
263919435007317776200669540599603740376544106287192417866624208821464827827943\
811361974467588435956400543384035329212785957488140007374970832504832785755627\
877386652839778888430937242195945555354368165329371988636343681790751801961273\
509345804109446551725884968026121015346697273811614985607135933184212517820869\
764413662803131959266299800800499938017991534491839141860014917652009555057429\
439030632354051291327228528953318386128009002420185920683012455768851599860366\
708821440361799497576930101581684048963695057071941618192298699854618110664316\
242154343885744834338880719947667423092554142522046461326333021925412332655422\
517900396237001187722488012189973986745402327831011155813888762532752346656497\
928456091175839397247695692295816479170577534606301700752743140171314093470826\
207580556365138365779777856686672314338997158540512838175395172886726792433519\
324279446404274845572204271370383384282433585631425510375691018147458356414678\
953450868562901848676091677061998800659230534436395717282508884259966392897124\
775740130935543924733240791820455538176637235332220935125401324815902989026429\
742592787894547500654994692121246662066260821434932002080552240572239843830449\
363282819228454889328958740225793208207774992126360859118902964660983895888100\
292388204924622971332292970377519931361009803526705244868532263744780463843256\
463010008144862912199457156447900994460842936828479652744612765333244881103324\
202517473862223449069723675537880339959666403072143753602331036965733231523772\
298744269056689617796282321898718909625100096673816079948561699112561646645110\
175597163799499487451735865867708404716844747708499097699794470710722164628013\
946275459233625336185844576023868690373404023429979586621889714158804575375650\
785042610212069743697096921440941134689942630874378569318126994043871459489599\
835002482339043529602141043479871030683534297708298332077518071528480882833701\
459951573669234089522074675311090200040877667734520830410725541593900525760346\
091208140284177420377130700842437158672936059348066492560890600621400735246220\
346694340437762973714172956577384435940054753577833647871738588319957253806398\
099602645405327205628731511229781571608629573746845665423600829004305765331541\
271689897462285133851076706642751110612635113161609242434665697007093299521780\
947571129105148114698468163620994912119157375909346546661760859252499642964904\
995300849587607819636004710267394007407320843624420034614494703242395176785324\
245348099377528028052592404865762846714121867299740770308393074261740145003221\
049726207151701671849128134389819559697665219201908137000367278208254808444077\
054889497735290074093964115215928130985243276068247595225330802824831409114550\
349648055883363143637880869268509840227543561095303877707012120002898032517901\
049232507788502590832634143548516877220099829477199602305243885580448738331603\
586172269203006710187874260694178604070699902507500493233626929932140946580996\
465314285894029505075993837424671389269904330889696893171221522509329615283223\
140401522472006962251931218769483286742002917366443568066358210533280417672615\
156230212428885543250193477471628043834193928479334861222057352401287750089411\
533192309765082818111896355024958467106845292644845557427712134742858861286553\
169290497678456625964182472669277834400266072794741444083706645758512376709200\
048312194034837292085600229027797730864854147461858811157024028731490423374710\
220512254210599660703538395064823345926097124425018477808097717267392473194016\
550396078670123047395765332806585083484125260088946584673119157291745742241779\
493354979891900782062130861080386551622375812464835540650724329292911545092667\
131859296769309032438050050470579802957471634654618685966633481647375637582530\
295286292373436789494660108835291361314666383280711983717491455000642982081727\
450617511533164317850686055995804144705051451344346613543491323777336900047757\
585040469935495286508212310688552096189971243934341116809879539624817085293385\
576090027022794974124179740475717835891513010194831142088683249433148178023376\
509533242995528594436834355197273185178049465583509919430937022568193180246844\
883186770873093472780380591552502312040642236094709885301607583705436778374146\
441160534217600459326489012510109436888394937501080782355178495090823589954072\
647462043742888105083964558842665486927650484032831218209192252549114726640636\
220307934550660398838572486005108528078987509229541520536859292619877916892215\
922052205519853201479261471085918843186865741159637899311216099897611097963356\
544490273435909832894786788397496610903105796567898848146337793780972063390584\
010251514800188040123088613129755420721536964927058014552750216146780869136607\
498122516216343548510063344349103534205339346945249747695508626569362762126109\
157268918512773037638397957159366930679492986483866338445448631276085510051818\
945811041464708454015362914582274572901534105798816935405528318673603825088352\
304739202146070349331910672726512771799141383722670503004288951549134802923632\
392882422079577308657735443007871499407960630325769589926239205966013855541803\
419669893243670285104942836217902424447773819256545997264421416458801833242657\
385618786789598523634784235368090599271199955978540144835966062156329516389073\
004275682540019235888320300191134975232861300651097876929455311396689555834764\
370807033156924647705668317087358183948045388753075171478337119507687976407728\
846486649791823184502315381055175873407189625387985376214371724368207104688142\
052492393655087044891355416556266667131541921763666664454613419706588440480395\
862840116136033685481345505093590314165725257605525869878703051193190755363634\
544025154523395823365871603816085282185007141035499360846627840750612368387644\
621458919217791425930064973124185463655995675129585020308227841032613715113519\
839061241596463339823900878973879933716728872035678948696127846918029884000770\
240461416843570964611623794845800243691534462319297027637045810546686186489200\
648185788447046137629428206142107034803630844111678006148150239136901396657580\
309396590441591251209695297358127309790325832927479399692824383149206259029330\
928601033239174038383427457113513984577478320244883860219680767163316534986730\
347454013999215982211167111512544258537609167343276999040058449743475905564206\
307694693472835650649910777679589265079832348108401822448911707496651040618759\
184748576972103674326815148420195697220747344822087928699608362935876316538904\
783900487427479351515284197270786143219658284170693904968157725682805012202075\
109236346551769315157232381050180225855175182478223413643178816520685066139422\
626534469728935978057557926078321667388980661251923880001695343252262005288995\
610861328799507595735547495524742430832870191803056477082736701434453937593763\
155017509351851587985050694639052319582925230975140740525459563140074366313653\
185988575773788784190261411868954456504216033706478625262724708543417597795006\
926490269511202750263095436740580164721315926794537943694975261018446608580007\
831271913160212350913829704258702336416046448461284709186343151986536546609026\
761822474718012253559968132352238667955973692580689597530371264802448204581370\
182034328690863716598337757108583301036874346577411062181431765563396210063858\
316746748091887170773765355898662202949987382744425547924116346546794060365024\
746024561895259093499667359512271273205240111113918523027067614277230922294728\
810133192963339978185503182934432632206469801012951704557043006325015625043150\
836576283267412300204950639717367841889100514252530524968862567387384777966286\
621649736240288369309617354373373136677583583570179447145747081249069802297768\
156882572257089498908991206605540252060801322450482512081375674376619867964264\
129860594311283000540888188123313347297473121267444431186759432091066818417810\
265573353262138773747375534578279041511593132185182858877744177229662046913866\
020934969425605364506621333173259619876825885942987942670938011410541539939189\
608363619248741879169306463578448072156583993120379401183244802015567141428598\
637278598469707404755436182348158796011413662352454806720345614756939780122895\
658521622561696712983690085390043834510362995911887655548585010382420007282573\
831915399075270712724127201395819955356637355128909069762510703048920279452591\
556500485530466782494374123417108451112727160221094193145540157999752575970623\
571196509207796535145582849694641247127262752026385688988076835163458821474438\
221218629646612627082674226350571950473923863507541211664830262009712767100489\
826716132451910352783620701285444467011130523252269301508703063384519741892706\
340692454588091376803729575334680677935046864787458770737621925305287481361985\
113857578454292910766542928340713435022508828188929152445277839874721900813143\
807204302072454679317587784666266568465288615076884031223212187332960724426849\
433913948234400487947318100156723452617702576708867907794884357597613518177223\
303246999116657596635615488804049732012975600952659882349602233294960423551178\
727855292408028587766780633702288000221810335470733819373826226757192925933563\
709540615727780572441483111640428020011737810453773569712267028220634931269054\
549816718499502811568901079688029001125658917905559234547229213785287232821812\
125034518205954809677227766071310177860343882957331820642358723699341009810617\
234963824686830091332565344923468406806939017473532015044406113834755190428877\
540607758191617811541300399257403786443591301907846113155981228743338330985378\
397280207272868923202989439733948198177571392474916946466667896123429109370338\
793251233773971388025498350706646550164356596853145826507561070572470299837409\
048601724376419814227043148037384529368743600536391267265076156807813142004122\
411959494039297701634281240787208085216663064592305670320709816172252902696023\
063081292602279781774357161381029192980622509729023421402721191693803271329832\
008372850667961628159235828668657609990441599158720394183682247309036694969071\
774570121777144672683511194579923576437894693565354208606297301046730719822766\
077439302309468861548281095152021597052550236156478355794196881755560913857785\
219222596477699410230570038366747623550697882318965569824146502867863189211312\
240606180938604883264517308401695014208215732606429222886911152502549936021800\
510419326096907384748832391402415585332601152850704306609322444248252414417460\
744488445341855282414037622464301160849294866458299855205426715174054544202062\
807034332941069337272642970668910815358484014909456938246216847992970706873787\
740628928325451342260408837187219903835552674722094123126765963381557250244846\
112695927469752381449321640444689895162240069283709586273806888336291637240041\
875958645520463746275695830507984538153471523066411007256923629349276393671091\
313512704030545769699668455358471455918192837712462583521412445812027496607847\
718105699457043360508168509589453746307951839500347172519484435994948544685268\
129735901906906535989033569560310064479682631204573191011544496555112268417325\
152277386303081359758217229059766137627641766163476909125070161999553759643211\
557534396621688271084036751192999600088624632199987541809436005308741339626929\
982076296680154880905235587186807616985560604341753925240496799964651760002692\
691655169875265250677395085130408053884450609260109643688108942026856159073899\
850990825015494639182209700648455366366899685892286382159711076717976789750115\
428087230391288788699618678930719828675499197432627093410002685103259296326881\
852414895791244327648721801452982185749771429294366689378364382229658591114179\
405184942073570645283259884591225939492744455714667765151145692903139525375804\
633758579641581163621872276615189824122053513224224882561677424596765412540331\
784498838411137607350077200856972776264873652783389163614249642106308834930890\
332084877942864404972226828618599466893437948513348559058282069646123946497574\
122362831397733819087455803316751727223866473603363229422165312776358477306315\
342973727749231497394273391681398751716501781032613174550637765770978869597675\
742214937163528845687419756069536003933733202065164936970814922958343311631037\
274090986625747050514702272309629622876768936937738712390204651672955925396375\
704229682701372159784961803623480433790639703585582422108823529872394968853577\
050451828950991937634747320351938281114420925467393367822925849653220080015263\
180291408646888248451312773062679808155954764828504172711392640315538504058354\
882187206324982256830837811447496727888333200287176700343696901126333771406814\
924856099222370955185473844571790541768739279171785165931986828875641818677687\
684101914918079399611289070751588545524699476508217675677211646636427681998522\
410096521305046508340727574484966197616146084059060741022144497622366799448483\
777754612007723490483468047995536374920022287112718513560661682291232392180055\
827814185815990440624052625463677109244383173398476328514706535000797831849158\
240117595659005350270640384087071233412549043005892552683369109471018856806309\
748638940766073009576591462156505019760734488992170674595990100871084361834433\
277876536825877230822334434543292752645035082751036885278769677924752905435163\
484717783060043423068025104169270984042942326154928313761218792561598055496179\
934882234043222837656531886125750264078045152954197194195477977406155462426767\
143364705108681554032166445251623107122601230893710475506825086032404639086714\
436907732441343984928414678828471479332996215272656768340104003538027202527541\
843522537228344897065811560857105993366677451985660472200841601908600007880595\
268182669131384173418199055901058235929020135405146103729259840892444057996292\
612098298196317512145353321039055651854357550155063302303939832174241638876581\
418283754957382481357953537641564860019910209763533920754849348388692816112409\
042860516889724156259375795831898950072924596046798855441909311233298527184462\
335677735993334804074703720532803470697637002715728202307305769614148719664204\
255727504919503663230046513954181407251089307094439783121107332766875928037765\
071725136087557193764856367448558888257887661339184493021191882292709019500146\
842343636992753199546115671386857045074414321633904078029992349058144656520449\
623351543572010554182060440262989131818118356521480138655484650393917442276899\
832095994734532614851533809088184406737269357842931940850818005411125012034574\
453033313973804469488527709899805696000519141141422794776296903922415244615981\
368125575139849403015890891283903969068237159676228265437559056160300204572745\
615279459651918250071334871565451017527723448508700166716220881347145595773312\
518768056485291054073928022211200328627810564024398003807019056977396529787790\
988003162006689840372155196243342979928100956086160201491088191150979379290036\
944991206217653774823719553245806361501300980865044242529347835698514942884633\
840196508628261926818181331453522710221617868856397961804255727094019690419527\
822189723711576046001639909088872571825104688428346189131812029696413348931760\
054804610495092798975176311147402264219675764519848872453240032533025182483077\
491232525668847561695423934889778461915757944227708558205785410061634879826139\
855509192493376344196938647024154343282328276845684142699438372354025409393730\
738046343438282071965531403267158470169414833139149967410908125309984316312073\
108505016906329319101821105395585567039824196291695207657199927230717637308136\
423894014823262654705509038419616639574583687476267352525581199071918362373584\
368718343059092217995449969222330034287082269330565446768367767558779608375718\
328106825559568543168045747689684479201244439748747005737572457408749217827564\
247332585933827183601185506372711682381424624589045907602969214280818057785601\
886552690999279221547127089592401794765078445144146455171727245484769416076624\
783260657354138944619885837567498476780536983929576326602264723992041365216237\
363614666403231551854151548111858108443398551504367348070980163062524751019715\
046695459749141410113086616816368604210338807456519949324586116048711164862799\
838024812539418990136377273111338342667785325923245333448537596647162083385374\
122635553089374439019515415756799424532380334083072168419947899681242688846165\
970608333973371771443649867987671879725126150631972885540631915126103864962031\
374005154413457210449044670519451569227393667324976857391603105431148168922251\
592576687809534620488181913512012841625814721027809659799919441603443841823262\
314480816732189123799465974694473719947344754614472906985885420101625230641968\
059723722842337324511406540283755263039707842698045973210194934570025250559594\
698145422107028369067651113380082719704304519247809251178562729103526279169742\
580684026273075841902146284409178984425616298673909100537002978855069858231909\
288554409934577175078784925479171378543226314655666153587021169160431720984265\
232313966065488930853830196834019241368671420697276336719758147787236143301726\
125552055830024756665571711557695597207311136616476492124100074325367211171819\
026986473496581301013671137322293076821469823309586260175527216725842477594432\
158344832516677179538137449644406567381383266457517449057480046505684021118589\
827064600254984222932072749822069747698062260826601109618485569352118066229299\
403801572610103842829608898746065630467985022929902092919324617716061603848014\
225088691237342485864417312671847466345121490808553212758118947482517859401758\
447229142593819966479033908751036666615416468654700720220225459753480984235013\
648485749478855474592133750963767821654279141354746700628127674422229911882799\
813572690737854690911015568104297173057788424763853740267974152370946246394346\
051216392451482105079760326859866094008732341564235356676663753122763480101077\
045489051032405795659667413083115792797480966954347260724741069201533920909334\
582777447339616500935752471124170750635032088677174121934951466676387126373728\
461160408770630158376001115336492121902033180685003246663792217379792680466363\
761955836204719574558817255112000804199114613633955520113003942391597535667411\
367022325519019341764557314694822022252295483332977455605137307742517709774446\
598076075945466065931031273487155532643890833837027738220743145689445864371754\
121066049337745424904700149039594657459437712378972800584293962105526750395663\
214923767298140663500612023607935950725002611882298817024409323060665400972298\
243353765243779941591851493390417225014699742533537805043621410935772354900881\
869073902695140166972148362616723323851117638972737557228116899199803995729374\
603221728192845340933258441169630406238300354268874290211824298564512457952073\
479846273461951045524256137362994330149839372911108705299695191835336505348442\
428480463104765220834208593651730965844961302858336548195435981867562202941613\
843211632576859825629672018289067811241868687845973133871404187297007119198677\
012931062930969498993548139218759288048398451387407586430276561571473351835440\
735062553123436649600531091488130323844626520435136290262659333068120511588851\
043585699456499388695707061119235727571102941969289941876554368842569280638614\
351303106384443343133961969797335615232426664170663902403623655935749442510383\
568249385430663695656283813497578319090242770499094451411112412302060434223288\
925974914382315759079844235177845411287242594935333309857109787553868398175482\
521217518103082181765051555634524299484539045775626744657855175914891622511780\
705328811704597405975986458300800561032233253843007509811343101204508331904228\
654685877994401229656165638908159592239403439222600101972217657362171163599025\
757529000338660227492594219355961294755185136993932496927866350652388267689411\
676389089823146190959683386123118586714957572705756863997454271130365918183847\
178081808417520100655662130476326752494668205997463936880649990764134258089308\
204090236323835178306322176172064336320110403440994091584051468783262604775680\
407126154842603468338802680940447930891937342390363864402549244811573907631680\
266467996790175567187064136332402887050874571658713959164292536144025978402908\
713437744417589566558113073762968893475271737113137790003100827293871224879869\
141242800845027251225463527219920187624235080278447967843370236807361439928590\
481111125419311013509593127276611248889546891945355636218793299748845867834814\
486269804703990091628952883689113746167315617024100451577570016037783703395725\
392613540532501146574192248012182431698530353639459885750411326222400541097051\
949162925743792819168762049267568477748603451383969467990943530558615004279444\
831120630905934432470009375367100560449265560347274778079078363950451876244839\
269798731353528434846388813323043979277480220152961923554860004734273095078678\
062530767364333228241961324270565577945226606569501618926256269482380056950336\
491504711624285796896829089690583637582782838928955203632239309604204622878106\
376581117827427625323405055645853432873936828810555823020155443402566605611991\
608331245276376749383219523349563178625842213416657482628877447179338703290836\
250399594515911132550505060040551933106785402214013928930774710317833410559482\
918371307692456979522064140227958467058688577578468725289470075085185004530687\
570783974666384507360195357370737853567003625855820667372433386238350663573235\
272550298747371571049578276193935635016759283674230853838573512761288261732009\
487808731297810994013720875321879621767507234310420409830054307545430893475609\
999670530062600893958753980300478168171271950939341910683317924294515954385112\
109091722673218321181622795705954478225361268295095486221723123631665072572186\
345317410723976503826472612065862723390028195090885740960057687874591353731461\
515897681028944673460860109973678031561291557189237969413783512316274075169456\
949086805441787597920036554692634446181773732271670034442667760460949248120587\
970646584973528807924153156393243441257891779357259017863758256938063425044305\
458827958137410756022875844478109654276517670622237069724197918021522914548339\
562562284607838662926681060526376677358438248733782586428850121233292472070960\
759606827560580289356980680090424779414480522461408019298274453591426130067315\
399742203980804453750119539726194484844951991140281906600326280269709544871657\
792318799155265031123235536396866845302430159619734922623522743230536042233756\
064177773162385607180504055918235089414216126043893732003497532633969317683963\
974083408761489660534676500201801809501790152475738159051446684042332046251958\
596479602895315590775472041875168042210488273979524827374967425882212290841842\
673273540506297473956251860978458070132276611517332515928012500661030784565522\
793390661195546769846706931144543416538587299991177255340758362673072059819231\
864158196833440775617358760115854106288590251485970663025662727818819343204435\
440594264174728744463849708875389243654826954256770519550050304857396719259369\
183132249952382903951907875007477419288341283393151436054565549927400340005147\
528601176491368819754058351813010642819185427723979888911556544206132952148340\
397465595374693176797126059326227357889369439528140371554981256229183602897098\
844835199959092724761429273847611342739427076465965860996751230503243760925283\
745354475985587192797451354560409284463123838891929763872245094869466433164585\
861170878840725956634464887728389814480697593346348920920847479336641147691694\
830437595998302984485104669711676118031575670430748683191350151086626814811080\
662676444881876373411910463014864339513331694386486719125305119771222260512927\
206628882836514602219447081969546319782481806230642959193438031910707567289113\
034166693906837665143733400982917691778335023511377237807008013449375124805050\
073219738123851625063208104966695365173928688581397749077190782452979419561688\
697223167521045066713791920865389367499863148664101700444576299589453219559866\
395809179418510560086861372835205544642033275428459604284332904254398613235909\
889616104911040370538129550774681638755768131629919025081570271907649077578436\
021697722790417283215248311154673779867534863300970984071885291772936383789686\
704544938022017157424305990922776633024297441704500745899447515007657427829025\
938963776349353159478320022542432672518423005068820208254972129214056337255815\
811271047415701853893178293987877127982748865671504632246643855553484887868766\
413556127610485824205891865197234353363957236099480816817397403119030930451000\
439618069123447708555149247296678508952198610901655248983577004961920373861655\
837363132652345982453199510591605837900039799695177706979524695229836760743149\
900854856414332722003498903384042853124211234021004981624291858924222434957536\
080826030676240154695788064729619266845275111600959053785483163671245484867788\
201725205463985586500358235002021508516423663500787760715198561452562649515910\
555074772785379815406327168195111754102288929837822254533675665190251216823016\
918198394259899975941176958752150927946376619633608719250944468590221362185710\
407220499663863587129905305552702841046772620212744667454521545772370823644453\
357064522514975678705171948005008025678246078181854875838922588816417620490361\
129043128167483207669348522857760679348464586576690952066100878790643016816753\
391621152056810844678941591233741463682113883375773261402746246664515098921044\
063818083056080401370100890741719376629584442169122790893283198267723332127920\
076809166102683872384324544206867975603948267365820673451550426763088181585580\
393191617327544295576436516201516644668557593725940971151878369217329993841578\
827660226709252914746182341866367219311226984236086854520418831280199780334878\
756588271058702370961302747991323482258137696121704622742249610167337547880106\
340855148662286995691527162633501789803398273644877428231538148290013432567888\
322876071651101159587187145010578347629752887433927458182768600045277571772478\
802098965643852942388173879991874712975874116541332391556510890877525768628661\
680719210903432650301463542749204474931246520147323197577036120450117479398628\
215253549720267179089505195085909795621538912180564878996785730688499639032778\
132294015207305052020960765468832525175264101355065145029802134353365875559161\
683674942894412148048659982256111987972086693021284995016647952381706495642735\
155258468462892001418813857435106708068039340064939802782040845015597431112977\
796802358220439971891827408195202452301617599479708280586003288928867410624713\
286909469466843904201205774106699462157238511091569237592785586844939773606880\
019229349147175801631652547472728540411178250031540494164953211474507549665480\
231018551844742049336821498678673878924957514706902466239047396630200661578109\
357920463627713503946978434359174142643778031190219547522692089547968878254856\
457071355666985023275461239882302786890131757321917167849301636501389552913159\
011742248960737494602029485127985592450773793569081333869747037415739655825885\
737413490358278143407462554235516439689046077958386649966494450747565796993514\
935135973200133033720811662891676509869480729440329917612907230111404658911382\
427272632968517609428418793980260523956540664593300789657415766970867192092945\
253931552743735282800482345750914485335424049182058302117366937604973842272159\
134835520404257616992806428547140193685561411027658280857040342325875865694650\
092023084983082678432727748692779550406611100435976476867865384955027225588542\
249861365736317396148099893608474097176495471543340623707326586975276459213374\
297141242070511225644949907914419244483283937913804206362380029700282062393180\
756192264853973949330832519708731384581198570171002491365252271986840831840478\
469364290251112927517669939886203438789175172675722174421453857611002834874321\
905243332939928094883906152940641101879375394113430317191685263553167352985363\
986776163506611968224723486403409681038585046067296014761310740240074265340243\
680379210684461534197080808812207680711064389058863421578528258228774367547014\
083100311384298534935282493585040362345923926688311448077546710591069406547237\
346587789419248732364370240202401751759704682954025507967730984443179863541346\
459539022765743203518843111559754635233045235505529285063631152408117678464547\
141327981340659274673208354528227663430595305473430938175037787231764648909649\
104425587969404117052776629702325695246367177584587882202846053053054661817220\
965509818396754440119356702782721083355606446657522809805862870333075787382108\
211292102103896165231228487920328037665387201958205185618250144240962836609846\
332252841101574173614882341460287377498491498459046298890328492560839573991405\
910241206845576248034590472359536883927461900635300602528684434546600578574568\
725002887974078126995014359696494764149318504962555216944452855745294807232433\
027736555745610429660883569742530736111303108238000315853873628688492109174918\
033905482850546278641000131694719989488942095308644650267961007150484392620633\
117118608612081871573273455137001418676869219670488590103624233151677601727174\
223305049530615852479196288967594442134623565193122194284407143097895505598588\
624420173628260735051163846357111878468347158834906233425883436142747938295483\
412634174168826028887355478166532383215407683590968120548845481718926920620367\
096536056408987592845081574274786219413671699432294586933049535372296799780048\
719102034782473949179717197672625388495281730513600892270524308556487450412160\
335515149310396418638089265951903435019795036622993710706109803283472869345415\
135967181506297663744309949323695704953495914193527271514187376586945122363671\
079380115242166244941198004465572125975358046399910239327977083871847534799854\
360306617746854816743025350911414225363563383883543544686001108638480214792763\
158479351071062272212328900030400855510346076806651955216865671891813348506806\
937700390687013762540552466849767101445993496184224689804170186023510196499013\
377865083234368694437821639202188508599658131112658894829177348973611017473924\
599639788237708464359325646405544663545645062781650789100006035789584714117881\
140014704556579246847933898590443560951939559830484119070859683908269696463010\
331291954054835663347075482559716224095724560789952275137431729204329442145717\
570211196649273295045892435115422498928418293096801627909990143910006516066465\
476572330384646243951138306777012416199103093992894039811606167420760338291759\
306566044008716224229486412092768005484026354604602128643129686176048676854587\
332459049044581544689760012917675937178287781574634474974431747224571417824959\
332658959901232631654318097855782577535504957177981990246125777284944635352521\
703343393134364513830425898151477362367919941816883285991871572172287651994703\
142482487875964116310081912766602885664731096116466676711893676347212909630086\
923962342070886293386312556128734065346790974199382881663850602787328004850544\
918201993378711308294933902544408454452831107906717557815800938675360038603557\
680639810642357510997331840280685077099666201399383021570574904394911543830905\
615830011301410991395832903258695837676197074489191132631216409818434725600876\
621115969513338904625890504021039716887529763411565301637614017241741275415677\
573385156334096892443014061797497537174425664734934545792469679930110261943376\
364486675375610876916130436137483304794412259526124151489816998076810184818957\
800383257633878043531185697199517408404042921573207178938770895931557022742728\
265816149740801332063433840086890238893918333142004515961400898611215629243641\
694725431356170181179200559592854391833343694519194514317154135007420063905060\
716765819058242162028976968440905524544700128188685814354954542055668983878624\
483207521217410948736474109157860409910258555863940130915517560027976586538407\
568236397358347233648255335205247722960881930540821053281311304880926255044062\
395575903919443171415265275408089529865726307163407322439503799871488151262446\
063128138524107414359794085766578525169438992746556218058869206623250449370292\
128851274592702137674834292777741271892215540626833008286009017921875382948629\
150162454072477788669988900709805056925069858183739013507639436541872329303118\
365816863336447793290070785745106113991480911099712792943849391367015842418969\
109386238027257645216678140223613229046809772487782686418812287799343297670716\
387056951199018963230924589999021797571313451742593603251369020883958608546750\
477732292906284648172031950728149118009595051258134475715705546784844362377691\
481917998405290667715479291174266933488585670881394734484862143811115954754498\
528040574225069514647200842462447229932157922646721788145206482083027693611921\
738523678567409627910852342295609063266671048028819226371390907376844480931844\
498969929310603687009530872724102621367887069726985697340022803635047552368800\
495586973590390206919312830707106179135567674215877257598221912943186457454772\
051328945878273757752103071194255451752885836334459358005524008931209918825706\
554866392314480862374414595305590030658095292440426176752542067710335536849552\
465464357701017897964163130386749523961082890325772448991862299651984232782749\
959589340831031293267661027241080737954628188076342698617617033100934680083065\
183477132870542549962326032501161928273021299349341397996342615126485063473483\
275913631786824728944493214660618479650573040671874828415191474168416908972295\
616067007281977661083114106186927435733553564627254143794098134638322862433641\
334789788909126415318730406053172477381035370826694106544406226612937662336325\
906138381976319401303989855820948209539186024819909896648627135664987570149795\
340067644785868204910762709697757054915087961976919441390159412568326794263957\
901827825455689699680322317815897782256576138716770132148021155272767311173416\
531189220384514736990231647764759388060160755374833823285458259506291023936001\
654473539429828766820737121927529990736974408113423720201314234045052593169727\
755905856570031320224654790866575834512665456826305546193147547187391279239721\
184692177837620063262466814563224968776560280104550069682815286575425982348340\
092647101283284306430256976526446941350270621458319110491793194143493017703487\
026333460168710291836083741253275877631540223039562887768447232803021429872949\
464749395031464918041335142023938815248759373715928383266003540642895354169850\
619922353038292186104869182552690255749889319778472061991980501797226224763718\
144597964137138462079820908395882118704801556318520813430516852374158421747814\
580115630583117678770897709425691536078780911362843548240228283945658041952201\
303119772279659598388409363583559011857427044826650563438421625360498340854389\
040285430492689930661353029562440020282673436728719262079402973506179692541012\
917537626608253968221806216418124621731189673347430942208876706063054671699631\
418215590292435137843643506322620931206801431691638497810122710715021679247205\
626346870673908875675394424482708382508788265356558197441663577849241763188148\
362164412222323635499389429907840921650996112353251201103142338355065493889092\
759611053693980830238610371304756676260555830927849435785197856390534743267450\
560490940770859188651065545300819826445252817408774654789916151163487539306741\
930233427583650496415686353883449297026988302128385075011730722531947412188603\
060660866565477142449026181091509558307427608294858110352011070330305870925795\
123533892215724742478567167678835897376761772117513058693433553676490367437388\
170444054369873859392664944715350381525963250553002049067646244585226052139312\
196299705782550327045779804485895607020990215344669537068428452178214452386671\
046940810750616731747856971897942787887160528345042902212243983433906947676464\
131458180704818421658186036693764098943364938142679991971798152335108415706476\
165027604538632999522443033893844869869487964925415099694766465468976921648614\
239235682753185096540881335332360315018454309181158979530096088238018229548364\
665073083461587537390946753112554261080409659275271456272255273501217657824322\
012822173684540188340911256369605867417354418830302910422954093121391632516652\
716281214020039348524629267702533556780132121100074687510492729215067733282463\
405433051464110169458015239281064871651193748496284714520592286022164309227073\
291131485055146260876549103696897085781125139947748938328842659805612121831611\
530304191551869772206964070517065583074542955680205586064791985611372083202139\
733715897180100934195299240863180418622996944159001484453489862067964505307736\
118399136114400730593042057496786395373172912778358482156291480030842989176364\
034258219775859099886154229150648818548939194649244244270734606536628241104380\
687463464244524892172700800269889684009770499068790618994349059987912329939316\
865429778734053637410860411682122328032144301845079668191420237115246394822017\
709314272988455433627298647398360676197355206465441486062065827311631505717724\
208876556248722268292666020371485112146244149649995152029735696346895793491184\
861387323567372723628672295693070222728261893624209144683434264680026607719950\
221650936519124299129890949673488691609975570841538563266979992872310669681200\
387350435700139029251245561252590033221973074262855770905192682914207816015920\
684685189496026803241645023217978454935003686853112007439987867535318804473478\
513954317739606005536111440635364216181260212638657309469059325590639721949203\
805628767882874309190961540686915212318936278924987012453882907430838160748627\
389678774537823637094678891160341754045508916975405922739404926662391204064685\
581911120898761302214445697256862545295013041121719980910669115415746874858495\
998661990839837817126331068153364133204083616858950592515016827684752401634734\
415535782918949921385910911224831818717219486883865713040482947774244406010996\
901563835237827612909596748151072258291813299828742705498735967748422085620675\
206715994218091188510214643881536079623454150921340343006129978686825796029384\
976591871270680515270714186196057390318885128243387268376641020767175712661092\
745822335229051299485282816135925469906691601850275940168162449823038608801382\
424988306996391762309396134854599451780067107822551932420508739012679549784401\
569898875079123165277472128947915317312845796906128837001975189510916690850679\
856760516587307479984144568492492127979028812424100884088477837315919361320454\
826303567474927756541385599873032159054076295143637885222986698185149670834860\
527446526449817637532110292306259036863585679948914924880896041265110733890966\
344359338441249583269826824276010209896594546047736523987118017518651367339339\
449442676775423211910823094237289686802203474395932486237694374108666028201747\
655631949510872258892022152498032458392717242795866773783806580166137292977711\
844665025011525812407307096301804069407496556849930872630421830015704120137922\
456787319402582131094546109369974922261858374651973232203681278216797854825403\
853579958685209671195632358035567447058723268627928206036487179366605594411753\
901808983779028084344224796870885659527161278836340432760800058045094816137624\
175734203394779863032236738284257194060583547437838904464154065790999931856081\
243084635339679917228812637887991600338337885884554719823167938893362837773206\
411466170259542085088518051290084316307150433107539545541990796465090231644288\
344740687197189354667356494568123543049612988845376092977089319942146304822076\
602353982432157616254876128425412106161133133648822454132448975453566265349142\
408224913402066175007211269430612496634133218785546802945912491721746410381867\
136215145716495073219848969572768726883643110536044271571542891366815712744283\
321333976334300050812739567187482635046210393143243199754919580909613656257002\
432016658070951887305899197870679368295244048534202386527588450776292787146342\
219301500563804572513175940122856113554368542010818237158690133941061317832929\
792041099132745410547130717453300472338395654618716344570340185560471813815780\
898159470368494257868219263636344774282218605964247457947217015002581733330227\
320473865732153469489387723270055569460064750620414873316115686228526907416880\
934990174691276069271989385055648400243370326559752936860238742696015916450956\
508885490208984849887625009506966763593812316977903451178055406673492287980647\
697339913892073568086405247056322186738247850716446114309809549488092473731800\
719660589269647674380197026822410328865611136584927486696312680737684133674344\
484354915694758172853359440100633227523057839938753032550721678007959541067981\
610512870123532518904815935617217032398625299239141178571556013166744954143136\
232251343090938117138972440195123082103278926583628502402959049404929415327768\
642359797838724580593951390567955604890224296007343177928261847519339555645937\
150468756199757974316901535721440668758086865545248500482735713085317312441357\
923209935819400847803553026661789990340016450047094910138334017722946299265642\
334547881046056477140301707861814478111616247962553239244068009690117909228513\
527314795503645016130130038280678845335633911351731410242678439770712448559939\
264307744563271909032088393518523660330523699761313173348345268257728496057439\
167155395158529563330081941842265634997617320668390993072216558028540545869711\
890122196602406694608294227814321543243657610175020591296018436712618332914534\
588474962392709765816939404028638746776848598592213820703486498305225048439168\
577534548195511374947189521246181415239902153365851133525354141116564403339910\
148171603055960643734286803239100314070941113262326323998396995376192271369735\
001483985838849714481681517149745907959017744927744511130627284201316358437641\
792093329243167440055461231142916162639760706635603860065608371404383030041343\
474639895484594511269703337758329055336412225359275249734553483337232586257096\
338433420359664089728564431789587613518100942754520374008880107278848188959516\
723126211891250019208737338613365013734348864042522520017704620726688200704465\
618473896823556471471078268263004521490432410553635545255918421354196865113739\
788666309750081425643198474037759145878959060984574260788578632023144025764605\
246372483920243154704271119003189042040333817000986422864341807477777798344255\
598930892290697457018720204681829416752491348559960619800989484474891662876041\
980060259700127365693936297540932085945466756234080461501354582155086320722660\
389340137673057625340655516981527778559929988241946426651676877611917362227020\
922783360525077048070759071803436335707563828365968139953907607270681813656575\
919866837510546115218083781191964755409670958249560178282456727368563121850209\
804703624641761986827177484782224634903278108854631415173718143297928832562499\
371156297157373901158363108704486025103004969469142583869370651203770466308242\
164894433580005968687302148524928795382422861000736420364967914869424254773064\
472810425508729193419606670525645064096087900244040642473114135660990065146788\
809327913849384648065461017890562764563556445267879731766008564598590457594504\
529363273229140340624093438516314025260021020853250028031418098375233896395830\
762373673342548118934277189269303398284120364951771760100346751920815833829363\
212820663131089145602014822523045528829442917400514389131182798098198484322902\
983869628251487394458203910940653280188754077209490747861179157700171903879128\
063762366174401440452070229245232045405762806965793085020398121837840206720250\
120266752955313083494353471936341772734063602625796031365119785548566937284640\
420468489277157780434586776100852896073693144133464873773525015924521197659754\
590876950206056175781935910774036258357653600808937653281370843694390227229865\
322218288437400138825811162971553457567403214986097554286886579874369009497050\
979860937702783572233883314539804939892101714335826189674003122527997303364571\
061607284968264026682347704558301545855748271713724358470994861372658713025494\
024495738558899660535370903389251145405558124569294137888271651990004376107967\
257280599874820479895678559388584994834696519493089781499727763473305857071790\
270935682275763063930497022966339552876337991307858593142078113351114320121026\
019873042167062601435758411797707904580838088498088166626185358835592420063053\
024643462899230820307080649410730415675977100775239855868675945731744767094556\
842689038531128494988018144774566505096148989915176299241642878000474138508045\
203295305391840976899463199695591278676949319592733662054309181205566924621527\
407866514323526592070708678795586416860452775357502074876714333770601191294031\
585743107677777952135902613080828983248839483209499884568307672417592994303402\
094399322708275483573885074199171369400498798586194234462796084144473566520379\
282953170163351181530293127230254356291055458639577778022116588666112693357407\
294436145574905637200712825448113557834029016048517605243296981355027471470526\
354293526481366238869584898195167904761247474468008477258871394552736710887847\
508425688259839636830667647664513308234299538406371493965512602596412691663955\
329422216277976078749552917485688421824863746324747783244929832354402571567607\
928674259528494338989676434365754823075754784033503696537687365498022398780119\
203544049128826835941953971843647255409053142105566632073204638848382768379261\
055003805739537940215136413662496749353732410440434862382336249204953544285790\
530654527726507220346592904432022017163242358313783512521095764152741244657762\
616754360947097433564007690414362218068299355151091385565737341194890321845622\
044387715270048211012761208140782452649886361038326508480852529514952263554264\
606718445430426533826668610066557716951714429565559054236819339387175320386411\
552242884740879638726559965035453160178728429959062489756943146572532979956564\
427538102595666725587611303086354595086848420817023090377601073137106234293378\
074547508237856054947987690213905665585892860091990456026032063782729076155397\
038311018008449011214811927779674839102728820575597820535088346150021903483765\
764631105684014250421063783316509790934725949942661704520723269101718680689315\
989500806239975869483897052416122301717289403904669984942721339295681261610046\
509028456212675739414392795031958650235048110471685635783540426485721275402638\
812871946209203813254648116170313586767106436587660551655133113317022718232156\
877362195848216856465284606970661905439540140651063097333651381196333165949030\
392164270853542280497980267149118956364251748913441214263615547808921452836708\
221694025987112632114388529939169630480481789296298820112380749013052942492948\
016114353302390080670657213781679719856861302903012993994451249846901001989193\
605982791697305147594346496028833289696608150563450566093781292361334905857805\
509456421035309073601958446371216507319820156424220132684566877418323310247319\
218685156434120327170305730660785175385097069171707917252855117436278713016009\
522089202424050305756402153727369592667997478107072793723912355777093468284756\
010763012791311995391762818615943038207783982432617319663133362063793496768750\
895240236424692319045416738623583604828374392788665477594859028920402019395937\
706567321194909910433528551798714035020307605578201914838828809464964820842417\
669924567583122624780703905576531412632602429224362037195329185547180915964431\
856852057882350103091076128060445704425147997589608880281259978623877435496599\
049296732208449724434582435036897803651849099512142294015669174534168383090352\
847796430676086115997636787204955057956365166938345210212057124671890236358379\
083391190802068995968969901881223218552528693485736518886301604529410281797360\
806895495240360664889446834853573711706079943054719216487594313141269759525166\
102522909575375509509337185449000729076761263467652916646455803715330602055347\
416205556683808723310114567060821971360199116696011772653512414405109362036010\
017584053344689875653490024475801849902851129056036281543727967628831238165774\
375176624564045783704964856909042818467414341076607549841146574215334379628252\
377393517758770399425521318169017399018616421413543927797334708765973694817101\
033181863768927283763660230192059197929591791482244163940318041477900282857125\
177644841059315644675363309241579702126264813042808389337706723982286543417317\
364814245629661807931369532509112875469498015503179945166912284138446463087410\
279878209558773461766677933200636161412998361123878526984496762249494601622241\
984818828441759725089650432388388267762115386944907223140800386409667479556596\
033658655008345015746681003715498121545591770828552690587827462680189548409854\
806477673225930833646432666789519813230343847805542571189332448803371027660806\
642619768000401457681926141234214210908378826034880398715896746918681275950354\
190406896727813951321988421183256109487473527648664367133593683737190716713615\
344289207252730570778056160659161544235891078464655473695634397073722178185912\
301094436923139522030101136740734570595261330293674379321204061599708906812035\
078623541278054168265823537425938569664357627109735408652303333957492497719953\
466625694281212119266748886652563151697066072400219396266842825154475614963579\
333658452377240996873579532275919009797415517213348453335786814228739938519020\
936782740215599914204564464383816000999065053718814849381608655035722706417743\
866297516789666554999878895721790262309084544806465185693092556964531722410894\
516454267967618197288329584139351338445960416728545739914150804959446613534398\
450142761805422096598486710994408250815132392521360695106267337367922332214259\
952302229364090476645961545055948420488131144131720464692670497597490599351169\
204390276051574466773968708032478040634377784167250219888494354098282116000727\
729150507598693656847220169410461894445826185511600415494510628158872485140345\
190055563466615244737496076611357787483740038862938848861019502812807817927450\
349584057529284529838909157649132473101056333147813464026504626291567537790921\
372478289700319632596891251330215246561205435837622686092820307774168700459043\
526358174946367245517897849317506753904640416033638472405464980750039300245766\
107146606057194951091402482327352669122149601607089722072205462881003873076229\
689062152629711142892734633921437857583816799570965129751212882470762293756572\
134890623618601418995950002939343301174633003329729078340263825278379605300004\
735592754684871892997206561365337515374779219624955179692200855731479445742882\
259242287677732128859806537046540246199387296499359435632302131108482424950180\
067571893986118972621824307783178334458570361181609413976344651627256582886168\
782130134255890738184057342227527909440150796335069630683158584259597583441339\
316667997304805147104205162135621754090487773302273969806564959009456956985365\
843208356206159345292542418929161730522209793524657122706640054135392126209537\
416070259881312679566674617093237174052362963196089365298444250743022804976641\
640382829257137163603061762596724995717615369585248664493172010960853457234236\
254503854441441271638476726283333081895855936476006163524985906328874450325511\
377681813053346646699501547749324209856865935049010621141299141773099804599788\
653998555997208865272973882165087748001986686031630561230114449331935784076334\
183313859772732345270212652657729626488462044050323775092702644091599212652486\
267716599659132457154139254001538116996614014497922059852865463119881458741918\
733755185509581187101969241766429242389375494516315947724531101984145080087615\
562644078821720935112593426184468303521073794000418382893605854407065172644916\
885787285452650728104911722412941522346848448989734965331556939326855402116655\
944907515310397083246234459570196856432675680385445193586873351496819597696008\
201253799008400105463352336418912796054468763570371065141356837155124483618491\
925094994141446246321784596766719116487767444895994644315839584871818846627420\
278441899928803275124496669648679345894132986023303482928876260637136445807371\
340101726992400314099962898759328239973248787138226525474190348822177498195455\
707963780042780145879194411890770714358011030266245429362515054346165151986079\
342385623906645515459086899700987275783385647691033468638899428963619169533138\
310635144431946929978952150427343027450548912822404656751683738409173741484373\
181971188226411967029514001048449736868836048926288540745371246015784688794778\
131708392027701850083959940135078751064535614615484503534678749015340275140901\
834645675419760454833086921693902489806750922992294071550692377787826669912301\
589909380813372850555299059934716784235078673905803655389520181114771552751613\
837266566870550325145683158295906535700608065726990227214337914923752422195825\
551552739047664151524230841309327935561940500532444145395061094916327038715303\
701528100887540809332947909865917839654089741191987143734113651271643824052441\
584288769757149771141471427950829588702992792468332133705152675643942311350262\
877689034464663632184445921715758792411319963298754131201832522267869678996413\
293411317636653889683205119163622399637364006506242186919822306441981351532197\
319859101563625698621817485470888837822021617101491243249216532386557690852747\
254785968298124948068606644449351918303748366550817554225733526851403898786503\
007040289933438197230196147340864828347612607301982226861441179898436755838915\
900846999131405413831939181656430884349788299151717429748649096383896734306517\
121736027545375783431135217215018269592914932278747374257245721360256626384138\
952626279302130009966196300323252201313821884482221538525312767676304855187006\
831468403992681854876538405638483192100247223191661009134395076785551383704821\
428491510169897533907897563233992177890388047633681374846516892263571623071840\
641566324924108669239676012160108144560923213374291457844880612478637738826410\
208618024951305733883694158508782319709815158671170951738802867958015106788044\
933902480689099052919532844669682882545529207870809050166148536753308133690700\
480133882858546165406413320250693835596317424365884064726157576009934784114084\
062998236648235748554353359050536126274282001878480529530447698632263662782963\
274163701153111823408178673987661072812732577851392113807681541894440417632946\
304900618647807598912642832572998735287161277418336805175637941952440232128885\
491177415065311168183622698953190049592292508376260805003317433385637848674958\
223105863188940739807614496920179175139335329885885343364499791300165712868099\
995155763688357969034499847234260419431859912204658274956441376367770216114312\
700143477161201646483213292711825713287910584135786193118937459532363102391270\
889013912909166527192377458686417036480120329532875161201291706095927090777356\
167401939117441244712460141784967972824936614589907255008243499708909680963641\
689156962089845192562671934304717145630443239981556886935433726230261498003528\
371665135912169317838230979648522206285418847348693935943843252998753765119249\
233509919666893106839343099291774291126087972830433166387584023702201121723945\
611447336541276334027058454177857748524863164999917048547694843205312092927399\
866107526313197643376538029522141637423602372218506779113887258057677755437425\
357442389979633581971403227793561397447071194611416517615151238823627905648863\
589472686057334479728309257094391377951656305853890416816898769258083650688250\
093611926107891124270988122269346853198517066371742046809637665572893641713249\
386443340528873527902550868995093761512046498450930848209464606417794077592727\
351875061493452818176751710845023652044236776815132674319325109519200587674918\
493027769559654098122539635771169467112606023606943945721364807646499016637843\
748410973573009874973387215572695976033113712883158380306249032383304861952114\
982623586673336359436081533096204352318069905867253166796719897757396719850563\
320391627692961278450432509302784936557570466366500504235380700021043379054365\
452676915632116230708153866793287528039918102228796675492741413814600656548508\
777948994478550508894914805288265876884445662729390819614400683983080524037256\
950641143899331811663770163075193044500215661609123977876500738743398612137767\
631637994991603580029425394150936118287792564890199706361151183343773228780513\
781700685461893977078002754504705746574409611518650168872167815808016185486410\
808986322233409912474922580811185326998795736203036360120248633970529467124019\
239868886269983543109200456227916998441698832120180955945505348853261754254953\
638515063118962530921766529165824315900458349693970687658654243281945647647853\
735525153068989109796668878100256983906871131921425419886641928666875453772443\
176144635415665762871405535364287851801766219647126689962431948273100939741710\
425905524374968733303659687214601889996692802582305000250494743195788736177439\
811819412948004602950542736866923100793833552779750038359156208164728629951618\
141511824304864955870476420387157706452758723677080818059040842352377577575400\
884687756111665813925119356731909402096142890110964899571503972071590504247857\
829641913981864645698069003883646798367981012376946322888360915854430104942614\
876035037990344177685999567599330502253234765254688995525806289317811721823163\
795087784593437287864151446387303443730098248049249554003322343437805888464426\
565167111725408902425165680743457602957148128224094784605585432107534563821848\
048375625891575170601371468196421689717760549530199246953023901996148262601706\
284818796357991239697001594441468677531856458312725471743944500821629828304937\
569597521339743912031065212616962292811787214991497537254721293068703850875650\
615027522642033730412161623496397880994352708041669332272183593224279111657363\
092546649671249929614399075000097635710205091352172102674878381800459683310699\
995590778255464891283674339451582478152805746103415113435638105663770354879809\
403265266548458248684582906755643586324591807534607758016958399758064881377043\
434130105968843929917931741747428671251433132551775956673912061135467364831151\
979354208615472228327585604017733891732111418623652027644917630825994309391671\
301603555506639664006376991774482383984045272776417201122912290611855951275066\
506498354602961029657475437590695555075101859350758837894692340808844242104044\
351784510184494697766022432572757633721382667328318485104191372257279900302301\
951988145702121716572276518919027375580323980856028541791086963303805028305825\
415520792215467550998816607126379666906266962228804105219437555359934786322393\
330880742944031636339297431845742947964530484812667242960554778937241659254754\
257272948183035852407989706013833901921881647311557850526432810671078304253827\
862550735751441780943794515208769644180392945053371069580028806009592615542404\
295384939223669282518654578715415505437681721619494162439802366970176458516822\
418482349498561226122052594069468684335582880004236042671649205198300304006390\
821604948418223179378001878971473265413916596941466285446072011663385275508319\
000328193491650079157574254157264221073192131424033453260766000540883242243039\
536428517010190719596899622216857242058270080448845866160085246854711766440337\
454171697257316643571299349388718199291759466318132864866184797194493997567376\
889688942187412505181286522654368902847895239453189075978183784293738692711233\
245224027048550113680713014991275390637656776195040824729457795161472517833405\
829363143893747277449678965136481140700231327461989829246746688558984335554557\
604277573762760912058048480271999849553952672342626971751222462169690127800810\
984444255359151750836095039154280956032294024501253444800135907132943742644076\
571567194141395791922713654100901617029910319986570525840925799843414159079094\
047612707383047817895510947309066257504993635142278626507467665960409187273722\
547794729752121567356857260978856646457541013819301847821233651569977226361516\
999711623081473538687445595345401386655999956253624683462963168340979755045640\
501027726108378785182034937053327921389434083704172860535162743180971964185158\
133463861786405808528993261626747920282290077980614873787741173358302761312079\
602560784881890468622896278439020499837036853688102771127764916480789399444390\
409250759048332890872832414244933523646308167981840710198476936630553895402873\
674490337398474907585950356060720035878450430168811021442649884729717744959410\
584520038230125316607870885990663037128041215289078551534221312154711394784386\
313780256937275762215857679289152126300066971699384726344308284630682783195321\
247975797640301436814373461526469198950210342181762593659784532667602506674488\
467124609668661730097066252450176922788520569067359008431604124592847480566894\
697818276779475588470103788134571631881749442899892987167278685725466553677372\
831124446176730408752350650543917283196198305056380900140711890771221329209083\
766220493049679457866788418100358637383427091353528093942551819807934978546448\
024964273686684335521670808965836820495433367410868993443622970414443439610988\
612701962123616829423893580447197020973891992082302323146423505671064991136035\
773195638847191819769880710058067038705725015301906153585559014641266966919236\
290595038548687337612191372174427144615555267452282574000580347074835030814855\
107153993891683837311092750205817019512313117767785184487776872680421393928603\
421323899581851327766693655981806455715585403801215929712677686438428537188809\
179099573080680102254116516429854798597801200530325322575249974103543108838019\
843220023575674082733060839664255593659517583051615349713443826367990287717942\
890826604259749491147707142297025251125860603900529602402545826248325755757561\
216131279581281215685384085591627805709293724661243672058886815767907693035051\
789575639340031112592979725357775442005699664022021383473566037691695441318906\
191606144682518131601766098616772320663497456046509728826595127539727333686941\
755084872178893886406183984600371686896850918522983446577551641562981490543467\
626842114452483994131230385258051848680195708892261883252235536436873645834791\
469035678722598255759755960216814522299491973792689788065727749960206183123619\
125984229997445917931919070044699554058436069326731670892612617013398426718889\
342124987556990243059505953676654027533075503094906893359337655573217538335664\
890410728780373174267309618140745156207212598314724574830121106609479787962949\
043813324270611655269733179812220467342712122664138192914732789436609182787888\
276414614697642220502911444841844138184923763527714914690697433608081450429276\
576158754217052493940928386373294735778423424077954882095312623534027550350571\
028903943133681481995153566109244774270469991167237898955163904637498396603242\
741993113944290390576059074155553325065548215179292254764254508718962213113516\
699330454312000074718298006506387389892625648905439739686679432127054939232744\
427995717336359106333484418514695342981280896868740832375408026260594329862056\
291817544122229001840210059258435570500116263341389111647224103293543067992468\
631553900279513923299722276621299513099409795053020739055958119151243330404078\
852497109253724174743013883031797018441085704513576815129153624429492503752616\
110118373210046518961467826972444261780434649844070818194648857015566472912494\
001832315747489212272150548567617331055173286755555513727525722807015844443069\
091168420794485271927516752388469452014058436541244190068829957459005435743080\
561559465242288193127203292340924903397654714651811131459251905725804935151124\
366891654022600627554580176117435281431489499916146718935238144336846404276729\
538716752608133950987596207785727789249855982834823289177208117777338346633424\
188492279198052968309263756731847097048722337076247583698147177421148043213630\
941487254781492630874667847895245556100534989078888984592118410223597827373165\
212801974854134198697705439538874973901457412211904805390085525475177691827060\
709796771265972488441968233810582599435298238267236317342426715578296460105068\
310046137927489065603076363259810279366112357062254609303845922309569944746489\
959435280359572812207359002148467487609628497018798980716170871860113170396984\
354371096843517664924795544202742247063771600035752294276137432881027737424376\
338465481823242545858652299370190888474776740026800100967319726684955864544676\
707987877175135398088398320732770178046249932786188807671330925433892842895473\
399804678267914598196746901983068398922634392903571857330959662853884503112265\
863257014951784436813918535839204296433758389492384812217565502103554067105827\
726887575137843597979044491452691790592703508814671877816814014900991554621690\
142569780350359587247391497616190334804564991698043894828487160573309708072050\
466548034875571233312222486247330163998671379512788679864381025542560425357927\
516241316245495529731023645919930113496142952218531698295710406851480382213988\
837696390758142551957119935917111875508775962547737751359233870322994013917636\
580370678440085956246876399514014714572246854340128078585643043939470699712197\
594064592144290107129319140574265334713416412866451075856458812395114011779550\
807321636781016037343376015731556349255659393736716561935500458810732233559302\
448256969965558388305341318667616899808566682827713235687068122625484629821031\
317607718012390587255347242047415200161766602180588246194966487460645638789963\
150712442915388404232450756032140477624258036526092051914829101027157745924142\
628710445597292699956501128606688546274875718766506696977960282304138110846930\
878716848357909254627803494426425458612045997199608003166303479589928945632553\
125425344317399853694598058360286745185081053313047647528537628745709777767541\
307714243002325347404093030694218291168164390391655747003216588110006242071852\
475797469805276517097274515302509461865993728504011681495778142596361240147809\
683786888511251471276223179153314870448712057937765503040166429701507673885504\
773832888178731212460074527612354176665768817010114942899257349101235646676396\
258065112713396498422824502730566937089237358164609535611643437505650299631516\
797453409382353289997025627180216562436255117986972162498323095658719682960254\
668065000046716222402396653824185505730658144606359055955496419820113969652844\
393015739310520628308914921806342871553537005900350470864609635410978841060965\
660343653544490617007078995831805614533906504770527431566417609721517919489283\
364812866046083530718819480534421773042360408411915761644613091367593152863992\
339638705407205479884795798861699621806442015353531790044765255822727670645936\
350572878042757348558987682966892335724288086806246324897918958416944579002959\
286322888293828009160324606353202382231247377367874061794090104138153305761028\
300884886494159225575438094606302586267698917318461563936799577053825149341530\
483493122434806333316884026997670244732749061897363345433278280820774402667097\
781782078312085726344560947085548521426584891018495735031866421748229856734063\
285256420887466425340533950450231027544934290191600084415039849520215325600163\
927669366477809584126560429064525680617095585204187128148134743445153937464754\
963442205389261099549442891463675389578760558424841902583118172885021588583788\
068989305945215392813746540887775361004235101493108460765432909460867969100188\
403841622500908888374112448306461237752331765454201486843335315258075266734685\
821776462554798771580037807371524124840869256907049289006667811402797916365374\
333951451614111072264561762822599124788490992848729888705298083065245993551737\
408241133677579727233568268033781163575499834766699082383781455439162155128563\
855768188044803432132102939421624081354802623088222419123119256612052550161349\
899775372113033318398096362166247186330045413600338330530579386079021129320328\
871749951452720450623958005426893173481835408084873470938873886190102136217565\
025959113514421270210116480930930374941672915936245687860034660224003395352251\
424491516060429976479424234983779611349866591027178292993124652842563039824406\
078979869734206039517007531875786306161264714500100320811594169604357882471847\
656444135133850918620897857462180539472705749147588858463426651824146838798580\
804824882080550201928877634902053551585624001893464332426863663411740303122342\
371725194337451401469092871472905890150615238956228461520314617026175667585862\
095154776828356254506431626437458076071417857800275876080483325967588788531809\
595965814816008065212981791958439859252951844584692724664770760915168517463856\
471876221491932156230101271310528445074810700265024464178587243567799221303996\
521838279141848265281625104614721163047907822420234842176235064391415298230055\
436257014763699588784501440513057481801186730872375965246520464350934313039666\
558562939251568103816946666203136394399173448967139829815627411988262723510952\
512218217047506862533992675377978466809995420421499113435407010220569268199940\
425166589339284985656673473325794934373118520489614803989074911035031394683340\
777866936873547549110776112694702987821125647656814915666919095529367320559577\
279295129820907151577300917884779633743002145803603144778906200771554904764805\
424270513167766893532669437359097224008315940237583883147635421404408604212995\
770165367296599020483630577798545770670281905871864830613825275278600758790702\
435874381211840974392908362239891253893167318426595596595484958814557352731191\
074691798283457437678588414439809369945323260657259969758824219293587914543693\
491043904226378176755732249873147569570134160414988729796068385741483909738944\
823408130109565830165946280719178447982633284555363597451218726033253578179240\
687001068616506202782368106342928741450813730609548908924744506622773308385268\
109020908132431315118495335969689890391031708643714328426824906481266624069267\
042133671604705742655313824243422085609793500650141268388679333024186546223074\
720253207178938050317199178734911226776218997084782360811160079801956068213562\
664092459514059419198886596052780459618987988978124604450752043911951087425762\
535033742853443599668025487721129385619101220742965112088842954685544392519090\
409345969976232251366844939593914310582200549776165119323633557844773870072751\
670887701833608973105333061674009407487608485728705025403965220624984387807914\
212329203806188310481723210930017201914851255372112309151571901612713740653683\
546403459090175169190773763122126257226586645496449591237496183719395515196650\
457314903486981404538174573697589822751137745630786723562169766825239245298159\
046756218528584558914530148222658405359526390985393717661971015878387327823837\
558472442882536372621081866574074402013077213982940343245984550348898469160893\
504606046029720752430522250508848409813445599990758681315475222046561457662331\
404526326965352792923797929373929190374869671964630718060724784747396550517097\
475096606260234290376468444505822472220213238638855714513234749820349966040662\
117777729786064434146736621110648053316143070546516482946603376435620929127032\
409021043510275954039706547299792721089618396731508470303622049840208056686992\
252465953583737496013314179003537005246456058694776746889730944136910107442020\
272238575142052254708190896349914219443174041123748517288954308018457409103199\
946112805564334422622895793405173650295313360283143297024936562201188073837965\
968669385630403655424493757197421024937405701936945138482569860019532151625689\
714018351165254960063601103120281995349670461609746208291773657299785645713069\
651650016227778852738340725983559673970824046315259176738042297431785283156494\
449545036956401109369855817985115027211915917638004829658130789859470397312065\
378020322760344162973296980120590668246901430294939952501589890477105080253835\
157158428051781526426400657458402791703655628341155199917788499516885789808814\
050968676482560815758716892137852614348240198670085959491834379968727493803924\
399001240892926764545234221922075784137853342487883353547493246859780197430738\
916781429610504444966285797198684931704497491550675521279111615838057069681965\
725948152986672133352580867678999596495159606109888930622886966132631217557575\
864832627968571141533502647214079502359859585276482031363986556281374476129381\
484774020225044508591218250956247790738896549452650203707851005311569656220298\
499374750861361904397629959903131190080431975245809400009145582174545266258052\
740399813169325700182768421722318051406820050230929661772701854460037043301432\
345251646866456105217206929060367202733353961577082848882372881358894045344902\
269945387687846572485781928755820170263348795417825355455575490682500699797395\
059504613420534309269819057255312303387133029128503192281356963960128385345521\
159435691409774601581987774123819889586672711142729583108270898639204621803453\
794556243397185624971271409579259619230781884045355529797774221068893673388554\
858810722367687848593822515403544099482252905928348478013601350091515811453292\
144235396298755483068015588531659665633944781862223936580697312612851200242204\
741143375961776991063339146375805203581547030622952772170351482123853049326570\
584461131965622545238528606444933091816747127236972720295002626694938676067390\
723574413268607147813063279625225213583451461753197073528090113543146777394534\
710240060895178155583075721182150799500558837744547319261292538304998174304023\
070223890981607615311099288865287256021794988663396420618209213160431768011778\
154296636735078724191834058059780194136413801628579298183208684244469747609594\
675465935139271920270860666700964469126425789697600503752819096615375661855458\
062643522949216579083498437925743197158770646868200181823204868998256456334050\
138496655764029708344806187866968931216351339668783136235117749794199305482289\
866190400647154359595792275442777794396672633729746627797753573196084347249181\
190210119294392590380260264841748444782005168568430346614412500612254411855360\
366968299480657213953513340788692453270591291498280174112107188413426878788829\
800210711931841547690632321330356647042801998341625726105167041311684938677002\
775094988441085136931695644486075931708354676736901777389429731545511459227701\
110360843055771824121223403292822987443986446401919560923000143949934530604425\
799693849177239781614945113120420486863791675253063490066523958044028984353925\
557848458072200332029250346597448132614017337334841522087264985836723648805643\
312830469305304873539059684897769410662489968164655101825562769089233065437474\
773251574823464207618269372020011128849083740841566637879049177157916261744725\
335692110279631363639619333830316909605856347865158364104095218542189253938453\
651900094568218823512196785349129074727334576190879527700714534296428857778919\
797005177373318942564746778705951416709501512543632545858505909277772235744136\
906107059254179657940736448940133684621259740377694362926710786480691656941449\
476496275547975269975061123929065905556029980618277579232119869045159059424907\
676014494433021447538110788616839417362682473795362048578667366194340183753995\
078873570769569736334890609662341520330327366441684091559726750606818691954289\
729554967800742088808731999842293318016422639183011407959704912671956726619387\
623534230677837450373992155604973161965453791841362376013666098734374056156461\
634598523847828523319730791370198250905853269294286401288966155623665336680867\
967626902193385870094706204085027017894505168178682770319342784307016451931313\
911485790961696844160662092837320833387867641488391352989258481845308669975884\
128896586702428755687731235900349616499576082923775226893655570763541340826557\
724889024357548539752579091134201798302611534745174893942282388277104497423443\
592282036621472973991367403671012159709430824875344769801066976990314194078502\
080100063845162203542748953285695525801669871401279094554658446853172976638859\
223272280239229572551621704395377986809188708511955501483450065354205895881728\
190715946327770613634760904731651841773200177627496686192983004847842222516625\
268124106031714365194567283488928109589044695107654103618988534832669434021847\
931347638061335551520236021763656182711315453253152483185016002550353002350998\
118745684013978413245041292489951063561883988605939985186066266983743068215608\
935364080372210569221706210654029033468957152390066799698439819719944948847363\
799265627137914408554512627737680336924879096474511063094304810474408259752902\
764930190996182867206680083812477082804253485451549448267335177099158651397207\
444535596290620297896514822799643822846241004949253809663171584947464968773242\
941714860117757925464809222939256348473448497344768767897255186768445780419301\
043588384787449847191575466125277421065198340368876821770985647989749664179637\
585327608894833993789803869359050038859150041822476926213916322211511707329740\
757299950592161419534179545395648258069575581914101054740858366976388974854435\
670380887776225342372523668586252868607011120737664441770347592390220540292118\
336359207682874681916357344362122584685518491173782814989331732943286878667341\
277094195061406784309559634661183009377235593155008408188204299011125362549515\
865879877793320160602302539963958208885785246406838930603148815511881851063392\
801380688294775533868576870062873818717550962023016789082957729937039481235532\
251177306514137747970534389379645194776233680444566103772824237746406531747191\
228550875257012485553034958425477551119231041741260896041764530473844861849598\
768824455494974223707962742522613785956150815270717355225140609247146628770765\
759232800006362366178185182014661299689732045067019387912233902801967928485764\
215175360503242804953741260170275740303053422716418639495786000064599523927669\
172889510347832507317813674423737276438574252177536186049961577845164056212512\
007571126869254391270548041741306290852654801964879811114373415755475499917082\
236619650715279722050896985205136490535547278448297207107814574514568460861115\
729565963175793886474842463316376564944811616192160462873702904040975367288613\
066251380909350984914309152013685940349903629793136440331259011869648801208786\
661412089289781050701755926315932894759333535558539615357374864732778846929005\
148375626964569271383010871929842282561144132628796930855435148219592948067080\
592226824590669598704980565202263218860004581338482133838010714011937050319998\
655891249460661314089799465045029166977232883060195184978556532435522347947617\
679257654458205266051679944760722705502604025380693054988610650921746556588887\
301788838412895999596591593227930457380841437898235779781221663915400107412133\
609571689636670057484589520547926161961736661796689247300318163307768429123981\
774002938069046482005059305672109704707235857627655971528668574058099115356058\
690572447224208349859427076514578043398793416795768137963620833903950832934495\
580595363760485462231136251679236438135424774841948043589332145988194213605792\
941674122615999836108550167244026493529026929476241342582563872303197435078616\
064617695101218541063220308171661124148867644033887297576584439522022196100737\
434541485089168713374426783595270561315212526207386933218305935658930621030492\
920953553814549511601214641984397939037189643986934878415890922090939070427578\
219059357094307672370243890053453120967003508961922242988160876864329829397148\
824960412446513280821124892241883314447492688036342391829666716628224156781839\
675243796659674581169914928136901450227978013597693138653945547206845777717459\
138536178479266953710369508963772279061281236547915708886907667689081937493406\
103684106738600541100262787008747059471065864514391969805597069505565050151233\
936665890571733133644764213070656757319919039388118938253075210882859516147506\
809468839245740011135470274786982168621274321497665188300319603334562235534421\
417368117005957663493676223290691848803237345192434912465665329718238417396919\
865871333134120710517073683417241234472371867249415108427049615549503795501528\
738224860538460676720392875868626261698438228056015875786683092512230401599897\
538489228360095980752159490258074717157735374806690050015349853590369767229710\
437159210984693912049054262463396085508249182328658439340262938268563715259623\
894744717833699966180201154788249913323652215956653404857011232582770818862150\
130715779346002743951689275243551823962408391501234739246686510022276735154153\
398174438062936818843187021953946745788068387330450266993482047409308509529400\
887069518186325483548249662607066502499564681941064704071227311004215441855491\
231634073401961809074987236703389974993439243991658806512836679056416957365216\
050282244885217573611331742947356357748308478330984929574305730604504128402971\
148973655233370252933328593415448831374005810726242464775155356118977342742942\
596840194068133338141610749091640443078052777297700938276873668269280836283467\
725910032841281289357876118865330379943915710991731308768414829814731674389241\
507081233304663866652688517152287734958086507090211027130801148807052510861641\
816152556748171047862194001056128001346471000489600816181363398613143759537835\
734463470097380223970667333178847121742166237978339505084945840564804300591120\
184173005022419629811376432555086259936672979212123968336262543307920197457555\
379857786033399361139731479735858804674826631905550317147510740826575455384526\
005243911716394798545438546404774452744423208201158058940110410945383309204755\
983130127803405876733811345178470423962088493582933994762948927492630761519594\
758086352305003906352697550897371963214320279758088695852977316219835944256689\
466634986556641828527840530710394603837055319530705781433206165483720876373054\
215104981963982316223946155540162448192274889889915481816161014129111422332742\
480710512027849723849044026429680769803440316010136598808564229607540695695571\
335080053565951888414562653198365459981493547035333965788049476127320900485531\
135908697471453536890157189698415775481177794107604190191456527288840405188279\
508490082645360132429152288889379751999559985968288936089112710910309973067570\
621865972967346398430619284295504292105466916091541828035178323684155218186556\
796340711124306438551541562489751763977188126209840873609829923836373030275059\
418770626263573784813688683682933396988927744468696966294996896602769160036986\
059689047184171600019718412362651997930127874191392722798698022724595229401524\
322084048175398124008257637136067030334477654114042743699620541251450482700210\
515174118908825492609774721462055366779007552008799892323465359252612737727695\
456712154449995014845268543259740875744450235595031758880946786706242795049681\
223173819531934699556151004209215360832603215306918572722599298600395392547343\
180646477064441544096308598332098942811738979506827495524870662827328053647924\
741072354611945944265379787498697959643221449501435206166327360833877895746269\
008896094162137344263820026765753391034189247610563598881700835396449558521922\
407698130525217319501323741964534289761658135407331302630302854780224851925520\
783232374548326796328907125627475246122929296414094248502905947415575992751242\
508506996634735376429407383918207419091625416097284459162561447272170590829385\
767671304543843359908261608628467196328751602860804035347208536219374949413665\
519915085368923735127485074294814451965416938229179315309180378204728722389455\
877264858456583583688835417610564721255643864015185687695779882751742224347111\
155262343697211707633450466532724766334237821195879117615783397228747084512798\
865992451832791641445982802144372701894626680357923333751748064104993185218845\
506821183608568975632511813875046094241955744326397198431078927752472356672288\
395527355236066225987885985396328772844546836949236760648441227353682921913245\
547040744216668206746126567079643012005535159904741708546163733620270386595227\
380642312621874062689090399816710861502195826500644977817357318505215771516084\
763131429710068248249139162492892556126384767386218233345228302857013815543747\
650578465690588394825313419981396295736250191985710580846679236491105929088055\
068338217718370944062699938269197068244705320057945408351861003661161560945082\
423986504199873162383835746664545218873590261219345316048583392126663772506208\
519054623623733732811425816643842498897985966795417592003691300453703719627536\
068718301376481212741056148244879598635108500548734902984477529757534939665530\
715055154410390938653741666521591833549973825668932645268620823596214023963409\
712242682687002533955826932243805998324269084530478141991498931107101571694749\
555763521945874576862963018389905824201278786755796934723185030744610603483914\
598794977948711391354629025486282224974389447438682661643606831812488598723268\
791076616230538008602921583381443284532240746235541879988817472381285359683828\
950062022524646357316108266360364314856355316050499154144130887215414433174525\
373210651396119733069487813913096873318613666961939402572004993080999953482194\
276558781132352187781245718342397646806973069793406081383018907785379227621548\
466408823126429816421239417456971356661539825555435294981722390145222359192574\
194314642182664776888667725021712329415228978446162910566285420071453883416781\
489134566744506929129063191356184691533158558135076487541321859455745770156486\
652616746620858010700235568168758105959676998901985472706417531288487494139070\
866420808062769445013196701970335518100417192425136442744852197815370357770961\
797803655471501006418180502754073583631210075848690420360453063743034388761523\
828983557372852602790109658113583990082025106415006848860377851451703993626938\
322618882301899591271000879075416628748322394452285023918486791381569205686354\
321704163358637035324353038603138245178894425200804853014804232640065209962960\
096641776937613082080687020130883472099991664558057470297265064248590310071846\
989531069017432283784757153675098497043483482059931223224751985485354554519808\
422814507464169325174171166032932667762278190834897227510030808975252050302466\
493512646127848908741183038587799856966390634505200221239345266865799204423861\
484757242890105114328883814583700148678228333016407276114036941362115737169985\
605841735445608033688890692524353381053971593150452592094012886826761957851131\
323839763615662128576482640972356689220650459488317985864101056438186988942899\
276314816131141197839485143896402016161447028222175648273420064615301617015673\
045186184377052127062573422587150628959854886176205229616886565215837784247149\
479866487707067324817990842497441413030772781221727570393898531076626569482761\
976332874465960455935018021232313616829469105165367996131496561881423079790028\
197020753072041377449667453062511078456579246380038273856860224589540614393614\
994048484286969806483262108464380743336558398688089988471514295701014512054966\
842896674866101866876512973139628321441026834165860359911438931807625644344609\
274750282537324722439635823144186618983533732369168086950292204814362372048123\
472392174822684291066611784943531672592385041053779311049081572958008218904109\
965374052294046201984820594719565468430076822037328399061467920788031306210807\
428878267456522279510397530185492450108066714356522034098520971712751588390486\
131129466673396409924349264716231223460568160044054572146286566256168928699746\
838216339043317628637080958285081909697417621207405508511001815330208171813671\
768543487272089172606743181038687549909642874280410652857444783139948749789244\
343537320188375097795346044005281197852692754424896325741629879428825506076395\
165108387117664673766387526975088379398903288357402112295635432087437414162494\
910515768227117417711932232945391974092136590860000476202432818881161163644928\
715559908299814543584037170956530527567900610385822005025774224292569773732296\
609385467336929449681543260568582340850739091504592315081322676781063632505958\
627455148922828565406945222105635580286224167640557695260322183356239637398808\
014246118755054609555094122720020016673290789780007096384828312446295596545022\
120743326436571869713451446896888922951080200162568079951218413160983309702178\
276860244871443361314459232060147349748148691320774245973643394920073088574820\
672241184792682405330459869275458970721315458415404772322220839208036324127217\
631162891881643394036869317135582680006351732097450524378305263342982051585729\
293729065144082252093140038334428600943717769650829294111897120873707840935527\
547594667607700739582996325838861067374507926180433067251405352116133767896036\
538579850322184508372345725893974482449203287338602799204201279950628458617692\
934934748645046491968635338391449569329353499139922453664188100631030710950568\
773445423096458954361418630876241494447419866698347713405300957797872079291462\
389626390884639299690639310163833638321319539379304280498487596279495977933648\
358480037841610186331741498133643427387980302577970218308865036418106221571029\
282021587181445626643551912892390746449491042735969276652311469566584458181144\
763773752350128593126592576075055650198433567754320917506901135878671619549365\
520291390943771733201558080722733319100177931651968154228088370576507598837597\
021754117738087137985338962896830262981628055301107557758978534823854812982810\
501496288588718232218048882601827461644879029172841840002936746970665260086282\
843883088133563358024351057763528593351544438010102449942174781896553188470873\
781552236440714542829548321311895375408182160748659797776227910230823364843617\
233660291719339926167882868980057891191156961286113730404222996244445645228811\
797471536635791461504943812179699911719553392915467985888569082819110314718381\
129967865651453059679813190800422182709005693044807483008345642515023609363752\
556383193517427034362926840234776413899039043362351851350263930095966444898776\
041743786038172342060790714371194447539522843551677888570909340590984262800755\
500248725830650557511259353896315171826065846001289326829742161791308116878212\
721039217579698337007055600479265997432364952544755986234844740409617147566288\
275325091737591546032508096011443270411987315969680079689360407597750180374094\
171469981885046628982630503406281730282319799125530918362807799251133065557772\
589580549721937547685450346607218411557053096747424723286992072949541768648905\
189668750773621842979151157585159066981543346997356951876553230061572819957408\
798433268786548387703704838867969634471044881036662552958628343438480462678122\
147642516601976422702036294508798790923068997762622023363411771182015399050173\
071493996115548403715228268577998385109384004528263675761260563984391352940873\
945574277648499241414685824291385791775623295402016824786676002102151382666411\
013004217800623443217919523686177696138805006592509070252900155749948752601372\
319426962837691739012328002602992780683106302734901011003140670779004579276982\
793136849451630895091829048302965001908928336498837214396180793208742328768068\
649099204449507359860528957211699519040408338984083563306643854128890071475438\
665670708501846953790032571643627157135734722510592958651109840684568971565825\
455725633355594576577747618020156837852364031497853809831566253185809425785105\
813904615465248072719832909577295805530088357643935465714579135927674664325448\
384545582730913986167177799594349945503174771436597966834564542345782349530220\
337939230896227344286671746679865568253732514537743009223721202753169385665977\
610782359801886307507560408367712741871458966983457027538487036030425842802127\
788310713511327727774992046483037340486427902258367600773900836561591221966284\
269036366602985432353631799451470339639496138687167177630565460918856551844344\
516890334624584682912414317535865749891247595560896040292155393977446428877279\
516223061246477930882654235748010717809152774016548710468265535703098981310831\
043094866753941511631676658281403700866865547643833977042757125044749221422969\
080622787608544404858813995712747561301902637515073878311885144100537103141831\
634743367511749232053176825839150342354505860226305868702779243229691617545953\
440457447399711712119207789915812180624709441550694727351401234550204629067783\
378176214191890146908807079818100673485939679726693487696523832201910820873136\
965799813776062143345608391307991994916188426151766201151633013365240268650603\
921725403434552867518082580104629058208364681107351833729751961456122525371356\
771188784251994023543962242477517373345353389150726288232132196100844063151547\
998599521588884711599783751001062597243954442905647837242827112768861308729717\
667450387784470605049817926326301121793285779630213417290584506938423127857447\
098281990368933332322524565878486499097175032022167285214998827754658306559015\
958435161855520548978267361357962795749330522011191610842080236996138900439932\
835066345181640768389987922413230641588672500479862191487276091383655534567175\
784547455676041291332244609551483125353611287145210743043635547898213697720092\
793013726170489082803939099983557408289800561303263280487840702588019085387730\
318818712730746136642050910874961241901769134499707745752836339783231561103564\
821247090359536816103938413756883377157827938294135462391627057605602271779835\
321108182513441990267728610496870350607337208935530864008142659916508722359726\
946248604836665891130395850751047449472699392645264605522665189249764530807213\
109352096231576084883113826036479166824680084142235887774104611556932270788793\
268743612837957576853818407467782098467762736724469111891654655430484797104215\
239779289206763896635896383566418058944214745396226231753265579725268146631176\
978012993711098245340522927093300399629513714438319513505731788056663961042122\
577872528013252838483308299728818250749885183147176842056425852484751295545343\
386763129354644077734050007219968380140522695947091991189551884053700772316581\
952105304731149144913758587914656238871946479845265284802689647131727151501040\
126023071212228792246888113632874334667237820558111794202721647922565370422448\
776329697012927691315004252022598108009997988559023568904329023147853873872402\
094744838539417783679432332561309381772050173430979624532495103390555419373115\
567810960057360469040879350621298748824052849743939646946584677743623702801414\
300304401661790116579760269790511369309091941300404399250566495624246838020340\
508948029000263762200578640552156227401553880280034689559175431276218613147605\
255689989509498932383472879082539984234639757912004701170765647978008566264746\
119214932018152685676334858437821473311767753820642489458096582004134726957162\
370383720779356597620052278022518225296320032536927653198445965838103755079283\
425278582591745643500626084344163112970195537547485185666661090821301768897917\
608118674529452988157107661286021403190196538623956291513139154058784966307201\
942185802070548054644775476955678720896015971790736172414061141977276502529013\
859928135313797092560361206849838882151922518132179980933359782131751070483806\
021942235771089945917470518247086038195757880028161556161166585331628472637285\
890244233722087246293327028353174928410044347263041799008694169287372227838080\
288266378013920532928677292804236565912564514894549289320084006096841831783905\
934902376205000224339124261918283291801084770695741558673641192801283496458206\
833115754626233916641813906198852245734368306773983610104642316464133135532352\
273752664453382030040955103219288976104028788257165434018178388741015541294894\
921097507774609559771524786912881124482928425719746882048856549095615768512861\
059352678026561439383358592178867356600596530098536546206425434637910629888573\
898318354369679219264775780379760991519977631569730191138816967770383136174316\
445378545700731936052197001517354100766869601305437275881607049987789365017422\
246617438193269192862429301061984254163460485330613122444410053811904217052950\
210203949284993280229187520880003182408337953638642237831826693545467637857036\
064039922133069977838159195259555588878191552733115500131708794901667727284263\
034494974713565876728143942654920526300619080005910944956218545217579084841829\
846693841949558812074700106037683563441033205450016151657240720125298604958894\
707972183425970164384759848658280980869054903677261462021539863629416377179304\
762721831365968096850029180311410797043113811864184914158697584986602245464927\
651310287275862938670400213000595178163586440778748117806522568506530713507342\
458944602683462083458031339214535422338754448630386070872785027777775086776299\
202224027107432459134004028928720902658654473562108425271922286631314180112202\
868765811959272712835132421508816450191208996690219737367720181554670989399273\
542199116273165262450694992002848523663471619210135317944601819327396072124887\
398157503934618170208223027956393354316765552788502935163273459472657951040114\
997344823774206587573034636025051615613927268982066048321085542322084072024003\
091375158254174604210574559615339198458900273971574375380224264155677787593079\
348042453601445500804634412405440897265939966330079979725921292231094194707838\
420418307596625539432445609635895414225661367379692854237137647495263375569771\
626021992267349139427236091784676196587205759703367639965915756363993425058788\
943766830142891641757385033888100786002186250388008817542820476784272595671960\
484060571210079656164926916996939208557744994249775621141413333243237951509364\
096641340808447528614157971242508505925805081064620512457221688482019793441153\
229915524820485989751301007559884796958676495248802794232312419807388735906666\
496491511396292448871057045643419978174371093169216647620690940566563479122208\
766735316201439579444576216638684660165500533947931580877471076476445478396109\
992723489002851457979744344660440511176045586177008433876053148008853673570211\
565036104548799284037532175914820188299399708652690645538159173954184083082629\
694214229603619265688038545999145315531953051939183455018588454934955788237465\
098560821298424007951804176372673129537115995329871379480968186645546885144362\
583503666244085255859306244147002018821220464219259172345933989619257901631775\
292386555197656249237162846568538934472706908824411028132584191077575505481596\
675431195699439784151633240688940704392660811215618619025303220713906467697732\
683681506611237692800248968355757137231128842582768928782310956781189966969774\
094893487241466149739727949412661076369402958236283034824223717633199718432399\
903981284939398586827244646054071699259408451818357188910943512641768469147790\
922528378375323956019474534909055101642338078115996634482620714158723813542032\
404931757575337079350969461348285274651377146834205626236321971729619991708666\
383043815049988726067172676572483899667394934781864059973119900529660035329941\
393264852632809300822108367705019712870766990024781300851305272966844060610164\
378230719136307049422049383419600953509993987135158792521973942806151356564313\
408161568884901747824857836606800403926759962908630937903111506727671941876882\
462830751887950689739054897988939998836266317622380542165500973438436075892142\
420468068102248730738778094787723527390164557430678984175586097805980115965586\
660818087835319300271259737913358957897334008763443118861486976837881121510877\
126677572310183325111391985166650796809644853255663841758311669493885921614166\
745675555382378604424455712633396677214622446741586901295620545652768104736368\
260978986496300568279073769198631560129161425693064781006989197020226538674162\
603049633997127366767957428955566314014881184615445820075931678835668267089919\
455698580240906776542744450798568453549054758781082742772021979660038202099786\
595196994492933543169491649170554412944820929676092514799032258890049539549957\
229930180621792621124071101622095785527048886053819284236085295701406576742213\
483133260263421770543730953570108907807302213549826362852887826558691568563466\
259473132585195659138468924462445834402277049670665349938723547520909770648817\
090001106391255718740682470471367225709217122286721119172532204691459692215612\
297524374555068820561736954940666273325260413704462908654461510442560076329179\
486145106922588794437481577891250885911134172233031567497381920863972206513520\
158280086982468765373753233446669783773281011145261959958866650108216881597594\
956660290352758332149372864358745996764765258208605552447339121171297976729814\
037989097286506976492032209927924040206629297956083333483709734371103831364074\
116484760050698520156744722778358999608425578842724735306117051602021864568180\
148423771285876616591199011868814095160940245806826199051129611212754574119275\
346382293994753499107485956141079594010471612965889159165679925544442250779692\
987057697058479143040118254545356111724273371399999432672127719323193391300068\
902626785230042044775981367284743790128671709651764782559460090760126770386665\
955450974046848589127133239909729337983586535080972670948531616454530790871573\
529955075169242502752012548206339883390344782848948625326384370394044505434363\
120240495681948503862902856933719155477929628988453250576597682076434462946898\
145244334205580449946585823750536595705362244038184299359354415068135070920577\
444979990516676905380209621766365606835781587320379231026760528625950776545290\
579527210420413852461568605765628218747553890252057850800740693372942987737463\
057925699377504026856615866168040761542216193889794638536338311259582441879709\
719549522407479595395194229768582513900769548365478993386356880618290567934076\
519758024674217910250332216964377600441282077990490323308123176112379972572146\
928331218471752129580119166422739351443766983751998453064578736640777380699652\
918703123194595004164514120225826972469814614881846289049872728361923812720419\
779161557131344799687575703393540193254612893602565440312289217822034095434438\
836935460408954458024790180847629703419796230216029451611247691650186005981164\
172743826673072895297840924401656957765725555729576130242533547909506761981919\
701424151665935744603959673618532551061007924434665329441818070121476460301248\
629639975333472474598343390086851604672402252161362633437520040663234254993084\
214185882609820943615743240845647108254431018830907726258570251121046551644620\
072039153746473932152920633797970985170747730380605362838981511969546064420171\
139295668853118832806264334317017170205170264852813184125163439247307171335549\
506051586713611010580504697835880611507229261275769395214080302982839704314172\
657091329508291125343176943080754686551329222427649904174047481341076368194957\
397746437968651830444656683983184841948244176059863821383782353137304522859498\
310101762249439405390186494271323242724894320227208505266704016110654929802726\
886299503201407835500681783266124429473379347087040369339474448836401463014307\
665488869199951906540631166476781940497301003751985705416725276470230859199227\
399842341493349983909786403439076922427293376689266049349441694715697155470599\
042174219258825753425929995659864267684514106123846878806544579177175040277628\
236063300794375840743669481319018301570912676662079893317001720205395490686409\
451497740977410943734521094285968471727023406450671007142874586355868678236996\
339079944880743760883533682031211373244515710404186429258794496377751457723511\
758660881749387826753877641303779519060504064763026806474269068794144744826935\
195393809701784967319464528914389222386328010121834314118098075047970243899193\
572725705270605470472814746474462082224540747141694065206969516760010559177013\
648971322784201700335664320555114622179331323222171193273734777157788658376969\
907911711317283537401935719863182444704761544818457702523441248455096812811666\
497090604322747183366809811678365157004680187681709568893241844073623106025662\
747574796976374720906354840294917347274873081201950527096375836074625454793529\
542341712726819813399026419025763373611656973855087441302411046998364322210012\
677286821809498907623686892633844175188562628321296599412137517969890520924751\
998789466845120578373584504314890844568816138401588039698729200985408629694713\
225986323131712732194289141354943233591229372423096601546164996985579627632755\
545779844544032230409049346593466633088573695960232857501802685021200071271420\
765556577264079830207291948065129360217761136093911359393530812177362843189441\
739621355453605002461387879606760408053169300250934418257134216136144401191522\
895306530077790539720033966289417946596417779835592534222877746564000343935264\
773517835159330557199471598121250380175595475777459515207139084336100115379049\
015078907056708818445741145088305122997002099696113097121893728533083594288099\
049270074679601280969718292839412819896052132336107052144317601499501995895358\
971833690782831386342368579567965634192930497698152099745288783121459736846075\
674766360600396879174354213850348953262958205447487692413303661183286891127783\
175460291279129556760074187332255429082447596730430080458966345337819875369948\
633505377224451590105416566588706989890137538880243275851514118584543536529874\
915727188653564082683272251101470090989862716772241528776898622677036983969959\
782816557940888253718376453740221818841187448133828794719644549375700207234696\
253360159221820280817972604912829242072671298002423760022464850087988988572315\
884221469461474910278915546521230594248610272604712698132414938149901767357489\
609411826805047717301316458946823454090750518616610154107017955417597598280422\
938627155510777799674591224661638474771460111789648586772191861044175307319060\
399730981271821910672442441948147115278343039206536812214246550226930206567588\
127647543438557347426328154927705626600665467118487652072673356547316696621770\
698336458358268302077663377786474895873125521947859905262932469843638246857387\
232842777898399257375979040382852977873976846638096241754775914830964299155281\
451658037282442319575209277265826932305975246124505643557559140534014297675082\
443347466243985834376148793899641444025141130024688693719521578304486934438407\
345590866909464481382353532042192534791688998014391786232376017552145946542744\
591797476063616652401862061888475586487380583089379600294714755490167949590428\
156184287251585293982983632066919799567389478800199587980348283125992532975991\
050207350736266025424310513286294034955417639910947632944854290444810268915259\
589521457320122663991033216800068635048620073570348589610617902776607181677068\
179366318045382379191259561984388576095180289432157965212056576110939899154968\
840313775493935408569534499080090127038401726261801820466737959946829543697194\
232579220647470975895251070020377417194263893464967571542725040469387188357277\
563444876944595084986388776168355058849700286857269280542129179585813191422838\
038713728275528683064543331486880921516972378760137552798110459669882917779624\
109707091370378839304506450124598867858957886370910482165298115205833227808177\
991560826384334655419760315048884191986084840626490039958781693294270619622974\
531271365326944415146362569734275241608734402697978790021463626962620120377533\
883677549691572082415463924241350575749432317953795546323852419930894060511341\
098518780558840927355911671616701871181553505823660985691939227000646822883589\
944865752267148004631656752194201966183070345216392823182511277834283289541424\
721726008101478758030212294751534403712723321670865724341810804779578414426518\
997788601140202712329482376233826892096411116301103221754850809433535043407762\
834159300300053391341804464235262400380739510951370111585095347324822374380350\
893528935216587780976003257121283541953122550820412698760354189007713651108604\
718194108088431110742536391713898813597531932334651579864775046845758698939196\
311882411441543035704000826401267779538411066650964079049875221717226415649043\
495962670656328990457837601136851326246834602134845575646260777352188360216622\
168327326752466009077868093484338791981564661208248486780506442969584602102930\
453724633487602599622427009937073587107459968463323761050293787408079067362688\
314322240026342541834946497494337876425107862940494355970889509680133762402481\
909558113491329791361379976702061469804350149070673315063787624020662390702718\
327904802851482956061154740695997256194929668302102119305025062268263880896540\
629845561979338912841975881135820072574356168576772366593657751853637407687010\
082486727325827055947358759499152718354765991563039137857167298544040275171738\
826587384991774630988127769334111333640702276667861050716885045092417768179812\
507691095090914411583370303122408506723054581245437271259392013793712989504976\
889641046583485074819454011857702359172469012966511482150074342299282812227997\
873756699200712962845547283485924965768203078846795064702194730980149497744309\
949779104146628500906670090421960298663311030110011132782301805889845558966393\
460875372851907436002284230389621517161956418065627000999956013489692855739326\
265725163640020407998471412336038886746834087295761469762659715075739705145216\
740388083854201531984940935620834941808448216518439071864548579354119886526224\
032719177493852757822503822693597054005494545632486688166937021367054984886527\
552679637592542953115273943389962168015529068835137032902484582581507127636005\
483568596542941065170419630389669909871302275853459041651175097486133027113604\
353170371718416809873141819585031564870772149478854628003926277518456650430912\
603414221842304210133140285691502890354177509096542281408332982473259563282470\
188681318906977341224009824572047781021244257867941962179708245494715165738807\
912130559425579829365910185929521458891989736410574890894887746130638684259775\
642325268634634396779838391211928481559046325726844298069038018489373878662677\
601466755693021431752909926805769995789731762891660092351933832885941822434444\
837337458570622675049768273613929212565903885590939178962936286792195698567220\
771145167687115170363840099018030189287795668529739177054160961453069937591596\
227833917112798101298430027748909358748945398117353381576846139508418563804583\
298672849362869287801275472398663892413528204505780353885364847097327544925680\
094275596516029103457751245135941932152689509014544595241696113698064708110231\
533338827666229870284100724886605287603754043021857842964223163531335034068040\
278444147520082689003786354784156536368956731168839504335456317801016615510364\
384488614982713956079572913905790086466129824415228134778644226453349015863717\
448862610877742837337586277208196830696383180588110789389572837677830118699970\
089433656062457189838150176746551248089349447700083734530619482002243872523604\
954757117394662913618252446057626009488669025658132931135067443779323202503802\
054350185299498077810525998530448875507249312550651003885719082485478389932660\
286033739356873644557467569660119191601438807752987664394513579476071447098889\
327766053074116311530139110492328219311058809736704743234405890882856400267975\
943534642742107841490615409296240833879108156578990949881571269023662004328021\
528958961577522206062145798828404918233836573512543126936803798726868475523692\
007777213811796492400361590234577003494115340683355738248739131353919147581585\
276254133758998420361887955138073173462244771235853672790530083551436917470851\
610091475448224060922455757610398609663567882894550033360433372084655672516489\
462327278693098950945586309830114378782588321229906713291819397652202572455840\
081402413093213342095068969419077870202615357580218210512329081352831950915725\
992555006719879687514630234571315295363312886696129887510461508593563383915070\
262240450567951168869460511094662767237607237505288455533235047477489980158288\
045753005046091690215964523830382629210630322585173215675280891358488354854871\
241265327424716575220157935604338198464883776605527026552678470835601024356860\
883266117880977031360613779093609113087234077209618102390157853292035471271969\
105674794704414643312131439560967516626112894440503663881934028642048503807286\
098791982980487313349900484552194065734654155537801466230578392118511432796651\
242618604478370665694246510969746211106625572671764171963200006067946154444738\
300958784936312325235285189985719809160006814191918616838901518124804643471901\
284000707041173800540248415993671028492407559303963487240301375351991157511804\
441626152220088089789683333245220004404297312612251617655694246030207535958932\
402085289249243527073965651388572918316494763448810446032143908764832655167298\
762199973683709458549393433833258846205940157298446429786277862823329069044923\
276593292449912404613383396901524758560101968276123720343055108979231752867773\
878201326684509880718026820392202804849215743424256804673069717712187345608571\
520356706217008389369827536191719737107940739990603683952061279228549713860022\
565446739856276967564477699256300949570927013119192982495577576375085942369144\
906834763454604394437131867956302588382681792897579073867577438197352081312680\
685284194436531551097133568125748283469790178901431827752618088331363997360282\
959901000051972437701525586481910612361767641145832369347955064737525034060992\
789723071950827784970011960313162475551008728852173812918560876774785619606389\
351240925078580628668215537123624648969325920348921913067134717109977033736289\
595978350953252359827128964919871104481561301082918581273929221101792694864281\
968328624692921084643895996928816550769582289873372386157832942848807562193230\
957406308380891462836413811692922908323367569040678765357616396175426664593802\
436019747199540348365085688712885529242935186799465568445132086630207489953169\
878887983908989545654675923206058192261778837661222533547338637096772959302399\
118055662280926495004498775277334625217332638938949491465403821243218073615845\
361140460215552597536672022391988105028468107377043772329312159753622750515723\
876452943634838791352898878790582155011110423358451831022761133433580478971414\
977152515778984829893616449182897931779032646722874941867545326918364087982826\
661910595314252866309267070173240595070622738667057928733882718495187976068532\
280614808818646593287994277974612452954095267124969044104613107390919211239694\
068351844696993047168661742405051922297675298529668486734836811625766352554575\
224403184392246233255616522514104235923273201888336360890136050472633749620582\
370618484689529986526746636302195871613693678672483535610994037381399698900440\
515388959039103282794572815113975877627474453184293053661363795169817274605208\
854646923204175911435001350395075348489615692495090020755605575438417029014607\
818186992492393911943824110025705182138823009803545858781164004553031127717926\
661474377483736623746020207353840348230968767789362305616789380673178566313716\
353870471587401728905272491252082716893043739822965883776322658705827681347353\
299478638582774381654779360985613156779341800020147580424559377378303603956313\
491357634013503034840739927578659534391275516020753086523653852745037888597124\
866716500398774192653741450111604950710018649301535827573069553026842287584834\
032104779305348522095490792573563977027573732045507991015818436798097731303516\
449897806847700924124658901717949986390152345242314464073314623970454745260504\
301874212994382125706449150735469297093206380290377591188187390157910382794684\
926286064935577057927535699984474878454484558005063460310194327718272203125080\
977502995191976880246589639811415337135068436100113109962982510923400768862681\
738142858204141106078957011495068943086279652602887953539761168458073043529965\
627122092196855252288491697344907527823409037934366431756882408319294978354314\
731449399148449444634289657179655332850400946759399635949907338642665621874810\
726324787243040629049467920253848591539802660863028206837106819258636756161674\
883003149343012810529959988806188629972368964165204568060779510100917746573081\
454691925813273129673025592058716565880420339131539744159172871948757014262221\
471927891106602750761289442732242913669946659270657251041936310238598175490798\
699438924388900893934634121382813621947180798111450300020433901579204393125539\
951922260908899971256309233027142912501440398187050042025960878087081358686649\
017724447369521944670349065022384096930518259399680394210385832160164007694778\
919242121489543593744009993796437285613036289431167437089467447379716761820864\
159316835618424004845427076218560664395978802142164316651900960728174606413768\
465552889186181960348825852074845556619089693189055115991626908725698821763884\
637459550647377739141580667407665009778341493484216184403838831093760153938893\
631063154871345972529048370368834150168607515857990254115319535607077038149712\
274469609689409530526009808174927009219332674213887448974859582609816278112393\
479338277056197406663789713662110111506206417832730909438642104434100156848794\
624469675999352470493084992705731112482397592335989864528277041548277629085165\
037960815057835098230275874215779597790045920608880043548743473529828147036766\
578453926047834167045941769174894680825377283621606685686911351945238338908918\
911109127985145874140765028525906720911115279925914212843554397575899852207175\
909946241446928463268626340215826602498292115869480107657666054916190877864527\
586671942368344343143419381233500212897771314250005292249716731077710017168511\
888229988920847294675210622424553471607991208322047262682159688664508167350961\
643933992447751146236967030823020942646253674913470340742458766524088261910336\
251980464113711612273934979644756701454581288427010677196263293691784822862791\
205618498280909007323886154644578857828584097096047744112659161889517766291662\
527168721718762516513631708979617646484309698655020383274990369013956616772453\
347773594284105079107689335238793554981878467812308125958197651326354256394023\
461702890360708166424177501440151789871339407195406803684014377753823023274168\
651273314467179277067541525937370934213197597040931481491994889872286782267469\
651931566305291459571361839749552474801943392794936563511497990843542657131020\
197144345952011778759458037507874625180499505221398981478459503317862578489997\
751009183675879921922826055038028507810017854415807312470071381244813199018918\
287915172974806315354184027249731986676050304698921400122077849186541670628894\
614373987362169714665740339540354657042071325868663336279283212156148810545073\
264464398983800241706849219912974800942850816694356492957834344123652616984823\
031940948633410216606988284623109833870141892807820737483205430749541642896324\
813950945589933704491826186642654150819005827072358841898280998019151035177063\
881643966427934704377364802695785368103679866531939037687765826608503687181035\
728366643365057717227866672879309080997221922188813671309348050105257264157381\
340641178162104806787143023891668115663107287605369457537784780650585029952691\
170323330371671960112352344407475268128928355868286840263257160569745001944449\
517018066181081906441054552466219974605510837665828858129814451526749038022695\
678115007030523761609761607516474358393341040779805577229347759913433136721597\
866105507342278371167761831994859302758572613970586584709868667953396094629188\
678055717113687861007855007438818571064126920509669914928942274974254510850292\
688489395447482286306749939427340324868374491455647358303787886059847569183700\
454233012866275857927095106789690533359734293614200328824671488045835314413863\
079762659740489308711076885123230786079342451220171545580184169216407608957713\
287564519943138023272075005128755637620339753300605391520811588010542944317855\
589339824635645831046924158286611788490100463414076094998214465414603928375102\
473505894407349196495403702722453457220124463687003138483398423091832402490157\
951865933785992829470159857959196859838685981944905441298097484199553689636996\
354717206181813585525926232995399169375917092428613664218558467667720623054441\
488582625370532082454374482290302780270657510380017108817832818651459865583258\
719554645852534197577697821772923612071333641240281634970014373150088552712917\
589196082897388980202176082104877545001333613191713197620856414914813796406630\
406540354290848751446093045428797888157247969800565660799594388364820283160338\
946679044511365530731423327605787108207926760439535354664225367818502682922884\
743863930395837400973858701426510863446204705175847605499045727257503150850585\
856819746842929041706716614133188504384698079735601777104811768366410779396794\
362026848191177314824089976925551288263145278012643813913756963948911084647998\
499767790629954544951573178700804071248028333711170264272301544239136020661853\
406307113082815207497537193146840097106225037195921638658242822894083649272628\
245596051552523505912078414670760567587367336189411174276167915553017199436756\
847928532673226578045593297864425666944433892545689917122537729840428963254728\
255533679890350772231031642222559368662240293289707900774962130957134962928964\
929387875975644766633100100120853804913657780486947710046538421970875553324956\
543022798404918623196790625317699314735845280277782058867692232477965323935598\
599179926338256860793129715306595539487832777388807136981497464050662517514314\
106466975480788825062108036930301495236024766871701778304594493982135466681201\
891555895109323779106639743217171528610129007333518011331114135668468007910399\
622453150596207162070402855157026143358103007802778165023775172009678562401690\
788151274926741016063023195786733309667419533263179154869008772125173072357898\
092522530225632265419023399141038030993435384580270680334442716519277258234253\
690592492756444995993189337302024156133921728688211168862565852709987290601656\
571088073894875836169521706209563268246090399618378897872018226870237853568344\
181001214934617230676752863599011280889100896473779245979568825007398502380775\
095912981555306692489535737276413238566846781778140576387723487604032512946764\
713594366594134553106314069585626346336897310651638074355343126100690967453765\
014405198118349235318871940799399909553892895779875047727780327084660936154885\
596579969702595623280284617474416482632048724128298949478102988228377461856185\
823233466718586883495818421919438832220412925662182136162779449004102238014024\
216582366043639132312295443465694982722206790823288070241513735241623122747757\
303256124704268544338532247012797778599783518199543021487594778160761885270838\
202084834997471275528202579694699665538193959379828961377844300795301854003696\
616611576286812079579716153560662027357626724712099348262911458725856610030202\
616546006848143871460837279792596145993239211017039733769873495439047451665419\
547377441161880916700728524973472353480092459473691441023228343634384103720771\
001346205794664067075309824085550357688699700784814367551040154533652214918883\
832021327917374952250859104094126462615872664616191769631733141663374449384885\
148595135867901870079581736475850407096563444530063108651340154568645460985779\
376822846423033101732799271214469555313966505481727640197265790621953881325350\
963250947445989891087859016969225819860487325161631487225332086811525038778390\
309210963973140870146326277487361999251603690351640181322863841015778913834548\
208695394911416541921224410372588235373528329662254040539599551254188046955347\
016927965818084221691146779495770903181471995224200489058855937464416153490934\
682109527381906924934012585401621298388823606711299047278538251093221267600863\
567887299111060647443854063130702691579329114716835748930860734176203484242255\
797432510010038643688160552466827732801481669787349633209963417237792378830351\
660548716717928740011191447262456712470024976224582240273977070270235032377124\
169131491308448027264009944972595720923593023069927300052249073651419777811827\
203052590605053664793101848708283976243597654102454719021296462440721878685429\
130719911560221343598109261278099244929883532142115168804430524223133517203668\
759109206121817157215013230491503852431276016026780710277905987836302849099513\
323332565542428323312697082604828410911646293553079701347159992856426889889700\
767442334648965004511482489448843811905203162023956125155080114293455938402258\
904452354916067705752641775197360904402044833678818915689702778936604499831675\
503334609974345390667968123798331363984458622049182698598018506280836505817585\
632828672397021647037926115754368783456640465906078885859361572607337647947362\
839418949283576050483364494011349865491208210048132550683756281970256869699549\
187621976397204502790044667563951193761315600645448648552507497994208500289544\
449953357450468366227668720824831641359948030706016118223091561752595284900289\
952934287376173510267424188159371599489096979222577214401390912722461788838743\
608051967515303147911414335732073658590493042773379844712919544464543044009597\
518309741823376186337811529128015178663600901647697454495895732314679554993893\
375139495643626014549592646737347216021885313265446860088537207722134527510310\
595262530711102355378856916499591169220838887707805173543839856786701509637808\
868647575766982532354044245428400882687477770328538261997625425819929342059121\
797780827787051185845230897298563876865112750727634100359941466012227948957495\
592036099460378048483855259599108171236282744204017849802110317627877887503036\
302263616097666758010603955547997874569981579733423399742444758845313933453664\
591755258134755046344267161094890817996895922670464402169176805100590718447352\
631235416442486477743878776517385347897501402520406932991135325561481360435329\
683129289912953561529040275913176773412777046365308522132575486307933547882996\
383406999371515422494380882406473326312335046138821594795169175925450984809791\
108923311377895396640746083457300976511706075241436288346609180038490635692685\
329640055165359978579130606640474557190848662504146276335720442508766033207641\
200276837147202583957757254830817635228170657759415327083266255391096897305850\
456225936898498975622702158265265280620025184416489819196909558212078989726717\
646133800839566487722019320463671881723954704930209279866104118469570486847004\
963864125953067376666038942176189387542375224018745815972284425229079773722925\
510180886739908398854921449138635625388637891615918884240512998193651713692591\
695779199884949414977115194315755826307059948575863534749639756855970386267805\
400720089745025270519397969812529688311916459045209756305283373094860238329627\
213225690073767533911168294719812770574262437522137582503200873637532046450005\
738917934659235577083622041452850139079464067246673601827537985447814076921256\
085694481054166195675264750745239025451705310940662636682474575734607040652757\
535777432010239133411381357750332256114390097609946952139817702841461088413608\
565918393299393135808195270706927092760772171777909876385463446024051690499497\
747577482873009339789406414736945719850482990513484286707099150933044579663919\
535589147801094434509827017367724097904948059288384657526908214068409367522488\
842466125605269509780101260577282287359937984997704573176117586941984674742904\
864012319967446222686363326007641107029348897236012621498459684160318742453158\
435205489185904535694196446063337988493153116954758361115749766774070315448057\
897817050457319225881549431143902579345049989550037270423618264568041589970013\
697709364618431829666069073135476364512034680880448544639479881054680984967013\
179549428668138827658444650585179771236814267458547557138229072663460316438137\
501465429194535993436082062827907253188657517973424574661225027443019092242962\
776936653158716809444242786249840749466556352680450276843578211362734069435616\
425153792322466645823710793214590444611109221070397604565101012869760593556579\
799723039393868396179918986917991593869470863242416010161030988737854395677314\
829723489659476714272134128400437621066020055056620233395195755864512830241771\
428237157769328767978452275710423728172468445461622447270366618640546724925014\
467120456547835726921447053879805427443650665491900369785230070372006141837257\
113091116810217228672125895948574600435329503311469579656490062446226953912511\
252868037826375208346201091939205299406735316501758378263276410048994464890719\
508214784102083666996441555489973118544459531232788198843519364669075619174436\
387489862636276503027206860925188097236088479380162529503922552102831859119520\
952160308797092230631824304905136125178526678309896484076261871121193856452332\
588015635845663256815365974140063516653852783302799332761818731642928434366351\
615663255280877405476696700018814831299264949756061744994556048405651692066062\
944190747116474057556195518345387406404646634465233320351037784476758856666609\
017287520982244711564504556724311091957346662677919503511119124849140645554352\
577254965663926785221917623854753819710831983228483946922294953737493172577554\
258096479498589102686359453576135514660375139149684512296745547842471779306074\
999924871503917371133105984182400457742575917866712195051742896119673898889045\
793126077836316129782569411368450788843444978664044958957817797753763317503868\
656921432845659076387703508545492288177459213464479036409671937884800156599085\
262761750977394016437406423215378834130050262017131975912486458792300685002533\
813548915131998471093397988436544604827289154971076037317445126097171706215491\
523093558078456283921799509366499044096091569942149387112429146631205469132238\
606335268740464186976497513460031842898257475120258445983103982014060948468707\
691618383086238789106146824197283200526150385110681990583517695632365696941423\
626101521553817250369391988202927136854440106294367264512033344244808295285077\
865022358866847987292336334526758265461364764488099277633165502130074494529895\
433961752661174901691213005810955424491226738528512234383695983978048397524645\
101205882674283063999608907655734436344801490488298357189816409645101192898539\
876088229692264354208244568412368752332589778385243845422759205676092607958467\
279386639764013337529817410380083971366987501792518889005096162725302906385122\
448156294734866718079216757439502335418797146370341359507068879603101501646447\
422392328672923717256538429014706590688672940694842542715905205340933901432108\
131385458259704348580931485506339418705437548201917022688231751090132941361718\
770058091133457961642203012598022043107382966864907037504453868442844087909458\
071383896209544920759961553665571306844046952712994878309713450788275724844899\
897349703962246511049877700417937126319866550424826450427132291612309324616413\
533039167689451483585692702166031906568999303527296694254093298585047142854083\
867108892734431087363457002691119243249637729822940094402075202466206644738391\
720442575483401453940803546273409990964069072075622907374684131198586578798855\
914252147080351784967358936933535007544672324613125258268704637563439646390594\
790703928961259764866705690718158460299360428566416523782711376077456210903179\
808657173199934312817969129429620455695201243315446083595765650783244672112585\
007760996890714299062146372250183703199851692200508139102053789839156229925006\
468735679795406627829502247459266561768688629321162565605008454294559032917372\
009820858817353746878318206447022686127649760906343394156649026426219449599972\
627879887420686537748400124027120252747334436166813022720475458702704640986434\
675736414944556040180469025649085325167271670951279005239342170274303288614132\
330961696475560201838621599787236096212275704210996873700071225799429518696300\
412954188779628724093278461798048647907699890577733886055838249114228316374869\
287853814814314622428398496233785577350860511010509261293230994924741892675131\
618818620753257403868480696490469827999122161138665663820326019135968402515649\
247906443983330031807895236961651840561410338434799376178182100474351909070654\
806403205691171664322099215471240461694247104315222205104885366382704720835222\
072281792307724378621462986066830039443184031897119593875880719811504839775086\
249284520537660993570351138469597842959544064857515050620849712281233606395414\
804523183037590392304193129358047025322396391151279375936015140870535146062989\
951940745755354886861982269324695538210219472021248849044263655395305394353300\
405061335996832016669879477207952586691433189909211865226058496088149626836546\
723498404814381094319857403683774663709365806373392945879466445168261148333459\
808948132301423449736300081770030290154167401795744361620184220760535776542316\
284564276440937556897155378728695987224574072558628891627542274001393924890937\
205554561607842415395618839990558247974029707414788143572707914922104355774546\
093490057376815968281968019771590645796605754942541814453299247981996657119645\
518856556568121513349098046580376847618266013737175683727413061704644380829243\
916537132963826165307231060682333889999510255307327441209426994137920110104663\
208749715410587445826115995906877240942869787594626942988054778607764580052294\
075703084063851604360593125556585533123116554638655410300726993447731181690786\
628011955322480995617127881556393519012560771128846947322636357783025965642326\
973847446967479381719183498441201028423519219594794118886452077960231343063217\
174354069248862375881350795013019542125685389606693125427932944450460414399751\
105930683075898666312089709178673814431062673285729135247335737334139964981622\
560564197417879844156021330123029600421489114784857526438625181429619136898382\
227494155863957874082378090383414087929764451188880233720098864012236174176430\
506370381076927834118901729401329462385639308531532244222768818571728893885168\
650075904844157097366365393941138141433007084179831172343974321289826930882817\
908454608352276168839236706701819377906387518688982678985926122487707255370774\
680909173812195568154246781758249863590845775282210873370947100534470431626453\
265098754187048260408504943289449671151155640450375992218315315062189417680797\
400402678059163735949230580218910561624590130191307342309220118774890541763475\
234787205095750830124580097608944902014228321517081786382971517875410232779377\
854072683639518037227273990724613281166726202385362958044768744894558935561294\
166787711514445952150728011245289783898892439805792611339511716337272476322035\
613413766554936091076077542886394153750911283550953891017569927348105802052447\
498860656941406880598157145534961021164041299207119157382239649687900615771795\
957511675590848192969043559344490289369648619008661184836408445470922988082018\
696435010241658928067289346189212883998058867547233822662874674898276007213969\
179081994180723645143829894301735530322511478911846799356943769256545351140882\
462644178781754058520462752091194551715071532232290031783786392997264579504136\
224307388747429588420386537963008878284974910153671404487270605223983274654434\
529356528076960477221503024060329960820144287406646309024369558220175148190212\
769591948548065002515966276672115626582703870721458114744697943698506765768823\
503506327908552602752457845213931189712195956022277801052170563123963444611270\
021258672357370900902467406949257666965304797371427626570535957448790876199299\
797549154709567456866266693317816026949924563786133450401286482682564546781442\
573431384860066826797672708278086896403276259416788405714594114804629164881285\
200102610561984527854316767343019418002873928094615194818546866310990795150448\
813365012546122141354279122839130369472625897800273316800303122198079222723393\
023339699024932381363017812136011313683103886773390012252524103762883920011468\
747397830196815162344845844170847115405630671221502524006009566845020996544235\
778554788006584453063354586519748517271104686923708210374238344516214463591642\
683264697674851191611783934195142162634345728069393696716440345231117981331367\
472558103023300335647091931311841549327154187214539550089621519955776480953224\
728170568462835256462754305762000017214990289645138438331171165858417764510618\
582508210472454698908552605715433473640776605980218446223023035764928698353547\
722866911672550929264234953591129778086706764009141760472511018422954289469724\
271931395782511177137364661288610993859615446366855566406324240965511527124487\
408138633958403290683016637505159378894470032446794442050062323805678075861405\
161794915675878485475379803613320458867201313746842227773933830101592787382664\
035207938573727331878722116006978868491056887673735468207179344205169186912073\
390602304035953144024848275524988496686390561518129135491333068919805095831954\
745243476885587738310414344539933978264379056007932577903268772389335970408929\
063798623591326882769120482353226853311130949276614545789111470718167829879548\
739779664939334049995804451114426378780550061812019428565801151160496597514709\
360848244784071510165688191515476308537089917774950031546779199405543023845556\
843295871228070339303655080520359026902225743269417733783302077850881645997749\
984355147030418993109278863628555954986664521514608322432702939865354711714611\
209786446464432561800235200048641692809012519555879677770712014158540324292727\
965139982142625427852383618248974400837646571991833956603365094970785232889745\
881493347730994863973831820193244687919192275981928705919005907540673571852348\
118683464347785054157828224490798584087005861205284471633587772330438082709137\
396889505684555352326182211102373127136881420583983854747049000536093865761777\
730487830785597217538818617272005256836873008672176915441262877549503239222116\
487221786152262091124259237746705501612558235461544208744584214964776025595727\
402918471645315888525882788428685588949650842703942989935442747557848840925342\
436759646126543810920255629982051541480193747004803579667745874100884131811872\
582385785448488816682771330320509148049902706338669469099351248792271005092774\
614149529146261051764859906929923817599024416187949702356571809514425854995765\
179296210567446002214133673754807986035969594685698337977267285287592506044418\
464357782403623776670298728323706045274425550681518095558886835891475330457011\
692173081904136821961979244460426499343848452732374619113711082446433501694801\
550253284184628733492266134568944139002470663355470788141605485679668656432669\
813031783621646465882083005036445481292288496446164101250237576828218945511845\
805957320909394620648677509380243791289601800827940474817422063327914712842095\
137010561943271762928685790909493218055568979066286289154737548673198693738466\
419585618899770827990016924649425190347377703988630149201118352837232791996507\
771558163406176196984072223186782701235403499438429168556505151743837735392032\
256115992975687965574856371399849841889818723863447747735515013535079191081808\
269895360125247825470432140977846932329438014725512584376086099814602199698631\
548473576292080996702231230779999766892614937094813131176126725029020251125017\
695385831757933248237475871601959893096899542945715238027789223568504876418241\
391023269149165574444845124608305145787417507387176744173551101307645537897887\
522221852058613301075912720128415816099012918291185666715739299809291799149161\
000466033329225776086756566635965341818542256059884318442721810942318109063106\
059677332784039505960669772102777361411827206434298538442465877284718517883633\
752819325425830054996146148373504141918616198629106706387911951762050556410548\
148530782364372016539996520950423890411674976436029024341956762244685142089456\
568032327777818280402353171727161613847452643425617030040388071688888421475795\
728132416306939771904869321017748493439522088977977460641321606591235428730663\
498564951384299151193754156826880464034407400319164875242281289908496049108875\
248189766295443946375362198306085302662976776229728237088410640306798395704550\
798642556241329569706903126069372722704973858490635481194665353366026431535545\
612762002245436501409287070103845024942299682469894819311063805848963834966842\
315468958573941781004780274310243436170639373226671414047645055320685254527772\
713379959897191293351095335218376237814482821238983318392269540362944194447793\
933862947820856539160276865474221602197454162503479486573308748696362146050796\
657211558568264712564019832368722180162737027408546123315314874653193936261343\
872784984098267899861969122026697545901203347487171527203423784853201997739410\
893991832399353436083831944835040717016050019719407955692916944124826846029055\
460248055663749256769023585654963056305499094738338682002253272751014765382015\
718968917643861760384669147127050209010166793143538898179926138949582056843152\
542717333984584967784219554228496937753821419875398362804151385327095150706778\
317618492686749245187887825652388078755933987418992394106466084284159517680029\
189967446045623476841746284361490524099614609132990782507767172994873799300497\
060952190291591878815655029486924994826388639682384956086850057999208125916980\
957625006325227429775722353244646312991916029527828387808637437948487816007986\
691844944952033890911819968400143601937093305472219047178616199521109291127917\
001976672020216396691842224134953526405415034347849373009481075000992303709153\
882015508200330120076040367400475028238121723533105469837101009657554881166142\
817419714224111146539649408810687135316799674897427937226351358103899882545160\
553672510213641692900321073122343007239955691422524643012627356668178228590169\
033995255886470851754284397934232749253399892584039232079835993252157435842523\
037436661389938632000800645747508807093799846274709665708094369299361070027345\
381568480143981800226497961654983924247214953855166490613388699479448764070625\
660160551717891131051578981248406744154043863432180804960357763693369650750249\
675465965351715008599750764000455954263701196268335042396940932473254073217465\
365771218978633545568241703910378182426567244157818438494538256203497811749471\
046589508232140820478205399922170830963792471914357052689273788296301720459841\
639676597939924684512021673155759406108501108401501493958481324314326483170638\
352293389835732862962500645396532323409016634553497614539777543545510180022729\
878166610572423124306235039912669272559398387044682244056902175272089059731403\
171949939375760651704430817843584689023226409067025582563156527103991987874499\
600566965311694201789033319307912876404500245292607775735544830851499121604626\
040796635700429294141521078517939512489293113108723403687549333211997169415582\
242253234526991651484270807496498243209108709130271922073605282398890333776482\
440248216436744892838932717872463012952137775840656766503422548447952734389296\
263521706924829572233723726052121486755901243751068863616862068481075325255190\
808700823937566799300052564004105686873213457742011004302127479640462677207960\
288680754533284461163963670296167636106120956409159039226759772561277082336910\
179793240276009477905049390594990355097623285524569201492338038955511453694537\
989642439077531543866107961725493579716448034461266623538041455573676426251445\
905719258022229306403304943177399110774599480518484341690301247105284001145301\
170159264176031004668798434006763661357541593810739490233845959978566490063310\
019258076179659274890217308818654512491561008456492191733984184936400789242534\
005288512740978260728184499362334439677783416430328617074655574470958871066122\
859798438328988827786089949825934445706255208466693362073645613299517534649909\
660709934312563597490296567184680351887876443719273432284967575348743806058683\
938732087107123411960330893060235219350237964753015141593728621182295259067018\
575855904869810336131061953704410772086023300066943559822989972003894205071241\
309633012473989889865016134460416369764129918551398564133480244010903820420980\
509818816370765602535422885206425047489586808991794668611719325033248230241059\
805584766380455213789323057235020097155747602593772076776087468148213452253163\
020878882398535566840846201887763338893823940059693823475558119660440536601708\
515543140928633570921594481160175329658341333471773027110597090517811589017086\
602990160512479450702430123230670262179701141510682002268139997507258321303561\
667949126100542012864532298006726890009482097075854102198848852954596019747306\
361328429698553852265238161308896659145091248868131259535362960576603197504295\
041188439397247053605789479862831714003968480764211909414275681202732454233195\
931119523950562906226110099643989483816464487458668307548577853287408199375727\
485219741371809429677774117222393641356033211909334407556787838113045199845148\
628980006084838694206218527192801877804248668080299512897034732944631709460038\
595125453386835579689058465172300670448889684061086304061213515520387421392844\
962022257546585820866986406049865542588590814553099484349384273384217864505139\
854273974290958570085614625618349527002281417325367653979469127529747013170063\
835415965446342449683526350594853447447210780561078108296494264788100259793187\
756392390432917853276342037522975657527434082950845479470152452608993138857831\
239117512692255667572885133404397696254039311749337139944952935680106037969445\
956859752498772673480790732676182452335521216214968023449292542886551457337565\
576594555709239533428142462903172781540399834155641983771801898211247608559555\
189995062073007140345208155033298149750702442677264360338737539731484313740709\
266544922952042319900734594639311996535056807332981486584110919944394627232845\
367711284847362246063313602859105963523719387163459869636443906854053223193152\
413546932487576730463381703029447983522602051814944458504961203269092337527162\
355133526234320721943009358815033935989744933526957874572783140396703969100170\
734149325310220632630169252370180120244226884929098195551171956120838155014485\
836571665102690866487173238190148609924699131546082001992705047305688761418932\
981083102352648281081024854502208757221283441343794849997279202583543417204425\
984693274091417821439492801799745659873698287428268267484421213715468232751128\
534165237031653070432582833721123713760969593993754953622322221974659619332529\
074042487602513819524269739101756371975343004479617825043115331506758256273534\
347625253914251527570478784376788524187196634624199270080257610839274976226365\
490018653206454995155802908398513272627321967284783025385221904792786893895387\
803686993188466031043633524373271546998988111864436701140284262026150473882358\
997472814933432570654746370224518872890612550302737919026403965774176068989769\
834566464705204716359214483070995843064717275076337180207145974456525141885050\
371637738189029696852844092581931744100555760898502923271016008982572238173945\
436985296547694901873840464656437307131959011407613174282203883313602970852614\
512349073071476245340502454237636666855757401206040598869556301144154431416969\
860740322078860031327905539178696741635552402507676530856322427378471497460377\
840646093468129918719028927597630701598408877817451926901476910300302349794585\
110001808866062162868011109151161040983273088089954337551187183173786558776487\
358854490366879074169182538313306362338205820154885449827883821742437580549238\
159729640619631058215167091903263187309338138501130913327709303425112210972155\
056104913870504262198052602476116075059710379436647715293534917186125066116367\
383304995648787793656979112931958782777740601075333724327900097324072560703888\
008711373096596344570960411750894447911916217455169709648447620461741281545361\
284226015513015895258628069570639244435478023905168613385498619266567622760358\
234985569192248906901164598660961567955415492157581283540920253931708073781465\
078832035266513457070655368569928112426567084480177864614974045492118431227621\
845224410884715075701908834950224375698850494542410572662460945832095962572872\
030994776540107398558069966198019534500506514501054924018861089134173060759238\
439461246569861605609094541772907364009391321956768364333299619997965424348026\
569406836986706175874131676505060271358825744337072164588195226133970545205234\
412809231730650519899545028585383522873787286982917275807824209826106060901509\
252110908989964389297862943014111400676287749920781723794746209168998389618948\
630773060274910267038839433524742434212367121770246101160240611185716870508244\
049162389434350470250813649155155104327250747941024737478192265205933551362553\
018121964249924882129926017740801037198842125474472160296950027742685077521758\
669179938013625842241739856076699165432757061230452867280707631894705895440618\
842131571380033984874086809414461845854230344951448521053991248932455486659305\
335584578277144237743385339208241277632165967538326650643063880695569156202622\
259469414290079987698344209146999897956832667090414139806863332515652569687878\
992257432796139643702654314463933379900081985753079788176133743609483928302233\
803279732038653646242498055114022469226478931592944918040382983649034888638697\
564414855608560537177228737148228236864278113657203947496906937239915610036828\
075141178473782562212775995916775814038532986888513655232313938431742258535628\
070191544007763016347647781261324380248421865669855274007641051190109545289838\
256348407045580809052214769722042873822020644511165580202158137220466347663335\
175617990500897780885600932081454176443903235241939731547218920920202474270405\
857913543792600976807636298756614782644338926121213456594456801042227616524183\
764018673453391488079001363603528432174780401683146726188067936493046865873646\
311483282698049202278762554540178509177497728294675692935451666098641948145836\
444789096038304582853698956080665666190360310045304720024226393881572068674690\
061929873082248490016816348921255433754447580388736158658859248597558742783859\
992954170991722511534025422229692234366177781929653313496747757220978430193818\
445059850750805649483189679220583434147890510257617490997582001234724410285079\
412318437601471421378295110218735899391708168680559881335469913794537831377114\
135491971243465810931127833266217592227589369934770498435251921073517573702005\
457345130587313221438462087602775184053489371323766290711205526949053003888228\
042048082108519287610767728145489279440322723628412479431926441924307968137038\
294820058697420150132353198720519920353877314215882211485974318238790989199325\
393415037876899596958043272517776898661258893954420139171306418862951066526896\
062414520844803403474113314880043138647317158446815754836531670512601746640760\
728095967213272942245361042667928094697735836383498228114766916959695573277028\
279120997926086381701765421015111581109268328748595064626236299259249694378182\
229169234325485361604152514206369252147745980941988926814776443905376111917463\
026074170414492241949800170623866816946607989247516971850009428744446624100586\
380355863065063609572709797349307096488907606301907923346170197456656248712884\
986738267854626894512094622905482754233025173213282785316517586934054111845715\
104834632832008101152525413119367954561261216103197427832103879548253917431409\
877065257006037671968383047869291003267483442066840667351508858609166297657227\
799692600386827334964187583321180809168618517134591156850893149404481996107250\
233789677989918872582686705377574351246508137986281348350664313246627092452365\
469835174070426513698824143308835526319454754253248458840939937846318673381336\
610310058114645515187730501413081566601806113226835296397114624010498314846460\
439520061637354258469826052125453859150536462014165930615241377433037246441039\
759850015689210279093786786031851767240469599157234052900381676072424770169781\
521486151947462705461422112569127225381590502039583051468585003602420054909455\
026826185095875426210973991322095029548958289174232981343154069257570588015736\
545351789274152712894131431826947690258885478659919689883599904388542274846947\
311875197488771215019159190888581326376998121590808969182335059079714874613336\
803970635003695553942259073453693326389696162384254104794629483793746381324612\
408253069026914650215171965524256788471272297526679202803841296615750218468110\
886939399252687943950326728700875818861049300859750196928095204823757138945438\
844241621756626373518033643277401734125942745582026754402788121409286880412030\
002270631808259318676648149044725799446704594238281114878611771247129940234353\
193476389778948446256041745478020529553081502542980157090392382147214574805502\
696844438096038016443726195300440399081842658748795326360174773439634741333029\
275581820008464886098183291707862124370345940428150160414770581856441322231887\
793921639889612736992400225160535128293723655737319319389834175384397083090358\
533308571836931136503700819056545043298422099381490045445400448618221405506052\
871683134142627896441695333980296879517536667847550967256739077347181693399759\
001189891113962465206160718856491192664269401606959061610443780149866699828433\
246525760882571010899195911118083503036507974281230709395198402548016944626205\
923636351071990148156774400012313072541025605601593168405328169973390707153720\
880901326541540840848694648513376227482849916127474705322255057918337197829980\
217375914243447148663438084599101392554944659667423730119121569104847330698050\
817129727313806629229678493165707003108305567889791232981303751031746783401120\
813530914660733675118762187223247896837038279501239544495396758853738446641347\
202470015885201761312154814372133479265672244691795625863300306994583628910381\
264895233888076384381880921180739792768314123086880946917176552671971341129027\
158146752944276252132950154301153369038922138410133788327539359202090519420939\
389794128938076595308702735507730422191143004325668462407228903402171151273168\
905339467851873822784851582247048412773926828056517260376445844006828466737354\
482592496916214239033889318117011389131501922285410738181452292592185148575252\
476183848077583829866667556762888310086015263589358635712742177728951544583129\
347098008471782896727341290370760715970897838993427926255738188956319405072752\
087325999456545608586855358263133708493406413934913749179077218228531160094982\
703667927892358788431608491838953362361576576833422289592702393915386811958152\
996066452081886184389697200189356785489494221651236101718473760460603829616442\
733117304025869985215372164775363206607206123292932396240780047428067808124542\
992795093505143976021192911303780217039508295099069944393911955003407215741480\
177592299719328271630397133938003492679133416508911394642479661320947250898195\
723750491133129166984273711489586628649336133970303624716301283210070841520262\
768996306818969526666944051675113293786905003412004284173942954144584447541246\
771850871030194976373064645661863494065661595559022203881357136176823477846310\
988547480314160751831305440342811270350719599014203058814923214884129356944529\
643170313190357793773919016569125771780698512180115203637847182328949534446551\
462678468202630396663019906922610623240862574936674402658139719248013316060412\
804309403011781839533845697347778755496505226719892039806465088098765959904026\
835458290840488743590121024857071905695585182299648163245701570374833507162561\
778784026024807954364314277409752046296007705952321593783926560584763183164539\
460869129139029707529324575283112206316530779455997093588019101795478468222029\
813794967339008709934835236592521531747809149296359576803641645315741984082949\
704240390235340265922135259853080332431785857740605690039517496624783114615470\
747101524109270990190694605559239683056148077265373998499618880204526136957223\
089073682258369725346732930434907962315838626126344424086314103499740365508692\
160500462809793942595737077522421277559627928584177313693090364594363844939823\
392918548955367647356087898997197780703866209274631851985085192685262453825870\
249573805010993816323870820228564474021890350370205158682457112552023153087809\
016194370538717681644829394491186589768122858228286305889861029605283254438604\
524159887904370477377371368502135393822653949023421710889783710051749817597020\
686825702725971239990477731332089067421121200821839867778705656294246938200423\
781349130666302875875209256477327316746369664746257061200346715640903478963148\
186821345980612729682565455767498591972867379753810674217385801948693932923297\
854556100790005472533051670818549550829573316453038966728057387828058258833867\
439567213201612236427190239990318506978094847298037705172000913056269672052843\
166496490463110313400903781521749243406714466245262478844479703267080920479660\
215253622977798413035291824916677547333861097577175208925700627095398419276724\
681021271464465163618290386785573635507001183672415428954047748343284348374756\
430452744506808442943288003263534813266047601721422694003496285639702572562837\
188280089547602386663065497470453498437664038598946458144805319509199259451498\
233613653904412316740712966326187042419884078656034688944098073565111719088416\
213133703832847527158014023337408746055090197337083604720090201650957663760378\
637218832003863900863187002521159432783932847926470562069061394036488309455202\
394372760011556448767844754083561603998488513772923034323530097939678336983009\
127779979497170462853141004353493338226748496581775235312719601590617282846213\
714010305334392027034513019491070344617456577179219132414373649693969048965732\
825756691327645310834456871594499005092022404757994214851413924545725326078271\
647130569958137234896227241015135814633935985739176240573446271578414318958068\
767448800803490104731595819072414641729115982896970259377776750067320383367599\
920898141119898575770545690088066735105347037213293489055455497205353010557324\
696610538066099500702754752262676383165272527915483314536193916719551030251519\
417178123912448276111453221886677717673417406452378993015037104211023223884776\
937314255347983888883741324601694849452299051071089558793216205632208515653007\
407950559249445974351034919044113379156636661772461772342505771351604426630343\
126850879654103973473927452905140551241030298362589336235834267865532047780753\
909090946014043806764382911478302964651821538618920140071149455186269299132473\
757299220611525247829166545756956638325114786725256097578274064438046070715424\
617738733768071930679719130310725974717095148873747469503491520242571874386619\
420798287288310571028157936402714634532798473494139024208229738660143735485609\
080295713469226533118264067965254434989996978086293470385536157001037969986461\
806802893285729725290142829019704050111709396040179940077279073005957406453592\
391666388114459764187426920093782970522564055698299485145116253966586742236308\
393508148778211469714515626421839723245197256393926186481618297743853241064349\
252541686264352270431372380466259855686036939297507794006992109272687025326458\
806166692255729635224420485867181204509342716663189051926245014908460068805223\
509444346582740225829051295030497996140166077255644874614627097868897325672101\
929230098245476543800864374001097572366609241372318680077447626862945263917248\
970267674567927348695426329629330779938306069517425895653753303319825137466974\
625871617196767115785959129389464190051959423116255426558903604042611724998909\
306405095319996461071997051693828158842491614923639600111384532591716540276495\
476617295659031279164951736029421362818726459267767827689602966497224763374234\
588532554323573191763216539724350146857623916565043387680021015694435823608634\
845735010253174638070912058156818796838583945104236795876705668608026594829523\
255942029210268875291154369222894717898363306284089773039313699219114714816289\
438323424291014432554651237764299212082763929737715940641397405209230530964078\
416316554355424023706082178182299215828215654017676697661208991448060059529906\
543762363612026305988951007723575565165921971451678367435512908451113629555953\
087586708377800191996181655683100455702282789191613024036183516412231627090454\
293979674128235084330945220216062668426891971808149654830769221468092724377218\
327397092955067524792981311566988231593310969899391225434479357745606611269046\
429656407405419288226478547979797445592299821353002931553127176172218631970898\
223531161069406848815755289481620820918166724813128908104623769907013229353284\
450081408941518931109879654072146182757480558580243538161513918772004445850657\
984792025456944114779663992297905320277130234997864403442182496163201891811804\
326478311151594681114816472645477617634978713086688756952976260303166684121463\
430262440794686978285987418395031713942900135590877225577053738582054889531696\
018068632325879151070588932716859422071560763890785976077655084303731907717669\
314552391351862236311427116085445804084750002479987582300587088265491462207872\
672680636374537598067416479448481497389238754728459343875279286766443272564795\
561569831372462510454288850073348951302504367500924192903435436010856692082942\
618503883972921380359209785263348133849959272530132582108608715627994119122426\
533013518546830147588361727164882181498350287788557539659788906106832228618619\
529827640257722566057247446559340325286581601438651853736161141630755729703799\
944665114114054079427147537781111425513397283496115287533038864432816081165190\
097196055850403199345652798222234280729918171305432277487592302825294802655057\
174086199252370629681498124204263776859881953959968475068012031703913507600700\
194920848368879638514240583538606896803775442070642716519419088448177490953805\
258104482473913499622829643783561309374571147615093589594579265351844458244073\
484489100939557560229105606244845612560043821227900342790703931871075238085638\
921136403935835401058207371156598072563030772823585173136193707794908570998474\
013366850020841298191122359596968222596454588321433935711948347789268345889740\
076030693945402135727476634284866657596679093779764676816301584881677064603897\
065832759236308140929955039458378138514377201135323628926420377834841213595082\
140727120895337331687881000034208405761803890377556602679235794264582504634285\
826405824664704136419947470546611833543879107633145242000537808999550347417398\
247970896323065778806615087882093271595756544842616883205894028796721171980537\
283624065611890799913802883209434331124691268141432182067023539066525496563617\
615132401567956891035488079558258253280000374072431650591530590694165524402644\
222655346570827097143842841856265032262749319629589024754165345761282409353540\
627014400709114820954833364938657662856625027302154425979845382948191301499938\
168390326408029823488774147168249587848181800555206691015613702532736823984640\
258918801203376500920647729115868497705912814253936463325614938138098819347295\
892191223730295843415750510217738760027425700671307213271558502718326316567322\
974165569938789693238288866660475346398736332850561625487738543568830057262497\
407546851550544779206649515963229258022932661722962213907725474952264621797546\
086820993904542065712223201937656293829780886180306195284931320849673872332603\
947486973079385678500759409394786742549882024204154706671982406807377080366075\
125464173710459356950619561033855527322098109391227546654430715285653966082482\
186099201307482570769885348946915431971656972247661616176670651988734448966245\
862862515222538429015608740899543421769517541033533634037347503819645696162086\
050486414145849222445318556939210460917094993512309706812433674499298196274387\
393132097040166953757317336392406620673366066435460951047803390531981705875771\
238273780252473499031335004611778877727476072034257314815970711634540909184231\
751982744277637794025829492137246161424412299249358946143400880938914467003203\
465218983727289742397437971531983072961242850269656158846639448405567776686058\
195053148337097686851718630667649597890678887068315052510880215627001700423292\
565257755357147488071703303840646594213132225602881837518818002778199301674099\
864410627199825274556959680616423014905837129420328352608681346582068661120881\
999425608719239598657559906884794479895728471897115760112663523321187199746658\
400358021813404365355789510224096323064467036239649691027401415384026186040025\
210407010782659915044971893946376538974233959444780941259644679388105954017706\
171034931790601028584817942869277680251606346981864876158623370152516023637181\
787999034379595511508651454025879726423200572504444194331712013746825419070853\
107215208512693984662801771110264244563807915882495667434928755342215336739800\
701841459689064069363816415346937335804134862168236281248551962820737251711644\
710048433926771290470954498217712459973537949895925018192667009919231981513968\
720392407813173328822740618348993689159625882779434181259782237468233565569661\
617070377394245553860213043349364007531953398491086996333561330849820046220523\
794212611273864697734352984061412029335747698542837985073142302960860064583902\
032668329710664748592802807062228941198468523711846288178252337801817573627386\
563385765251145897691425173865797681334553312596108921679675992162004777773660\
173969815700518930556320934768057520823924709307505648653540147096925863324475\
352400235795142080886099352369049792716495297330731217627022775828058433099277\
819938043921726811176593651677463485868115239136038172399380436191370870417832\
458368707326879275915124213279306924936806725671640937958115437410084474318079\
847981845622953378315920943705859879306743149584212809177146937159988393383659\
676333285508452144871734987298280228722459721110033706788519570863646932674715\
906123201811286192207037816689825406153183076538439839566907198048513952994033\
311865280881232170777351327009709343772864506905524832018864054459121311179044\
127994901780460651193462138351820079194171186947790208647877508811872244776343\
972876005334911972357654068682019368086771886415436808009906851236046326960994\
085099039694836217157071869815680859943192755078361763106352286244358297577723\
971617124439000785272578744254553882651665801545049441516401692449890426834573\
456261734020571401179382531553966917865085328616022779776182844821286729462937\
149110911635104493201078007237074496349256912189049313573617672737075794898819\
870814803294560802701424574027992891569507497718776325901218558321168332456383\
246354264136630474420695339068746180487426957308252892854977557044655307253726\
535449091655058544905009080736081330077728805917621134078127022071577217991846\
919996476476550010097766017279646966552244526699337699312900316835211790528327\
287495447512981340250629138109549668572838779529050442889661515542282376017449\
137351386273975389837428783645708577787917772282941837862509262813945141402838\
181071249937085703496006797685633696864767208107940134332689922920321079715285\
432230936878389824978469977558977758416212889666118309718939561805589888734788\
223858629836061482819706388537663870236997190568879142001500589327815766795541\
265615324077751183701666268023336345078784136697950895864028584925040484933796\
171180328045570796932170830887117625919959435644139714952826220987117939305641\
225493818743814308084727553083891726934629489967863754936115462433363099267699\
468701922308814839034814606660954452470388376120831651420100763183375893493999\
620082480099860462830624324904927573357191805826053249355127411073586030225305\
769820499460021459863975785058321391016158208938102536640432838562215605048187\
456596545074877137045502581458868787094158414236369582539050044102606727943451\
061502477228062235096633157361251426679434140746652063534546583922261146323557\
839399370970262019162213473885624539830201655471462084762972652574642687233863\
623153135535568166360519035718952446642375866198041144802521990130259589349990\
701834644312706805990043256138711210450689055750679076762563050384262622513729\
065225654942654827321349984841605395004718249856560184731449074269196457452658\
113570265107162387733468833725899778643672591741155701655292484206315218737915\
952464483195251598063394603742186735024198039034291728820585693526786658158201\
195876069825239649292348914679443084786574974508366962329607901893079624458748\
437251749229859571678125574842331673035806137323872079009336336925742457891953\
867586676113412582471603070894316874964912571672763444303055435879439672798391\
605502135148333240544829591240121878313403045929441621292750499845016709464849\
534409152471837782557600293979425014893421463386758834589638702611272977948184\
530344423147131244078498214846735862732653628625501039736030179463212553543423\
298346504287829926979525076211766041627496983635949960324349579121030004621920\
146211722288584413301742909151997456174122142548151012748826300946974835123007\
217022380251636265424573166829154744421810027776127607297892368258611620666702\
210658425698166382179841203878410264487735566199629191877992434897623591813120\
793421262858085245471431809776763721364584043359927672555158766872926818986466\
457737181567137271273270691744607683702302787924243821403830439878125470062137\
965560074412906471083531304202892912152146345225675356683968136278189995449676\
285459172951332462312686271207307031686740866015957099166315864652238874562344\
964515990749792099459034313921494067984830272254572430514353045490785504685756\
559850314186308483486501057512449287567182899127645724607259255296433846454729\
452076411844381790283425846409298456812175616938935965975740429295571529150768\
297078020239789169692521995691674357951072811013584487803476120458651798666327\
827480150636490227523192057452153557288024819586565693666305469970629511442206\
125550456869148032744860281726828102742488640261601893418136540881702751903632\
798220382703820898351245577903536165344698442851334548386435254810831284998328\
941817291612083907139068486878921381010367965044352512042221465614364722014989\
420021438344201240970146623634385827269296108625255251189212907148360456679559\
516865330531054510197832165741762682855934691871492472425479123271529093087674\
353283875056316259536391996859258022570941304541646785723973762668711162282093\
474137383953097453856228395401248478081748766221827151570135695466014514527686\
148821945134110598019590863768978510290474547665743821518113451025024651282130\
788257311518251357320827342206955041620563142444929775785418104799619444293639\
466973981359366911184515777799264350643544477890786688566763655567510133020392\
064109944674869723800189018577123739333851891151761529179033570357835979595544\
489785949895424664715432770670827265189437837948064033422143377240478678694063\
066207205650277370025852374393455794943717575948222394848213090905392311698664\
096483735068307724944504687929063370538796371011704409037520385264029625703004\
417508984780077854740069098315941092887358718953394735828847351202477751441528\
641433301523760202571654663931351516958028866473153834042344370579637648669804\
291749897294330983715121568619296541976790875435900658851911949101426075596946\
536884456188099014507149283559365332865878073446563488103298867967164678135738\
438860393567548126731638346326081522267743361034256279904458071024372908605563\
941984409751355348193689894438585629536549986258860485713492088747953260910977\
030346501294040228602836133422350547868311753104804378870682882815000408270466\
690072446076608132834861647163816967844605155176165371188763515235927858975553\
158127353916830280196887220255186609054347841455916346645871317346752404232051\
378466514548485210827433728001348672450682567941253261976165988765239668887392\
524079984935281412709665420506976947910909196918431017573132250706433908790786\
086732900306398353516515980007405308268960241703702326706976447029760260469815\
761395292209643118412199081244329745349697140355250428613898420598735576265543\
534721231099641807557394304984758358977867534082777525594534690720294929013861\
369117193813173601646476625497435511923723190337566403995542447783944298351828\
774246412327916622487261166153119556515318379303744830710564919086376924643039\
253332818232102651629843824798894081615315260981783582054204757574239190790661\
089061726333635275358836728525323566999568627018308121674052801800025536899293\
369386788116744077729916542788044678413562009362975545691518076713312963755314\
816579909072931041379628475994177907248909988399465812988705098836726884172624\
560065468114480637174295084587982931253382289570642635558951957479210047487800\
990674713490817711659702787400484855846184436218804559755361397818771100160012\
097380658520602274673984321980195069095331623045898291761625860113602182893530\
594673628712855570420487403580738017522416010536449207270031358736274465470777\
935266484464080671832023727942014344723474168049821435321906618542992546902783\
902394693675658550471520114175000886374437528098633553566630531447427801085599\
461612399029562865316383085174797943117702616621107506672591136795657312610790\
687425271321020893420430686442656219088980102687881677586333919879360681779680\
015207386458111864332223002760660979237284918816522192627682090188547803894435\
603204243307256873460617370232452680436617589619974446116911030486059055319970\
563600863393574676825493273026102929726522199970137847456683369278196032684120\
538725039677338741009430233106594985975756289440887494502324471045141157592838\
543190436560997944177869456505908673727940501810358913300780225183670471294785\
839325894520337371154096525172614324582136510949286496372790675667757029078810\
824521987372794038199950249285273634074361722349146013133741882615777539449981\
758244493738170620495051672294242853747166776178806443475674224096592080380341\
627847256942682902292521252384858533734791367159246949973608350100908415999161\
378048415807766179309191594718856909961023256006367965097758829543573818629851\
803285928477041372436648951461450501920694469100554517531628065330522640076777\
089331089867475923631142492119647379838595425577854479230575068063861269020901\
325063079395192221338609185950651259496621115675247703172613236327036342371720\
466923617527296437171794845104623856042582227382057466941639979217811594135596\
464692984830670920142577974238009352953076421311879630325003384984642860363407\
249831285559398096274868244319578185903888755009025913675504375891472026058362\
137766642009090107059305338719095934833833029991281661449330234883242862780945\
037445941996227719259121297396187159202084731553469808229179455741106929562277\
074646829225064076988440475901917347741466498926352361347170216506656059047328\
036496824398368514816737296969861572310728805030865542054653459983217996813769\
385218793864713741529934848299188089577576066975496074257348997204999445924747\
765506558813098857791532212534825426618429008335815330042553324053214212483604\
361281922172957838444800154600298950501182389646309785607091078801026493793765\
650947187932258338844608895546152946266400196083891130912856890749524410992955\
918508708629877492462935098430541631892065189010221083687385076860449558367008\
844971994147118076441320231950290439872981974058817957555924943246941547994050\
095786346491078935958277278660074156011277589271569746691856720880461585956897\
392923464608651825973480987627803273578312282423971491807934995218964891498748\
911954466018464859793933432798169521734810473007464831253068075519706380791066\
795589876645300045068524334584450141943807605732159724289332940953577690289281\
327309503733441374448424049652672649123074576028003390297467260071906965178930\
568460857048624192192189552950120649938297904522189071154499699379144340897775\
117026140825840144415357391257526878211204779567643328875396972624473187903295\
250147526864259374561435487996402355502556241286564188871149563905477942768587\
250411279911978525278635555326054907754163728187879421667567485785614162304336\
382407650378801560198809577238048798808776868188531550715521356754582486210745\
365289042299172215641243296548596040476034010896079300019701881603401870668767\
349301168067625375834101944939599597517992945290138196724876429435303494038404\
548902069081145170358019381915900539925385499042811644320959810429725600989398\
297814280181586790336160128834089182426560769657275476319967224533077566356514\
988924033280178529096715912155922079660592005166471511308401574719857331559508\
149313274438609677728968456286694798136503135660944529386858762164723841947266\
752648279780364616646165460093843200963866510587938358408749636141970634373244\
074406175963950405430230842045311689261869054774551230814292867131454787249367\
226271401948058072089560729540266035730001659184622869442970735359279779135141\
545723636680561351033735941605798693509445930764592536435012949183407465682210\
680243295447211988604208897044877259785222935514414359586661710840576191296480\
249689572963361908106473429291580124923341595072790860874734729777928310221170\
360078554576950931364786905913019289750813682069374766244097973906085819570369\
479562173390922423568787195448887076554041753864894947001250532659549065911585\
793127048165934568764771061383451657286356567308144810722413625202977151230115\
216366436175554153777313531260736738451161060841513583749649991446718312384781\
726612783229101190230569342678897476884530592788790534903105077614255429962938\
754841751963997912067148771056699673222538913932234015644585015038358971663177\
969650337608726334162566515216857077375304022479440398754569309976118475950363\
021128888392344959267003790422257102806512980545469553211495375827664971867066\
319707916922605079089218874076177663472692934300002854445172960164718901564120\
699430998616936685189833401054866295948994656903536055415702937086950368322581\
323917400113357891228386438186621427639112016762850917015801323940797165867875\
199335922606774097310151174226890239632200130165011170089640856609159641996020\
206039985951675993361646087251610537383060830138547011469178633538023410741772\
497712969498238933474609781466633088906239419319707976848862203944896652185530\
855371967667509635988051779747261793032691283182674862057809265256529034280190\
882705901405466374700138330258893616017150154888689359105694404497217202113924\
564847498885836600119303093340504248190948084678987600382766921817190867696601\
829782035599207189778042923618366306679457260518896053823472875932823011951586\
555180178283133565830986137316525935030805823962559082865729213865472195779312\
243359147323752403786908253602164629481320488457398705136724638246505998731146\
037622534977822103010145429875113822448213673526737210704666777974242250838584\
648872949096005218614774771519966024655226069621270620854168787239515997826861\
207922328864955994712943920009967608462614452966881819111809448899195588147137\
993148152932958251607601071166249515565937202893034513965776120215825001792716\
582114749398982521641313983316292159116787863114903503708046729113467566457367\
760316704471187228697777493720498411552534228368936469948659928163890293333295\
967050233310631864547159461989211746960440747930112114166497492276966387934136\
055436280135652188591691916012650170347349219857791215599655450788459028002419\
792836146886166968729406732657944855141210293316476780504320302389291620949699\
409462681126884776194192988872830204532548355595645610497507526105244255809386\
273420635892776828442281295814647347367073622559728294372637748776839928637632\
345393663445058464032220274973415024875765991021519544839141489452822383268148\
398051997076559268898315447157695118315551061873006768568040571230783243356862\
781303169868434085520815414852556772088289519403587858372024544781686346084119\
703605994692042050223895050999054746225247328128667550756059266570238196798544\
369738430363475513530101422313185966598355017290912266356068396272443084046523\
628652842323814234990867660915808115299856731882700013109382157619132965931457\
997811998234263059141198338941256260215214745561859783940816914555513000175131\
020838255631736162154590351291061800153799212994811409282642152270031879995958\
336372414326471243780519752445258629866091397653631205034855196870142616427373\
944255387041040934011786902848317324446696438392741321758809800049498861502455\
683932136997226039513159990952783701454801275952792565706687603394301212911978\
505936574394130654178468202190033810503607149529696827193408249954082421616396\
553900931007144638876203134913407756275562058777480798439458119495188200713205\
259403344213400124368874611015102666890106725161058423245264855139823924004357\
219566830736578634636284713947718760514239870777535371198854467657293463584698\
847810339146678478547087315150429087424592394613261089291950371011825492318420\
721043794200626722449362643509595503375838171951054431168732796056753298291613\
125754356825245646500812280522636814611597532119917066036435974480828856219322\
673936865606254293822490061995607753330652464844307273487208879767292696814797\
485326374608211517122721743446121372624336324011843291889863711234758307389741\
059168181881668955953718239958310915895586515510793911051537159282391972723851\
893459502417779055151515726497570872428767944097314530204095907691738750096132\
648370745595341535133134490003875280310133785644191147423502245236200886553420\
535485956209777634859173787806212255440225925273848307765179996373823009096197\
593801747525783079615632336266463730838957384671116709275064415747632824210968\
186670214207763268375526077611108988944964673277534390149108961636184144351402\
764581222896050603815546531573231035915735922758911349256900935607147977688700\
731954102283427174875749070918716304762388723409696302534078247465097250027224\
145260335082791705095244089375733331231982030215416350786778265509321713781712\
313716114212318124408063309815360743763950265425574723877774795160370760254863\
489482815303352021941346466963751432715280802910028162934418264108275919524951\
817369371136515145376975746303550396881557703938983487154988401323876915333088\
608396152038792659834262724317749276862696354131068465624484349311650896687484\
469347103405348229548440424944548029015008712091167917658606527872481257977534\
747880316689003510874585681745497070497359957113398345543688948216100537152614\
530056399124244539962580313280228578155567533705179614335935483126071990025851\
110866754290799917035370060643683886576034328421346749363284798134599509524459\
413666885886365358016564396724558897521380576361590214842158335086871769121384\
576004437560818745484730537879160685430938408101949720610599381353773087430936\
080254374618360436914874112722209890114767287794789539517337789411265620467480\
077129380534584076556161636714032813645067389621785209078922246439167986043804\
019848760595357572978480805364654179647434163208018815226299727917536184190105\
725391023526100666128579386128482872115114433121748164404005618360186728632793\
253969282324260140007259899509705126468119851380702881169297470365138827816180\
181143146872793323314543151025048027376973590692969718888934545315353695151898\
759688924675788779434750697095948389187091999856782139078432637031657987840807\
613470059542315330631356291972347631112370126374371698836456993918020402360170\
654847410448271684991511973761915708006875431889672294915351919561931247877010\
488364900343071220216932716448737890748697168890556697893495574826859945388159\
342379901066924553808660356930934748516271997000837266625946091636911918668340\
876039816053457187304488378784459945641066194649282790298714485138296622770697\
710186797262748362345055249868433462175825351994893583892640008216042578581501\
014868869194413913566869688314459862119923349722584933741055324623722317841154\
042257919783776260572497686118088856865797980045007436559961684910508497230735\
345599811561675513166841957334475132922964429136515799663255383479450766103289\
684869876281724653418103830016943452175880854960747849007567303970474979941243\
512618421371502775616682736902616881508892134935073218269322806605182315763054\
160723036713898748377933405015841980710583153109134517143956718801250305988695\
063116544061961806470807361237675368395022824398752860510511351814191973795694\
693638681274531652810635038346828357384405514229348007993668210804493606862164\
600676634483031922495893155954045816949724136805749636567933079196367152569807\
186187473119745962143444787453875567679230213614859728630338941823745049891769\
740071428842397668062831729011908574032503385452223540337598944008979329603741\
205460354384182007632588093628697893595580850949756506799535033458370680057239\
672681329462140754013128286368823074537737549664487670662370586745285605262876\
843710312085978307077429889423331966599337067247096895252498544582098143949212\
079393436556802569455922608937043796808830592173549902808187239423500831667258\
629898918865217070485809184394517416456009022597384114577622103057688690926001\
961997563649835723155371164800780419034073499583084414551229428177602152104935\
813182396627678715737149982841408036881971422738830208745015739858523972510668\
956996234962835492727345082689120271475257042705061118459464718285320545427233\
451594086986241199063270746182667956011701275258350864738849204602785712850234\
784675339031318786296649552070645507689584383918676790667856947756213003776080\
245180827345252143205516063315040369941548606130675953365971680023592160894781\
404681853314710609546833691621848065587071341055193617451037101599216136199509\
708650137780533897593988366937873954822789683336138162870025109398023076921640\
166695991773931224839082644791280998578064053243409137186218853230491028901137\
161083086808748672381158597421815653709296744655184929287500406515807192028280\
529922444162735432238256495251742467157748268961216185256399893656944505583510\
328185664131997626697439111167780948717936965736903761431922383476655463730888\
517770884496832380581866104908902147878769073115712614123453649639008426994470\
802551462468087502320398977365460713304328417053734413903893234842503181688302\
691387388458847942035579891651177287920689338631682700432147008424675785294166\
046964037538411912376432743868418340633769086563342469199412844660048651217780\
432768985518402277518098790110696764581909532313211287890901497686946981263359\
885419545567175712676678837155763126702761525977769925616437210301084993130354\
371898992470093957528242987296922410711118009672641573072618623927137157828061\
141430020171114264825848892720722572122032771300998294999206516489224551883661\
421595958912823752483606217204449590248575680996915586234438165167146316331004\
873922932262219431953654657677812098448625420396083011277674528313406762294368\
841354220939496071825983260013557530996909691637349665597450373805541787929382\
030075698430766954390311872706744220840025986793092414366290522730548733203749\
931817038992564161674496493569266521534815077105717773031882845221753638550909\
028760052076444558521723466926597049347060455327562960679060663231026724420595\
594961738355220588146676672261525390990922373470014065613975006335694487509687\
715208483235189794212322592920100695072008942754098085726809450590641548218430\
923520598808493156199837134863086316081775309934313568261193911313197553117878\
918315599227750248461596706646640528488092119285325699549573270133662891020185\
295971510209873181846394428005269519090433002235567601977870530906642648447231\
165417685422211916748623508214055524163362856193729156026563037485196337983124\
937125125846685449441793989395036130563585381465349742945202428280473039319639\
196656867950978121194503715184948395534618570760753296976206042126445050572723\
736239756574400005188506438255472818396964755953980263000973297590967668112501\
920350862913964308563802687805424226912067084666956677938084288797590663333851\
918316580733312886410779699802773881216321646181972297993823279225034392320715\
570655636931529218829355461902365071690769166585341141620278688145206333435182\
444586927795980466279701274348819999836714161593004038549093477123216230853924\
966881367722657236650480074286645066723197281356544204314442205442795569289248\
165106790636054314227622982051060394683907359874274419025274298058005737842467\
721405075868932757823896493302953931675436558263682933422786679969086201880895\
596168898194833665683085048883617646031216687630865949198367526097189379850864\
296154278013157388422626909720754930123834769332599468506448850358448438659834\
930060179435497954684711880581531834838854670090003623901656750909851974382608\
917629705175162644632104682240045354860639954363499876179329543924509327532211\
671851255361710720256583335435269680085114896326771841394897101579682237123237\
779981704531349779534409755378224041468783103118732043028771398412667428430830\
099637565151994256408235324995905280936608017708154802977468046987301844281722\
489133366907642573498314953015491797186038684886416413668203152784150730160382\
876090478550704679705102972376240049732679654044375743461492630923299395310213\
857334039465464313803932847546016682894570398520289897056199050058566331681025\
424796122497994161923808081718695617683355593082034329171118611940661424593023\
416858928325402281122375144878383804375333860052459837715219808574847409115965\
605101261021357390877587448522307072786751026934059525840044387691660888998376\
929711576754644468668682258216315938415334021845430200445567878616535387790068\
479648161154614774256766434666786165714321395605805106852492930203486311187697\
906757373061308658049805399624983088516297448323420918709324865566316859988821\
807634263361803803309370806856552116308357042659878493962774257427221268652608\
755377034324279721316247186562181502127210015338143527640446743840817921398524\
717656064532716663053443606587885020021620083222433975474388465690808482297610\
959890936151291814324694190177542972016826029260693628677593944130399807004856\
247227074616381708027260932449104071616943112721693245961346699250726493583327\
369223637207752705679531859869893932974519234065803202897787347160231747227460\
805571629448861637690049880287681783446200622032710191351233577036490080845554\
425576826710914815596736553858259438221951358015637711971679367020622245686348\
546905987780346589745658447852408819268830922777054604946355615841409745355423\
947767342753050083936054265338583429240886791409368144232858790092230529152799\
915905009065192474414170910047708499889030338563394194410486439219020225662877\
398462669712962868737572216188171278212356334904715499470758868040594632498061\
324505338954523862725524564400813036863468726841379219379578507749890278243158\
382732350331096708993301570664195240164048025986195829466611465708789699312666\
194868191195168899785713826088972016502211515000045916759183141379528429240162\
630759069281025915047690687227211554583699847244222110127830084214948985427598\
928757962681408284246202734481156377615885856666062870759798453898588853973591\
506784666774407355889621176490263887730463122881500824148640352512607007505904\
268551545873081994483614251750096919881214717769429055846364755781593888066239\
542018937490840322751020634892328309341028237894088989531725707278146698392546\
761505090113385627347482282653535901008952817868923851305483370801216375706186\
876378595480214881006720711402705172446818076076012994222575783785152623729804\
437548974460375910029399148776753477242411230998381469118795725444744960420094\
875863210496756226171098065703754579778452875550670681333011940370283684631830\
050668075306247064752243618574382697783983354212993579342251352034923550310322\
632422449618848671977535580316521471061995841040622119083596690789796338081213\
639892843731074315823093529694423351893330134370824326438532789908261497650024\
662233601347971746464208079836954651332945377557662272524462050785169967201989\
999340101333507207580771040382655836481700018825204873862694727977686819841244\
971301436744461773836037845058867731041552138029551148294138196811165301623559\
891014775948075941177157011650869218541147100498530766154450326362434342050527\
856128683711788698624228453711227804753731921404895699108618357580954983844456\
601308474652765120152251640460086388254089210102461583536189885561567954555943\
415393774502910066121558706401665298168145491504870910453636023369626790074204\
524510787476711108581603883350490730198454596575431151627225013288264132732720\
045864750400359753884115085871236676733053671651766723592347410822055662073897\
145896736124428601318448099009966194185512659140312448268215050509682117223862\
123115265230071316586542736092478521373501526308736450420970868697527750651953\
873468375231671703179386470783338125470305674216067595718124481724154900677955\
395033949743440651101402668832339813840729952577942686050980385710038847224848\
237875870249233921727160672323783759668280655877905336621109097334341997978443\
348526532435072253360398719460987064301678895409084338318327380095549056808509\
279132189616199663626200962269637110459230585985793321394571812184970469239746\
847119409031628654826727816023346641245867553153722069865707588845615920039276\
376761595539143811410641071280366418273848570213166476675524075009491137683189\
196875945945767797550505435913958847686279204416073899438660597048755736032076\
189399290784732570121893863512434504025611153110615981604106293472125903381033\
962210769101359206418442727572563624499218841929692845048865571680814766789660\
936346427193755563009580265716674060696704507005597645239753093566926721347565\
632231052170979726788201175673384420258585856309958277223767012426195014021412\
415170170625748239199375731539805651844747814978850715687141423536244332730212\
268108547082779756822570093257014058836963664043602801865735583944918479033626\
350155432400879444552885841494511564094270922406588405815702746990628262912354\
038024579975749327018239144762628671972800674151064615784260870892100884337577\
739685600881081369285756508018435930996339224874822734697948078406477677577435\
081064813113854120266818014621696063486386935182283330213466133693279168595030\
799246911478332513082076691015178579716958660185792729967194005523669049880576\
522883405403829572329495666610618163109789226399407301157002457628374773576308\
183798161638119079736031587212198313819620344976981620642398507522832773373258\
332437288216059788610987355191377855881403729865083817511632667454759408345296\
967092628169980844889010443639929417133550491721853044413612755372740438019661\
670623338297380240490629825860951393502749589875052807206731837864730248913057\
905481562736693420315336593480354522123759323198928884374803732410786208605622\
462175566914066496560325627015246939470098514711600994089128351947568274832967\
227217668299349444534067907365525417174886583901039319287413336870559291380027\
727314775486977554119840138896045288554164615529596730625328830411855501188829\
841586911577081853736377506071335054326871353825913285097958561423027436039576\
496067859801089379556543087594553873213235007603007730107917896408379918870861\
963208679051158891374126204838541157848822039592359433270452459141147350780545\
504033581903384706481014248689197256381168631933216497629814849539646083874849\
543969458515257951809116266545236733517450163608333529739655892210921156911978\
316729184425792575755004030749046664227090664322428513245440807605030997258302\
179025792182169082377943883480865654516580322492664139624733960511524759583935\
636607443829936677311897124381434507144263490668336746267965144875760421649004\
657804566810897623735246630448651394648231966040726712639274053714806002028814\
119479141742109645063130559424100563987780307683154549550715730058201479251595\
904602466115178393678560161253240627524204371192506137964850891981909587770580\
992490842085600103886023943155706409262296585461940599098696476507408909037102\
041073773228330001943441313189898291146076879347947563792607660871483258647930\
931942606503765031220789605973721194264580743339322946456217152992869877572374\
421745243510593701522448697613048297775612559901751454759543095729786727400721\
774104428762419527057513081889666990390251341804618791396391751999610688039579\
457814086994355792939886140071141724989460512023152862732692324098027034403935\
721351903458402887798823381422660989331849667478892669887427451477269584954658\
077358949663204319684227293905402342069936593465517594644019356968088757365135\
655273782755845600317812578547257973901689044629670212624861217876626477548370\
653350285918705939390177804647175942432362408204797958379349852045596799025405\
159404945477441760839577973686737690585564791827948871367856297647036197192772\
736875817422061934212158392214716939705250724783165836869092120660602977814422\
914515406119505865265141288187110649187969794316047996512884740365408399967083\
236314679272132449362698570740704713058434826329318845440510586619403755873250\
257315665275392902152362207415301446575930722750888326706370582148843196156531\
041890179125548457874634053818750561404423146119784513097056545369126825579444\
878042588295007696823218986262381111072368744992142469150404040031332186682305\
915435954967189013559031469691373622407761443103122648603764791939267717493540\
753416257102558871122830098045539403337048732823588397650909521672656474725802\
054809063989279095949756542290618460679476258129147809703755742924808981654174\
485509672708892033514269360692215766563468441714251418841300734634211770913388\
497281568269755648308409133263367172477250081903833257398187374366036429341681\
541608528746458725565350762115073088506880345696823291535406069272424136126383\
496243025222734822076674328244625195343816866329833335123189264153753902689802\
092306902469188086616534259713703199646563655178418522520774003775501336093586\
141637044909219989129808172359620295384773165945159325457512762182658826965023\
083274877952126416176015483903845869845831937117209368199083288932591601683152\
378984175095542145657354244770307986890738854236551194035529997686151218503691\
185811806196552576296458247439549463884952305229390431920834700408595906247758\
692673900383856751959635718838147734081913671101305078535558976019724131868873\
517693888960920970811996086393237611436761070356756751954509856677260928307830\
333384947896302610290498277851677349656630179240458141888901686110371492187075\
536854421284230029436184629978447099023892090870282586775997932900240687404128\
958781800155126238506698352076101525810292220691850589879780761031752744058602\
314927111485381252502212065908659017820258780104224742644030508149340088935536\
994215541242794024288330163556008454806114251973600079468367674392891368037545\
225852503564337492304061188134789864950179120395213927258935188503227479728304\
555377830648563922152548181723320806672527665964316205418059448070937337627385\
191779318699473024590811653170846477848979352443357203806146987009232700653873\
512378118935558807382761431387104773213306585242921769520098652215583227076240\
478674720185383578343770223504250814245712843756571479689310363418089373299722\
019185677528387336013394417726381562202849015960447422841069146815777966019357\
848536075667691643346140295482150176278079402653275401698834354341953169825972\
572703237672327104388502145755116078107849036727341375685054751283331828168180\
687923483942357902830465325709099698933929319568594221510427531613778589133026\
238399572492462565209238098216310022009938517838786291284754647499738084609884\
915717838740446198137448390687340591284238313992268355061730953776007733441551\
971134477801136367129304953999001983705760561472107745833441235752258798197320\
154370849321291768820404507449491093051786970567117701141965616954874695699554\
579466490245988058182052267828055440063055171620109170645496657728091231282730\
371179344888819275752509942568057204571560030883512548354531821670031202098881\
756656024815643339856121033521803122203872454617649277197607561639899925558844\
824712539754441995752875533816075238289074957943408478409819050499547223491767\
808998973555428169119866029105054819004663413715557369930816878792785736669646\
282662826784498376781127049916168005880869983507642972740292518890639492218318\
736923256039915873045117744833426791251685385329353340557406954661639399223125\
662373328913082446605159607568186413772904955157885328899061541234378136169948\
046390831109473541619189442527956102391550363062024648582096751952056686309608\
898274241602664868431018535792010934148995913294012970080979209338728524506836\
770635227193756121070552995770056852165473956309340145995070906849439995261099\
503701149114858356584035694439244018137587295066820507129554209918508765071118\
127238305255094270970180836733246047964391637119624816712878168808667228632754\
357219976027958550212499604293420723785566103352134288354032472088407536227477\
076722657032216145985308480701432711332327955896270335331133019138930987426335\
720748101442606041221949987395209820431409400117396015001163746493739333742500\
935967983549598081681749426411617589002974453790246451001157325681153660550492\
182290718208490667306837347413540876864688036281053463660636396370508400603225\
944423680684070109041479140807437243253754204529454923205488540944727773308677\
289572844835199306240623336014894657010295372769319239800791374246128988062094\
042510718216870035418271782469358852896936838712339508180711265203231606942139\
435044164221180458659728470198747058770491745236140621664718268422765043098722\
130253292080624410135651901924297683194184224795323048872227619999813059343435\
409634087341494009836113799290104049021651980016965345105093201186528895001349\
855481579764869199753554001996239218303715570495661114074906989061468803162745\
650430929296856492049391426632560049095467246245060386702779065977825588642987\
245795155182788954929379136186433549495607479606299394332898956071018500741297\
402790275983298534453665473738254430506492187558490547253663137453707765892998\
875453181707580339014469761261208012192364849601319145375873842088703277363104\
544410317520421681702024924246854339384818323972011733672714375914035732497421\
907662839518726209487736422890355550709956806448138539121394944076998176571221\
767587769774137476930080385309241470259267309724342514738979433308220709198444\
296349368273455599927565430849214500589594985838897219490804800211031010774694\
575030279867204560296682902433004901958656561523385066010860852470512592510723\
689039144260448041910688569171156055467655775413133784673435728191355792152125\
244163426728793514579872623606847687942449245432959375932256803824124308040441\
517032330354680593025545980840181419388391309913137803951658668856405344250459\
768630684647038529304228125371288812406383719196825131550640458658212202703344\
525150024555697185204494271266175570977907652201631409924345624965823463274199\
966965919096303150772162295973794133044906912354662899976787063964427543970530\
720101567866765146256209664985206977071028331992535522210179071542554910668909\
890157143522523208824935483264058254433228993388181433246077620211927635355605\
540181246640118064490748656792493045753030540635899858103643050669178836044633\
760072521059307210192292241895322382915890934128228750510980146316239573671434\
576541180542227401565044111311050586337680869378330384195969453861337328924716\
025322293697313224937997292800599267556724797579095349634141700203866341961453\
441828590549528053409997763087934339975978910568604133901260650786125608232043\
804545448631332510663723910133243023185466526509293911805432574169027595407190\
841762886773529998642546058514480703245585088002374921985388998257635690469402\
036938827446681840139984177397803802254291492591957492773178379574501072916189\
699932883137541980767264918001306438990549637448406914582846426124204961678749\
190028707996979188534126248108795055420743526441794719404034479651091027244817\
919032055597758773842727381310581436032811962348249687706680871902988723417289\
527936418706406948463980108956431535233422900314798101668431369479196147206097\
308580136150705516651333914433244858694690120492477325571823058188574716991463\
603187793301384759759861120961707162675773157297613346857048140979691548600125\
124206029878855353376478465112312928998520040610540065834250345163468563030940\
509789836252773934123544691012936261701989971395671039397745310096305490105448\
365702167199187220346357563638244111617093788893854939355612500904793637171542\
240806103438118860330575561248673326845606941752793440949702599774350146701995\
027107914478321097845715562188832741071097653063416812979334593467427567072441\
346943145162167047337673582685317196054281712858870830159316048841492190324363\
058050330721966018280900940432717917990576993235443881050324067491860691578406\
289873447376709234225782244945434828081265677173212580402386928936112556530820\
450653066340561490103696865856206381088416211250724374687218924209263026533476\
485100648824018753110775238799051914751301701155512593650950277663865604759932\
677726955347806327049303948934897959809117789256537443265439374227850627165326\
171004913012764765858878130048084071184414269029062542006789764961699662037240\
749990183839249623080167971334236069975708749062665937334634933117472389156734\
441286767762850073286742893474298435416914069489814464185413445247285102226600\
079613809607527010407727596892661516744436606657917119518927091206931157006078\
461310486009590279729514654677233831975300392998202306775086147937831034092325\
166793058858094449717802012406075320584269045332099732793580656207789144551244\
404825526930353303513359014814445164701717409678054134220952991809060291260715\
683392766168926744561155320928000933552341934762481168750783337505214486412300\
469359127245516840949343564359202084008663972887452644764168122243197900574037\
675204113145935690829486365028866513866718709840191265208719382146104962917716\
056112413262298472918197350192326469347606735917920473460195021468502042227254\
990605003905271739830882393469613295460582355961688596144385517732556825720040\
864066715726142874215865629365346667650305399437264337771175524863334654686617\
471029474257074711452408406935745933058106647910587257708703941215958349720801\
434732021667320029592177831146547941567632358090159344983934360311394701960236\
806436471015526548330332290324948488740174871625554178432345983583131736856741\
194821648828321983039293782089006668641656356329990025891242536746598742757842\
445313505681163336650379813616103342876913997790939565375874699178205295126606\
543587480249531054620790828692382531734870934885092202989974921677075930466511\
581133383047832465845377999596422451105520528225985513579954331407804687382883\
091817168865047464734200601615944581759276487831751006154057153340802777001733\
934869159725448358499570311690890502347900418269611277438910111368249836511243\
522173294127706038130263418165235751483500779868261068935781083578681115816638\
025428639454882447431521714465318821226560337168643885527949083722967271505859\
983902007370435204519621300668261863897112457539798316748358028660902437533659\
703795530174286017098228525434662822605029782281922967974950706846947014111471\
827123771794543954247545582317637072002093952480305502486152919425838074644561\
247566303293621119406438535126173363837578519909303377895635070998487264756328\
815771858778297353705484562184061665163805211633553595615713655488304023083904\
849905346402275363505322131262857984748871208797423919712980651571562251453573\
762296496995785161894725860193048018878841407706427789821115503893404172990784\
288779139603190909475642774628234645049618558957186727089305050991750825906016\
230356085410026150659958294094188223171176685610343109409015195560359419762952\
715191446546570114627356476034166407335530107840661217068804877676582960344592\
623864758557477341228559099455126197261503356980467429465446524107479989467997\
846489274548144629270461024277249451728542720251707513725879735089028835651237\
307514021621311702640482513319750428220989513845528136268841773267008825254317\
243579889892752698716039884633307640274102072542860753914632056334190051780169\
548164179493173488781224447251861194100883513137555490494181672864244172188026\
388165627539857333600411059599433600445109382525788027664814425790955484257632\
566676861865912705148389804415975502020223084423164817145782010230876136894006\
217159186369664756680115058939506917948617938811069135739111929119476457163842\
439850676760927015601387625473877555130821614917863311075676996932639836360199\
843056398867930350363110146212592618232432920230504873973555103880618396303383\
920224450218778063418013902925080016547655990603908806917718524407509635151958\
193085485349436375269314283472601286321556955893475903752173339569860535581813\
340404683458712039407449236354697080135396702968920564153270576178507436941042\
162002813859740994458039484371712237808591610625472912894185014337332011394192\
377699272849879216795704857208482621178953745099590160573191451033015921950477\
998616399735136343018127076636196256421829613557147414196825197784512923995180\
948027615779051505299624564676859410800319655247777844310184875368377693048120\
859493475149575363519083664510383481178383040200872495432943598018399096116144\
252080810246154834377215900747465469707895682559178102153564440601396893159844\
515933212019827378778074605279848063188533935925532640568047587139273617127439\
049444206400176046596009726741995011180194421994703076386808201891521069608033\
731147927545046918070866330683047177127699388843497520361508386403092367707966\
596240746653032058855795435358985947775420846585446621311741732136381937611174\
526719845377107365956594981659688759535272565530522586777874361969955452700888\
850431275909414330236429519830928170463636710577004082355626345787874785234482\
399846943780739800388210355197146779367439484397950422615555306393729577597612\
139082829477616090698661599524434740720825487274741637905412032043763264976757\
883944911594852617550814823643520144900684490375525495045287112775902440268289\
660239913812266687287169439142423356907167219748529854906502866938531390027800\
622281054659491949657677340871738526222585319584765741013650016883548356236992\
354401223596936006051229704848086706559828336254616249888405808056838747680592\
416721489925466769707042797594707443992401921713587689294557714824440483700282\
760938444366726557959205333286363821183436202774646087176456018236920499752142\
614111949509141365939939598884968732539054561689863096296277455693159627111291\
389068753371428581683265582291531673412889027734335549344788683553410612823002\
184662365260252030829905573599629412128403615848769828447672166506050843093323\
577916341259867252410741162855560887417648349820714209069639040582853918262162\
289982686959759493805904885753681523517451496466142696587956201997664381005061\
504180068707658470453477147005963307233577907943767064211961192058242544441864\
130889629668960333915001324327960992277835339589184662575993194526690242146365\
986846158650593407148400860403033855263822463815891581183633596643738185621040\
582013281656985403167355638163019680564587348039675160571644904016838278201603\
100326068032668396046855898129134031175368012912557689000970360499259145265139\
775772983468530585536936351824757233378044007504755143509075612721952284629606\
722106216074612377151537118688504003714786281788426461390580536475028946907239\
289094722636256621257205691977369329031393413587569782287912428335072502728595\
632347802504078961201978921641323874369299169139774347271497800996496729789539\
148727048958122750145899044623890586964294927230354129335323876189211564588764\
429713638978164132213843945580346265579131440291412501168851998922870799882033\
327458850878739620195842849169998809625666397846140216095059729972870961243304\
576253129268156432918037383948191514649529198853619766896498777534700409893333\
797271594905193918030312440938121636064272059749937430095796162204706746117408\
573410974428749024072224071920084911858181518124276338523114088091933869905247\
375517969791533483698607788473417923759000206964547789804654420961655824545657\
572601098292794621201603586459098001214611081297486526766493775485550163800936\
391440387470440680741730711149120395595564763786368725212586641996518155272682\
610249104716189727921996372881405772954371894830012920612558250088095864823435\
031158427250447144179924088583160443635426313119988381503447473273977326572582\
918374248682532213362019148473697626755507600478474750713026331527914424648458\
310542617927325595978995021636498056801672170239863642215138491367894696651895\
996369818952892920910915814558041583029638779178693541218300409986888887076505\
606757845234883714489299580313972269250026344239337293778361219989460046080519\
291815736507140605213243665711748651865109586655317669933181738303448325237239\
280960676905236851464558272384358920906669573835462780112429104142056474580713\
944479048166588098158783472998391031027522874694740469677382116151097247127560\
918182160321327115448287990220915809954467179102398577577600759370662369931528\
510617800162228001306895034828243805988974280780978633732375367387515639962500\
202688917156087205681980381321592713346498607978324698826325052172467732321585\
052767727690807395180206332392022289351307434265978605937025106926387895048939\
556321921166611355155598132690575754094401663689426009267552040653336553951459\
594430336472986972522461302873983497304830196186945556575297910677872775472113\
472308106665122026618370236590083531181275297824104741768120054732854088244838\
854668374142336505912599422868792294835077262714575470462006165094003489129260\
399554319578326832004035426871828068254965253831583532577307988741429846387393\
058843241116758545328754899971955023003383521326423565271107017507937488068307\
856033254146019433209677063749357415395330037478839909900702531462965980415264\
558977993948764754107248509319276032948979171741362137841981035068496164039387\
135610981878533506494822506753456264515252977403298927537561691817485375550733\
716370480511310820927684935994530695581210082285314541817055339623762767685236\
462658936773733428035587857812808211157430619791553712435643547688811631808683\
393775827893152246419954930016978447909000797664761987833614645661921975754528\
302389984112801986210384988301577437087384108280801447372876668190323709674289\
419709340243364458161318074772282133775375992468949488568872590487141814602376\
469599508013866043470594351749860090523183122013945918488907530401736869961254\
394667213996723140303493622862701101830211066751111569744130936944850884308639\
209469638005567006340478765610370824098048678842658505599647762752933451721794\
819545507384938113304238594644463901683723440199071880860774745846502332455205\
724897116515037354612483953355037071663354695583359220890033148110931050356252\
415751554607393244446202438951629450718397676169870974697327731850083632859062\
863381325773471767970860082863657847710142436557087371372940575360685199619901\
423261535191218781832403826601040993227680387025182826899050139287494337547628\
268055926443806446358529156983797510240859940571555962016906118060638530479462\
781011636883711150185564208324098816256980545241961108050107591342574231162743\
886126499208689264393552121508479061673596495341792033572993192298700945731199\
911697842268853665105393723073414833627765946108202750720135484799053771977521\
102080214881391072844348389583374523960791312644616573885318211704659936653431\
264959034724197008910572073105140310031420016078368342775492638478125557268114\
790797901786907065870634749514416252532134659135416115937735427112748784426401\
032091386953545141751045683594010162267754683709086779176383299513414680468895\
693528680453620097557985880107544175928524296410275443941749831975845436916715\
453758318798583064671534276462601661707365201502412509413289171747243577279364\
230528420491538431367186886237867006886699026954982422348265355688667764379757\
582173536817241785261396212923528146510190330402029598086319943328122202989858\
917413312941254825530968687233116292184678213100262026568569686333898603114906\
825151840653582620284920369110801300451065828997688939862230200298730202666823\
959834337214834359411418680094410242394805971295162152859580318258362458840738\
919247171307562713626974288333595200543374022971689775651438500239796312208322\
968868544151807687575048509919864160038519290649018781843282607380365794153750\
889224733309128902329783915701654709899025909633775625832771152197699012720654\
276736343144359633866983789906914273142987712102809813540389905181965902575287\
171101772553598109188971805969066534622525599610871060290385068261037365951903\
659809459038756802348958120983781845663284751012262558117615391139727878696566\
364760387833095845869521297413602123039262307275831620171532709809176029470213\
889754474404764535418138440232395192710500836541126144987477629576646131529273\
040826246467017087921767316215590235210339715859547058024228382702797149401860\
222887247744951501920484063908977847063936837638424702769184371401132639953490\
553916092843649937862708149230848515856910453657203421411183827241925996098440\
307151328839084613953670714121052722050610253405101940294074975957452717492953\
907938586063863227169758830913157754808342730845003458209437567851176238291813\
322850072395652673288180902382192834149414495655428426022137905886102004188339\
197317863254722606967863498146897954811292456491956275748589910851167660235201\
086703572062410419111398965080563101776254467899402821164892062993099395041626\
919363285250565907122368264291345975000114381266244639619402922612493139664600\
821783860242226340290988260707141310134022518229251811450745324961179827809809\
090405986688873946543453374152928352732068452037422867061801875774419308457568\
459008304866895218185054620583640072765206482316024479229457650350271610240236\
048276091892925914186544310797306158572168975813014599779416671685835670145627\
974813776287791201997077337600915488505485437349191072444887826850797672742474\
988775037169509964568506621052359813315597357709655906404999570137621979292143\
842319021934015133733714638856997560257526096919920416796982308783513389340972\
127413617967133318021610655335147840122718050005605899625441087429177105963861\
488871216534202742021940010898234916321433410966455236456415744254761628061499\
486226281979471209953326569288357570768742314825654762139665761587018860883087\
352063421381805508095387106264331097921834012391015587323449789928640434008566\
433244035520634294570835086745978222019072043491820981652741547556192053287163\
770669883912653893258830090785933097325279803007139032546111667906126220914849\
586424631374604742928512122584090588471531943843113310747680446329529101441178\
853360841472418307882287955388926542866644843467401260175278300532377950471739\
461989498412658617883899732766773092597723637251124093693571530993445334363159\
572110004778061319562566494190266100292052756670249815648374796640972093861428\
742821806717729444668642296989806010450055271820474193533036594764842861974188\
173599121091811051783171735572336204876797734979795164258297228610893435015799\
839631133567144207775122452215944588812353931831789842776790776195747512520272\
576345924105999269154185950946053770947153664423368160345377494478203803147994\
524854190241582254730780105109221383043888730097415958976243928516827241735402\
495335256497883617447651981462148737973733502013899631749840480314174733112535\
768108772820544027530157949921224822818831585990321764218085761179589830507631\
045793941516754013599164596088966112035636072409926071387687035353083602313716\
182758794943707880262354513499947100575161658408314018141609641484855569557304\
840323932205248542084091772149915796670505394094970913094260358442410735665967\
515059412976505726814953177565470672315031304636084548358457214462467208837762\
651946049230729108575517180870401192629859967437399667039842997856292449157836\
794560501938232289199784202291438461928771033981179532791964008706484999927364\
161019298282836441987022831823536960133729526964003143205504271571656300347801\
719246420651854607568110387948042645886919236548593033626064402769482209740683\
542342439780194853171920260633603021898499877395705143192427941574283714669171\
775653622153838039556125883362532556198988813839413151905940783614415697879733\
902202666436676056612603417723852733817170074654328762267357799173442064014595\
759856058119852043609907487862010633095050398949713531747581834943611833358525\
756392124646558514617733143009987470829349366305014653167457492149127422582208\
884946092094232114334628251716078318242748223680631197587626810722779638741191\
448120760796135398449987832458778085584707914035804032279332157013895936581773\
539678475775385919860590770257149851997929188620717554066504414367406195975690\
246107524513634966072493582493815286236865926413923632758445954235165302660337\
023066455584086230656244569711087919783006102976488461105742426529547417648662\
520787040049090179046710359849647006034864761711029493672651497009872703284799\
059993478928185130602369007493095737937181386951682139546812959146498623414918\
326207550263876824895095674867632026469345517551029281824983911964679091823935\
241871555252286326831894208769977596787361174983485889930089824631185447842241\
011310191145821330652805811241230053589649036369265243691936406940486516075632\
836894857192461337719895892533652652570482026720647698022098371415108748082727\
121455265654004946322613711755652255785578543862048439727451281124698930395385\
132755720873858613633284515498099912162217608194229832953752884308497481526598\
950959603170767549866453741376304678326072883851651589828190598366244240984123\
976754338199564138877339025561910404340709254058733122719515004390733257007402\
291089271063985702642339450723016625621780326505250808879203903983023905630409\
308301813017261457073083950018428619529012573812442180643661159699702227693367\
937704896765160022948925518417169030129907212012965013335062700714227663549741\
111999219819664698709566640066532421003947145178129100001780324540645368945014\
739497490056690622425714606805692549462264794670488663628935046253209784701286\
810903059627837913196010909078160372575988890915668049431931958905969736237831\
810429437253396100728725746329776748022624482511578553027500586014154190875372\
211315288767244349548893937126811823576507975737559186226095475879390068550537\
922635207130175199884858141373912082390955291049480886320773452653449560697377\
315653885478357543068230985809033063451846343524211935900991772519327329122989\
298239984803314307134208898676864918317664827645516485097831831275719666859409\
654673991686667380311428772560547672156667644589756821784995803697938800350918\
275358548373510238035096603225525565991415554441736919449621569243311265081247\
949877523397160098964043204516324156612432501455034316605675360644354019814710\
729774780115502323050776586429235572979795505513976023219507014587792644147392\
121187155759311788108567349467436775790869700486860076104855396740093966826692\
529948537691346709983406583106232213642074997103676648809063665818289088678365\
447656052399611687466435038854549657939336678299942212390575467578961132002146\
388875142770428485161410379085362672854329928261900912400426930018423089741947\
233718827707653645996344376750730597244890946843733502536860175083172039515236\
001787907322728885243637033300444409278129059345368663141470104659341883474689\
282629988236301306013766926988217798851721245414573378488230382467191665951105\
174632431279031560874148860708155483110213254013356868540558834310188708893876\
139373250234088079659382014804830316448112317620154024345025897217767005259876\
857529110799488761703346812320199323113219287434184661259987018174656117914611\
868926837025201652991198988874948829242061696496543089442346341753064626206632\
041270524790465222259474852629882180166510377391520956925717676051391512907908\
330630891313846707678071360829899189944905399843274940243889710601762751648654\
324350417468217404772053579072978819030064762179565605159378531746997543678504\
299622806859383605835065216371814375812035946389801353857890087538637799944252\
751397164285764558538815095998654259961111212635252183537375408938382994071476\
719479556565333810335609209165135879604317564521490021087374521940701660790742\
117146389209287184760160902492319110422671510290601789567464238340951983591142\
408642645711070748530076249802206736383779844598841477515071622932192031026050\
055150907697894319437834821122313171976968730832874683832939868019319165370266\
382003482464988882800995308021917638041975946273043423705049816862663146331381\
992449951350409336852132648622166261430456380155416702997567018107991459837143\
013400320349765295216438577834202480497460481356556278767001411676453276570915\
946987857471095170775617589719547014691405289876238634466607521691840515292037\
064341671434458101488124590410883667693696301612214043030796233418792780707414\
554309612195098803307323271225143074674379294908470001118157872176047256284368\
744402999903490723523364779561482607275430475073383579416952085411858141421163\
366331884361393046086404438120305008737474074303519812587955651210154379618540\
181768351639553142978892109793350644218922063827926017080859661513409231014455\
095980500497093334182603462822266136524578624368933828748180808311663214088601\
896279333796917967023892600395108849232222624879146995246944822132220716228187\
633754117440717644082563597774910049844113158664565521693479469938534589527648\
029861584022640999942100043342064493941644651586082274972790568046591058023199\
814041816664689710703815899178259905244379416476766531363703816495568807841719\
706669088818711189296355409708944935083808672087408738589167828057846463873013\
356329005608175565705186898351828853855818941876184643188554188353220558655149\
196084013505109130429643867372670176920946256840482169559422438162836317605490\
729939838290187707137864821959627958273728438493021076517011141209712718951367\
781133634522511943256406092909203989203031142869311029961628971574165135312265\
097656638725415021881894576960633826540252017462748433137865936683535892728894\
413722271223237303189976271218756359030552405933440680406716588549910892233951\
031852280400316307779313938878812426373994576617350578045486470971336561226910\
545268032335170946578223513263471197754156648001216476189153839445438270741357\
110988027382524358192945270638724302898388786237397269948101909956476339872677\
974381882407864696372061345750204043865140481454084863722948089187495333684538\
332918569261160013609052698074850778808097199220790549384644912998116044510512\
482015768134230369758459793135250764991726718978359204624413558353968020439011\
298808208487927059939845208151455527716045554509166391086146598101094364855299\
583415894050113221759189182274078858545057370754171980793576571347642256640078\
552027123596498418147809185247540517829859835871945090092645620322145679360032\
009803658914036592480297059704238934014178494089834058894208281375410845327194\
765940157849180879884127867128834697304445346330011340784244697467610052163252\
314696074617972352275188891136610847282504473338769880899788249617457143265389\
593198919380945373562006977956600732920737598787739533401224262824638117604665\
529549327760151654443398797796575964213036484953802973362973405409536566027156\
662095624204018972541002690308873068859675832363484860800313674933788046988108\
179243487055585861260443351113415506834721028038863079884248647959934426910709\
807053082895065139289872456094740899115049915932660761263981350418642126839879\
243828106390190244271673507646240245768175241297734377047211534086168041782949\
967650685806251274752995065595324988186611187221699214720955606547552197614550\
491099906975684236752153392973559712252757150876656596645027191717820529388510\
936944721032791299729978949595372179654148220468484710797133152924225658106596\
490768857512128315157570089156883907751592339497055571554396120342875806175188\
670398308678334081013481683943703392193419742431633468771675540102879059518554\
697024410748369099885315922357683605018587567855736374585771484106340133489759\
087774905833455397705795352135901682664773827250855655781354887635988320027857\
706316422404683951616571696563311771164541224971808621652553084508026356189132\
604359629200964032384354637212951594753702934135578205609103465031482793614106\
566034544208285371600231136681319091964102873049208500417437038337446281046462\
094277696378558093427578759878418333403996601935420267148826128194886255395043\
815153360888198352817494735425296130520588989474529789819276536230214649271640\
863202923565929941917524547761440843060223793185676064830394341621875362704147\
497613963842986391528708311459385176684853692245247913397018567966189810070204\
722123318045419230799439221508991833972212946648542669182478057987878265388133\
877917479992986271645433393042460911284741410076110542008971258536672836314860\
898634346456934102417486756764886499932016760769139511745616303273744980446090\
780906403046763494443155886989737215023060224087689628089967772008295400972862\
196936979990856286378189206873431243425191257166586084885331322342618432605583\
673517357559462474494240918913520207424891718440223182667020736467686101862473\
648492758014735888129615711645307777309918790610298886287149302046792275251671\
037080716394391237431679286682193444622476572604070545998596828789594818122960\
996644984189543550512697462222284055821601781563848932415629429410235472447440\
652982759565085230803988104176753109539450829566866700980596803972387830710888\
730991670839909866670302161465717224784085226233338425720816810073396534603214\
984320697266393091865149254801370103838705478495805692390809071470146803194411\
882916774100108676071463670346097016587747938619865572514916032126199719973803\
490164842267544912596739312397990074831055385068661830482906443355681392530449\
017556754977224586553701311488545214557527650034001289474274223755834032167742\
658602941502854059595734178734907098015908582653022046578069213686344182383358\
550580440690789048769469523016824226895303019503849045740947723785841308094244\
812638676254526179071856678494915944757525890432985971556253916870664050033869\
114702527528774632307639477366220502124317111976697554070733311267595581143076\
643508377661383937418821198728140243019592577233992497745653599173737048234552\
569017468386181605906850252368717229255820454717814319918580749491682119101061\
410175466753076202891546321342918722601569145323392446783536092923925956317992\
477364265588541429930289457142976436732322262923602401555030564320283705186440\
270320700941330893074078971459341135466306263658728571889770055691796392094089\
540494967577669166831282615198053868579516388745693396126973669872220449857426\
520785733934500552182495973648387278103946120544515637979612030291659476574699\
341543271014074745772892654422996600802191430751632012114712233628868911003141\
982697620811610237200462099132116432607069198868028640972266780902380740359354\
214499157461979683557148136771420102843682700410344318799421436138119770538705\
702515776750087453539287747201965450490621594472377056510619675999908569487775\
939149115942015050991367741964053191223539274975510275226212593290315929202063\
227431563163988355989476949127802825984508358367998620353352020685460559216786\
552835764981566953231585885723872988882219155944803787090891648567299072137386\
053604371214396169103856951761602847570707412208855744548038615549299960111090\
089529305615092834665028803983155291889086590281766493385503602113010042614046\
121856202729086358517057052077500603308295180906193350336573369268872311459864\
004662237348473629802877988102147101924585493748777453115962897925405501780747\
491964778406746552790393195565813896692543928611681270286078016492471757947690\
040713838418710229217335189894076408089714318830892216393659687537987014204003\
784913012750100361893552864648042380140726687789499470242525139568329366720126\
727746887603228486942873013499735546344984108290399024614311248528848255524681\
487627399427149890898964065884653827774882015498940055948650851084658197861933\
024860833800725503537057526726162627120895748385707810716790396321406114798575\
892731652066513874141839901415240806942716415312484146575073671621014372856615\
067280484820945901214115397057048462215390455053205451408649083481693367506628\
520708504476168704764247062925198421823405671193175977385071213843566161200541\
291487091099968133185503456755250273948056094553333242616500497427369923689595\
571203234581644450618398094463681201084189262133146656721599470819817686659148\
832682318546016554172883453416704493091663748465689767634231201898326438391034\
187584136241967457994649202221979834593056563692756849359777671093103041411307\
312539564248638501455500757943604266544947470225968985102663374383018153260704\
636104120350698291007740247523365758424349259806781961067661254989366947457932\
038348011891804623993440204860547400539729198870648908353273846254259781523770\
165393409066396161418136993626227242206373381984306775264803874177190613456070\
869512882942134188943261411559837419843096506180799248248599557473975865979178\
350016251247911768205661124568789795467228944116120724622182150361118719603867\
594046340815340520931954899452801363923920455820705023281591771107908638599432\
662526833708351622186279069635134610001892728789722396733421122488552537949623\
348050174564571416968863601005387174928821497469289625347403249065911079477469\
955016629027142984650883917957439011915442316633387279050548931573371400843033\
387711793984550288105152253878558588527678672465468225260139414212638002515110\
525362020285088336811671179131453518274582690793621433828736367147855025406183\
150742638171351310767393576500651872257966213558484525199814004650496644293694\
462643253534227048108735843865153165747836934943817561843938910192099339207935\
917302351336134333617409378894332436367662102057520640498600339476261177306597\
900717338435086119046672830919191405487618249035409603611171758738428295310712\
978874130067815729007187202852534737368305268388208851900652888992067114141756\
148218048590301612699363022004245730365450630834445212718140481106462655021833\
491808728134317000593894546477780717800755411594479566368752313028096856384976\
646741642397940380978024006822393043975148776185510146807492444313049368424027\
979663806970107218594446946675695263158838285262613400278056513954164726797847\
201873928734317431956342714686128687031868026805130778331133364970514243458619\
433993760383134891953616522198571734006026268164233315262753256152699866044674\
282100016307871335675641760570610365397244034349964075523914459700042488278070\
090182478520476973060681827286895011123040202596546463916882653440624513894380\
086858263099263707383047836303898086010994899412575125614015344638442370874909\
562441301959987563891046520966754587766008659039521526930724947593463765524999\
573981368704682383578222135022751562771743922399554134549014307806588887145132\
813370761485025768523236382933147428059668809646209984224762074394269002794291\
723758974789327985624247296590853215947205332369490434027966266307402731316432\
230471242896578160810904602256804488197247067993494893743915075505173557882736\
746630113365128062806763873894435107340477854284494581032402153026889267092892\
734321622288665308079172552536648253192224860467190401188149796691897238390489\
921449906378342247258297448757138716393766038353195822125838995005317567009552\
936485078884042900036232460798510809447041187766965698527002242365421484082307\
424965912899096508885363087254327321514159891816287567811307051625685105581512\
671359344832178026783508960472580054261710332895188363891032447371674832059178\
733650962829745596943462409255652816656642813369025930758740440023467313737677\
792486726102625840368808169386094183043542160512328994311377533910651173174257\
919038774427555774666030406620099040630426051492029870431846013273895090998152\
703064336944690410044571202235451171011328756403959370242331710298393490082072\
739036495979673246070117441657434325499611780691764675964746879791515572781516\
247306058334526364851289816778469808818991132100393955511186968360232676578194\
608392777588773560940755982917754280861145433013950045524655124291004911372885\
966068671895355711890373330064908975683351650049482437502013368515728499636967\
464259149536037394115496098234431435109320221809709359780329549759598895081104\
350136062164200304054253525182009155876233217544217588085941929940166160003634\
391015340094039861381614185296591895827468622176004007540224052349144874115414\
450603504256362329696036597208236492559421476520771374574795122002325330757727\
354406667254606385566002002468570446003727540392329608743253281392448927596263\
699974608198030761215869443681254346476005823451709865886875789643460227054800\
708379004133051417219265941576156879115019134029748585051714860817315609739898\
187117889639975438593851481271228565920278693528607609610014500468628214330810\
028800342379908031603885040608297629418230827838086035227249810236770590604646\
347730952402490251187179864243391902530458957320390858507871952255017770376521\
626642185281981740507340026663725152809340520811671011269698677937225985693349\
519432693201259024230765182777135271884472532778020551144835864447823011547118\
441835229325114932572698861749122603284020727778843300201824351288952626434850\
401801176692189400301384623039255957312898153724381695307731589478556460254890\
123359844526030584211078366417704984380422727756181463614970822052978940468419\
642105195952976344279449380087623752745873654043686032392568120396815397806203\
184411751734063549646449468864312900565992397103980260552719134441217649315767\
012502328215868291339917094347218601990614994727041937223244811365777364784334\
202259996962798552988234835813451982181425675924349886313315764355498522016187\
470094484862457290141545591894888707730437495867207924838385743401098250062896\
166079971094418369987478443956767929238886241602443690271546527600224939349036\
905471674482965770830739242100152832723379609356923990338824465601298007919176\
430314202194237399396437444250881398720311047330446839944062988196979371975773\
532541936499970332980309505730194490517681341165244535932990515291198614709570\
353745265578742451856888960135130446546702707588099460903301835695366013279171\
879444954101560343692286480222247044767586960903220968422563613405634836829717\
434394913450350154562712113070691281968263867332213184044441497703738450944461\
754830545368993606820580388987724741195238929242163746784562498542798503144932\
995331585543002766715402629626516695809146078810174714306991744199865847329040\
165535665857626308050241495588477533489852364672238934163656532479436451005902\
522586321364641258499846796161843552340352324721110521226636091573602713021329\
448208976614103780709193655802622181784957122075851190422878000874592867736276\
332300969043780313708952520766671757271829986143936555118371669223725419466798\
082166668111039566043933750372807554514848068166043674678943264045371156658637\
505315120812713275492053068222000525692985014308858791838338588827226166775683\
455460042038732166503756308540835999973834420318792535151098838338539003290965\
874054873988529729683799722936601292312307160205509733930936050345903955144350\
530779986167924716144327074762450851301978973869927099332578952464554750676366\
826464527152552254333880535483627391626239252966766458754894673447577273356013\
838273729005393896656592230598571048482774398049720583821115538200989209661369\
468931771991114747170373374826981059627061291313996060882187721485255788982496\
057151197409955071399286692015456583834310142603080858688493271922984158950926\
435718314092471047051845128758699884109287359028743120393437627985164110324412\
262926311001109691495544503094533576921409803315676548064212577277675625253662\
101808506368182957928716083982340214720353625982063645520085231280580032671686\
683448151104637370484997348399072102721190358008843242221164334445080022597795\
281797172269973237438645179469844576480639489491833438525180428786932632752902\
447890475937940428598452749922277972100023891121548938382391382872989931731194\
761739061150447827928769110237647550252257173219481814737063013088417889819598\
162999541083390244410692706737595956997119535930938496110286574076506367694490\
893018558649870372897272343345722492789153260922324770228772629642491769808030\
278236217239379885400503625715548875361008901145686498282437678150512482820550\
492067614725271465218966300496885795997677522593974060305110289858039626218819\
712821705192632230895174681586477249400663476252399854173196026161036924195715\
977601971694902399328727439746588043656593649688016852863977515522475999764941\
859502680405006409698435113073797110441197918005746465493078021521252981008731\
406046947356590646892418148391263600007362471055648198258938088745764536277429\
937681358765419179735722961270008929684713696493683678963525182303891310399263\
375859652579616496449908909552435508658902553027859907755325901273060023553112\
413722883395464048657778331615768298615178650924137474237208870130880543952259\
278853023943092165956490984077060959426129628247967788111335332629528747975409\
878835566787900429195451576744148678404482363922335095660072754793914016971072\
318582441279892338820023779406397575365725162501335163672644359159774750611925\
713016230090937345100474527618016380709677370094376805966714229413589600824755\
383245974803932060796044905017692070585123672619845895683093796806254340250957\
462165951887975505779654919550494928671233251337556738716057356380028942990248\
851218801240568679236189247556048248749553282638731464641642059885385147743343\
317259129731711974000426498722243810614211032749924136371337547432406296672518\
156579138643702562024303964790489005044298526244657566236218820854094942368505\
732727377622836552938642131946178526062604999062547968847458530441305937394727\
793077535078193557627344106921558940727573628596944966388909215851327061017106\
149797620538570852812095752763294985766777194759352152421676877868173437055674\
237402436509635179971533020571431114640135864028290245151732610767169202252500\
633762431074161787476243110180290133180972231123824004466527025579134333864823\
384782408364150914263032146655473661759625616966594331206659851276704614504355\
650567632319272380345140253542128096185364065860659568650090054298405004609354\
853062062677047658456432303555796213970401284145071551329589154551669286582783\
894033915299223882332902538885726058492433074205048077496581896610609181058545\
419793248020379655682803999261459692054638058771364903148774404809112742816548\
241917457211102449742316156169247547908473075166326609819523795676463876788253\
431508822081795667477147068016351059647568318898324971204609208556997133757414\
465046934783022432710038421476879322142485713565646283401032424128263276542081\
608944807016915495419078899085838997387070670154166653384195835071697145193419\
203744574382051040777729732736083932416374562858922413376538636749550495430566\
377084345083651770046466463815328674448226290496018468605036883440776084482397\
002567762132357213772691392393095925237942205667698370439260789034826737347545\
283328576599177610125695553501926205517993980215710312414311453023069858987010\
303589421288523151506444142065284953493622024421560328509445445462874140740184\
508573337343507763059426122501925255325129918634214765821403830797952738737610\
527302639241822426415421509064600988318441525643072600146861460116194913024036\
693824750171418942259202080670774549157595384542378138860870217866424786028682\
455382570607007852827332226510563344566490874361582295226450690960831695617260\
526525349150207041380219034005701788311831237419981786872388251010597475120234\
906541684015733501431783733524819386198287179971086117048195607925864281956197\
702496700421100095380047388039200472454678730906292796860054268202283888668402\
908313352076886505277918656290128921312403151147840465000757126177971158769600\
362591788995845532035287764184783978631665070737509669088361316739147668310680\
483001761136059412558390261849754766696217285340358592190345237671511643133726\
006710559414359332135805934319651546323178338090818578233195716802322563645435\
465739653891585126961726835665295452993366536165073980298734018388646124416365\
174666669893892482737826454263142720386501175530970761558733454310267608916815\
162421264870580775063592788200735717780569088816079843345659706100924240360984\
178262541720215278830719157976674288514505877381337614484000839126439568917135\
693227613352816047973256116480024364781339419493919981444634503389773048307901\
722189787611415267584913782767136404814522241700976380245927541667269859014203\
411158804515183793647076944899216519582332638281683336325513023426351694440084\
457734264891932074127715509564322610386891038570095852192162848418489882732686\
554704236675275075298431229087305419839504408942021416678082196809827976707749\
289849712423880933541449510829425629732782669230041011618064786854216339301274\
558922324247867491607615769541168830213454217159658460908480197196494872285422\
924913322695771899106521926823520973428529362798860921167917076294858474961499\
783598343087200700477102185689744126172310910355862262499468390249780248231061\
077389080430317290598477045224303210033049575696595575909808971877355132748296\
339886457187784691064035564489612527351448682310530027781884310676814363488368\
688151979359194805864518378586597310271207805878176828347642204580417485465272\
557925932127542209355067091521746074186345010479544484728043228759042785327989\
258645322429852338633257207854943441007130491816007509571981783809560002874758\
275571459591214237982410344201199042980008348466798477917366763391675598123307\
360449981783300027146207947153962607424019051778269682879307334273726355455968\
205132147577968851655215785638215061003757442106878698175908797231054718785979\
450934163531730971342755736848046549368460858932795193878054835351838457955127\
888971075385264812591819795227144673148897830668144129480904387647541720328836\
793153948731927842820614083782111123855185925737202642344646616985206338453406\
008552668716999882546853183684501164335422424676631974561346008496308560574537\
359030332058584604742117198315800728930013561157562071742314893304796447468064\
963812931642923523581139029669949468001450688385729504988003174294755623676743\
764994243612959018878163634223194934072584973173897184738742749355098506472696\
968441265206780502194204287610736288893858850387324568556438816578846280988661\
820320357823033380099305913007233341323450960259737460520043570998600298145509\
578462832001513573592546027351596756441636530112264712786403244824007737996917\
646650602387339665635679340398356568072219654048851193224882054279809129711007\
700450022775461206617166915591398097656598227169631737132380233081894643812813\
486645249599544573599602734037495319810341373545859961495498360917612628539530\
787384570759463293037148822519303817175115438350026708995826545263811037252548\
877439260135406025221454919816995798737164535132550990520879677994407822530807\
758169956027111277585448684402760529394514288800290953802848541101226157784149\
158140774999841496292240198891308317859666915388229009946947450247844902571367\
356972639792830403286063454681985901480867741408921089040105765750311041922161\
494187431458784761367147739183053531438322669545383299223940456133606017821411\
886509292207929496640912160035905115388056492162705446419123651890820653277589\
199738922293901200268232222369773672330039382172367465305265074391406830947473\
212603208840098990148026780199482685855351480657053914005769345471367320387577\
245130697596060567953900372658461138451132306458337250580531679344725994305521\
750085317786363398194721774384983941664621448550518877066168902788747419777507\
278594616784819648879238392429701230219526438487691711692941913676453989753022\
131894427468986445119523361135808699525657384995132272344858932311386797831195\
178438771350648230787048299803447155070141882053104142668229481600816095024682\
359788933239467695015594757502235926020424722638494100311367044097453658610308\
012059308927527610728526394257529284362186377642535427818993064800665696367275\
161697181990722601937571168925947974476124876288821798650136747507500638323479\
883964977400488412357566686571614215831108473609139345000273200513079812815702\
225616906552683303083665638141347007081942216648482210415934349190820405640859\
522403880037807349261650300231717999314825929118003774744659501565939981386238\
692869062652382061233623674596407209835077011082990790280690341091750963573145\
618231904447704954866187160692280303501373595224123316964183487990807480804086\
899822172755131619587809677521653989830962034894093683856539421196123081021103\
471051742416434655171920779277138529506026751864243969265536723344784100681455\
951149036782838817570535380038946002769070563127023230141413066316801746797335\
097254146260959957881594107278065966542285301608309809482798087779954151330634\
185197787230301266392253999559413949621100419546078252067442508032881805033938\
921875652444516995541376477841671637307558479723386593926352240182260803169276\
708468269071288406191974911765628699969084970730823375647797687484667530526919\
298507928036681821437679607305087380808301446429759825417007864397304961083418\
619696619596322018403591635634118435818598205141363191530912517440662404939092\
451358851907627068893662709905594646893766800692046828363046250164021027437917\
854480248512861821612512114570003573467406925367903689095025923989154817162254\
182524520806003906004061554058929077320687309580061749971920364712097884192446\
667092044497498748240886590526693588948775257516401354367423792014530722023535\
768345446812068659513932726355927699659957377744110379091071568358658465622085\
862107139549354539122567328062952751900754940904896394388806425455707262211593\
631243949164597256491018425754082200472288884663451280304483190178400740116764\
773956154364713952355819997693590108417752197336203083262576165968411936614585\
331142075321195292766971704206705185984249976283460412316390812279089005602391\
472762547230446561373891934829119845493060944629450961591153675525286261059127\
121220414468417749781863050111297400394111935081890835733329055114407430444467\
585330390819867745858706466753105873320444866438195473708480984019014571108015\
111144466295074606523305173459452577257589307863700719576792849542202391372656\
825993183849635737174554050387357805408322354286682509834074246191721241065928\
405281116620092328296030172136384928510477358529839208709892631698435885742206\
374457995610541443705248822335802675674609925440227768400935931817775078576733\
453207311853083797369573820246047450096045240556006415683554046864181064155915\
986925744890303471460863686842071415295195399688863994416298501262198265478995\
063129214796056471849993133924449529728833783355225306656081139111557599979071\
382892418373574090519324118083275321057583443407862876642948811335953007811514\
259578279640928378127631674688525323298028567924732045320938542101580714740180\
947946116048627767867343775751143759233304925499457206276842336439469327017336\
108444018756535693160788031270156774329211095460374669864630589643299619579908\
391638851073583655397358685803947562940402286352096347217039450470385257108531\
336244754542001052596712178357874633359416592323562570393312801881979934876980\
850885387379015678885924959933804104507095668197806890979130475312701446911990\
817138057938235367271579787439956478915490640769381923678366723218190582136399\
034973143981196742174048660691965065868831513483401876813467904264395573859006\
548375807152818128951074144096045017043965485359053827804348135830772445160037\
860973737431472179402649530772942955247321642858586419313390462255573142876790\
225334478786885637977093220704754382447137072108172807262161922034516766385698\
542146002937106613178446743494946034274590970779402571198873753139912381326000\
956320636823628583078987415322744621275917935463121492158563100688909580778060\
593728283740660451733814756940668968790744643728903240457174689316227991526076\
700874957946365529810800605632053593234614913221150818691711550065566655477454\
978755929060742276192490131286777580134210840162883087292122615776509522101508\
044663744032978226504795848394929088091378349110527018915866659781539522433630\
203819430779722100749295291901417577525169929771479350013718996448891152064736\
296676121821839308489926024600418991546699738521967567293096434216988980634192\
953311166015202689067552639251081017259294741159705724670208362379144576573076\
310550469479661341506294987476166418457078238555743704747405720187095339272312\
325000336576544182150162660235171847267215331210750964015851018981377491426545\
299866692087088903694910230493046303417508983514679902569728765115044510267583\
560834962773334541439538796196861122862718377702626499995437897566186384522424\
473949249215054851012216707555240510210387330028459361318458442786733823142617\
697356364270842120283188436738192834713195087173122191012031672114110939589992\
288467480174165676099378781968770763447597018787011536350704268062034322219624\
818967910905627992687206315734435950789785292306967195110433305566783849538409\
612527795838910548796848486208679717493008452144359425346200112410842665667586\
897808277627684013469829419295802033057400474913978971059122642210407325578913\
140477467095216337310954671071478824347469732253620897184341401689515209329372\
895796179900974531322807631818289943318969568953047237039953890583965748355015\
081947010033649460754156809390948275449981181003115143112437162060285082116771\
605290150303839981778749861963500489080522089690682794915503815722397466511442\
040712132800560653624460196857385732581380945079434740660360543591168103854745\
541390100521085682696417436459269757301112314276156916406438293041441912580970\
015014762604508430299473977704434060255848315518370986210437182444909324499909\
412396968072735574990974754392902557984797093482190328085059102331850565958856\
934103697521787966167710423049423523510863007281287132147932780402066461426230\
078561408403259834892557120851189853822385136209728791951877465064186101050110\
001523921401988115501033319067153914966127363813534906201898801186062648881416\
943529275130201207444850693949715656963700528104436457965400855804416248425718\
544837208664333866575252285810948289217257839158191476913646032684476202255833\
788430706626820136562567060429166096739937396333725598175402369018835353007990\
159396724928774572310017813388850629426776845236106426208547207080605367376268\
476687684621043656625525457715582096848955125604270948386990045370602363886713\
679104249114919963014756467260027940693936292085268041593916556942831013701721\
500246134125553880321201748024661994057160259811420538497330990958586477131121\
900577851682135465676925436958683955395922697911981510567862427873863559696351\
596525780100887775161394859476530289336591762402297065783698536071100495347567\
572284079338746963969820527548854138638091280465567957867380247796245580749357\
238874918172010300891988993237953392756249295143063917541756523620565537533747\
840354751434991801696242127730575175317271408992841799710543799766469304839985\
765697038891618026889482866498396473822403052368385787917654987361628471601522\
751105553564227093034129063412140503747065387611044057631277677687955828396936\
068797492992473055757014507128648776037216713666399647951681218150895635932214\
508085348626452441380423193763653355274835333215583412888866477801396224946024\
358430223059175741552754477847166515158060159683143469938602241167033961033143\
444142152378121270529004152968328358142745720548076341739976854032114278702709\
946582145669614204935860051783203074959984999453677596390154433298372959877021\
587984045304241723688539565431132491280016688614321335901814598815345115649693\
087226879981544016379036258474494027676223140583830246323278355589704912287637\
551609935228638759482647092345489660404395528296934963273296194539263412540443\
583064912727969941442577153786602121596283848008077648600684421195128428111186\
065633816275879668504679093930302438194147134504446109962381417080458893859796\
343824476120094314750139145110290353458464233986653377503403288751178445621701\
907008268753712348942548452679529059672899114162168717207252789541303662531312\
161687184002908491401088247419290331003958533280903056898161959584146403500881\
838354477661617640834335657628291603652785505334292017344423999912982156065639\
233096831232606113498474590475348175724793522899893500943495075396373482891154\
711017298440790711638488229884179218542831749857560164435622264612259464028308\
647766387359459884245047099086787716750091393003821175198111842564994499619250\
193938047253373994593337731252524630640434299251006362772644042522129335363983\
888712558650282148393519537829121923251329550479427077479817573069098139817583\
642674915675638034024163503008997458846644559510526377303887533487344021772585\
481657032600335620490417735579097347598439475995845429765463674121075351507013\
851212617101709438816386818003253445607801138931545723258763168759141418393365\
682229624660091462055145978337911564647926663543627823302548582197820709974731\
091603511064700974874000731522287664739629127786218446835550020204307191420072\
846279018318639787025702772268782391036972445486411058889166911105922029444932\
943627035413309880526880087934617095630484602882766011907089407300282006643598\
669430991288386695237929866628178898427269704888604473767609420261537717791790\
967751278719747104408091559906791907723417208080859904286004545456751422771384\
737823411005311824430632388715284408626875660506972347847736219620237658441103\
372159043811894698293130692861159856453139893139948999833404400924228379125175\
552174621891287605139468988472677187466504785270664362574831916908491537125880\
541454036326747869539649103724005746130220293199503101987750602880237975002552\
157499644642453349885915909369543958084528045004936639830563782254105626241683\
217301132374663650818321551390498019391996251482034852336035202979892243773111\
150091658570103260035364444751774246989158935734705658751497625632680396958169\
694903975994610639763432305422721308762466857346704606223493784199198380130993\
928023652274191986054264249711792282050370537587427136667271485530946080779629\
080935838546546834984036355521684570343035006341023502853487766353047125068844\
087232667590565579334784591133212607890192869809935963677578312895726970428837\
993551303926951240589199844906046319277629905646039476875652776188987807508202\
115485364253791970754729071126344281360599281191735709921525555198027605603718\
090518902071857735055523271391396250159427253930237186445017661783595005367424\
528353346296600400846807272853318083527248634331602064968738739216160955927770\
747209186383619128575571939484457227933909841306594059996512638479997333289827\
244713523630011731945879729854695574966414860678319364121215726453407658070668\
960253185401478248747972806312019166738072237763920872324754210132174021931705\
246883119566130365670703052191237861779392569076272238477050523927062222837494\
238143061034403779823821088774143963139015107082031275456607954643371353459928\
062871969469725559248762340560859976025423380535602919869909560761373682770704\
428667046412247405699674920985983836128293650677449802452216780957009937928110\
107393230867893546477556514877507479466500875692695049132556126428060059883949\
951551625764082779816057275574439612018147497800451321782129786374375109974767\
337631313444066932216989790648141522459605796036374929385390580458098260355681\
952893952216695741564220430366437229914696760438644194213013675900169324226934\
913049246702707782481845523113461103453489273315060001230285383342303638247155\
025551368745632166936656044414642455569818231927411945082796887046941767029660\
195074502498516529806186805463813475251438433278991996092710858122008935766222\
569799359869922149925464717682101276519959597824700501422174754586194296039239\
459092882841814687748419136141898738281264835534324101696493465526295345563461\
708335109501680694022867505677634457147413217775167306207782187706492244447520\
828000983425570457784919191688417677178688630332126895491976457394075370098837\
140048702542926032963877928754377069560437339990100294852638150032628997285511\
301036985819326744885052228421918054554082277475276074653898905064374798169834\
717774907610376006282890619457639678129928802002759672944986154770652047321954\
189029670858378060569502688599152022861683177931813811133700846648282316429401\
940350166748929939240870575647942513199958612783309735265384335938416752475309\
684246977819186243437711155992528282731329513697878214074254516312686452327578\
082174391542146889435909773181565802205796404419421225370147991892788537903377\
743287340955117413783520191979152796500139386884855693747482161292716729572785\
638473863246938584052924674904022413438951883238010793146018342916216331965737\
001597942739004500063841651314517655908597002647003221302219852249741391577952\
987929096349728985117601811374469220942531031313834496135599318178835441647145\
038785547166597698246724797440311660606198912250415690904476466245712836382061\
667427564702775968974627841810514767013580425903857530620365729378401649166948\
271359285692735430676917886700049220273231626404070255027956209349621622733861\
948681106084493589560178708588313384417288763890931537407240007280253256276428\
402648656501968697974430425922584958047417922792534005525247449502340839265617\
239093094230060936630323480202108678868089659181684792736833014327146956844570\
493654212738523641976274894176037602975201615359389448762202357391354683427259\
462829509057651431942095955160726127413535983319184123578419642134288725668738\
970843831141046585600376882203246308656515410799296469046577706523795053459602\
461494020615605448430643787299452582262636091970063423456958121081018804294851\
368286739852132534519851986806527920161753896561841182522425296893463498323878\
626573832248821467182212392161452163325275670017042893990524654825877851241251\
856125788689455531665497546430475350319035590232143812858179275339840124608238\
907170546058359605867719902183465283057186827751076250665370945298883021196273\
029318588927084757014856899852966505733847103862059963894320941335957796447699\
221415378655112464853794392540736219275246848238284997312571864576555150869582\
415134979815701743782733663799343065090606498092983863033353942502182256638127\
320974354662244588764349940735538863587706720633681111322942298365405268821561\
270245962885723548264218314546143319125458331181255979147364840129146862219867\
375818977195188232785208093327828052850343881380195284554650513932469026911560\
267684358544393507628566726126650839453589830932080370010789324365829155080132\
238129887146480913564402924712524410024525254450802324615782206358687167110556\
932854380162468346196749237552277513105100126776057643879915719948597065176021\
389146406317350223384643458394835435027981902728797303202850846884019875949870\
378146179668646287546670399896304248334225490492446701329392472583236231531199\
712398944621765884271933825466621610382140069902302774264438571417574587943978\
979594815804972905977772621874827919154213901567104042498796038383987308071550\
425303932011381726233669143418847662675503258634492672941635544061641605812600\
689785048902465409536738448508044199481231522643777835892801077052872357981319\
176422544079026297752232994316244056822824048979585862042095903016753077009841\
255041439517370577205755550817551260179018120073513341772372476220812000860440\
795123951426598964340376424506082959966615608890385710684640291412717376571513\
488794464268910769410895310119099929995630930905035222777233262914701401786445\
146353118738378495543882500856927308783947452874920176886447311783104110199160\
063149881892999061015277816870842162138183955707918405119806759776959987531377\
577268878910886459165446898313347423547929805191092151468307163238553510387271\
875446767082952974905345953765259319251659451479336850638167973478663688327078\
954395966772983270966800627905395999829457773168238326073880180654102514617216\
288678835870661909367729796642225593369082458671032121453015761406563848832046\
204655115731003310627177636632725355105114011372947974242341799659537348942142\
140023658440811338831976175255058900924545313775605884224762865238760627246990\
302126704707809451241471629495570270401899866663201798423005507008440753327962\
569991771876542652570331254951397086494471914527294488305094601841529556251474\
040952579800990146338379776902129394085310248856156735060633863492368448950752\
823340100752025828306207113719059426781552141092186057054209610307132937255536\
822579473558746256777651645331092982287602837922593025131851658133770605209210\
865756174301233428908469922349735151163142174525426713978924805002517223209082\
124574110776116353591686046523764118520831045560051390958949873097070872311142\
547023121673320381085480920178739148793448883726854568921487783039001654774176\
228126058072835541533136900793139630006376970200762535050726123344151011142807\
093681940223698999130824742465401270194011322299993204833287467135538349457963\
583689928862329043972258449381710772590580394971625950663691604242881282548386\
971596653055474254354559734332016501747169426140864138038046659532238806099596\
893049398139891441778108044017768041263118730703803284078136515237865950551008\
740358384973781723210016623052721994787990743605742314099283345866153030265910\
880284894388262719286059268854625261181150655431439186047386383201495201419924\
016510173976740922604325484294565925858177689977165202674986419890749336425882\
430300822991408842303703349200032109476423574937082515388359612855402857151199\
968412130951329760106062238446785330430360528332459477151752110913218469296890\
135992039906751746663771754089316263526915922316675852838151330957335182944234\
019485759992887571589611373525007335299446864517727781072935550662001116627864\
068458347421220153546184274562778139563100350380090185222039972627590546827269\
914375360065865512634531653422399403325698761990327001829322904538021646980531\
553098829533761896730953445713037712859925458180227261374655690582259578692098\
980461167400939173233575445142418155942790416484050121752751116222484137648793\
952894876891106208346787576323688199506508172349368185004920139539693115045084\
063183316979565001151633008378271107497728604641519331149777186200581721183571\
765889164635570184488733065674121671104599185285061221968011073225482951877407\
666997960230384720072533276005946786952679051431952573547714111157306283794871\
723879901011073719703379511138790244228576611951347093824055168672986987094588\
552809896555090500583947977681636213599589645466936774116795236559330196254317\
145982816376377348304158535288710628200928673451317867057905586242287769770380\
335867189664400760452105077801090263740143632780046286289324312169848956969268\
126996557009611629781048808333226401158444986578869198915511649877595008201165\
471079495476162725359744314069895014347915521487018052440688805318244505486151\
055750824583348306015305152714103401346158717620493273768228117936382237726367\
695089960600576457607434908380867249533034011936473642216403187735017426283830\
918160337130530819470054814566633422929439437912961361179742997959789822201838\
204339375151390081879567578084988196711699577981480046861111020299855976962841\
938868761232745152462773308044657336954636549384040081977760970663913237654253\
918686820356685427661932684390288591996788147248350231950588774756415910641899\
124069125309416312561954109543530881464234340833160970495044930981167353983129\
373553934118732008867086710676292802662313136660983836430756156824337100324761\
286608742139189356752130595062633620498264655008206650187746333184048109653726\
939935499250846093222363891818790058724923861078321577979026003556222664391725\
444460628932945945429583100156730055075437247426211846516371207702459968277475\
890212707746082328108777465643762205089221176286259492333732230679917615024643\
599135638162060740858439742513315938986338310272411438507532080538973380115912\
508795623407291394530386270706817801468194772402893961722164417584863020451648\
879583761092985067605371677640104122787817955001823319726057461761188377946845\
473203989183811701977866220808018101648347143140329254503142495220082111433074\
466401362422531925987509157512173913243296534940120953928653470846315882150495\
516801442870649484831563843727263048169479579203556684457786382972288953534411\
852061006954504177044547449259708669886360993447006199388647273449927912722231\
658528362329253648259342107355249952854844231273220467471078064243669958423852\
863743227324420182834397340003224185901923803059005872229289610551499388306141\
350064936910473902129154397749453605108064872080131190490223110707230770624283\
391952893722091148778390879044959631522298968270822053048965601639594558607553\
522222159573834959609286492041366112049876816520941632691258940484528222903607\
027727550910423476071510260847037204995330735661652016080315883563879622431208\
900709419217345047787877409407146870679225942590522751818094928229533182148904\
042084393337728589025366508426327725814394860195937648754924471152085966166588\
308595533616071705852042479775057905952120494899134627373339351797353749095540\
180502086242529471556100879915414706965354572999224070932580384255389746776351\
480895187698836463589425494284220731203645100502716078039833613170002276335732\
205805047209990128777689353375985741664585200763921687804857367539294950338409\
822939797065831425555392829591922969806877722796639729390777908217851732476108\
735564189670849418232302926913249449134037576977880000852120689948851950118704\
243081970477677656477051666007382064988485717104832272345711925918065271167048\
969229098580751536275170955052842903922436500482488074481318574364656698445218\
053666467548379873567916422013296190351708641479733715775410615161742404449579\
958031556111579103087313472099035301894999465821929921964771056882282986141014\
201946390542328584438171240836332265624325123838594776356730120676441085014753\
981446342859310494968693638264004641625964695149031961110485447759191706584392\
706760240031145212717647083332009417568873875947770632409980920684630534774332\
419452200217630004662282023808277804197794933893918898522440855068666909872615\
099934327559421951361489460327548540028247463818557430386722484814571204128940\
220014152688477096246122211499922887643919191089940007645004267363603359564464\
427081897852741770774513395840957604462114327655989257121246407049760606889475\
217788884675365773130888483170413084708302811779259466701208771841286594199018\
778750963200281102375514363561230486554615329882829990461745177485814776012313\
343417313877109055770936706573655020317579004306722930314450241991977428096762\
212425199286327402583704007529728174354804106393450637326750684346881838874833\
235411216634188042412330340349096757794165377908412586879828861032352788573321\
553381519883058804585315346904313089809636940664181370415485931496667115981308\
994408254571535523006525082284961728723967465082519004532455823574868772006674\
794971216360282085235430278386536117112453214864879424132133170085231543372774\
607680663766996188951228804910891117659551573649847388606952471668475237514464\
152133654892467276122585393614841651438581869173841675434827813176631429116937\
855646181716609663402912720536530254447638306533550451146415224708651212131290\
099900196815169592152430391022949696439063552199065139432163036534539747151573\
501445915609700314795373825072228643267911802228545445051006686838264972907481\
325848087102088749505142696429373925813677184169065452156108761573780205352795\
800446849136136917468253717280353678435036189012457777583386467700487187551541\
811503714129454911427269687720886195290311000652148060479389430426121125047463\
622256753934768192222192006351687668258215068279880160735706110805557861686704\
947486404202700061440097794418761478549764582395624980544495512570910640270832\
390814460092511777876520638039371357117644763292216214126564837394710745132290\
507372055423326208635230121119230099328216475364369237906325033568253135543303\
478962915330449231153809199575553294498705280190335116740752763665598147220612\
180438573003072978792173568500012562331806742598872401099689698138523973061919\
559283369486119032394925359441583659581613839121854119515199265507043722245110\
633671266896256727586677388238790791336450938651172201396285944786544296218326\
678451700202781884192400936490366272357443728744856331087287895845848235250820\
156274220792392203392045082819462261529184460706197582285213387796963236786401\
331304109955645374774064577757684903513791673253218265004401500646241636404631\
178277966053575667603716137442026691617218914299163923048497382542894221998545\
478689482567054577120830606966401517547011398438289931933635228885729811548286\
913596032428511636219222076679819006388404842715260865907155370497185933522605\
711810415045793473539632763998872325606368960841031544136421487826119285418384\
995743044276868385145914918918742400661902831447985922644596334799531028630278\
018311500893000765762808870776888556671136106186168996249963879937029113619500\
621550959100266394298058423177896496506627565297834415149733882552363364465203\
622013216280321350049361959750702691727832370138371576432302888101329633287393\
824573874624509689508223833084417619240847605102724686019144743039151080377748\
192387105291127959055174988229390755127440803641693282921255378008849192870285\
467542546669735739705365362454007222398956201306760481133915634972776056714496\
409064045114809482486851179621640442806897195762975356223618168885002728569433\
652880013184412121411238983851952785119481467901665284068838218695868306612959\
039774599056148703612289809841138200615859142471286229860041718906453010082032\
794088580385760890512269876008642460648269485048618629651722184875183556528814\
663127523768706746675269172441672973545695673316677184928439431385995773850485\
061097313805782920944994446323943060687595811900386026190492109839871969933647\
463311406629451114715205569480402798735824309185973826397713404114160166237752\
693577223614775634790555275216648241460998148628132876631187524107417432987436\
275385045777742542057576627393156984043856772914383783590182351736877088048034\
374286323665907452288539522835778681347219537660500846861989626330050330936040\
997822291481514752577183795281384891568049192181238360412271358296116497247108\
026125459205952486511422783391156497546662744867185218756181629471196471380668\
777153608541786941838614660748536539552580901696623778000065583681884719769824\
445873229844530886990299337887795265719728089915979394193436752271866343782907\
936824440320624639601866990497231903150243625040813055353383065316109237895273\
339143697925936907286974042623404247587033791700221492583435241015718645398347\
845451758922412361367352913626017121554410849303321644230075969711058854695869\
571172632037985137192940144871195015371587916332125383079389694412746892273986\
101183720851428693197150286469098732848172073873815201591163794512301010196666\
203644541295629190355481051912534387131600152412478550452245480417085800974416\
436084037596380188386074895352662695035328164809681679448801761593992935630643\
145711148351667475654627759421672537822961337952004829042288165999567050760734\
870429085908499684909529491046326851763652246317013487998937688779842092948512\
962785230159883015336126834299177661463925494770519302050031055605493677633916\
328395389557886997769714313544610132496189019170570120182066702116577665414605\
136853434511733028437410975267518355759247185151889091689894865760416453321241\
702808114846759077301327254794609415509728678967187961801220443350296879621964\
404832788637996040983882536293823039583969837394961017123582184217743974270364\
691125810751594526635546467514367886879782290229559947715764306712652597185561\
511035747661042096417841247683015840339793601121187811200823174503714075700409\
271083743540108919934594983756706127409717699213954110952101250839813654956204\
515024366843113398973858736113065124745242321542571509170983114140086026489053\
937071277441244066907683167085424057300361178690524323205442682356865003270303\
065015077480473870024026729241448002051530677327019111454898739634929248920628\
971290478304492685380028314875358105997056148380692737300968661098886378902955\
732473773218392968237265964099999476679557605307182161869394599277816445253696\
965812245009356458994432191727916867639855789253996966098824872270586902492001\
784902712148635395532805946828846993357856689685299143803410528336938389808106\
541631250749494609447408886469083652165710685290293790114001017104187582043926\
198243372615611135685841730762865206310031274971446997819103881992609016646179\
754069102972565847469045071925244946583352764174639951788616905673265931633412\
458545178258082449007188501785142887176672083115995559292672621178256119044595\
069348961757228325071147520441276776575050868936709803366686786798668095854516\
356450456700098282130467124423758025533584949678345502763107561618567611024200\
622908622178680112434591564775661362731079617325234681409070011050097945863457\
244190266200577367179046123274420853797609726268687700946422725868500716364595\
723606381633847494349975206543190488268758253505156910742713458684179456955827\
177098027528168620203131954435974916468654922876308046662143131853417398650352\
264519025805451724237931971335479894431301843024011898085682842876356115113592\
545051759006609029317534197237037316626763104552677057284108266195395396768023\
500467639232238198895390409926916785915668921976462053713869576979999088841317\
689151137434627023755761356023595321292951339330688041066225809559753015227590\
711430726120998040611204959544702529022458298103260460366610790784614562477180\
721220945378224379608920847836988153399857843835847623311114552944993163589565\
451707434941008645637568236524522552890279717199986729963816213783471325388298\
076612871462553478352971463013937978843229852958454395196768038647708119996215\
817080944398958038250707113582707983347809856610300809248363340106643785171705\
008672856057256658249006303816659250276035940142072432533503290715340643720991\
049554417219296172851893187876675409135877109975306839422832961708480658343497\
111814009227825302615934813947551736035584089426644749330958461998620681292484\
299900690495309560199167359270034227705807777257942989192483507500026253575382\
687483236342276724808711441393032576445162636301415773729913585526476183106154\
750550543500397887915345327702159604456635703067706610019201793214017147969716\
738469733339707056058598922830925312952649427953618367607928799401770860176084\
753039347911247886123969453298233627503274176462432178205058631210032808102535\
309052281121335769067348278937719290836686403502827994706248624768867044020859\
538534724137046928259372275289596415597499167757872687009614379339091219386991\
136301973189710945603730161110976662442440018178065055572462339859256865538611\
682612704334070095180088689713989492131948076545616095446512264314966934969743\
616983961687411240926925087916495101225186752483635616057123486384689279645666\
764984846476716504656126699086548540370528105028232541582319648245828614979004\
180345759695865716578935991202692404754468625626567071441627711432070572623204\
570586425486485386428718325923588272100501781925910321862102525429061064196493\
219738482292467214508802767736310025106146589875281845672592050079006099263317\
935029302633914975478998055915983874072282012111603184744607313092642236057201\
406831874074143684735669302813859684496367816355466904575253185482659911617918\
864750699221326838807888021781507987526270959165282807676731436874076260554027\
715833284666790562252441503160456864894181125999979503530707283995418800406218\
376904052860463782206835537443655485694778361506263598993634787027909030997462\
772184241100176482159012705671182087668782275764676994285411305424284697967712\
936556371908112434752499188941044238998876558149098163133828344398678830561422\
069948656437056345681695102097143423812653705290231148917416269759846890675493\
815136882312553178553493746115050458035667819443184768513482917267953046515495\
980756411689982379368626545225447682319382165559881689756544989847223360804023\
621521263789857002732047970983507338475588088526560046011136366410695357973449\
086862143285777692977138838668754917368355359148530578245719109983029831395137\
570525256209580954017897695413946151720261764966079521063305486458118903323277\
535560804209288079548131044308314254117564693796449370088051788439064650598699\
529934562288497813679005684246906689823480376722839141414639383441970505255527\
456615243070311689399586409521846800689011361913009089342682782883757056395195\
330125180182350049293106972725805703196643197756434141864919570951944115202257\
960157942174332998712495398481643215884016823180156768220588903344340576906238\
372620605419470830269886808831940015177925067757175174593722384717722050820930\
704159311736220200038813060788840091117739664188836733320446529646445934419768\
596428126244512562577886323153831909565428679230834512402761688835965251028829\
254701745885087785467432335413143581398900523422703880060771431783425266802996\
652515958052673968256629757854112732459999634827193710570217727679088300584907\
363364013164799368378780942754761608277906353980263547708948992177734451897291\
008461649056912644584004920708308526064556605541887941017689160277283372571529\
263391248090560002823379201775264068935118044977919973237802038054845153464214\
411215740926117175317752534252312656527895654799495249996613418668561137172657\
535761612467563936363465852902198835935831392192491393418642454135934428166038\
405794303405858305951612584120866417970404500557090151031427979014579958567197\
456136453537244757325971762416221665609815477651079243328459730350221418019104\
377848724061746812837199614628391664253480309667240241178483790511869883383917\
902679307649564913279665781977169564574759333133134262607748971367197005879051\
641105756086803903926865826348706345405515763139861676381077414451225941285507\
544942159529485739898630568471553514877119332279431038600662876069707269223883\
921101042205418231418783870028474888838905667506331222092051480787061361084283\
744060089044614667973715826272029111684229324748247891789685877780597760941818\
644316340028850264536445513550671213401188690785557499410205012020584369359438\
338431421187984966957966712318296941911718158049435257952406018375850997934371\
130880264021542881644344306720286303061244985371567180909678367412752020111345\
413499839171117253538517021424306732100031441372887105544078958247023764904752\
320309705960620761202742331730176569032003677492694227330322757762751700794150\
691302352338229522938042374299195531100137570087357404896049301491001310514828\
563869984292941736475578552941533379493920244023171942716029023127159436936461\
304778015704697510260615433560235322727132552378164940552536518894649839034517\
885744396354358013434976027147384385511984781089286682294577257535978429545434\
990952690776186980501260973242575667396516641860943350384149618387370350938070\
380101695366304616092407294362211337355372256317992452086818271670641961004506\
900017835172681539217865847481240698829943944692847539212047696704008917516980\
044735013401137800552105630498825434932067996417341838113208226066190871983360\
217148256562393710727708004426030257864375469141406467379988133306274980434048\
844433937285851420929071406931327851505346968127345232046363566630091702633597\
632388614244380188240491008510158252293256556727930099661715167571103702279090\
057724322645193485395815336762018043079066346938595228276348528073739266954153\
406812865943469956911804724376608938315621924386564103131340589115080721932867\
391688323814944776071992081035475388423453896732654849684408063510671575237120\
307503288768536916612388601773535404009108803958927512100254971669370797871866\
429220140145588245623424144670313230350128103244201632163057653771387099052725\
968494087829811861525888492527218603289522182402628298323270081763455612997145\
774658378547242967461824664384902978653007763159379196442547839488282680655017\
633162340101463270947259720188233353881335302545653904634831051730084970426153\
736764062033013790647873873712146452555336583558282531298690853960026366890725\
505682714100041735228984821717599940268074649141888703063814711532964678955931\
808651223026636997204711317478634905277669414273422723279580870002598280525801\
378538783200311808721509846232270743162776152941280404273173876699769554819153\
808427735709328137376056176693707288061211955806890081599398264876451200332178\
564869843209063760256299992888973076124774122838326961611075164891522825064454\
626830641722718033834317376581971246395144787832000935133331865522233895566025\
164708101900224467477939875010877461626988940950281310748569751286370900657719\
141437702967548562314383251595038525173136644265502859810576418370704824060732\
078711770552954530969818351972929411541825195835308336347495599789876319942510\
417438087738564230771733254051976361123906352198949174390525500247755923939446\
107776141318676550924068922230286443171562375620553253594758883418841103183260\
566160857078012412132972749166000048992747414021583437012481574191298877094711\
693311104113046464573198787106957011354876601684723955558088729089717469122036\
925118972468059171125745739439114565180610608056378653089578477353911887809522\
439697800184582364439544824465655627892290237229846083255470549406822187880347\
317899183416054026859967487218008132077885533824305278895252897097708026085078\
817526844197474750300894424270027730324729381969579912766676269025359762295246\
233268788313894840039368170446872185101395713247675408223230437822817504981212\
218492381106072004410173724029200225719476280314994515478334470303346453163731\
315274916269277287196580757976562490296241213427394749494996058045828871922218\
243736016280861644682942178448664330819416549098050350619393537344184449884818\
559504965026322264508622520870983941795161372926156316664116379086259966195848\
326953820640610268251704049489883857919242168650982917047583952932601194431057\
299970094882000646282506414298088578461198438509317434993315875405684618443087\
248169038284969445491491211283899174426980355442566720592375940150852875841205\
623818670543118901668180971789190221229351887427909219551551808886890313447708\
457777145492835784529617248746573332043166606413022240780940992408614861966164\
617915731781241135208581516991824554105441256762164334410701735120323683692247\
023947522319864680946657670084414776271127818203706739477302725271299203114384\
513520199463470898105814668173287078775610244204807475308420410443016348726332\
678834504450244842310917755167367076052841051752145229349324802842648388484690\
020994452862646418420347221657095686434779811103662204260528403203412153418624\
039613679265397630572391767808239419738793739699311857904544687873150027991647\
682588517407844000561270342803131241594006256008060316896796077526780558515844\
477375732040986866150895683261795987193471910824256221882689002334105397189176\
036305647134218859359916610040431195689986685470952963076078686347518088766821\
399004676927370948474866326257852632299652649029047557265564262817106736122779\
326818851162138242414638514198006184825602021620796477460122499966967228685245\
060285138006176482634185967083763616017717878758478721135242571274834527649231\
762646257436709226621130773355520568338605430705415874024492900357561116555571\
699857931310006819332853800182877747232509141158198505769545095128707200576522\
663427177149957535199423758520108327557255910134198306611780920840327015963024\
197359149660681090192953878864962912091547913184092762346231311444102527801585\
364435130263119592438461455078334368713210905114872712309587577971222071836071\
360236141627933630276200661513014317558424364472527128448286083347674941120679\
990018473193190469613014178604322552671008309502966151612339140072324812740694\
337484813194585701844194851954609071396254069592655653623192382949857221286126\
450946391949541107269221906175681772129328239509816329423697312472408434620676\
415165837242952236930174326841387410209413223159043112309008559178089809863981\
147242343125977273072587496545079884608503649403556360642136024636725029758258\
821423970906963894751585219601005670875761743422200688184018678289640797134211\
987989424200542623226391091608083282217206238321815660095637661311507035253943\
137043847640671257073659863704705747299557705633292492870667671578426397484164\
818987464420627326291809186345695140821112621118307784231880550483902301823855\
961986897258663753836854851880890027567239148796757475871447704496390596664763\
884055513983208511051808694673344214696438893651987429294500796357933677630658\
354791344094374984874917811052595293494608869603961792375636352705682866323356\
938754782849604914955943558112337629627949110896272845630669590312923738949873\
906464548234526530112459709369166368198429401975703961105018093963707677695746\
134167365949186840715979940977492129514475364355705104049071822680477534689219\
219223966559889264013833854256494287750824045655818033979875280750093213251659\
556264896843264720950845726942676196203246524253611380812855410809861388993231\
752761000593682748189193057268792705270668165094738441124135225224621640589669\
773776626694722306047925937658904054510890872719669296026156460569223470830776\
597249422251734490049588103258711734985129334074828896282286845140658705958220\
885463566222379692684577270800624286247083910001271322746693291077595784116055\
523253942755096006076083705334480806961357479866100345694290504874288654158520\
571824749343029266450201290152285085761374552109727391108825404901954679022537\
325594370109330222334353367924791554865089056103150920105329770033114909933191\
441582540393767103856151258970841315151528321798116250944078384463599269824851\
477998262383671542281850696667162662017616097056709486112509359420925767250273\
704083583389316097505678303544284000039700202864233335323800308367275769471670\
632072715632881451354026654528053705616337565756556156045683973582112723349302\
665713737615780888148416954606951892450897761458277305644711560367234013737512\
391133422213509952010356177643077090804473048268999177976468760034480364441486\
413463468999507845551020302988863338483281810726992000889828571936841389153981\
116763523701359960477679432735219462494183398303417727528719732165352397478366\
615988300018701354800725499677948156412225073198207773749493693405159261512147\
252409133124328535226609509917886242062147076181444365168205906693702697284844\
303506025219140497755126145044657256971231595797642958217968313207204976676286\
570471311714659716899414141941558552792132916553410803586453942360439763461695\
335289846339014437097710317188526335297860098669308669843526393418436970318857\
439062865471068519080023824792265970669579691292282779776008111989619170518765\
770471548040762342014690147470123007236720063747941465248848800218697254454637\
056860047232674220196980822142277847213930550996393066658835120573420953623270\
683351905374323509642416928024349246375291319682400703838920994682079708205085\
530265060841729064678943292489042266623714939148718520453336050928192722002667\
835450900672192934483571874004864525843619500945520255338530150193608275455081\
483677629431734666870183989663273687066717388978381705851435561662657530589349\
283799568837156619051174693401985358752506727461577175427929766541124306616885\
792146630482653762362917863634478732060481168564451331963377597452108914206426\
210773371687162905791090473783763999340317610132958656601786861508413202599439\
184688026600919412070156736705275210446025424647662225537968562211299822221366\
194969278051234613589388009378700644588895530093096780802205671222911732449621\
946663360850150959491680911944318831887557272880726049204842257269502347772736\
256681742643079240727324305549238831405486394592952167346120593473310812267074\
435854430639051354861245846923527729555959508163391240344880846155748316511028\
056596912604738220096242987861895952287301938329285962799349844728509583416182\
154386610869136544064259089115896981298974427147086063734408895081120792563243\
439121604867098037269298223248558249957089431108637654840373752138369775403725\
350930868402408318659218947543425465681993319202869736416876380780559427264909\
405431860868835870623993038093248937760639588088169278821723284010080077874468\
552849300953561681336987821881319879609157078006065875120413681055150138991407\
216054540732098424457112407869027529556371764996922732097345339032749384224697\
177560429121963794004392913939936963834312381057271231601654623818608034169377\
923236080648416685167008845800707990539901913898692886788685012546791682529572\
979509077814007758372919595259230778985290095374969314464885604201830724836681\
645348889006164184872131401761979206738425388528296023984285540130893392381411\
757012080830155418887191011712203543960412588136888048929394096629476679405622\
656481939225363716863010600798228698905371847071955248636144245298398605497226\
673813992712323269791352678194750815424751582595707182151747793330838053854225\
259358687900112017697150694846872323977569602190530277291344179895332845717225\
695951393984500808185505028461731209346332389767439668678411629825366441222235\
054206323638997861301160460642764252472119953879776525470989913875733370958754\
446068818103330791592335169400268050996900920168136950287589393771494933112157\
241590212362251549726987858042362441274878998655931459382697569314305549817950\
653144186683273288195130275199567217538237057152252291788997389839063017399172\
994785964732882451480573157662397274681272069283546859972049158200654932142637\
378536537776577631054256491563772800189810994441267947276921150956072802362828\
488060198203017705573603550343134769074127602842407027856245018676049368092179\
666630506285791925690321609215503829815738436504956833388199142037563207628943\
768460247661039435202294481010140411684096352222244652669840429640253001700640\
703723317193522076178313500357425684523102015448618474112946240496328898364055\
154538023000657624314766841533398052677981987237595528463455943508759753081225\
407831152856459138266985406198907598592026853727923008414753034616218457484881\
555487518028075008701148602056630051107952626218165099970462460938200305624610\
355311040342287433668786969896589571460526360133947402955027742886004823589976\
160326074985704712218455866713227141006978846958171262714993858982858592146253\
686919607865356133568450075766467433310863247115800710250863570422004275510279\
692222982886795051603903278422738873811183032977329682416042683236925334343948\
056151302774756556422435386312834139392655972966202638496945337587293946902596\
287388740148807094633806597996983165111929088025119256028581730499108412164179\
968432523640204120266603390613564414013138932212028730629445326131983133356541\
252058211952929321494053648823003371378130699337526267525734272054718259851934\
397122847549742322825404076626173085591797748712629887002266741047470611468698\
028702735148198879330690780405185216982872231913175583775553832930641934332767\
058711857276687145649647500467923706677199070691387000871163039442974822989518\
150941074191583828498300089051563374997092344581268411890557203901380937449267\
263259914733455221666514058384741593179377470138831092920729725748072689274863\
625450102261803654579949694183630518520334858306138860891537475768145068904830\
504743231041756725444567867754056535324624426384501125401588113376287922791445\
769993245490207100571938902433231581806774444726672317664560768234838627921390\
923872430415110888337404826020756447675776852313457857843464984582933624074648\
014159794645214350928554441465662367260070571074429471480899305462524615053954\
667294574547752230988593834922732118140121819937289727478363913024222954228322\
658127299397886975817429336440054623339798479236619185224022625456201012629622\
742562381753005177632863755395427686041957675848786829356580164847516468108506\
725307386935018654431860678211748070671023860613289732571244782397944323926851\
468558707175932678693358768547160344896167761171634129966733645058979211075460\
183012363336069114496418838793412184219493537874996652379751539176305915964610\
347152121465642747239185396502131632591123081652835029486819565713588747677239\
629019169319916776864587305875528874759709015918885841340231494453516371582046\
119392953865006309019687811487252002463250058595509732656697594088092488527662\
674442466726398494549409633358854494438550708277866043263766955889909423392133\
453243745869236955358408441578541048678823088765914992585877613493789393381723\
956612673264586058860998331302388177066929334834048048944814411828434656375280\
816656029472988769848951911289727995059763032773051776937678299759925957344752\
814862839444189362992099002413580600242332685520325343646493589775270690343598\
809038877648352811417289852206157665771897459969312690499427459585774890071501\
771028005051021850874633374802818267238663761105936721215117891006644603828092\
457244431417385808314417365876863724975750172418050556481564588826944241362569\
737929225594590205061321039231722794686286895619967419234007390131687938180418\
212831728509935919804705998908531525506061112902960745527654160555432346261016\
708812851520318516352330546845016309787686886251609553921820193843043220857880\
847407848236511516852457920537636285830047248894990623220277150103893542479206\
727218039032318085454935230021570322404830357516834614195045183770461312945022\
064049232543372082330956689578982080018613350050687537855173898229608645792613\
460122933642789412934723737724118347105671994749881325566302417485511254461353\
073138250801775959002057552568829353541033294058247633459548911914800263059411\
228562902099198297089226752024511822200112557157924073365057461275883823812394\
802411040449071889793901792134917798575028751711212449707103662889052674505062\
509392601996539954670766856145659300467217310496756990455624866338937724735088\
968724553086783819397974149839080870071248444061484882489613102697330738591249\
879037418706260010514215839040887612370365371352029294878765054888518285342824\
841003839855366231337645767092370447705443448028249088623220965866449859194336\
311920583162054531014457848223373995095568172734145085035650280593064829271852\
974721285323881753240007762565488990111484683462321804607071758237816362115737\
939333656351436126557882430018387059786827453486224103312709824869444225463205\
182429773306319378288052473627727901023657515838777044573638023243101059133025\
223974603254422842530476392499368741225941252534427457191435790426198559803235\
541075551717960222573100794037929632241778553617780508804949631587383212867555\
429706886595155552168285084918184671511976087907235697860364620410919720649300\
412315018883777045831139762918700923805268182097875166508952119937827049455139\
920444798943378848423122248762725989299789548257466434857557926460375862242308\
540160622023123958379396790618608202073848623338500638603716795394641282798171\
911311961478216700083080895078544581326695481816638625695092523164821917822134\
624141759133543797902834142377835388892059566846197981052319282576652938328809\
119668761048185889645442440220542748969112069333534552351730720139527954521612\
369056345572702560858266064853839180881791607076066138641953390753463104231631\
434614551495468392152545717652301762790713467029896411934810468624873109129058\
828693056154855010986571699431794832040020461502892242832539872040350919383645\
420568065798193492377797399236164339232844122291241613102368123841230940085955\
594392123890261014800241184367325721856692868521171174389577355671369440365534\
188266303219673712204778461396724242393438206557571014652108390411058025499057\
430927093659718121325372945327612925571603381159932729512007956007811205331463\
611272220893115014719251795352428209704638353628132373305039579921425714309960\
203390688005783518739818893141181303060737189155369873116976049855114076377510\
951304991139839324182677506786129309334341944600471092978714189848380110311027\
418843783292048283906220114592454197652212689145317872121451331267798784556044\
561595952497545298575352221546817148984145111384250814105501308548962342436284\
979104194400095354198478294098804365041833757195053081693362546548668506765948\
602108440320888369791785745623588814599483392712832581756647814893076301831884\
503175187702543381512172174738086474183691780511854271392830592551520369615442\
655792743340951740879029284689484767512818289936936963800520966258096309522447\
841141623347063886751542015041317535385000813287716280810470018834689655555443\
257656803765673502026726529968266884467810665749563509998596178894324430751583\
105497717634532380639058204773181162089074001240149200801923869544920213679302\
425802464651769831056714850197856958739975556787502966173286707949082756613216\
3830257936527271172357649371977298818387650160046960198076