0 3 6 51 240 1608 9702 64566 425400 2900871 19925310 139113579 979756206 6969471399 49945267176 360468086046 2617106103804 19104532868037 140129782694814 1032313369586454 7634695975767378 56665731441679896 421950093485125878 3151351384054866963 23600631060149513376 177194436484609994022 1333505065335198359226 10057377384000831662688 76007265660390112228344 575502379787674058896113 4365236835314054719296768 33165700313797039702936497 252375717276494135672364726 1923283065177624576914102613 14677081949788541756411300658 112151156409380468845165175544 858034353971560497222798105348 6572252761665885517746953528844 50397204472895045302253133023466 386862955399992719846456041271631 2972651629476300540872809831050300 22863689779765321851469235932616310 176013004996861385833865594709787392 1356192543458110955066793003126346077 10458257263302334759892902687402246152 80712904352745773108547786821184075975 623386836638939674468308059710947602748 4818251972746341727710928989494370978552 37267107706743247577065613762742223392150 288439023716792791770739327134696236150418 2233896536458126075627591208081279634987306 17311791911068400095211767873000200755160591 134239632016619642062817927412455204894241126 1041524857141039785852694955159793008745709599 8085364455531125821546687266665628545209555980 62800346870474536463096873890607600548381543113 488032585957459168111368049244288178028454573454 3794479522169055641878135453075083894095495359626 29516502139672938511862356497606506894376055483800 229709992012411210815944539781099523323156474726298 1788506741881268607766253518144663931840013469982406 13931268831443303080813597924557038203771742128612419 108561080854904519040611212779128573054354875017998472 846321390742151760176449244715689950843050046969020024 6600376255921668430747169706932190444976333653851995416 51495475861041423504798518139199094124003309770144123436 401912477062469893371616561525475825646722823969559908588 3137987254009920937208163409907081130312323793870281593380 24508886732039794124241528840870240687872303829123833988138 191489233876152465274826106501000442867428438062581097561340 1496612382108257085356224638710880468250418161006339407004944 11700771648261677266710288625742048204795567925416402811369216 91507362256705335321688615853112734565342426842974218479369172 715863557411387377028159003528814030668378385125471576211576588 5601877716924184920793948025266097792931727280291474616318344058 43849309066748484200141871030773761937189153918045107465626683655 343332079736657776310337304232027552318025576428425375384000236570 2688966416273723873684228010616845935893919983361678383494261069945 21065545987983430749797705029257067528782835919441711269105095985680 165072035293858205069923650983826827031816611205504551880664278501813 1293853010541097470010167143196107074557658592360958255193152031296258 10143885301701397295930930704962523859859004834220178436054805313101445 79547965601361442216420793042365345017557559279536573414928165437632002 623959898439442620977615097698842694848404169887153656215732547249301882 4895360943371230407258752120884419527214263874789876476201273834148178236 38415887015000198127213607904551964216180738879230050892764788645298583086 301531624820595720179299315725745858678728167238106091713883722106463675546 2367274127422323133247649077636310985763196944048586119799890206299401359578 18588990910957396663721020905686492220131018367257480553534394899877924801452 145999923065309778814572266186250784296607541760064833592249015483884743152353 1146930290631122178643748425931164013672621106520839211972890113075785277964402 9011707806030086012269680618649269451923373372264555472659848419398387442821293 70820832072418260338181745207324703595727899377702735932895927103923639859500934 556668967589516480509686202141919567882972390404305539021048047438058602201930827 4376362993493953289232532035263393782509760527542485364283378387820475833810499808 34411874521626405117881112048274771442149539114524179521606137139487942830759354690 270632764215852476073494567860361073976151377393780134199566841448670917349778553646 2128765855563697949785605976655411487677397064902940694286313816648164662460683202081 16747476439355944112091106522634916488131547220827895365286825454975020656195253296922 131778128747694915300053045976016902190313164134975754778396306353192763153653007773944 1037070654391851947222171137569484135292195192805750456571807751014134029115680400660822 8162872483371342608649578723698180208049865643726362738638190008036737052183473122253787 64260779100054703575015122117160180336005651177637708064338557998483117603889265038497194 505959736192756012178650977212226742913007546224303788553862800391975163136249023502590683 3984296508321875383527056905246716993210525010845873022057647721432590916655952507999835452 31379919772080554977083518756924613150318686889600993220106051464857783584859820704450288078 247181115922139281332058514863428111903196750824490428694028338969485653668637006678803412928 1947335853779111830607480139957534511281701439572970956989968248632870724536373855337425906193 15343604858881138628453301140711022683273801899562960037138321610914605556409410354980115950532 120913228898557464474021774640546084277688428441960383200837301784862302665530848687128413115119 952969547436310111794787549152385775724058406133981477511805624290810046971085921561802479689152 7511764596381242204612418982861391066353591921059883126839775682329022731853476311307720874160534 59219077662130385879158878326547008527381817499584576789690628547492214751047289457688175984377340 466914152232456681498236640712394203577735391325010465433845564062296403291653285342912454720636929 3681859384465040104989065122400909304794286051099717091249767017517268961407037200499412487951863696 29036962115569949728720020470203069785046048751139247902724483304293594419995003597280660855130557651 229027724780497318318437721456425868689641483483787700224147176335378792914957008490540311990396145042 1806662147152017525918925519742049333519243183381893444685177493857130097245051464547945513594491174162 14253350520105253893883848003045098941220506672029942814067989158824638418359234222441168896817665084564 112462379534193180997690619119719028167315588071567020220515617981336661264662620034857816760864469040781 887456396739569364075964013502909304043785523074016755833599296120758296324218581716215633190733901323744 7003827219400991140326621041643211018156751972932565173743293433185179792460040823924829045570910784674807 55280463731448194869911868346197369083990826963154859361359221816162968856042638117932879845596655672663328 436370130068108963079190010387443079211658927361132796612822138196750078161086961592585169192235648706657497 3444963971767737647698325402249621296205346938187171996502203758468513293147326702046736083144985667613843656 27199439281505466571503432841215662215006761650808784050128066167373095134008472009636943709073106825209854133 214773205306396621626062231006376287703836902061010796661596509414344296349682001365218860035963772706483828664 1696072555959034777545221279986594042281183326254814602737825955593087998862427715891353722550007951766944650485 13395294066676906518944505094279519307292049912950606792367811308047644194814877686469114466422549417812878382118 105804199618398141319627409140710497487927541052668170540325343788654773481225340700245092012428436843080056310690 835787240054796453346858308423278346060856871096619158772905073097944635949716793111929278251187591431259788356682 6602829835578327773426211871131409936066828702771566659771639130896336379625848636007731494336430492151006806374355 52168144271948144774600646534737600112011787802393488149517050448835475987271226187968568520552902668537377221531424 412212328489898154171890479526777665984053687743721499881424567266133223100295408778770331201201199214526612036267250 3257438866318077725513606762252960892447504613798651824255535033489995448151729814723397612912690501435953662178522828 25743684080993447626975138652147271516790530990175049742975870126871566522802428175687573296131071173341638955188166136 203471542047222668033157018592639413850684021514570128326084513294691256445659587116004927462845416938050866676682091406 1608328114550802929174538149281906243956500412334522482373642358947081253902145807788631437790228623808655412885416403899 12714025649349005557718931925043937249490172613162548851134996841709551724736267736838699619541844083593293935513192196940 100514433860121376261128631810889805163757558335296090222204381338670454189126033548647632826241227281851459975416303110971 794712737482054544276430336269645610270408928316372977586578348847209805692900683170408963593070872644823419502024714174482 6283878806334544067673043088981256409642760053115530159116785161157030014564500198422524701228842652277490288306737658340132 49691351598944950559079587342074347449703868408669672736995404925397556761065335580400876081603664542984406286360704837488016 392978427867755549973198197976585882456496032588423016843575787709839445713816811661337079379958225896920210845733358230244144 3108071662263502768062086505610823436935268411052174672661332688495565177803464313676748507839323370119934362260288887771413508 24583701696856092000123855940606902453555435250187387625957925239151493758135387350191891153949781118642430736638824638412318862 194463013366355794974691978083002497333452715982564740111872924512701814240290051148712951306832298829356854926021685916106770904 1538366355816688282351104922878300378592513824450554584241523732039711068836079311080090020191862751460263382272711356635306062870 12170687770093005154799150461273555044143708168531572236366381609417240167701563238351965651560019941450579973490490996316502725312 96294752403666283535176935593154032437888966473649174720922273113081318762617876220500925298671110424884914757345877290779025918249 761941884010703406827886580757325805844013015679773236503830374507689882491301482816830509939746751108123763489639414934092386449666 6029376225253668539655306235404947944486067822085418847752000609490881813353149961651099258173367785500618959759048127861395239136300 47714878501382410536547357609008327680077340991295145227939426458609912947946950421077766398292392584275826626823368019724276517541134 377629367625335308560684994880202482060820680817057570576733996156378008604663734351837664016922172109723687473566474652094274842209284 2988875384137338055326027600501506089928381958310747256017746522021898376208102471562405507003847634949965399847914389482917977748657642 23658084455573797361765135498804501068347386324444859733273860595276220193597422750622225295084741015515216144904846907987706436045025262 187275382146832968344900892791877862234760218749223930834806150398946745219015362783514994872097501761212625192712551722071402762271519624 1482554883874859347551126638797654996462384577383009047316617723622855928085367854049501632901507000262147883203445978712376285177870687019 11737334391250643667024416436946822220282617033591585966336671000484644409054797534047665062267623226806541136176797534889850819748870650536 92930105088685993295952510839553858457970252335451256538196413914914184438217152470311608172362724516380451784153880152138334016663821396639 735819480510564311067428646660832021592975035178935644175556330521290275616715793984776630045268692013793241523348185010035904920198148709732 5826579723135301758993310152852364919296466067554671129647672225654316050159656784966420704772079417765159093980019778794326517226132217388407 46140609369273861385358744875425626722921322327525297365206019722556677560447857411529656831761505569541615210930739102929860784550111473620156 365409511870945610823740559986353230004983846869772447547007484085178960756602804229761473753413252611631874272930813775061052705712995674849809 2894029372712082448712600123925661910123192431784031401043103063981314324251762484517747264970108616345451088923786441086015465856846158164465556 22921987205343032023452563663607456235983098941015348856249507221129434454111601804198233130860957961111110371347832681065647684465038382211155770 181563074297011346321668063949186207044268596925100910397348153899744121279425637040874248376081445511798455651005046769690991095799837594405444038 1438230228484014616150535583360981559008146411790614494591185694916370931098889364003831343956413028286841793234200721977354933203275507594366306895 11393433374361500825786235961370700431697737346114605475678047481718831044806048596735077647085994624300857712169706063206491571540022049552027800882 90262185371969239513936898185649192041598069331211625948170198347045469191323368612023784010402550994116832922491776636990281867230323168717086468133 715124738014001674483339222717154117506358332876382441873888116066896952679065698733317565350274111867457033832210660564724005457838060077085770244454 5666073481108668730523064791948654277281567931896812940029596764914500134614901178849096184679447462247643324189798157826118693400577231987770026079577 44895908506544303505213757192785943869819026770521488906583036294797174389175304627642916814197566535220628179912717894616635436542655777505303650263682 355758438350734643967306958449786339379141908378010368486811315216034500424494847444187310277226765442614227918090614870258573652870724329084096160011955 2819208960959338959045926006681039518771022245744257220269185058398334011631349433283927663199354727001644490505646584033799538513558439749631638903463992 22342031908724671361808344138465778906936417779761274293365961131113899795228064099879731175466632216513252068387781254445958136585526607009851548754911392 177068434837330161446838399944010896431958574365625831446665472557215372919767972776017026444628111289036307537905434657112913733592325753253866497742187368 1403403160932939532464990131993521918881906154260424243257644183207752651062005211028843566629664080706411153462525825425008622459282352257184244325211199311 11123624473732206649195151207120242267411961548609485279109925320082293733043748655917187220579070411414712780345964078535362795700092892839759102403884857754 88172367847198644402545294874203490346431789634060663337027020729110279925519182464578150455147085695327148918791307577466473624940770925230762780485043728350 698941389141845594944965010053772497517378898755500619995734198786134526230256748238232913566670739622603209724131614078410200678978338516235358782259070302682 5540779173093411579330590477254092200463564202703434717598345247247469937614737326023962502681697274148401015423412542588638296789985084858000426500895523596834 43926086707909200355466277003342708616647462493097392446433506372388590525286205756357014662512635249187143359011655965124693346426755459077526339324327541419828 348253542430766659696657840595963710249317385780409656836385332940058713386706080092999658076281646378751677486392599242504510191068289449875778945399064851054982 2761148064562170142125623639974399784973271137795166744133841589646359097780175285404680570139395866825969807376496618871750913807406063898871722372894660878893314 21892973300705615978880210791329254939958122084120962979547876486958855767138324866827723189203615949390518352157240996567890526351326746525797574134151568131113285 173596303772403306610094820890541800180622080969210158928593085880033909372180344202792669467278902238413398136566479531166097901878094380990898810513298918736857040 1376564786583429448628104268660483994710010481672437633611932344615119956092393272644379666779863265247971492094809734843525392078351585506410802083494993670385728453 10916240044045104043295143668855401052061663430660909311369451742100296082988254590247663288866926700043839994135378131539171383215500591316158523178752363609460744872 86570420084371581001507132684742659968255227388731731903547018315682217115747575491326872911010652170908653338584295750458445462353569010674700312979105983515676822753 686571529117286680929331379637024793623706727199350803566371562338942921135073458458067225982231669117090349404078533029042735914244138373109195101863461676633587336888 5445298179454206787116076578276633508219112289187141462142750401194471153146462442582283959690844653614979493069892931326733214893402771021855321967872888112723334104215 43189378126140583206750481927124168431077343568958968156645903884874752188001196433693052918055211544672977177752389987599402322642703674871107397622116880417055252278084 342571669141550488982398742979503555967686542364354441012606131977708901306688926120990704700196940372310813513668255759686949848688660384490048593532362132383553341001228 2717346048341102446523863866620030847408827956646677698091504139687778370631144136858092473872817381465803183516009165858409506754848925731936776537837944389561651795494454 21555458805780943047421915635536511607902113681159301624681188347462599833378396355269392081355479920089733874925459920437946456095148343517299806363382284562299368772226607 170996893755784312475558798026384829292606433294425527237113216847133488956171509954145607469618427698398144985896378101733555662762961294576997817868340299734458928369630446 1356555638423733986230694953091801663704996813719537931178533850212547802920969631260438606105392215503758777712278389494229457641308075325861591272856903253213441651335639576 10762303987530111795509578130989929899554156493007899272722724154980383625060921616914202895333226219289375317110108954886800164682736940522382101567930965389854689821517734096 85386845787681515945900328153620667916531319653611986574821208162595422950455490343778238659125989395667905969945915081386043480408677096751228987428367889905137411818529863442 677477037306165220855828871116214754552798103740498595987787105051399524905569000826560220622255153384899155085382951096461411780975841976925005234006426744598880933415696786550 5375463336677228485117551039094752951048833734054265325752138309464632054941495262702255689366212906589497712971925894897891143976019244949739400728215027441037751991420374787397 42653509462994632334822722890717805207009807243095557837111792739659157170361870561070292007955345687819527193691236300911581929887154250725429362773519688759713827914021474330276 338462848949587124489615739184348249760326227399664076308217532913697782006542378724975981412157980337895555467414205923147311505621549280934399710792562479839691291384136103894435 2685866620819490401340069060323485018295781921541584726449732513385067627015435130931186035895184547082550856575892522392155552690473168890691630368555031101774988780906838430060606 21314488352741066223269622651567836582861279721113983457014769980624043468868191977360071766888574872398708247613846944215104952185030864234902092735679730713381591753661921609648202 169153992018783709005190116100173514977681499520891972822325698147048802184231931926439363494442544861149327126698723319064109950690270106645102135696163344030608627965261111201192580 1342475283621252578329311870204473119516679253377379077041214044868307411652547409016216662036599277632803343806009447090283911883059129802432799563234721091399101910277961915409060941 10654839046717513843179619474333759772210911242235436947806037477905189094193345518945221594678994585413014393998849350088067491775880752074101535850201653854656778653156293643490022284 84567575360075132394329195596370464559824993809599442868430254553480545513894788002615587369148550340451839202197937022481138668271835995480076585946632796624965726535263374158513725208 671238873713594281323471389714476600607017640595444756266674384014511730356653897501542178623991203630941891909035112895888128950199935325208042836233001747689885804685470417290286621702 5328026833548336096812712887515269032507978849512136349923780430076436747082622320233038654167908161523057994037978540196169066733260414486256891467053947806862351874826619726077073235043 42293306381956183785264870157297097389193154227320127668791864478111766250669900551141750024687684627705743614091069066273151858330522017766699510880952123987087278165676355517666808951158 335731937389958681616932983964321896046282446873524532254351577305726577517327511096351934424320420347373280344237316774018904237395014632928441360788718517984083397750070991700506279674312 2665196972026451306066724711144946763947530825818702741797120343707122574548124382163300894069664524559121949027986158049559042720526080313499851723027749500527759096398161157381572231771208 21158333469467708797932704027105761991523942715628394272704119388884738673603459974740274754294427148575466497954107416358238872169235570214443959352858363702297683240013062592337949945954289 167976664539327151188982603312477892230511396878694469467560774508559122488815842399903536271542596934849944465684166747812815342800645830388738043040856515193893564802387428044192566059757194 1333618642438947100271033482707310527663976574871565508614762047776418921387983234511894339206748112414756425173179559968125206825411775397528884907775242262343850866777758536353867845259077238 10588377883830303426555076221947362090106406906624854060665131965104046746710346679568660479487669186389956210852434854497369759126254413372377822563749195477838340348233332288428365146925167616 84070211484398260997177508946912050597656330150378244489720732136592620027138064732949453131425325524144869037006250156832980039721488023278850145773429713265850824342628503073605989153039087768 667528243800520729969580713847434724132775258194499214371507557341973321557757139412850883620604176180094856640411408521939148457809039356767974541999981739600232854299801993497075127554423271342 5300438709240936779812335196071432422093684926796014460926218204717678668739987332076044334662932548853022648529058137242065269244496707089166612623749736410041032532266922128739742259066901766445 42088991717466969526147467025505869014659051979201730693819130127797650362521322005839224465356694774306406071872723790428333446553468349903718030230025532566677753149031540024500536444832032225632 334225538071790472044414097237480908777149202640645904628562001481184469547175484987619341050622782771502076658719923150781066699551968780316065506191021434068858536805243601804776284278021309752523 2654147269809829391956851170517497241287802040593782138292200011558494949100365030104642148859829903490044094074148921703507389834763994718254809949837403175710351750921546294145563953092099666539506 21077764731306921235550294958326235186920873357589397301503330319804190385142306215817353961529692004102969772659206242475092214531049998010812022015775945086330627667007100262650333586550775682378911 167393316626636273958453135025995775760882913020437335283549643312766202298252599235137521944024307613643629735938569331100063915343596506236551013560070836915964996593370336078554431761726843062703706 1329430318367446660692165434825557174386119150986342382597427662304826944117981678187815282401156102701492924085324787800700288631549238503493462923147193683094595618171609108084826981269392535105870552 10558611856194420576563638240041494737673095668522987043097324323667311164721804408932497691936440737250748228005184412337584651270616341972280758349047338313113018430415166232969610615684735075728147812 83861327602068603311623128205832432743942764313404322724523041800800357447106238664197705401254629287798976646857480321526371946334613502061928627143927476476820547504848375358252925540434925880629300997 666085815904052219352849433751492863584212590310898798588685165197804303830211059017454667676972334161016710092456964980359306811391749907337413393270757762431001803927181670786278106166678786227372491688 5290686950054168782579126351936173593734184861733712728583402918684690066874996478593151031591226172649604499792378676310417509123613729790819875059507585773210351056216913504870265779650207961131363076510 42024954975930655483841309038998736430320907543546977050531946834135555168203760777777547316584705392612896897985597307694744072932522543155169220339212477687114399158450851645426411283620122423595926577798 333822532229889862470368709520867561269016851987200700860491477293185578557370590465276815771751440163289406962173756833757892142073120988801260665624776344030085268843363910209405269719001326601621568727915 2651777760356763741625284457104348075102432753206345302828049533951902027775184878137808223858964076914986435219732283698565017771449398626224499208576532763846332832678283107433273947884204944215603669384046 21065490529354754252659573121837350977902987202542646161306043484778917459987371391869746711097454555768061072989321287406334171529381049076935702655111518958645127657777351654108380158440570647181947940897108 167347371534232093194749104111808402494553728593766327433953058329387679420485433475296272319194564196038958934419946259874270567287328704814809917514086670192979801586211966959070955998942300811338043640070674 1329471319406682991229349058735622881650110145145426131433048639328124300620195366977109829511210964461132317389239360908345265011457887155299533692361741160300924212436044685711376340501075377474368470409515312 10562134702549207077889876360838774526873299885664562353308981077167286106689165989517850007031227065346716156481945104415598831150188859402692862022497210630983840338064901593285197685443583302348384177355882996 83914493499627200107487350721547636113024740257393406963220371006653505611184678306165103406259032671521211261439312247019060294362210340805325652777804512228145302189316726459544168079896032455763943905249130324 666706509990955450083481037745963283511504884226467848546827766016709298455408673020510095899164556125349030365434930223247060463351104529219185995861958688359297473229372580787959657048409054856471795496160791230 5297180283037189495176567749783237710258438456274723767826995649119197288047267272752493539473662127395709783152259974229419133659578707824999845501806586447871515673618539589934962499813681701145628258454083155649 42088849109094410969978163707361076983240802883171093160625798244918303700038399517349293188002904689614823578265323600491562853862686861107700111158083337073075996784396304718529749790684216620326636485208837714456 334427117260233709359100860632959389064197137932875908068039787288047500277970380636115304841070600334945662135565498017343845353648002508556089794766982996815884954453346143271975134291459803923654056841205824860879 2657345106764464559309492509283966104904266202994801095887309869674793702206087000727865129616040235141649235729666885375183733470763123166228865732424337427380958974303775262752105666111954781474339550201184246459936 21115743374819670797514220400969650001000110077708665047804893826552881240469161348514215203173830014741503232710856375566214330807689411637224876671317579812188488841440681439095469590075186820764790471427207202459907 167794080714064419799551730113676674257820620074325279767658026048910546807392472298746964012207726610943453042775361771290008109575313677862663360171094904516469085372963997064328244003515313796781007292812525498414688 1333394460789476563515192775324809346550952158329976882270301767110205792727858378155486148759119224816713013801479781235317696590498450474380708723653225505828046389979869990699303172421837084786470951993671137880570304 10596252840519654529084175249290510842335517119388248979937580288595509018953528907769024484397631354602418156296703657488145746182428783593969828649191760785691974699115160922172662442080652304679207568933795359457950340 84208812074883370984606342366844961097843139439670830107852466590404253938992698123597404905890675388838038951236533927011887057326924890606377905936018980778147709120774204083141157574837462644511069271995083837734139946 669228209884738353194320121334191997154060369799908933613065256685190317227541317821174976105173002719520579068638831701387922947453420424440117170794360273343850589229463438283682884412860522535407975025745400486372285044 5318661088440897376910961247441901448349026480596743833213988512141525442681556927435919646416046259413978985036796268888890235382131709038036556169032882196498204752140891934904903930112446602929677488255833325519606217432 42270918533775724440718601483243881404482162071884343736099739043823398199733454126164429909688821379643819335861011869666224145825516417082521914577324178837087681574027099639164225440058498425772191533007902719043491129006 335963621000381776286948359955827920539443434404671483343403753441386095471972887238188626063571386214858572167039011954543883811215652507570795652039019545582231921969432017341567053904411249771680739142238891924210425501427 2670262365733306308242907423046462500295837141003081347544930458896208951003036149834240608185127791637531821607216359278986805007035601646689959895643832724838288198390216143432959093447195769158129357566810281399018724840968 21223970963578017084595768989993029411048041903233406798925476272163469503394913694360097881443652630897598307988627607747083913701528273269885042444389960621342113817700335204069646621438258076723074376373688138630085873305702 168698138902453752687613281933299922514430417002833536279928451888072188967086946901194113144884120093395379169806826094371329579569965827035111693219187129455574309441805834201027435204251122191405731736762860937493580635775580 1340925951862715444877698988700521419320712859161946960484960505964344009990035106433567452731080430358750692505766661335665275649404432913059490283628716613629115492020300926407479755150072148539516259340359965595583723442347563 10658843189072210054650867709603279666327417074575364726826134615017689990544879295938347972479285371874122062227584208984920730487165510968634646690644994358082035050379970587756644386513563064897213792085595845606426128432870292 84727821385560452155576585180883306658212586143038511403789647727387993626528920145054293160721141532814640646327275085805723959429983424829262523830279548131425102791441662943448271497747612667506146181920269616801828789838488475 673523283515893208808555013463410760033365341001065605979261644630364396503199587479021930142724335668419387804365943656375115075612161686286945334609128870408725801957947023198846301029961461479533129218485654767489396734366909718 5354139901387034155613590252160746524004030510682353016407437606160785274240744371534409172039425323690878391303893449831903273054456886347017875179447704715439230709846157473475714719980614213914915364979082303856914357245541227173 42563493162635337975888604590308823906772184267704895746943973082795122219144585413820175557371696497027862213642596982270283660138244013904292932408861499712422124632763995298987569639575044529627434728816769688513974217500830020000 338372592743916800638901105223504534557534666456963113542548948721934238948539609663933180922613813906935236404498733761037288680367699484152823889065063447725757694832543827981192528748726976845606048830064752154215903432092961857250 2690068784604667617767958729365172171535985968642049321422229880408470227619179725306532289438812119155350099421160534726961708589902566813635699576876135740440428027320853416583370714657849561201065029374968664933027050461652501236776 21386602787411017335903892856598007793466350833817633502174220473693153850579818047509339792843102307229610750574507332855354156682913508395976577220667271799344977361829542835353379499950256718873203400523044398873137860261528546657388 170031880459984337737807818826619636067701649143614746180601174335973757265745262820322215901992600805907496726866738570396866135034277218448485867624282063108894990831315168374415390830521072705101926408596220815294709172637379846524270 1351851455751554242577027946404901980650775197675343383315825044688745899038596555807717552556941995385221267086659567540047518145201677199868174130313649768601848161074448068262357106794460082097571098232207446504303139747333002026282063 10748245414124298903627640598785178121360718453901116734420750637884022720047603055284892155931203486469891446501369281203310696720340620338197478547708578208089669646411681983888742924856413405844150015937535645838706441843062681308460228 85458661660146630315833120432346720533532502766994018509611570269085523564602025902839911769972825162710924794873592047469331566876877114868030600529352915363508569200323162905820927334522051320272736820069875086366254936290538297260564464 679492142923316703168834412613517665908330426540296385450970104453949223386395571495891945357301580764540617797207644693978461747321823225480681821432929074109942881079271417791084191871295426813397169161514638060957440146306981458996226092 5402845618249945244409365900378678177692424143318690746540286966395971191040943742346582529152946917165705560966672778526310459668568113818310822855076041471348047655113569714056790794408393121057834948975930811772969518538575868449589469425 42960603367133487379003220277790635506112539192155985218123055464751228641301139698316724534435733301643632826564784393765932921718667108399709977979488908296634499467269217888934023628891780233085324260171313379409956538977840542267027735876 341607825603887437259882039030023932780815170546539762283631085342057130701843276766219548063462517518828266914043452211194773237653384430554219660683889912139636643140175281001161860916572860765078309710329876920074947949720641346020346086256 2716406772066342335655515004045544415575118752541386476460554703842770221466787102302273666132318769236108009838780671766707191227826980572151855604370697520247081454764945601965982062825460855926885304377335656125273529832893944240651913525612 21600872007401499358156724533665148011465732317181344235098146337364473978039523077590192993458802138410450984685518179634090761829714388593428404891715321922872773239378487354295369007997341037519966559131708852915112476877753632075739055852042 171773901478261817597450954588873366326286289718346212584671470846301609862707823320940578152806994276252432876220754791156485860069402175885906985239754018893239984338772879713943122327430535766990709618128173047038588414722941910269982992158250 1366005429771500524729864311230556507202254325404772702373369761394274635323683973890040336416815697064794207371186048164840261259022981565518205696362771904586684130130645922071872326840759729874064654688334817926198346074368896041900306602538381 10863179457261284853595246974892456688784208641162316286998680833249801305811212985624304949273683070389965528768884991960393617747084021093893658096875451888473230501306631211581728780730671770024494097140096290351716650407725263407629195792189980 86391437178413262124150207078746415762016570536043688792071568291544423277723204715607552168084403790291650189178765487956590852415823848116503738344765668724118965270065669787074841326444836951118224591187651978252227366849180277711991625284009405 687058306407640597188238603354497616066013370125464743266119749413187186548033526095823513687457017488414866372958697722545665639704980565089802872052943322110888059971497669111320787508304474124910398574441413007923928979590069941635203569426763032 5464187283847451325244935227696763464119156577261797545780982813034500791370144007232765267543858142794115008578224577614006570709780006306143647904128315352123685936935627426185263131678227956960182668592688265759841241373532297672526726557129916907 43457684233815968191131198910112113508841195937571919794505521474556425283642425455613441889408545020011392685347354478099098280263812141025466919212922297850955109089015456926530032166972485306211381546568781869530147661319294663820026908589184318308 345634067455350129309198418437892353759564865342186430250966179989012610098897551212561555703807892456808409430672137227675032994375607906117708815731799351668375054600429046817577077412067635317724388043998879808007753538249216038621822984848008133507 2749004179450696280046021583797085422978885386428786865193745318676898173755088726363334143081084873019195844405545071468190438152788973408618681623278455312590077090817762816522306194019647566198823502824975527739816207777132770304853670298809454845058 21864678289802182904868504233360715702192361616711675410089814618008500197541632141533065659449933637540538640476495434690952520650836063114804134768766008724472422267847916775380056052020928803600158173673696306987197659490549995329781256514218033775668 173907997883668704962144047042256123425558739709212180965634668350266679612807631494882010172935058015183553964987621181350788654423007800392296808462851726210864387994713497854637030573617256956963893115989016091880407843666546801517535481971801937894192 1383262903836963030573627841366729405831097539870880178774892178276446685271401180645867116249411257900369503850148270911486981256367583824956373100565358024082660705097971304784610609291244356881626505231654812984674229558190612743885032461960953401788946 11002681876505186374176103686829321500255030798311400453604288079735437373504659331187538002362038876968658842993629138634862070857239296764423690959954697035367541654828922069572934941889446602421228765409826497847945060592348593040923986879884077020740616 87518723326959533169428844241429735212457911886356552006055000842278438985624989704871106041794930407628025610463756507722405142691444215293602825475216054497062722550961739888596649754956764296074815425987990570051855765895411289604964770753135186430528880 696164581153957331122960108621767646752745878046594763375076386158628742065628199479564789013730732025833032662279768269804477204105845780870953988063473837379521995238276558503435836933716504871286938692098974070817127873425095484145864935467239709872267440 5537724527516431620288433057674902759204570633220052651773071398621037724201911858158235047727525606801939577940115447515500301355967422778968465330200784969183366947587250663264241922961089758692449392478379915450505736318933181594013384237442611880907826484 44051346589148967504351851762854666764675468757286215162834265793406499411367156666367520479282552640503400015752793089734868504022585535509088729388063681153324862151770240810251514157903810626262822487389101887226269904149234988972518383950533624993974196188 350425247385645556757008304480390530307482853233053182058614965941747091366083960875062385132709575472994753560666678494824296944253645567073580198843226731237445056926672680003583245298288258343643679946699862870456942917047583066979470908042008065904831249222 2787660562642205264557779706092630297758496661833821994273759897087238271836224130144316479635045448845592218344168259527234950976926775390136325775952323723353781099819110025799293157667535534970952080008809231913398488154667220013469700014450105903692189406340 22176481382676678225830728550894427448315167907169874960246440581095598352604172556752871376599787488484351568392594814055799252959650906992453834923271499389250169058196155286839728846171588272928175879665114040770931604620987590076375991652462700343614317454042 176422340968367919509442710020370590232819534119312636560021738212521373430604926241016516160758196591843726696362681822168336506030932056123355722528027346529671790741766728624883609057090066680593140928969154468826911895643454325064868077768956612687515369479372 1403533092858372170201518583507516589709147916984539948024575271748984471416290787423280127061376398606425343419145279514090148602915717236440418676461673286048508416722726798593646054342475738226566349771696903219064765096737893835374446571076078697861191878960930 11166056355219221623537576809500495497703609343263452740507008568882770419437180952280711370266090395719082113936328362492452254206283395600755415299252830145935509519945545091051611459151131863387713030186716429284373781505345897602966235979904605015048284184758464 88835183120582785486981685212766438562567428481520596781568951714259425788687353143263804570984972482310844942574782936219898869764735826433665937709791596716495819402441618279493439980123494741727290281368787351921518814844138640823506089518302467167375444645890526 706770091705622400111898314088608000947559223451549744842251130463608400915020938638502140298530862323194055430695588509901506551854931998823828920631646996847537649459520518129776700354038663425804474212204766947654351170368274583210765080063506787402610428430383064 5623144535887765923502571301223241920777801034393961846646835414447677463703532012508252810956276789119287871351649643097252793433302091370333294918010271891469851633744113509079278746322675567457273906625101427065124874136430618860512479565358320717883269660307264140 44739198545375974878904482047881944985928523406951657866750588017477562291672089833343450382520570626931837644218580765208655916149640694288543393572910032135735863933480149981028359965694556321016596546439243299996894438774526571877966972293130810812100561669825150676 355963092656798785446597743231043838806658235108739156393607465154834723492598233901439418102735618157446556676582061168950948176083644263871067072437513663770239050640659967307293026723020642888951801041697948282550077548306947681859232137618127684079086303449745823506 2832236462862285093384416453038986786600662665104975787314446574849023860230237882857913890766293284606754189459538193220713519655021042564689576880120638578538451014167093312335141812096717685772266119198218410475664353043993176750252874982800605532899713299983658619430 22535218032748476521725166518475062283955759901954519216855304144500448096782528631321744745202750038989111851751201821493698304058395396834574009190518825945480085421768452406702213562169724767695699346047758193422537614283741781842310376047203780658226691030522288576745 179308833394243751240056268984489436803483175088681568470746311042087950208372879588570904006591411507601786316789978343722555057573623944714980378920631795625009355906640126414046363094242978647090643288663382954066276072937802549040122800962974993099174999131494247712498 1426754404759814895282757181918369685468867829609769858054381368309014926501717688761734457479698414711126913882524467408732613941810019082689657318900731481165980582541955318043801269307860964249364137814065184624504112290645585931936200622916295157745451028923154175379528 11352835004710999901502914164010075957616319195178437477047987790209722287770661075408970235513253336401752603349752597469925993013956769107393160482111653161330987891102354306951491932061549362158908738118457844920200368727786954802538672991150885763021868665119849059077072 90337267211007244007127480562662299738574421157373162972802728894078281388473650423589546815299371154073618474398536528528707018717674584687326231715854867939454701229908434973009807150877571075806925173115984816163285291705169074044661824764190681308544452885873270501578989 718847954268398626013763828202221066554203694801061066033918670658197753544773509455890275659686118990814438284175083941540432412093738880880928822676131052711369926127300327127846189933781249764952080800385351483246399119630905492253081180908295681479103023744721992861058804 5720244022131186600775629324274781331073719741237076192606912417323955109118615808405105739476208594602632099452136831316144183003075975227425874540247322799975937908978227813106968366832128684555860851697628542849292457291451389472617294115869093360820142730995257215671371407 45519705705767907173715600820311625123077260015030071377449577592108490995297402352759302186753215835532389865613876037204256081731645347514067431226393237447745659345324750048051544794721815048015003190798512134294063965323571343415523542243347873196155970736028957955223041970 362236044821042046425933701771263196650238607403064327461615101262136654445217793227568191172722544693306063657641359208889551445547628256728025393327296771755061345166423694474130339814683037029420294793189504953268468753048071651810178633573656955495713724822793917905845425254 2882645002601428545743053796454195628602231112473299096185141759146081755788442430846045934122099504118943171331988801587671061498888043475741204856669922690046371901821368329200193952519219388889950095462992407459690943215723355065940572359220272719439846574070776167452277765576 22940236821100063380983925623280339193767110211876894725737034886464995809066040329503081907952950319669490935990191157246832821352903566252075483060421346591727200786542417803697183196645974497021373114814260896699493548264024694796783099032420431647573590093781861480866778763086 182562603900498293330758583230841963085536885219868594402474560515819299636151943907174980973326645192603029027895402652901935150949363572454042992191974385365976857002579164540628052633743942267128187566249367496201388417993862250301913563901917520648065636915398706777283981554682 1452890522267961388326740446793681585920661777438530796942596389691185229390670415270527199397064597110976849988368984410919409192926278529835988948614410071915912002212133235484218392669488667939943030641153780935320894754010342166041584482863532256195037943439214891150477283652421 11562747980292386918450340855473074678123824555221891094284885251652384167267859719797536111778441290596757354700157400437993715753217615006507777211144782912383882419272326121020043380183705354146222427433458351572451232109428149917923291999259445512959491712268959826006364015830104 92022978267659249192189271965010731025823021611580373756816867741316929375983559389001686275031636847687760227824120611801975868692573636640950286623509330777163757478176149229274838772729898389937548182718215243964865050078216475071626522356556207848675881435127094794568824441662392 732383449507173678670182291746118002650185715332198060689910881137410638380696113834328604308504648582463207137973071088570541904784181905967049776127870727375751815269604086541844560419426122630907138835478597444421369325761404108764250277670824858849893665866981481645581837357994004 5828915055896436589105675257985121576078441636155582398846855214930866718911348577995951098062932294691485131840516383032536153935177081828219817817196203206150182530794944382638380633491030968531977931644394777360653836917902034642851184833834949898828923433580376809954552270101584248 46392081273099001599858431664769335515070445590017403344156808224122900215036394837791866287216535991810042660612124629995990676705421805632367434450747567583075394294320662163276992866671798698974844182626169453308510061536934600149990770915746808184767838712110854084050173620198589628 369238407477522579990815344672913464143736810486735877785707735027376990710105768066372893567493524868616483804588065968972685740086098818420549670534429864416772036246443008947646593177460671951162353101626855614408977355850817343149224042817791256486564694695044202431912203104646128284 2938845276114501841596262946453944638115610739852402370781579136699827439513194944723031534718828343065647228239458772020929935907287043830516821743688996183406982608848797204087008877498595810698067323925437443826401248761161864594732770686858280351143555007525078917641064181900989924250 23391246903098991844780557164847006311124928501663910729995281398861657305306599611367098532126711037443377381088497380714777267419254179398792151400587060114077537387390266878077677729505600213112347809004108464235685926460682036450259312487198523027340562649913924536739374148288143122665 186181609751995351249235760436106307583769581231199763299698320074073850536571354097652796687334696871615791127680688536354526778524469696842663995107670760634347678180504321357210517836838760362199386656370441893106811724843669990562430042446269432716881429742615409100420614578963734257432 1481927319646374867153752797195546913136008418056282008252631666962613652939620620936812782172478967393642974160792377251830697464305822418700680489583629107916278151769772474868999602980487765427523037952322767148693382312597992326057962405318764079221201899210032458688549833583334983759638 11795699568482653627901079580834874370586356385563812883947835565698001140632753929425491402388247842372373885398988658947145832390821063833913943933267699707717845709966497933180790673443660413035704732019962287745515515722075803107270976229221421413811375811819875357545840811440249779238692 93891685517429105255814919739057765582302281128738232775249945272048353234092165227089354103447231382530265371750458474136474003624149334407504186604638710948952559804633741764615799963993152665247284267110153281644876649288835254458499319577067822427467402189267363227028948555835178283301420 747372584173971773888153574470273232556249359349618249290267320436929141392455357208222812005537603973558621929039990169359187913536217268292976736906862581185887234007174665966727327760388000471254455577368896239995602467126275326180722930537531948910820984337225596798320072096836131148444232 5949133907775501080230597393780779037294654174670551605508501117606033382650837916437743713635023561374612275322500855554851708275556695405446936666635231678809843305908268609008098445382872820959380046720792005212698250133709491437676548643181959953215890820831109199923530660340199138431632142 47356199531422900962577901056250034438158110043797652965877618893244075794848152291452305732316871489924687884823464825099646450975999323110002018290015152706955150387292099425387372184748002377640699635935674976315395799931627453307017056700778455645205521758134875620978386452975503011550715670 376969675274120517962027164028898882498812821628745664143541759806683075872468952455615336311732147413179461148389416530547956051499153530220687973485967104033517221834134929393422834545394034832963259832708060997779523879595386418117994279528289916932608097673597264492542742652455973308846850837 3000837145500879357325284119258887915124324025008182764223831236556613179657660685843731984689686449827050501221674632202083634145566916357147971293004276845775790808480521339673798828157110516834630612552460143259233945079614695428925117505654933617261159378466237470091156532582497410502308218444 23888277649975491941075433556113236649739632015299222672544415043616918231956956483780439280021585206862063320862152585410887924473673837115705361163600610062406632227334580556233607373737017405368741282037150109547146938332521099894969412514907506289099983832348671192607164471678834501770821612706 190166323748965131146018825028976214045850245348205110345913879675463262212509262763654921729100793912713218107938295247884224415798991567899544948868602210075723303692536713724813842098889565198808379776622091156314102958695474497060277754833645731857553531865761411980133312555687189264851578984190 1513870435418040777605694775689515084987446227808539131891097783767012010327598639229453742477763161236857536129037714318996312564189538238892383556840655523817443204744880113515669128281108599622716600918139192483548488545885159120510671104501416056536556671163896804302068428308507796683695374628145 12051749363587284664345378512534154504622086619909215367280541599132823253824462128889585255635467713609196681991436135953043384812688771630731413177865824371109382231363147748143720045288547394639657462468155975052087937946688631545074308177619026621022136429485274299644519538533850876633539517134414 95943978773543837396567308383443170891363778625636692268374806833357171192670915046421814404546828568890928423136186247013068630633339047162226837847711471823150013678898355842764211845626381542289667428489440311485518107307992160625071382207316615722725841755325315907951754869733683688393373416836504 763820959168290465178870120688620546450943148283507231994816312728771228026665123556857823714165594851922075536316633864262238697006228455488712166672113235639727540572473533648374864280592153006217715625105012994850225048718447192587691456294839551347464471845640550635341080590780160021269777835684430 6080952271898013392679057759766284605079232496196442661146661681268384308725219423748549190988236329839168041559092282324966570183677717180706951356008165775861086434276018976622447854013502571305941686166541154951498474071464154020268909365605172972853760175426891909283851055187232965074804991243966470 48412527785742726507003192750315940699684480416318306444250237832561272794545446142880203641048074399873611865583638576708261553763762147195912836392122954829008771375626052897599916145955902674058363342124694209547806586147814830690541655775747779565293878764706082225823640220740374055777638400121389774 385434006184959995649014068862864021605680173710556629131571436027142957941136378484091220083580171358626587833032653096547589498759291928194019013286600058788910510566872153252256784340814812297766769955137381345787756465857386871163529003200730973129589807733213412378791778110882355292333836273356913481 3068657149047103201511550098263021122414766680546459996080586864560550151325136920600778280615186096487520047373126294618937607244749375348947149944494418654330946613679704344331950702205651212011492291431044856417848218905370000083101800363605546192195397194717137182823566471864733202957003656769271524272 24431646925881091137901909022278085012774620390175120527313522319291573175037198550493306756403542241453211679335393273866113583272390043257720750628135990453053330857415165364899574642097570150052444798928953096550168527380107836162037576136679071567976398093821409339389249889871822637629812598081309680024 194519488288477534813395585901837342053925067366027974136141817422156148548017395801736125144663144613303679516233280569387016077552164482844280293522351490163939011542131313155760522132224504277911483976943627915922658571007482100326763511285421535955513683718484326562668540006630472761950722118578905076194 1548743365776960928025566851661666365148475289852033464695807252719138827785706283101856532616611364985767804585152818996342941253314023420418272293632768982896676864088283578255815057111064922456075756486380030254029967201616690251305110486429122757235617560575410986733389522999202769630473964700047013963654 12331097488091410346976586592670462336768055363644884941909685352860028187531571455940211046190054762556739765904722526075262387762125068063457319300939831314439186561114994883088646376874581455763936543368063327559534236147083332479760931024341712009669599797031841805116390981218503885994258547033465037816644 98181553873044003954878460675459857576791315946626666241561049141588124153396406240771086814864296824792572876491868467969769951020508503528296385945714887963868056024510128785565787589078632695985555232461839051142091839153681099953429902674561294051078189214404616963139279872478773981328419490469043567927629 781742881575459197568785022474052681493355867738094577542018180212442596399659577440090738547859861498192596677115864735529587332759727733853874157322353559046234581299758848226622212967631010828314130925341050953059057952729403419663798553986968569655523447262411706987715524048717942807812391162855148393523760 6224490383912001062681372082553584935540455959801349330171103853724787652507018774863530642188567501826332671946329552656377843779486893647176659163611566764295790265050356079186014768974668917163048493866225453722485112935044071456000433532985559062164605088053103983087330596626425342619136792640781478436479363 49562073027828528850960717775759061520369484969474192260704595913719508887379558343253619429279993474125453366492313216791333568075474902188226281004936730910686872513431248042925233024943018412359602753720512195384722122786171845197925907872996719062727397141077270749481619895942607080165400841069355128434692670 394639808214169072475724884093678038134864966649037871378399619381573028711606557628264116656403140316497871917652328276564838198635544445224385011489835561826938776179849718132035121328456041430142922771425761137245151382308570794793822132045643792159501231819428737334839604664948319787981845998630557933809701971 3142375298785316998938300386084740153033692706786734247489525862896146231123267402366857140752784107534189782389212399898157878542685894099015150234296452183358492967183103395431915488556990147342034292830605581950768134411299630200218731073564342747136005124925491697108037404392972792542402821604162144533887214970 25021936275833207269834999256092279143042404000229678854561331652775980199140987264301551452327799860778623855165348569556549320167323154812433771510845584724910166808797583561127032099447228798265452703139332125433180904957715999060248214421767769652819032981650502472750620985007988026562441303277149027540929507558 199245923142138347358450916687561824538230944883266853917622074169029585536244902486401438188428596482971338193650722744133547838252570110263794234829624003054940938805086045638103635826852216572474055691202795182597566579318221226673786967724089876825717962464655374232116207565899101435141073181713227818641337434924 1586585975563204064906494158343234940073399166195965777955005016922067941478508211273643086821948791830118603549851436767445170953373390282119655760183108447546139500308271839362529517153723591789201256380339971123771617591121057711500129826111942712119942297876878621080699703001757693263712263438642969689026959431368 12634073059325116703021543975489271329546146982532874106334270657263787693543366356432477401211597186089286695997060822133191863935121262965779638892073975528312445597695534626335318366781354594293666971797282821400587450128186454189389169759367111116269626160886843511907095088611007726008814711635986171783646125397258 100607123354461168423126434571079581464770835250548012951727849019676340087956199718274933221428645308087619104668274532468002657066036392841467458420083115695432502109251921801836250921121021048572517398830032462157153876981145009818358129987344434185464420207174350427289161033013649079718222716205186456114385066778387 801160672971575869765923958628188432981814276941780901897530681860916850022826966010902708676606958833321596297705987123197198422588463493787662704273231218447410856870867669177483112805512490441167337207976849337075517880090400844416255718597409153838284486610325478052977794453128406504162871988609638694067128403569900 6379931665284871561720478471096207570776635296947170722806310075166472419462127996232014558332147627102332051901039335086252367535142440659475877260515448126590830816686923101365034025974399343261772602032685065735234619676125117160176953481569242812340304337510005247236738952659736643870852631930150104107220080645907198 50806340473132460237052172072712916610280750430277868149849910196652373549008798158637020352968217405143012566580533996190234094256101255244215386051201651654601564134433549338194912323096774333919692433914834000118375445806564810100391937211767075397977404144307917833672423536630215658053040309840819631513199599085086828 404599418437997364875724524479398603109060448927523017851582918129614319469499479505499424756346430493290599090855047544520971094344866035619555875786888062155581213115635044895724241242585254739086677383220772876872258410462938821731205418084042766580738208096695941672612214058157346831096499621262135511783602464482399591 3222092596374435995250511184287103760164745706518453733031335752416035338277498942241039308054813206840471373447762710006801667021008554653878202552216632258855787756648722175343584978090326834529825349347435672879403401233270061900236873469482447243567046779501610219308137236790889999171913644987691716125243350819091938026 25659971702265043595103034621139338195222478707042547291547369700642976636703272689401265583449138415261928185293441327276977441458484133762146251620421111591406797838270989946270499667562125002906826073789642766108407536952259675351082062193492407720497653602106254340268124371366271572925629787828382710747702439936716164024 204352376718215970756526836522031715721084538807958184174086031893710731447713135318926612957605156986395398860304135112138364180718323940499603360553722208966555535722248729375688588246227475932193878427419463481203291899362550112196953443258164260254936494297951369012192961133803122578709946854695371439569867599191441113704 1627453347622743261098290863654655819371567871023025261587944740174171088288178583870697631053031448583486282793438273623773545975493602730616888720108017405080388355148044394449405105645069943761401628994198045806067936502403176977121137050825093168888298500664457165832900456150393813461399472701962421028209311336028613314044 12961125289637369945359485793729769508550442859481783645659796755657505050151792159672230155314988095197418768625601337408974225867717935766338226275440714336076582466731121120692639105947761955753824085656823376641745792185345023740682879758326544650003510437981993721701979660263495264110424827475503904551860663038185882668668 103224347633222690188444845255431897467665254042494273104532456538223017684329508501398627433129210816872531649470121738482463539263043786443123921952590068568158356042587734519990595727426914001684177597509273369944737130019917498051826497122316047894047391792800808978571954292231905928598235845610644206528078448495598909241447 822104137288405195895624392460016557752756427591461505161612948966691797098086556898914583320345612462375431799163840918218112068309380992990060159976504097861784444465835235431360096085671994178825923646572665378032944526279607778824622298754937560116790605708383047055403113069889932959328104480923729954512191415891348108557124 6547518609798823424464577799408849071233231752971539661846869488645337698824490135067550216664858540175097419378849303222040329638297726965199881853252164367935285263617734190803365634257891084895088823099941190138875812042402598559139470608569332608602441457866251196542936232824405456666982956189345796130759497327241017396015853 52147301769405133056737759410714516427801360134739087880245393809189507625236764831105920356174469035604668087727781704300503163207731412916659306206748147900991592402481255100991433451732120944338732006192935714089944492231207626903952006523744848572891810966266971398069732543650861296015039061562525363394104923296488158643384180 415328857358904843517834662462770467285743870480747540870329520361377858508250917063442102162434583158708081397760402828740081218252520367618546739730122832905638863248128783279128323694731746165250775121222513518005244332923904467847469829167790289060028693217477697153470191793011896466820600733338096723568327475317383252783792093 3307939135488348961455113090043057460924541439322785984191818303722706137808825797747938531328432497871016073313464388014203718099760840331395488735195314151547078109790989908976019327597426305009047946358028534393734210330798430794007433865804941126863842079504945782325330067150279623154889970959985913704237732238798686683094126084 26346809009624089929404206410907443046091270940029006390059733367218931628688105518470041144802494008200969266268681860041576781936563161203090786168380125337300370406989355312956450619018456009697970650510830961275090355422525515422579055413415258547467930556447393352175579249585467604896216125501974470503525173935043692428530729244 209847412906289585661152193501672840061765184136261318755273953059484676525310863978448476866374513599932459473341407123539269212258537019588354349293224072696985851219564998992166025551999879303059982184679792227513321127945566535169645133462636187354638998477697413376057127466444331673220708773672730889413990202520702023945133631084 1671414909366169164581167070906824575740411964917668259012397613156761430294349895563779004353177944660450060606033366632912160105935562650673437021129125131680317678422737568829043046727090437237344096598000464741588663685764131010679689714007845230780024701093497058141302204872165962354372745121802445360356746605212587514319063358052 13312816746278698063528293198621020939562962211239202955665207151620072667170873417669837443782789171411222867832616128366207206916826622182015493110245652665463028858516656713872010358034312890484054298795804495189490252191264803352519079155318709907945706329084165130532519607971439527882648955157345163459805298933641381592933710305768 106037783005662265243728594585618243145659965478954990782244659557762910512423769060248892449359524740929924206090225964239441159806688321453025434953017691080644347827465993881172433430756751401626182540558789541375924919783529172650460551100365362857173708728419161081553956749888777924861016076193390615497823929444375352643100557545742 844610159822919706893109130394018645283223539454010710466047972257301010049897961685637357428504680602126873466754006984580085174641934530494026112602577410002947083105294263537682871995022305230655544911663376375758536828705563578321356240974214707293727428937507706645209325737645092887125303304854609060429662866669195240750104022243782 6727549692168164866970059822312812185956800246549490500302860546700086914635236603486934100498347231969943617757513591508209947949103988225487567734896701893607649018444822129726014895119284980475271170977562057146826822457766660230377023415176036416085189386162679966845301903316236519688019276918569264783121649102065945494626141918712967 53587371172495546732122517298181072073993054186290606340850460204865560923985949350499588021203886758124466588422031772744460295585525120551834824728526137206691966805199806208614776986216246365134615470437991012299905176557220635543462268587461970096722796435549637883407124217048529573284461381564012091578310895873138158726046140383884776 426847645369031372785032335105035520596219835391130705521660453725167761539923407762705145741196758573901095086825095341873110189633685058215276469613713525042557280753234051755231176792941461712601836560208772736526690318138500806662699096220685255086696545751753100637203712607888097553360107603786820627560178368865048100249449966932128873 3400072688443486614303759137088822005085712494147085427000809020764717324976377454644970618573388569622577632316101485787721642112715105108642544548191477472732158924399709376948771627691485570521545815116555105767600045861575014314608074077171533306139844295443122439129012360896686654564440922267442383866698573711202262852224572497988078528 27083722924812327705134163323884919024889945150330916597092576191030720296574126909580647840300688140500816024334894746392976016386886483848982960921753729242806514215605707319461520669300998652978954088775639653299395509349969119194730016801987944275278974354083091048043444311139269164005346755904552283869291460848925883871706293793962694630 215741327367370437565053455704169901220273334581606574964522405803577614466163020850341464554486232482661527380987448548363999477038425782583730026418432589068319647677518324519353619321310663338011384991524371590893446981525600218911748694920535522689653355854606362126762192045853490030047257365552629506820046370629638824129194194666605097526 1718553788981739784138798841927081967757272985081150403348684542768541335573348028873448658932364503473387968939391383342292465396884926993386270426608759061761150006096160234724244053102464662707936536329640091295812687671736681015422525101366341540945706833636359358981096456968215552469347966574492784317352786623561812738284391166525856235371 13689818402641958408566023889726355786219142817515907535609782531280035529168658703359779926499263777068033995476399843191854296992892529046048021163944358663025796772331836426652841487922212093272858992967122766124762719079083444628413542839514242463117455035826760139477030082290494229073939277934549899786245082631847474525460840990009997817740 109052843627717909264419278785046481381279528632139349712805333032893022620645121232154661262864858343265863410654270605162707081273682707610935996873646161423193892103604166482130622501134734444185929435853914339074948204360748372294003163678275404843508954334011233941442360028198417504930461809850659954904784665364406898980508351036295387217229 868722415278854186169411230578033796658964645768392575938584265013496556500174954506177251951907372897897491792755130767348213875391427102875093070062687678395182460685621208170436380005704183883813542068438862635495398855241975901924549980541110087880795541480281813481697219127912975777088394504273061134385116999291913557859994919210760661367168 6920377127439029859867426564770355027549071179933121213909204624852632627286541991257781560125014357991411374976233391176363982880757421473270973112438636153107172211778082241297220159063855505165630000219291802756146826114102205435218838572399981240420318029369623172476042106533416737928454611745011129151380902969431280063720503437683965115462288 55129388361657501725143855115495715825631782365510643872931483957102446362408697764980720782719161618134281063284306850397959610433839641691457401633751085565421176480952864680664646697997220010922355096708070570454914976355461785790998621914234527336896229948478154837223053771157404117763579558853921497335881810448096572866667308870446573119833390 439178671034721424209127033938024986518855033188752283435660209825841198071113664204082159888176131321978671697576255559027864918946901043893256628833759247480852859720454309783178899565274113063741116609860363840854449164470979471948594798917710806605926214061407711592563397984768063152906820683339234760695664439690641154477126181619992401478677775 3498677697337230367005849278353936227115545600080789195449452678847742142750307326591679032607956873359223599477560069810715091546420171824859691964238467413134731302077528600140194280856398280733269794605155265856640593482437703182521116693218456014383859454091830604397289823983998126141381307401967081086892466057046587646824002242542575276089992890 27872199375595368759627312395012480067979742649921336829879118098281349701582299714213489658019927943530814129675757145876377375932832799904741543536789386009478655462471753198465378508284329180875129876988706032672799889582944114845113892552140957235658988345607633728482600068086873504043114829448408538340975608460121907073077041534143727276324319056 222046088480989136285463215812079098618114954259870041378445883698564130841291468032853416668873077567765452489031072662551872610740690907198575206232984450843992876451109226347332409324351118294297583930555827279122890413112020268137985104706687206692151475599805735540108591294842631285100837072785884797317245624022004513953606050579706971114384188994 1768966364190588483492629618820996577964640402066271946337562166188545792868631762175044718997235447934842849815275269754416627511445559185953371041166904154114845512926819719292751769062270676341614270349458956437685465099055911491281240795779444673701301646495140044806703186989420657151281293379093654075883161236886518582855877075633912486557846086756 14092906193222406837493935340830008480070589280446078500841121807717599746778052838679433068137890721271037678065736130791920415373726041699994210095953326034677984790395760652310159884418926908777923970894131115852647104966795653074386334984691956608239495373359706043336672376020246260623076944319963583385091348369182405838254229592029755988542252902900 112275775238893845332059522659228775607545737908187331598263384656277793484917607653853748613087010954815113217737143747781738657331175252124157396632385975463891077888916141828844552553686212873529943147109243941414601389191872908062457750509066665911295794545234333443242460144383709922816551445488367303898820949633474318124309344736181979886727654752895 894491167559972726777469006063350623963289537114825430130190871799425915260613754816178934756070085300291668973648724143482352668570299027453353257473225937957484718308592192467526657044728310036945135518540191293865861711107251937582264292752379076257617440332481041873098013750930921598990049031472435386552792124157439653329645516970936598738307247551488 7126405347227565803518753320096023560751685080398464830873968342017824681023937318963652191584749200085159982015916145060265965539050072917644082259163778654925191732031107245332406133191030395644195113078716903578074651451648180329498075221307129368762614042931193286489188968905136073427221206531100085328104432046211179878443947672130007030289572547029636 56776606856099978184929494060708982041141486749423764471334294797912613150067203181444900395802688734347291591721647915698346989370115838963001498226482114487886598718140463443913418331836536209409894983320857969628747686328209580413832076188810505812434055696579070959437394488402730976768016958448347387561032172490681961278914573161378394721112673274123072 452348103153822264359573288734230792276129769784766897597022154780495811456466952840157643696672333105258190555782671145366360195557594835992135726326931226462404079602191129748245510915629120013397684547889342286669396658731605965906056682949443634637169802928421344118191750002359164291365080681119101593810760095294405546187676688567513559152695592903414140 3603964607307821081236311083471748414323654403520292843223369144456186411359860116699522504037333400032735444636882114692980336128899520778125504411269301914329432993687518017734622714538192485932658233931985963165982335002684950506506887665448811653099109719049125701376814050986176010249885675623647590694377504378948899785197253220879026206890138922840265550 28713930443333818245152370177013793874648932454241361118482933548700657962259283468534803988609257916152674953595847375090692320122296031813565767531794845603858331959648070645596539000373048489572881700333290975284667139935399474635447370232659964051291193464512964546582028356674927848943940778278778821110142973194502701275023893536511868194060602733519079441 228775299199898195855630071579224679031004559850962975002847418509711509906532726584124473359356841865887786342215107739474728688890370763992592195674156302025920973463706859146842730394319613407080965703917880172994089612010929732469224626217571717717076444925705783380509738093509015515323427215284099993605070390765996794212367480196385193861937539460434635726 1822761974477555365950339995558103384472583304953539230450032464884289700596615227333573910533272382969012518613820905230839933642219371660963931576136927972682752045073155556178365472469920739007563326874402978487897584416233750029451780716081978300737645057315927564844775840114549307179149758983815780903340266181037587274507068468300372178087126905004534969080 14522958846956624408177167107944778661508276423784708907629709697372552977993352147925678318734955105393575744338229349855991461151353797643335018684442263711606329483131197466308349904445895529063889454888177709331579218175688390450075018515788995935401657243186477002131085833473345704077352339182894551639493014263360420275002522888426325288079703260940300549350 115713638884485663221410292597813735808761036910643425334571109735015293572602868964509082624944117610462258228613481962921355869590705533724473623330417587282301379062517464970662027038768055471225052223718562269603281622555607042136465685263278108636714185969335033494207182684859747814106266789284215946549914705362384037407294091046094075875548874474459122748866 921973147770818142323776920874455860932560172817902323077284764901746252545785526715021121087637292158800537292273299383854736486145891640497070610141368279787361718258869751539415613085477486960668221812451989972410855191530659221600703319996476437754969105322205881731491836872095753682082666681221184247351878326853037660906853033115312890090115979661214334651346 7346090087788626326399210365797813785920485135104942162520716555835842200071622316569536997766949535486829007617178687068247532212025284942745799193387712818747911943272940233699415575823555245779291381904118892780500166736120709895106120428315374636181663862831162689146669002883159086448173862543301878631905877891457342939587744471869059501532472766230672390864494 58532687218647072240211765990758703739528237442306270302845510703030453908728879407450819400874450996822193768250209217454874632149129118640209154889727432034757294397850283900457256601289219313141801158940497990984326451198110486378215739832056158824239800749066108260215248315282101458068273493325601368270870630495209908649531531927559702162119492675688986716103934 466385340273636530122347038626654584126614924342382374327311804083195207456934438359107567850388056369433548284089484787857377163694120009497644161462792686233343487189390246662981395320915572030770220477613434901183045765665795143296863709080862025454093965532099507424968110241158667994738658568020245354543496728655892494175067665205181168330402645490978133227512104 3716169492976358045995473153138224259408598071513762859398710058689894827835235554267570942237141235459924145372412086725961215783702776754112065742352921460435894393105551611830909251214280674712646352210243970632632042915935783216244271336880073201428288056788062404670151334550847656982067251371795253829992047765344637721349108014602296881399858567023674505570074936 29610811610594357605479619725556969430909223599616751539146463594137772172423860308688685245491940122570135353760257510802193755588276692185792596788282216540200820416346099842522842893288018510378996099098865115679708564446487506775671134299502340671742418383484714065991581633053832589715330131892646845945240300295016203303748711172550017467057796249596709627545481653 235944176870433937604083418457305144404833888504539553257416991099273242453805369674740537782089195815368655865030489719517940111001277966535833369064296942254559349227421798116701208719157858421880602228069466678378971906857552657064289605040073643976479635251108752482518430151642594429260978769367047932709282988133607985265037482226686900627748550188726778912490595412 1880062773987475283402621860799910453125048330294320093077930878049421292355379827127043750731053753484466505799512139488592687179560531742951904661630968176360747583339701164025247236528031472105798324810012684297182332996821089592070959797228960173715110356386913202721904735652214185077310418726031612231279493695983786970204276803536245694293536637275851920997585623892 14980956822083374159062780978602116575245597293510100223468098540807264013437026041632727360613679548142822257669984215634780500039419260081521231764083846852249690117882880470628824552645151137678341599016400870984968672852706989202884395517326995180732598555137690760668726743496351054351439729681189834460911874868625774511442962983649119217809929479282576538243192256802 119374303264820260177464217991484597533265881122257696656595404864498554944976576911421854228015445500251746669269875218762331355804442475693515954391336284993331599411680521500691842850984124445673731973858056920688932627711675204511664763053880044160404511357819593096315220518829674330183559172372018057663838114902212036902834602722207720919754892204139534708795927864389 951231499793068763599516409807335441838510917215606399263592527492672895698423104496650113088165363574616041091514992974106081178907375199542591552954308710140973076404825713106885892529305288986900801831165524270150230114620232766763120080851145660908185847224614449817109461588947499693214570889496964545066004718291465844538562956874151971527873046037551301863070415121008 7579938007481744594344361299976158844968983711407743347178728044356981137421762669521739762642281972669874470047238659499814058964729941082228270659166015800952136921305675667771887814844166500116820699073787876342307202074975587465577763076320709136680308014218895665440180136458681162476084363730701830428981366758828729576775169069868444491065405446323010423518690122556911 60401694407372575668892037243738764105192794095733609567163789557562297825072053779767245941422936371129911902875763945732255462567942312790855305785038604358971989873612550196638893438443899493639936376236440611768344306471143250707727868552572716370872372200380732528093116075823135173893914411275156732001505508825541318197218995598888247669133258467968862527593453689939390 481322992714118044161167281052387282321471815260799204122308252152354611721256190538098465603292524796495736945726851324702422244446155922010888718385712546402559287363100508581037131175337605008618852016585201160484485897430825170871184999152159879790774677096124284485157503149678333472631451422860696036784518259281640236507358524498797011263552271438457804796280311770139359 3835553939650408004803074010673653320265249147562528387172517847660739500726046814726917586395026527913294873403972930355701803194174355043673281553375030174209504292446879143663572124606587648195674850789194909533111462877683141638068569695697670719847973641882979256719413926042342196994032187765392200492018219023928000976323842824309410463979368997056175796858736468065520228 30564941005760888366748549206925153664340405552849159683020746670712665395039906779746577403194255187284142112406924440162477789375661306536413419061299454287431438114488495186616600562939712012213972976035784604184340262875614174261166257759210755347048069614837633228025419350348841300347978872265857395754774049985312090433732929434589174814603754390360647357423719816242414212 243569548709064871707936696336344260979039201907412513488060425108020126412473947120621114435832155075222975562268331147558957040166311665659515262948827521078911866783380642811406547056795664980039576995348972495420428665526836110993402518901201866552895385043943431905246592985193733237951998334163228590670287528189392638965604308536818894635475339809100862890497956576950156530 1941003707181778717976774636652822016904845175186848475375922475196846311735864041286172205180571136740457964806835084363570715549144595140156973341055449604154187695228263829166211574354893739830481178536443747043984575082686961751571573520953061787216375432000683401731069415322953989172410017673047482153897555269040590880876785380766151500985543947104770974245844962034412740452 15467982203711956529450471410776021543373127152793517038257528621320128818588740591375113978651461072038508052615330477627188433340403316786532688597480616432443292531468547864910836230773222800509961565172360025546813461784732993799801079233889251416952730032047998699233068432509024469448425368019718093184054753453735782506440175684847037988982956681060848221840883228264002674990 123266444635337311394730703146096598229893811872191458418781512220823507695379505477949001052880602505672439812382645862816095492368617738056739598118509829036385788097222572597759865604087545424117540454422136699652959582792079135561230869760169504050034710352723569948660828929942800678021203583969701557441308192980507523223065810695958301015690258702162510892305101353811232550892 982335785094557036177714004252891880156502661006287770020550437394686809742609492476310828248940984784904369734474573802215635645406598610238985159613513940302993388120376927029113970470997528247044751057027084804327026841233768943739665063215238280225671479607709020867669341621543379205646050987078257985294315000352560638411577121682124227772879768039848292383974723187901428064852 7828506768958095257200494615875364542123926097118086841510279017562462742369666275887660391394911748172984389179294232019484734779594745418042419344841934781292657728123022360975518577251948164976050570849375699058982523376881884684064700464211334953219381181560169536694596343842976125774459128324432797003716064255135736935188166962006145896734730865616247658707769151427061317018098 62388098773839476311513919085029924072881766413002326521716345853601757773936181032072314137795622548943917327716540685383645364199010826097462145902317860567929818712761556442642668414794720250645416961039458235323692794208096863401699005984985608490411054390760697641872231634874940445427394860733362320138394141566862664973827672327920072523529728476168797446441858109192490904185202 497196893209824444251164290102744066265635407022229421465922902209075277991131675134268759289380679235980475197794647958929330655973228262248900156225829486322346055498478202884519960269203939588739726315006526869448608894181281864010097562213063638213475955910576180966195813572343048415312704649754562268523429234078075132693384380296357285104301202899414642611459469719998358331793038 3962405149163257017450821020610009797893815640427873855224743413646414604884088893233405813821815953086363650835779268745419441884331940187436944083460262778687544351430593598306300764106385704706289837979185567812478458188353969022645708300554751206337646943458544190689893702445603798987423152797283918842234446563481663403029955056792971585953596100825516261957399253904428745579187276 31578620411134207678724361611047922919765944291029388679898419787992978693452720329301292967007389110318498789956992544745445372251237434603436474655689838529533619288621103424277617446951795744051305490920244789748938371138434186061911208292817114267760546435614903429559023586248264662349109262559353177928468219825831251046658415563826521434483860673335246459632514711700481764265062482 251669861125213172261274022516079596792717966404372947059362691711171767482580351577557619001839763993190712473995361365886426996957854312258039669645582586100594053891338602658134804486709419234741492257865442466079086721073369040150851192332988707096634763421548526859829335275771596104240124987596996620942810113865123985986114815102367729614585432334912652445569589067832012954913346608 2005732593227656129447545548969401946450684655237382471033483617877214375887831435823572537182755844258906609419281710077765193297509825539333757131247752172513441394688941385616318416372627749402364502837356739559718188636048999191426854500191485036700184483824056652916561020405490252925437586940902248552709649576742860998742762364025306886492916717816499599041980024062350625788349332166 15985219455381050538678310716419344733712960243287359630454460925234013246471210623620394383247617414202832463473297225812959583420295301763014343446518227337621102702405216098372526481651294285118385625108270700714821681986874510602999385470758458370864453748143892017331393861187260694413763001405805679087212861791586933440829441354955448092859540785730760517537639879222312388643790350856 127399553414983300624918012566358572669737986240878554071559919327284320297793176073320989061296560339067660292446463752588579142017943530818544960412268400496952819166477431703678009927094963445030012411739549297849201900415193614230351719858721284168159092750096926809655084585248327322769878095971261727307844889957857401375311273129004458280471575847072181592471197078844766439431704720811 1015362040241923023657418572019471519002821169896442161933766770809514900958957849560327551601722157639127974981092179747688685054841874156802870963755054627478529797811236700999214256580568971618790231039486477426352811948571734659731092505707721451417011382482701358220898275076909548237997058582207382998827585693094366833589890052881197507319148539116928670630636881094701335504324355407724 8092405535475871905322806497695325351789848373874173145773794091761829633420584050483054311743209678864751309882286878921153405962841169684491943735017272326963881071697139253238964546091908028464772793339061847839385732722693493393240245892203816668299639886005613671635164644505503281328500765712312763648275661747939263667189904800541534293051480051048857659727205578604270453707300252187557 64496780315933490000915703511464287779484219453299429834354621763807676046962718489945787004153354253290243375512648359109125998606522988994662540533245536132917287089607492665549066812155614893263391667599452403442374875176256070558208537145032433411368845750128808304721850159533630957146473224340346846687153460979147009179211001897751020443816951874355678103591747228981062066116572659618156 514046133133374495715987426689872964173326251155114169425282526377713508809011708841660334561690862465268300171781084472487760539388325141645649506238313977332300041083180052612142437491925474445111650119759555106799927905429519347281258968298447938049808725328541199937385812668629252985634682024316000321929926563510170629854337920546763655872679161395005208132221130452497705988951342436109731 4097036246818197098717639854150761763332946497157446514356313130811930404233576381130026451625337706785672937547701198023794228627814470836839030632618828249085359730326312676967759245787593775956147846453330813111100034991035976392501822323156242297873746625247855157029345482211312542316857840009015663320827614048922713366574051825562078312965101633211997474294445267770299712345535128018533268 32654357852234255730502140374125382880561308382682660891589112497489341756944843748414977478076400985253448609708004811490379817158324872759805652035474371840736665253765104448621104766465839585784834468012675191636043753019711828747666148230521525855666065409769212554558360630712856673169235315483977152292433172976599935128560908444030640934870338501218833438859059701297553224241015289240361471 260265201478334729016765491763180803069686655264913459336066956725069820930772649455104434815702886834175009429934805814402888742247629936526834484664028690443774310937492074416695236983818555765083268680096947427621262294918649915533218322009135769926374047582883062028735107154413443349598401679438107417544093750719909766549029540622603878156227628248008296208431467161184809785119478733227845352 2074410308183017409704811411510724236268266602741330866178515604140487739609233146449685108014011762933430005811125897457270686893715103245514098054593071867342748544070353892313259787677692134865454861563187694420251892164243907321274874111070008134365955538786799630024900804252627334253492793119886059209042596642660094360305700012283132957782869867589240588546326573290493527613142096126836771628 16533956939904661096281332774927881722170784541596247930803045754120063184861337948973897148184649386768283952651447443236508540790438159235317650432620961201921073797501775621392035744624800259474153406828385746529850713240727648009947464730281052998585403708108653370658933508622978584685404905749195765645820781092538922695769080617247397861010079983145641713375114159382079557947395696642155644880 131783946846965868045268444791800965805252293723346876057268483036165422080556577868256900896946668187656547605639126448313575013608684552557333064665711618459499117807039917495835106904583655192244879090948629951534463040195631731206789724670977370766928372926707272022866420569119668483892862972028518060417826404589126250845291337680104243754572293659109810712525543820322626730738187332930280122252 1050392882037633235251458460288239743673397126851059806286482206278138230214781474151973720782721260000547425742333970699205681291478304230214950598903753035153880458744605179413516614880793811873373900181523294455919929976398122344964619146679791686378306261658275529256435114086763155921319153692886216615169569197214158046336151465000452809576936220013727928039694798623849905935165043613317647740424 8372295842017554335551561767205670592640123698671522051163637984422299360201980571540778371434711481788340838593689166791079706936024245755765238338469781912085868872631488511431387776078132243238667176436871398327680746610573836593954151652843298594207710903319765364909753735679372996251925874445056788531039608527083360956928172900425523673358008229085321584489958262651219699361397022777657564184098 66733035880835845408295545745609729985907624217632644120801371403993631858398481068883547498406017760811279714122360741687399500677840056212516665651451730756969906530206690499826319786470310065472773363641534591420265577497606532432275941873928538470303226089524760152370227332413296317597560940617391776353272557485211252197012680245783882847959204239762889135020268891010180168864089078492551174480154 531913121943676815099629472457619937818596483032381906925525380879812186017740891504196235228526461494664202326924318343797127657971586474868659159729916798876595816192048072953335381993660242314960198654641601212776049844511448835492041225696435929000625995268227384021980871202454614838282049634705748927288992716798764316518506338706888917704187717767487766275068563298732591441086811230995826950675310 4239786771196962100803367036589831561391210286132833400160878583180574470835649483158252840388830645865066982044432821570371626231705340091534282661396011637383084520976930786322138198446960909498284020442630254606044046310340062712126798467622025223874428693509544312964159437008382272531687163210077546017178179516045479613400480739889321117586542592145457829727665871414769483346248299295220736789618992 33794871627140087319428282008024436802855024771104072635167094155829324981715837262938193318931474827701101570249769442195608740538106957059744525946969555208914443260570433062128758792131139488475527073079440034964038896164444166429952345345545669095826041812704617885382337490114473928355319057435574635625065600942192813549948457513529044508811475657713730225007143591615148862839373839336993793563247234 269377331176938568998763581637126496654902979607722553988560398953496983094680968110076178831682081045278254186593257365934348492604450533065188152876249894412956660235314620209988133602782263036204506919138618593904507020936262258927200700185858603452160215288224151010404182451350172416415189036462760544200610225642877014704517425210110544116750305012645888180899250585061896380307241794393638214051869072 2147211056526170323668463563060540068794774047386422816947986469224074452947838969934379615148286056503024865730219878892377629262576444250325502577853498697120080380770465371271131075789859466445685505978645950308606332502599551446621446235125189082403222419881513886794772530468037313542512741695280841293630396268547398486347645426133223507814402803056662306546213801989418925018065430306804543039542123104 17115589144130301954376792117550237885315320244611280722921184142528556736601790657242474553688160131894241767204323947588509570420692744368534022344349579126578958852089391645420703349077836134125101689671112180322350485784502862898803568477548712423819938493402009037752429025874446875304602597058382818805866677388643299739598130808429228068093950160353167084054090297297905927815405105748775678082682078896 136430787206226797248419666428437025056920959264206370575713958299646054412309095735677048188419874726429955901166329677081323306737156964580437639431087574868521751137843672025775610785911947562580667243062376420742192617173274249839639598365490302366495598628135265031845346691659334049259015851165137523415723580967850053755305273658774028328528757197667182901713571253402889276244068927497293427953358469520 1087517656371112798097729224302193531580345086826404535076859940045197957257139413410270664293053610560034823449298883926597392674086085324963386976487755162538015803010838481176358143352166191273320976581379561234048737384228650563359578260191206165012810404143753515111405175445382055447231547755443739279373938417406463663702015543767119520615844152739642260628106498674514238163093448571916601095092695251766 8668892810975247852206129487082605003190127004389907725301960811810126103597010334255626383839042180556367133792004871034897160610311055449861081873824510886826854920664038712049455399415684437775126424365744631432328075959696262096984049590367160911848138773277820329364504042783788948036692725738291083579826071778698812672528234204710573426161928893507281955855023211168765062078348067159184351361654840731987 69102589084410979655210574054738184846616532804642927263145880628389507101109447564244155638907020406736677830154314293080998664732059160301907518265123446075502672028691042170796937427738523935320265899913212333106901155297911989276487406937200478938793937134997467451454422750481186878320297703136306073558423764067771453524148921629898551944683452931619254657542793357652080172231676302544115682511362406381464 550843668052447437917268875777979882336735091634554313499601729394128151998765083690903660511546784505093764111316238448978460498663846002596717508057998005333225335130733612850249477066538929905422533584416489705067309623837153016437821146098179491792129380599957195926230867413438164000050072968230236539123658063100232257583770299494825392816662134541876058883064520534082538721800620626847644199266339299442035 4391023332872536672564590575614348949541366695298897123461013314904735427557713800051282549267913942106711506469659799986718074867642161028674449623786346884477007126641255315120424250439137108230525712502983285067434686989978344169157768998140779575639941652107072462894619048169015389386888604252648842374400450139847786489278453274763391181140983513892933291271829793518376172086031174510576507710139511669683750 35003095668014187190496156525211572019870341485570563278071368461816640433804644276866854980184842051098025936270767356877473843734564207529731906797090869925734422282883727156540034491719257046191838904185230041165419676227819382904712440124908487353486137172068240319978028250135071346526817066878906812934796060538229705956385849513101611331469651874500138611331980434043159346512812119843442075410391524070723011 279029729286449252718725633554144109339332632380429507702691928288469099597345120383890728498493773344777367078833317853249397165431555103323000456459376674244836714037437938534135825555066900470437139758532049252594321597315840933846778638284375813036707939909068720853297095311336791349041464254071867574393880198723584918394885423225535087381434707432635320473890516404968017914342557908494782764240782190594368252 2224322725596555564413506201301002800726676814513539029956539862998175694232789258615118059702433500415473250648582848868686476991467482513178655640927565124648963238420186875870952786108915853212265961287548011085951345036281813145577338654244092307498539207837461774663370487870672518423781380677493923270303428628010268527760880123053149356228677048584536199223857207955900779563431074912182691110042865976282905289 17731619557936701787534477349019567890405574271332490318257612544667256197336834123839828623185737111197275794342301264943999641501794970612852742692612509786534387523530250650151604564923809118928424881388553093155631754902342087350731412703582685096904209229613451612384361485810684973861664253471999930696438189103885169333168733633529725437729818224302188068208690984521622599548822041079201495608493935671902491752 141352105170218814095568763373787495828303193638431119785055438715272202077961806665531395211508241226642934352644635445132243237494929095342749637926375455355071853904934229484599524770373885202536861594627542497502965514313209856124978706550505828253162109251721862129829105416367379725733414141410904072707834305527194896151583960281038023676281838295266783489792307724217153585459104469561544845790149577402109972952 1126832627825257262908760249602351420939828185291183211941576318194951166799520442883668599827962666175931919937562474188174051053431236755407057573301269406694868688878632636793551544022174339056499163527348723111154858559887245005554931703916929829374809194402057958497149075008222112720254026615113443890397837999238985630608701628916681022239984419868215202771986014176178872834517107270937069253646652065346515340856 8982966689578451059090040211617398001602588556668101938773787825794022661690421838315831615430229211727109235211864467351946424825840264219738207545097456768051723128169922536558457721300957152495381358977285175718966034962366718728151263827484448459202703165729396196089744100601616473463933891369916729275650905841253385001998103664330455508201733476195744130609843092301458202992803009289710431884809144113920244713827 71611602770967972814961546941280636758637041431291308204410587155790439200195171938813934383365290102715517702389702610822549917310288514254984165034819450502034517330128411397948962197832636447824243258393540994666186443136646841623530236480845541991678867128157619719867442310337231310443957764760171846703651428621393016772852798621208087419915710987386013009191176853989787713353298623388269513910604271635075008656276 570887079751724889807221327570949695640753900525361188204348954737740521636745091814871731111326934116067089926042170165773132542459198708272691225426345752391133099315791431681074605697610211485651574049802653858243197327426817378956219211423041553257007236649143226586497948149444588604792861124774658675410982488825835893353913116300503165243463627088832507134596695409191983772418642947895185790108688191324673932011029 4551140431564869459239647827558432714882591807087453422162575477090344790600530838072627222038423018730258735394698887966221555487903020250153616509328045513167851210378790791426383074737759427994837280950602103843282692111247135926688884977048341995668142750076579541330869209943589941685148353321448399426936342108229397118040790357724681390625807485755985093650019723588665620408621697806823119112036880494561254349236140 36282186154205430222651810148818626670589317296429031607281978630664642659829997018395025718343049684380624562207623972610634188741647462161339365091971584393306122573326042241194340384222770575365627748108593977205352863157156426979349464308879163730200035376380896169180122524492967227754204991438481941018643699519750850953209131105635987157174183609535306783087772127493972540964924772215125862865046783541968009444693119 289247646025065214380806163399636598298667106001685343716701021783272260483955718120720376193399015171028149742169647251881802011604094668886471884894134674008376068550964489702482342944670645282357213872973730339982642136547281692036836340485746322916003566270693324448630329179794361440671316375264494183198208211071480587552807565106323634253464279658648697750371938863735100147821181886642856288205124499866177570789453270 2305947318166393781632661443196524915953703586099405522275027759596031933822948767290635808230090947180434505709484849678499393525215804469399017636576109764792640842004822315079755910197188204507668151507010528268950041159753798052287288455236637849660188155323406915874337424409896127148060552672696126217185889484240063707434829506551446189761411295464324761960851321310817073400226348597653625819649973226408453320765884586 18383664170681329354676330030318544177419336596760249720710336874035815300374337919339325486603440195077418599776596165302507091728192414347419768527368882355718713118499085802045541985938966368594214103191578321811603960241270917089161943657016077803015014908778483677006876844582191196867469321249993984296053257972886827348562491007216961456400896748405327847395463101943111112617179657153992576756600065978836276976599850128 146560828069957122744210814409373968875434194175761561118153834371441795739381407338801247548539615582434798893830042248166654018886690645081202697399894537147588714001219384594044901107107048372461713566237684291766230391671458795251867467515330064917500076930704926009708900891177817087108893119199635485289368556831491600200297768903831727633255444655291939358906041202768629203037568079553850110311344943995999159541010704177 1168441207861890809539941260514854917825671451647707795302674906059752431475059578708747224136810094618606072177622016764518695636509791005186953958488173532038238162715532148002002622262308466480103438664021746006063184352739708377413160961668330541977511825173300424638435290001576271757814120547007919274454107763107897317565222757057543232770700090685928284358947280848375173473643075937772321544750836054287625733630459970376 9315344692335693270699486441482982166831233170782613374768758722503590513994722154687649960414372773848440758912905969082298109742105083234108235579265692454135603645299491631742681545468330669402179342319956592724100765736414886632289303375737053756972530934600063206233351292551384220335824194947388840197912567989200204327235833692138917350871584710263530852604778217056003480377466843299980593627724471973295639087006299298830 74266693884879137545379722393801122269572906826694419365529346863749399320854658716133580181261233567391250370625673514494089289076687724667463468244437911232907335660667025432345226676718803138557792089539325575660916220122711847434473755252087823717367800024015484062521426464132158076122229123889709249369571771918040231432159907066067541728749105797901893198972897686165618432589921350338358969300227107123150811003212232822412 592096285215569398718413663234792381229988040796808537129669676200953516808758749338480118189796899209254288637320036456451302378681727737079971040655961580584406490921893971868507567130450734588747175454761699048542614107276034276100250059864225370043536168664309213512539580540970898982216125244156819930663481592700425913307562747062093868078879344264481983670154521449086865216915851072617234593704713207497636373629360484139020 4720561424166404421297912724763055991667129247819373122338295118239476381998030437939555142238525486708694791608239510100938459979439300300131288223489832371753329034753224627836090885159216038371252734789638780675582863339295276128404981018895921442635198804934424856546117413731911341224675239924840854605422772158100384531004442788237369353581699889358586299800548733549283329148616653980790466437608221236406611385876915606678014 37635529318846408428707097855304047726949061112113991568816172719724251835456644127113940402309809217222485599197839001211059855432802452800025838545566924985514550417414162601914654519553795380434346026539379470950278173878516843887041438393790795101440805462571531022526014520577843420731369481689821445206903142333449987779231062014443739353053441689043963137711071214444902546571964087725320300525966594936282391014635858428102785 300058165702390862713401145501799340390079753533747139371713401245221534525665943422728455647379195391604107769668099596670703435420842303063004718565848371994438137063829731621438811967782433573849257955431551643083010573509048199599935082688791435801693757111645442746467706396603125041445733797438321674528015408646977139859678280277688481427390367248853308934385062367255312944079547364399146208779235502460694256954089228737957524 2392301459732800627540993598297693002874475821237051941065990260943903890824098327429860117638702050195210309580714196042265751529610036462439814162014660599982683734206410359076220996162454933942105043432416028662849798964414995451837915348372245232087653712011013882452924786931579599413381551730155233169175433701941389579914975656184519500630955189750756235547383053344063878625440099336436277460445764229823487486421354674206758402 19073455558991577873355092199390496603994445778231640352095389311256938352575235414141621730162950321027022246222870639266830112984509869739553296201124875606455685520246915492771004221523256409248985758972717984465077897675822125626314911817281164607592977770994675134802787674605370388637220047232717784482042458242042379284938997300697962616589285095779289278309217013642288906073742320187283816981367374743236774891999450340866947880 152070812821656973115558059890050717812989672037791604943382378907803955969658653558274229854251218378695154406424509459150600203745943943514434423439458802470056513221187180510375150125687519519825204067358970444691043847973728747634355622632696417792013172109050177307146140836833547691762230060645587103937043346866060303306456199337130593512077455724366451558538801593185412617144353394649488944578857473323958004332189554416245335924 1212454220059936640041936911442783454434546696969135417789709202950473994632020707429783126279687256364414812397414532346053312023193660641265532597726121470041776261186557615223626487253405863746199902524654043959857740144074112482507534422509199534986382356778698266822519507062849176594190273863748775243328974530682875238030120190977659183841240871396630698818097093265706201184357320456579005520881568066458830208186364852572000018738 9666913136834758373360607242399146358538538210756175593924703345637313489869894176112939704012574167274033764724916146150318260917478093257248914678052208801832819954970965846704307861019086195707636955265969795110126875384738893078436510005692876890296400943309759816767693988994807305131083955998069468276231155243927492058909292008846692365301384606099094085136560909284084219875324062262472346669494336332455723665380039615694406763079 77074950665128889956399084846914599608558438671928932928811042918286044763755960231153644181756263925544955333656138424668124092701584088646851590177780617628983693190546044559827815589325926128493486038196820680725729916714697500831635031095393576894522654252056077692785256991455602318110263949599609049977217364264995007925062967221743751836217577357779200165313792439582960569686753308570958520193288091681602365574929149325543209049194 614527970898111428344190276798845411641218709443380133198884102538646282023349007976944175198048300534975365189723448624786127830906854274159662806344836197347192041054832769187442177466911195645573895936026342699491738377444906608864697735326334136165181901234287854222610171077718070110667450840357617404109939123720840283680638291904999202426145490980370050484010293662117699515098448495572849374372369003934962191908812034829577657650669 4899739638476064329912888832989768164883334914935601127298405313912284564076054717040613051231060884426643707590445254452075534558641044778972030193052360946833680386930200413805783008573918002019590578293176657716059339909895651638089275253681425740321122113775037569758624288893417948734305504940678273355014431396012730912474500866284225216208303127479096155809956907143559770203979464927837548162630366588843259976198338676322758957793172 39066750409687735723652040027333866037417600816709757311133314672202347851790777758389917510431617254309731466902664805980564733193693185563544277897022960728127740548117920118087210713329046941428996865130012926000482095203174016860295380126800680613144362714337404547337088324670593058344146813801011142531202021754323360914503042080551923124222714774219083704247812984380615724616823536614734674311705291942043884900068823458396874776787338 311490278802608878204230901573004053889293469960662206025493518051812300176198782834070295347714227119055826480601607042580852324582181270769276694902314226379433188005589158647110292687687919206906015669369618797985526117770089856629273733985674570630163308161834482253697977648282444118020357719409814083154789986705936608689254295798038568700313995849509367581494959626522026129029608872418699110544908225592618296820318424355125594058973810 2483616978267664022104842850851857124490757764317603098645598659228648912331914748507934364928967973525442007414292493677267239395460626231345845870000006702358723997197751125587523116076096873936221113539943987505448634857724949446077747804680379667932017059285493172036262371857698945620017207657410516022980301732858168285519709547034839587102426478583434114892116782595450811159438902031487121405289619988854862937419199085837873536767658475 19802847548756509788861762608875858804386571214253818904929690970710124294940019211394553874300080895181022025598632385988554940562222552270239123867253971925357738472694556560711910644142184412138608723550109600471780884826904431066410156529713912946531272833194929178310098910922097181580669798929941539592844336385324455153108709440894277873880754569477142791219945780574417853084566723251125405840924336860513027056455173796889904733630541624 157896883409272863616866068215175981481393612820559756520285525800759652728870078695595139080935455234677864026249155873085744566921880574093865178614452341282057187541046784649432135464557796501015526643491415010220248926341866999252733605928831999606996579226537568582582401334742068193308978093221462830475559119404729365029241139515030039504507758522029213268837933558134575977333351013775218870890723608370085605090017765196438938028987013307 1258990201426890586877146686044752615022475329502165477510596417603074908542681942567385915793062520638890648357124872278486324839259042153985983288634317075503046427024164623351672641307287188140645971479702039348595836116791580852007383344676678219712928807959391835906194406378072976978307640763719153761772523031431127278654028106887971168107054280364213928785680831446591984546589728948338344638368456967626480992614810440565512375060042398326 10038619865518181533598413228116016057001738571892978113336570225478051591015496680115643899329595004774977453721083549557252320515394243372839163443035818753882947728735917612226364545777314544911522900485681355080611758112511330751529119961728308131360154642528496079124859569048011510508561560005419365017311077683237134720160598478989855642355980146842024174550963774619829318053108300102350418946536226073390310196773596262097929583817638329332 80043952107244314434596676059607522652267298629973412755941485290911699475875356433027522931954682285650733122084083880911498999060758470748890801919967856582166506641780267770568760170643098489771118915788157543272495952929834889714353547089691855450846714108992818082618887090629927727391688542488600482429197806213378846928087379268033541674873290781199942851376340833610777217649338315098991587792269130488192964891417998293799564418034267317728 638242737910944202762065837182810030115796434724224106009971932788563842167257936568570738825015183466106829910858138345050721094362676059546328425629815349415368922798105514299377374083521732014516498184410506312454908231975310546371944865600589429011222580797600697859144411757629309034480200425258576692087230330774429996346984420339454661055674156798595888890966611142819386854976224584340132809969105686091085212236205101364965420029955393184695 5089159629518801077101560044507643393565833900657615157837142835860263704881757272040901659899559676634842562524822869557849633700153458649996047607664149685973034752454282402043268047533929129249397082505154074380164722537348463327379274906730918853582314114718771165954397542454093770079069709910384731385268309212345730368513483010844926423205599949960278791977455468342769756154826241904106866646162421695902174153936683117178643425608173252688604 40579723780845551029906671675100763398920507342319495503408426196307433666425280307249943325635775172719015374886743260217836864655201630731419691142590871366025751999469930086191873060909908143785718166481847933176842590764993718480336391368686703903848698325595184178567388564209147228556774339285321103184074721160403968003881553304759101657357150317107460943287889587124877813326120946667682370047633445125536141730842013236910000928828581239024213 323574963038519528739544390742312405804700837876354764847181115487058482650927211334259778567296330700330404323524629637193310419685677966795045301789426274312351518765511005523105488580555566801540192362296070288041216616622645893862007216201558404642092900161224493662578709576026940487822026473426966817277282176455559482665486256575314434421249090917922886817700986572619881543236313755017710070766612874392849755521525838527195492526437397100469180 2580141555136455429945175720794611506296080022454720019191580393468326197404914256349087484248881976785585608693181363962334911557818303061806438020375749176221292622968295747672049736787960357178838568591581797182914489395405058038463446544488810563986477956569415395158207091671432416590502871363056321927812415900510074939672625647143323482306677669491073679432364413334664779103616631671090246047077071490263939807370350512544433885049714296733139855 20573820441791379025138506025767600064659485825169053875022955480702073476753031782357290694323169948696565827347309469994923650562055382339651659615557256913181579550280473713414161747023890382069764045039033527186808714589407513312982831616437807155652264856429938370734941385604857677924322396854692415965104544398969076079354150688045795379594849390801393630480700507544177957836012358333830881893189102305834549722562875748626622403182400033381265808 164054872847811744027803589638297212429066208418250034971745385696520999919939146212286813628620214864923544861919339765781971277558041296094303858803614463043426436598540110307820922047788571510576672484287129997966938651594452429958503635982408867050373068783619211200554538251967244564131124616853575888287059983492356553004027460077248869627325030853643127338502238291641568335060978177283638379534155849322623565900584346277768719239492287555350457957 1308175739270026291028201171174643003245063748676825942650786304510100955324244127041882284539614541576231442598565897756200957479873811621034426632049686043553123212151616510016342062267167216629295275104620670521858553732913208843427612119503711691802138755603724582540817491667404069413233258390448886750379375888619170961076026054927403990025071437207580235544118799419257246489590293011736813270824033516955657966013336074101426769090006018349743568376 10431476949694870162255165773208621165276538413215786255870249180098283505716854574160421301740238987842088885980295399149604977092027439684740730217255967695984717065094092607707230648866768792215268570265203739906458058602391359182964533181401052871886375393501704188498683165097068431722623907864084322489389100585464190038933417681081135672346686102412735671270533722698291364163129921646820457416093623054838775210279256144040078964311182926960705327547 83181789665570513591053425080241443656440473368668800607344746411755154836679602804906061489119157503386742901633902554475402728312757839564809266276166457673088094624705640366702909717846840235953612208093954055321388331772197838092677109000545544023080398503114066220698636877923662180473906994793944806213502296434110641798039499509779709823146776110051421378361806952605773211725722996518303763549170368881265285589819077781225287413841234278596037364682 663305276185959736621568321915980067267036767409395874064157783826389740363967146177054322073214819070664763499976315892995357108743021306363138824055190567783709029159555708897775868112176784917714140315981655141836606686046036832748412640696917482235250727719452083080905785977589134420447751488078747932153008265026889644218767753779720244070905912213735079678854813711656430019325868584854245878330338153259622778440848906640030632451583760528462469894213 5289338577073879317628374998751664328288732868618379227869636301771096475131916215959509997610610605915185214018313151626971833661025762819788416580333822537171307723585862271624139297783471905258563755526637903272715635505198831555689587435490371392423452989279929922785902726348467739324017258411411105447092462763272160934049541547035216288645948534220014202957677913992246931164457925407025979172985253824122008845222693695024559971531905742573498309253918 42178584105805266481763922392096579112554159389336446863376173200769190673149870797985421215606996773946379929131619513756555488499641693287412147537104692915518009916127939527581532653501007767715540907927601798313863460168617191194385106657905645748212590470469688285344657902868830997244297065201365253371467612549193146626412527418149872081606304523463907756752401387111598790396743314812811629107502039196085755238317312358720279975135090249992839353892216 336345273309763296267262329629146978451006513850106190394527622966058120606512424825348669243786976988400774760494120374372673720919055800398952194604815058717691829685951651131157696372006920263023203145636438506315670981555265645598765092889324954842372346122899277720920802507193621947733647170723941562952049462503542823829732850482127980912282562930463114068121714451075389769344067070744419217199222184493700645377347450865225852941858092576484421172466260 2682139446734826071196232839754394662301916083571889800443281519218408730782933763984774640812928777749449895999259608910402093919370018420882770626144024814589248087376774735072691850351566261528886468808525583479048752868448911900838843302302807460718625529407973243900314945057964559226785472656624036419304792839259010025245564840695470113260215193844383257979707206890168865579160861880659071388375457713821739819401650445317389723948000280671834400452022733 21388486804206758836386375769819172819542079784658091885987397904994738926901975594778512650216058457797990446648329884661120956057117652530517139818852352373370633457920733131111399153762962759157960883321777424250995796696895444211465595868566330551968309005489376814149734067659200570794514235951031075526972534686219784904138511731324048345463406279267089833294312242842221850540841617747010670023148827197769720005091532488673555128251661363726336446319647128 170561669608666497607773457390958490224994341818535747849389876749128848217282149968118721461592767051221613858603340452678663007319000558773604481404868153498652376884050940930307007764899075432066525997130704037468258867653017093692247878079469570763544523824566347835749919743941045290301611536465172315732784625027678274630819987427071215188343323415237137403591263774645548582478188468901387064227645977651051103323212452601776100706099226836656061034145105462 1360145843516173149635678560948016965926987243095482196865539176810057885604125803165778228346996848819417065593462800297314120777591205419393829702728775653887463999630798313833024098000748111574201639023606093977444056966909077990851895526519408360817225189379635905846920919545732754348149270458768715265867051327086454746519294174585400719123222366494079939046041197427068761527130483458014250182296686830041998373335454232282792609366261119046619175678938497394 10846563675201280096569481778643132423404094967202091139203062331516115627771920868336103310302949281486772095266987933288748501214972970491826573358390401788426290720626722366671121061467787957735293519539032451010499854398687766750362866096759321519869076277831888320517145470455323059079938027531962517475341452856428268397182740514259155248181749079638957286443327623845832409209670156208230461238442903183785955323784917895165110157344199228639556620032309718985 86497091193555471644879797044868385918534393477332068547084683847881219628238941184497506576127235793730223869977526859836484220337040127481491229155554402026241792921016145243759090922274437765948133112743386294094695069591569072876235120109560818463534777202737851657290847828157034554778343510966746414207823139657683450524633385575632516164035041545242422963860130212169110644400865379933628006414248947063501619985572420941069872399105333220276845541796331732554 689784556423303791377153465667483861466497617034227904670940098718027469419996811391496145811229547985029011384883898999936352675269711378675666884533599007680864349999580541944239732115138250335136417290496207293182870392313149492713066203401907916594870666433934688413727972398559204622047001632774125784865670668541805787864997197494674340232796029520079895921789082641359928616358569308690965634087864840292029606044035200189945159374320234350936686890749400045634 5500827824552261073117003102404576941774101430867476715823677420974859132902900820185090984614239830537331527026145073712868722742430290845307163526916047484974933971531922643434760966144026012892467672447578490788301808791745621655771717845314871446868724724804002119571631702974845144447309368523679123284815219368531579150951545814645759995084228485874881115886468897042177226525254198004120979182752284581563402817459338049214261215121124053446363912702108749699644 43867738713917888888856571470182754455290871983592844434348331507392136914294094196669999084407192043286595386199981821978802559409082612794375641489639771258305469306136640348796502263568019288494463949199993646821333988266723415367675967087319911846197254199939269331927061281593533697240763076054869745000794487657319199399929454726634192221028211637369150168812202963236536807104403331379374168703646098504546123529544757542915093909782245017911182638026810387645691 349836440591788486291689944278417127404902904104716030266257058170635526723644277608561658667026023278374051628250150235724690829189316117250422437900980887258364268011102869924973940316842287705952223482969098390402661388109964093493056188498293054809348512254875284264376269063184354386280152166554016414423006840132066805690722844872523495250806271610387780964144668664934037146473916920073462793896285268591540921553766011346469656161361159433963197938726862916147196 2789892277123012436391257616239587418537848851838705151158552402353808850281930721686530648452070070122031903257434803839891125773436094373471302576762283439556352837982459037312444956935404492559294816661891322822191274636050582617352653338172500431688102934691524157228787235704214121614909771686916710670728414475358912422621381083723984556299969819400272943550223561641203015161000649668114687664347987652072798404108919971147181303127307027897095536675378059296552328 22249097819248415752254320175716697195120681348587198771346406479207589635494967089093063357546032871200257388454640666991324443394167707909508696885297855114329330380625071550193209397269297749825105422774877507533792169467869638294077759852294988667693019262608184881469658682009079199651553432943299926852094920693107079198174953006655757107187835620377491501690557133698779908551028703841250424969107264123725232075616429073666618467958915742527134718154949717325592842 177435268533195053547540873854432004285817103057052046107193308115614763988344465851557703649114448944598357341272573900639634173181750035378940593667878963974650771350106002920780572558439785741975172024124812957947325886623656650608229257825580190778776569443878762209468872681911720882620337996270619810267487077587204537570749607312822708530875533998480766643913956763244073202619425491771593084348810747539697335357533026283674354977396187797818203017384039451714914597 1415044354721772921613947823161186537313200988906429427498497682374371369971369467311806169557662728899225507653987385767382691498032134838758630209169039304054733476354419478660633907903146316122537159005601054391336631978442301943761124192859449447312748906687372020884239343291850536782661963787617276600843199169235643572963135934053678743468470775111504216305748389287245639491550041248132104329206127760316397990390677698248747494320383017002413900753067819879660847420 11285029811894271073429196353694113453996370100575122061399749831986731765799314354329919800603760779450936908560264517398032807954859262743211148498459440690758370750967963200637757511130031837441979175437593012428646536920755410982068276097547099169709997602209667291946290507977954133926772665033705807058833243153266910798262368301248218252330522791643979731912259199893148697573962539059547676960545647218454914661726189324987199201063701777268731103282600969346601756735 89999047141436705880235455357778751459091363010074791918773746986057168684148791663673576675525379890538455498192458539173971272671286020735035313406955819663751913834316406009109926931427908462463475112189217179622926014636807326952847480554840255670136565752886541844633233917381200393011831211421855371445159150434465331753086272205294031431448773909247299468065595727436269177330083104190427196984332790239788630796792107432323796638367380064564903198210907245606418631482 717754039994661195824627406398494776347920160215938611475331215600096874356685275791996926816923155729381817914434645182939622462638556594917916911645329205545725074077889530911524178790675837784374975341274558137505347010767976099418501823092228435660334702914487865957137420557268086680234584512696952823632263929533532798118387453555298010113664082156663701677092383211191035436326589389055717385726898540406034700151270860493963627827143587187736183291705761970104008726205 5724214560702184103616284582007599669003047290894181487915065546314761309403641780914770592046798452000844789567479640265797115951936439611703288768303274177839426214552731645140313281662128448136011045591809615363456216910037513665968957054059065807110037668563870668834777365663385589230537518680777433080122726293621647769962074514785762428888884790406388822498045963286520765221177806506049214749050310197479394388917664260527425693926804103458760336890247397337502614496696 45651881063136070467198368665400447985787208135754269984096421557896055976072808446649197800957305176143295296109268243444040441768116190008125386911619468189370929642975870482324384407237970104461393670373664268523340315208800649581740191979247654527915436621699429546540368202485702426921982889959274682214653099536453840199759196844448941730281947462327369278362659176604919509425908023598595836847898684586457782769127344331345634639087688792888029286355565703144835085321912 364085979864663290804727894970244722557046395796888371131363831230980743453541927499445846940184759261472934915472851034055276297308613817452273184638966898330885681345726021423308493055357503737931055553053813390298867005473486027316058409417603097969145226249455771736412877027461816739643523780495107528778709200044625422362321165888266110754863287230021822910394993039936813772873908202366619520606085244398854862744630755544189781037877379283479589032967206224409934537729396 2903699902586321083100451363373703863948332415574523632283144189712152809466954327375121136270815768275887041293171281077215393059703566381256088165159123823619417307440524652356493211171512085409183787541465831596391909024480753596491593557727226065430280854996101403077276043438645773595217691019146684180621763545045677425697461124225686669147584906865843939676395877628997439843270404307194504801582176811656275628178152291143514538626988900809573641762046389603725254912302522 23158050212466174341268220229835380615010917500989457557703456939412406891309492658968961824167294763367817298256156071551082558643848075698096572422129655118945514269779677289301636811074183095807203688516182868824990086515433808186231110301001336600928673566147227225394439525472278811031742463623325925168651326433123547822606019982287674617717274784976317169265883424558926734164025089384265128949526805107283264540379610816706560327956225681868080754923654711532580232411690432 184694826300776582674575882682703474630459615093692427188749818910815268116396043577468144903811865791334399725925431010974947918987661770662208263127266734636114915428811393211836347340816061915329666171858829516832608225872029199253335945857321711585023113134060571756352153588305134101050248456922482186548982593698886555641049189293973151715885207299559808490488847605500591901543150368038377600847520671587283308533269442472396492682735885377039808689174484214484896217822253854 1473024388329280436809553347109069428672234079897413849213177918073849140447299156390647173000810226122670575960145380417389017773475070266409549908386560385939408222500562434835059201182301776995807839697902715366268061953377323818653865660684989052785110344438071426837870389032108501926445721904152640411685311649974702184738405173233375843954820386142662736900799869253159634276976897217713958298199547957632884135133919291899062206272886611072005287476173088469843448239125774584 11748099171628344884711801391627202752255877525816488525029182962098166251020762521367302829351183830354307578699433486964944132992985315114866373210436857030309190863784375229440134789682220883328041626083527378646442934071644892451077352618726188384433361613599623861301839055375691799896839391017021542995458058234172903377423927521998388654142027669926743945720753371931604827585994562829821166761919856946983832897002147816375464089695037075135611682562225442090523708057948920214 93697439050141695233919139654038990556451806368616360663532472258861474600523201189011025502002009205488888277852490798496283551256312215620707914479277267274247309821046962137828958669918569851539676284908975077352340551661888950676681797599158369821245198010433276057410588126561579573632448105192469961815805318880411068672317334358636645192178802818024690770931102171676156675812139251488416381659399815189076732116932762969624780183017600603329966528269395387300590158862168704408 747291907124754819762010887963350705382385274933690331354451177206600699464475764780317862510886964072500168790881109654395717464598729148359325485716242394568232137117750269751709278285220164670900059390574179014191706317720372218338149706826980271305114857027942446768517710114252391058878405591009178221448230886119141310730244832408538154625482203626943884396915545118906021532783743298742935709839128156876638917103812497315679384744303973029933306399262869927786958428373368463359 5960123646822485949272975252961344512569779682983513041551144698356496760266948444516068322593862195531673097462028900388360138560096752396246180532226786332807608500278264580908292536065707829549939709999582224696305600526444211396416847964604622179925242897041195083790768730956086242934277892882199682158497321307355286429450670460049234773843817216441939125544464855717627719567711669144166840308072399145599851378813508358630338197985094364425439656603005189645832807186921568211280 47536005371177831618691247063176472953601264769299230317884990742366866392500459628689727699125799290103063983100758453677353330801984189204859281756727685758735747627789176602965448772880369540948277028352208069760420083541071508086537085395477500320264094145287652697055470569444529637360021256504283715663281430247483501018240032447130170407410748795897584593326464691432078573473119523725387154130770046495773624854166036281161577446125688934375337376559121957611814102660278320441366 379133807265089489451384503188752784483125431758812668996683786884073314686739573401830161463846146607656735453534515423236495773116346695773721946901798403818285893022693262955477979407327986927680502358029063948303532233079723808757599478923076372493323853811108963299732757502058769506542427061584366308965699930016674073572060598208459700969052478877050392167897139828291869134905970622796944969438232836106097527772801872033980217991122569756325668580236171273195435962086950817130942 3023881349634143998885344932887081779760372418438688361308694566048914000251367732802573787174033082104261440707699598446355688694743155622602302552182138390319434346894469470449950526220247392545538355016949469206950304100882657082445779213161442876484458609625821142724307064048039768389446007607426221055409955701400565301782002972910640776270253114873024859777474098713815653436432852889414325586947830657202330570224669881329246648821708603473385233350729769518897425376632544077896095 24117893761666509805173567431585072660756841435961189375560825419439710919996151492309334667547972231132550414065926941657766467877525858816189161125260309661378599019954406546629320537457626063455510828097616841829474151249432258493386919211997661174618057801706604598998546442443585346514864426660300772622364645453159247899055812542846596359330886032244613314001089437845590590522753617361997656084745013308503500509348701084857378799168186010293828650105412797780968920841087995304948152 192360721553748711268167507467335996715367617037264800925384234186806618803834196489214050111891076699351731600711953522954706814135534346341986050781825588215381018725412418420287063034253395899798938367403387019966940914275783441893494941326891912771246917493959894307829475598994651458323294189722117544414423058421278465723516198104078982602451978961298552755150841491928411737191288470094527588934645535692511546833512037177651933412706581818061665437812277624936156912924262499855919618 1534248816010684069463503605396365074450091619231391322808523138625566721628238394955310913530220616608213442589561946220442296490223266027390158723483639174579350115171630871587533653605686307204501515163582550979418417072807247416265649147733426325429824775568860531858409371431997073864143842557661123038502414763847672484102794974793625915469467229891720310578672042491221545155100770062116030655519189742534154459958070119610331121495281234722831984388544520602403225480848355135796562100 12237073461611273868719882043880433527852764001883267750463597731946820157482114941155332952091818319573031800243586824383989993093919646112081581783318675763117207761781164986344378212362412243760790852655022986037137588617755257577648470039859556438351205918447122824670008287209338563066678055810677699731606623858324159429879461067505523047187074577056172271541792667180301401526458733282874875577076470234835577361953288887183086428872471203357572503964492424324669249312651215506620470482 97602670397861106221143371055869807108946013294162401591370951855470425987991630362743292649779555580658988545666621954276173126799202471636118289845172106109328231785600110484656265181215357397579052120004096025391572486860444775516671860232274167712451745792207432051954840963111458907552212863313102343140014533353210401454221868252727245719545871038057757166056050259343443651061270963263290343381925185419134046271795329194495879263865861900282050632841869924958588963343584112412380338826 778481303812909736385547851199147115586988531740481299553629784675271213974162444462905513494816439186332887433347309686221844237006046411830738026079249464998015333841544930699924980113572759363774779531693133598780226544740499718906806205079527092805942944498298838606430414284016276872222808988185883828272940617799362470301301524996754760878643965155759970633233632751173154795430357287743872974147594625145912959587680654190777954610700118915925562920950745896208789591585225116132940554711 6209219593257767975193932263830578339784207260043149881503063571448484123113622488403913015882484668072848564838802843067777132816414127555770098430623653111172082519583717442390885049927818558809411344599874842031416487133634310902843071544481703949794688939568797381305218958939253033235182832506604709856640656004095871204530939542917080299155827564704428135086001477875530453508790918161188921205838494201185248545582845226686101322720858816134072071894121823663005719311920839755091227674924 49525422435928190224931207196796588493544179445470821993176713378144849630368478527666723710987197717729923872767344239378026959269478493564871279024023193412333126821293560097044669010805263052861619402202052731800088625991193809618889848979372057347365014449893934054303846929947724538654151336391725438102487278520006265109537353597880186741959370353990262233992403621704216910484913371044199536410790445849651754344701129115502661403024274998321697670754111103997964425676175671469173796676389 395022366712908768561970164789314837084848470713942488675948266190986411802681861013613975895945958225674556004934315067521425002357206951402859787746319472816712786390074223672840629522994352846533650698908450433463028652432839247925515269772440275757566575747851764213937101747617969667662125576870336842230617315747851898258238753581696593177895035469355377381007782927947480466452773188775036249688285979208103153125435178130777596550347380504847511244399962356545672878909293627737453150909300 3150775828485286390395264082560591153411620691995992492599242364824646579568640277870131425358958686913688467467833825997217753346613833080532059084967036621159767345199432568633879370991581783902934081523718960160003783831725518939003904226567656038670001277219070952314303676669578448266810020089810117881382406267534841571027422892924078220494429085569619975790977422965959090098951918183403968140561424758410138796756463250178376374827390187814853815928771112262853850790041441183452433935980273 25131339408322815648884144709698254547385540120932524214846272309399277728220402864272866360521650705010752984741221964226356104050735358156542720709569852478983114689957033746228886663576325644959501618131844095496695722635953032265254939195452723215361159865637606289727484281055944699183889582132411253029861761802971050953385089190266518121334253984522608662444123737657492749149286067690644205503367520839359753952665548418473830054257948794380894857650461240322696896046039929481102833601980848 200454619814888990797268700896093485272359144233855372971935408701725465702407670058691512835345606490273700011213351868310570585375458431898062945199689847457344825452176056831319558662145112274238343160289760881236020737876172602263786974279069434771518201457531929702956254677650884248958854811441671338082724885056498937733453225862549101682524142891151036775459873115284137128839580940807508557250074515405498897448647486494694004749700229072324166915279661460998786624097760034748526200909938220 1598890785201142884777502268318658699656733625342668397958591912649334073888396782511216191033286936486305090013240413868322332506763810781785966737655214591799149888798249012038633692044642606899649154054924674730358054542995628124722458272371689156708665647538094011697936334825021874028081244366078510818994068401925564099885861616176713099372143817374784742012232751441709999479890202456343789158747126513811481646585273364035159726956922406455036194381320398852047889357973011154016664079376745136 12753336442099864194862626453977105794034621795868117593124344225266135755119770273160221862733227155673493630661177669092776989711321491365416338838584910349210199394521330070014315534106297235514786221451804889576040575979089007802227078151055379769549521388240565969260219542555605310845666689860230012694521185790094893239076311827986202428122426499825311669165963333799645887329637863665536982674049690908503253678513335337590487036273382921387524164542437628595408378189327712915748821294592451136 101725799872061627497828965485590428870911081678285292863765943817387400163525557974699261191964920690821378419027617479208067273780957414123460937061014829209377240408008871701796210744677447141952708744694080117248197574890237520720513148910223649825686937868235000708961707563346334918018824151937204105543585589485870212473654821374336905216933466082144672962508999399742688812419851179401805925652726019088995430558738724810986697388861987185314760862326839415046802020876649729221256470522027379664 811410608085171543631051915502516550775628580580250653314650240941759999290006671926930825809497858067717050787044254668520331032504014612452804925096658735019068193931358276798151400459702762868575459099453672403664666510158855530129114994592497164030975151838239883971999772090806538249904014849682126822571588648346460285686348899521428977485617565480425765080370466568172525163500231697684175511918999132699300775183694798502513295871522730967180293213288947046252162746781345711474137258691843241390 6472208689964366939982956027527783631561863885702620964054810782754797277032802106536095219045225426437598961679161726697389875728728597660446730134268015472487710747596230699211809718310221449349888607192628982162030133560880885290825605723792226399486932760514762481437236281812674017851217983850825361186463600767572751079936812170259845165673092603777865237722467125560407919280299880892349660780912927777104210534875047811558306690466902056718341299393320588282309238253116583807266849850341948021586 51625776683897007707436341948735201431959109977799469735417362673417225699849238775340597874464711505511974848290582033515000821396068940422267535578320945253178486158586761112121180012464128011764382038825072053511842599069372399246514193009038609342335910571566958163555764084715360547735397265007657475833414881024770300590043087514694489498243857611583008248769797102449066414542922034005626953454452758742431728262457905591064631991760745639576325567693948627442254834920984570207150065093805555220897 411796766326592531770445967815962894120308210204344017345564031454940870001956973958436651906122992651077680299184686256914267299899026150663874434200572802894794354254126616247032831874494802561966625576321966074203864736200335458583000402292973806784796278389186245963874434484752803219673998493850132514715575021994043940693665306409397906679880250062968926854944844677155006483395189031342980291569596926743988540960738527187157208083341707330507109042368759045125559832468999671764930800841057637855432 3284743824586245771378364028833815043990457168795109642376380322945655151864475432075091314790031778272854496941320077699746970565402935431579934628633341610812175615491501159008555765614630050893816256860650577194397221483562136882952399220174890569732006610272292376220893133267239888884386893571878137405505726055620968950967001049224624141722051330569458546096303525870473936414461009869829399760268947557439770756381451780148512949888900151982662247306618430388455148427762614567123739935695402342602977 26201267991055578541422080934819533208452020681850532149587367396370320727160292963644371548935155875286514347346892383119981891104761384846930460678283730381994105501878869354950755243833309858591214471290457045970239666673617850333549966605378062255557411106527804258736728556168671102876807494457449591792665096465509456987280520811913251613239538199822209357041086729852081312369557021778484420239880721819867526186954658272265241449135756110940278634330734706426484355534687176916603059950920071634741848 208999543364200197882931211516786854536233070588992881715612159110932784411341001301763624964780213643160593036165975543062837641426786395429583510965694419793367958657956103211190155049633077983205110228031273187027093697126264215937743733866117594314933310353464148441257389328381233560639252647840778967953690936128643206362846000816933765334329699142080788300185502534362265068710842199838591424708474128216904082340601547918865478544943948530250210797204601325734332255895485425529359070352234448393693921 1667134278171311210274665566153045821466321471077912021895077552492513660546786066661236325350995097440744895077956717763201960529359156023979896740240969098377290114434956779293848067772610345608227105495677088774862788573838773948083963595641896524257954363922772944916164950411842418220162999171619365826604338346274798609502185930944923648720894279374500409104020194563091848265741896689532626951706710317216364948779378344969263797551346244574012499514015605234338512274294957778711509093656462464048861784 13298358399337257786887202035023784722632776075628024199440330624605225427908967191263990616184306815826062262276996630469522717700673601457637318077694879093597807937714830807700034919203215911317274508559819587522807052973121429632469615398565540334938088381041078911667686419681585085991050104363563565959619541451094053332000633482146395135772522595693914843615303730280448830604032017793993640041143953329932104446376824115253504501524607232975171402921667791812462452010345173339753070413322506482540976953 106078577155028055575317962226965862416667640466472447459498105455051299426187089421966153183124469675550039781250071475237015312132162232881090230572982898307134589082199051116742027069888092054388498537074766279507910154003386197823887128954144955548909034647116728221453255192022380834816797142027591441378219793811417853735148067866581988213347377071726064175918076925949813424729996538568939288194622987865919176849613242384053464041257350073638542785216746665735561930748653382097198645155314359300050664050 846173716288533876896399497810617256015533374395231780671282334307988893722818258458022167146229238103004580229628694905218009518021688062559319767856644654217661461053004417911169816652990865442071840496675550193296799496524623337364636463841575227203527392360176640596231747646492787224797731836374466252008551710838039323157960454709502823510173603220163192700571729107633983672881614369722225591468394010118719285305931546848730104969871881660155647036982623948463797307458289403839106225787233855772154304756 6749841296892800629419996701427843998544233811884026079901588889913816181758285324549229566413909527158003561986319049893983746884865701666342385628216622379894655879586684704895182718793561496317831502343690896418954360423427785017351833353620977164904737565860080168796881962671604192839418964537654041044027784089148790938289485235087082081681047614752252308066730842410250698263857037119966196071130787078593019841422025217111121372451787526411902764718951062495457072419416490795412822117683368430873018438080 53843064493112678309189498828662798422359268057633318643783605485089267093304638646630222652442286631817676543681925332170941382129159951335086694926795082602564236625480447975455591503506633899047764276853446866270457718187433130111253645993068442460912190207173571091421540974483117876268238595767537043650511066709774436984843513551600967101283481814521725068714064822121208434732468903728410307837802982193798452350185393018581820693072737921045934546217162417146781216048821272996397840901798582648459865643036 429504925001976764241873263268824765063343079001249164580244921806941382778155243317825123618076250279029255601765893253247411451210598616962410513768802645775634491695595982577926725133778596224044211438065201711526194732706583437608007749800821737970522194397520153217066890432995570469742388929900385568286376980832590079193539408025181426645711908376984596112039805302765551920646973251551883315111754008177248727590142928621857619121170996899347196973468648789568445447684088543018414477244338788987501973239676 3426168271181630947500522693009070530182256562417259097017608170869157324060727645355756741493363641582988563131485881138298119830852262751611363533963864155417377326982100652276875201153703918639686290907336258550433142365730803889826930712561167156639461321699825275426210162784907413190941790521852245975691216555783361359058601255366958966472483472841341875885662656185239566390298206978447635337646308502315784890853561324767460378757299467404217790159689940238477123657102568944719086917428993793080907624967636 27330739625531276681161984944141418436847157900603913612467426068377907316296226194631723617014161927009527692067896507301543229811697782431413662403659050018636009879465204724689959997521815944800272641280701324122936174091097106024268778903814906043347180711361611806056521486533241187725565611030328861484220153320290867602308250472961186376769581697448460504628105713345363879365389469686050140542974303169516666369046347409380504586126275625262036232979731370515356911639435568302657946313238444715621054669326556 218019946271309864209518496061814495139212802294824563150440878204917495106725576550243254589744828788060535420713196550073355801983503433055982966821930289719962616803306425533570061045786600155085193916085321600693655701133198202975617715527974410520937451992485079200609763389787819496365738130941360571394387049740494127124056197429922894179608195359499434538678136324638996407622221194697958651704440160354914367479844183778978319300354349007322233332897880790714819668888165054323590170910847628020072196203045230 1739174712220660617670910556943980410030048951261087041031126611552341868658221236834298921645310969970018361988989022125584721283351835560971295060687116718794800144651325236833179902325817189003864316322449933581179091490915450505780489535960470747125185866593839696979228933163700715163989512458763671662883706317441491547684162653196094411275650871837962598141490985977306852040472714504518283630408299463684846100287320016342840112921196775725077424200447562614795759931633992767815827044751902999431519893392452456 13873700946482276444847113733398935060098356791318419948936108215236439974277212359931552161244568939502930352848829662163425322030048717799844175285603824697876009116021980764230460249677346298516741413383134191071231071909225753451677625648488226749055812475952387312940557383926727027525531675083660236112982146849935062297862099185098612846928657537680033294786890871071119918299974733313548622654113265171670636072119817058432398048527143696359501623087719178989169518174325765186542226428511610307881374605019465360 110673481325654644102392318793479945805955402384732838971807129295120009797521928413490162283182915245161508790026364481733616431833111035015813909000217080612713834468114328999652171515399991350406912408168081164918588515120589494380504924249555782912806500539810779987420869935218478160061843978262285811991814028959907957785629113351657057169952184608560062914393768040354637799006188400338810895266003181450395778146665904731077387610401186081024759795652509514158476177896486112722748747140920996452322122599323596728 882870350254605487788551417745867509398170131930582278522539322056600622515872463092088857434907769990148076019933568689223370655492009458726360300120807544749915765297463834030314544581490558637116610772787457066493653856946583368929820029287017813948773551324059142423385797729956629305902231831720775156382158566444778340561179047638150229920296580917561495092029080986236168517686589817549767477093812320766050020144100034811968224240158335607342900578854997964016268595550264619936357097423299071155332588491130381952 7042914300848663518402996075406616875024526592944469564769941325452297192052240196237791803075059707283888033377913673235112606068955975716450949415182305631242112369684716224027731852185592337046525957366488979542027974689754141966027965527210933107488118039589202003463218122515341830877080767344257695315100125213846105691041300779027023970806588936054278816762719324813732049429512136087176539920087592618245154880566527545614839697174818279007850103175035886094239425138337615407964499068198403537642420515612562607348 56183653844084544800977835110147129790924613976282004978252201703780372357617275495486980248824844320881549428402471162769281611098734379541075266950713857555207460742150233893258936932933850015566804303115308115275287094090728085421040548944600422096999056525390676071060692328762280948575076500253994927121045373109365548318626803137552757247797532716979258098890302992033774630887859794783630147506388021581938595624099586157031683120469311162487644051365142081858520661365459032171927123387883526756977233379861666366682 448197729585926828280574977216804982303267941260383492665464876798517592213714537533235959961959089329710042270114734283092349975168138552955438362631506146808398942677272351062994631748912814055019402834356846192287190993016123676814715625888288778253193753523123972987602664414188248905673775900237301330445253769277383169162367228695358752626762056376638999520841778524846264089996315327877131499504203673106887501262728217920680216650373836084267891072551841232105222403146341489914096787851812044371133944208647372818596 3575455806410590995177150814492175114325085362730161834327299315078475297040573745859473985823193266041433983081473853433527559605979389714339607849826906312683290818634260192425945576899849027763048673714969993985807320054476534209368435924121041555930948256046798045086564613531259096354906858238483717967319855504361257104708081736862237830306030874336667368397056032146166516353437350024440655444064768637940297937291502751062171328900395382262979892983767451420258894176088605489165716733702224586988687071523200792447204 28523003758729539860816125970792836691624997593961376913771009359045973527434068047202315493216904260751250790262383079605996827456192002693458016625553463118566715401317528934471021482647043993325509005968341833859792775070555961909897534268232181758301035308053293681093667532450397080017004826888326990598980118797728258973584207417133994708033469248264360068193489560856285150123014698576183163618488572183015637747662321825714818590101396959292548693890594364285225247181867713387693333256366297457101281573240522995566756 227541794808313457214578843836733337855418895868315305051261699882531866527310042666068010837772753475292282578455979152063003209195829381394301846443594881332396429802906685156228106480745762893036270679794620628814053226567918756803302032308269372231180538277126126972295634197440480894180193262903524823008873451833290726206697083473965938751099011217026852815763863320402137058712050640691121312058283543226169364656756700452312623872159831256032735794874928085929991202029895860221457462383003766208899779407823945365421460 1815219582800022626401102394908702472052531713205984270840297558650893799179327292862474751603685244648569107550638789626472307123991821835057284659250519076111768675922446975129763913344366711464719370817189097084513917180383956846187950861129138692466612497992002866060797060066198613466387439254319542395804712115961794843778247272217650113827650662031799468025589455807387266820962921276567097304239084932425687187879231604720707701368992502542726501674341649190339845214147333658861420140918404104146755983103587741575228064 14481022167071137366243112178378145937206147377969632331404098864150004039127077700949144097557342451246372613410180484945930054349782086294868373289114367024826782711665520005968992411811271155600421174343746544915026402621283677003173894901127360951049382301118004664583648074364359398381015986094188685996378873117256805642612790347409977418514364024992809489247582246953709587002894557362552372949998567101467433143979041826992808628500060218330016161985716781183367594214304400928904275591155819295993297238940988355889966448 115523761994387833670818005697144927598241156452205750993966064924281194456135223176217447364283981650119039163346368893980597299854825044395588892840896791562671902476424368219046661407675194829675125953397783185987924343912119627438014945822443034882180805604636238127376695987730367618216420271178533291787944163095787336641475633143995318982689446791252336622507574919970085423682522733671963654170362778732539452495538276132684763033379655821424380727531537172019440749439270197383528510153797057814883600072549119903821372640 921606386272438163396505837164586333552031598229357942899371359819053079927149310539489602378577377899174652061802179946157089204837411761947856685399656287042351201800406888570843035441818674278332302551546100184409221160309967101566739653921786532826157775049917431575524787869389370509226837527516254554932814753576830183799654400230159289710792454032486721785946119535694515550675346242712762757379030140644607632862359597972776924492867767137951422639495764648121519980402908485052085632602013966807347659159388099902451967888 7352273746384751164264820405969080869363341071093677248766399937070708442856296257014293250419744347927155141140194518266114845260469915698636203244227243922924545745302946136537011765696341335627204398082855613926094147109053624757399055720209720923810361690882247991433820692396055785060017843641094520325377984457613816743422988802072721621928101240067543443680740191972450926584058840045000629077323929714791110193277694404735082356046558350706626294269723775578443576043649895230640022293113557621286033740485087264061957202316 58654305359528331456486469871826286419177437163616495400857324163455455006510364489943798576946923201543220968828693281952055166613772927680027552343660117593071398818014774165636984923126337816379520914351463420937063213418198399765225331782946710442180699932679252200669415474980181444873205125598545637241899740253958735167901309095392631676872015456747789588451259370432980674404590279506610824784000319632270762874171605816145541174531090362567945163162816968978223814783012842159913359415043581077283875352235094427365295454710 467929203132600532673687584963120572926651057017590446829034587174102226856776442644281537301023549669609943032810486197513056357710747972591321400987495832916568735610047238756874922682431480768496841911246087572716738347860277429296484721119142774662415916794217677172597603795031597677200916211385306694287094633001043395085271667444738450213150496276113912724998505358311198010634587629323180009779900837512031865942696048824416869265196837856279511533921760511439312180928026325640647215767359252137209429539058508864035804089216 3733038118847025624092830127558948083983687288235016522171194871414389511105672502426089214826971380318296184370691987508098985808413781375827333936451853179272869152146891414006353743506752257927034542170461070575405949142872157998348087759938493548614947733362500095472995535748256146235097185290311028872075665131558188638429900698557441088157001928760796302312861641236507161831815005143765834250296338491390608584725323737203301039682548665051213595907959730765038844356033688864728187671946611650685176169135390505982072913188920 29781509929048335786696764149869429700677754109892101925509086366436345245180008975603593442802007772923165082066678453031352618696815853961925107604002849786231151449943680618370115082989464650285310607997520168759073600488091520593952813369757383131194618198790995468652408501127076231409410821578913430924162670294363326135299980571120574515441970834370185483127388666758292504123573321796896853430306263651658026648462408322616225629082547215904347321095996386941222103534385285614389166965194743138975372720760509525165210707620406 237592653495810393809021387348728251069339904366057401843193092727746802373503109448372476331166685029791552056732057279238238822674171792319711104047376439424928559602380992361404459640119122088756432669287676693422577451767810252756624396314384347592108093000139730647361107118009338750949038804340498657420118662707277943611411838296047340170668276830428849380527594067386936083841363242886325575397264276029374065707349605915827963295249300926892561270935955322843102509177374104500529398904682643905010598450133922318543788455344067 1895489151593042494299650636942933859800486034556943316989421953336456731102112575946839594060260372317851163201188462770710437116577269536917637016423145353753067731096472584476653248023899771672193651217374650787357250378395709945213133515971563656410410901924835351013906011147689053835119854845506240515336977784708059187683611348411453591176765861182510771483186796994631510770229628617609408354533633970441678079821972792987206054945569915317177124324449848652673696209143856414771193037029873439474509326948127808061949885755816178 15122082117308830779274796987494275728212690334291844558186887054092683276730531582453435276522573946140967437405219710709387262911837088221654383346918639427860884440044782750883628393996191463968546666127404638844837265518544292206716607415416290771316646049350117212786524000885713144201666375638101852591339570435467112282845314154543138093676446396558810067036420676435475896208496660642009422651286580559518702090536203639353192526270358301719722521815913034496921120209530581720725598395013318702154322466664777284775817704243079111 120643483302162724947366557313677123979281858780455706277505822839692903379635872395812581876471005104137126142502537492345878756088283197170421893620486228394924458230437923807150021902386259325889092312197356349061703577008179627360584929488784203175003902106095827353613599132126029842903187384563318673735280460923263406562130169120931816836359170682942530276965255419433250559100590424641649942096023484748388642653414151833454063843917039631591640517565144281970135079911698124384448900084859639973341993165165335077413943059809750718 962494206920856607692399150417359006800303656460440011459780699855694181577475693154780092376396028430046929413717284899613851278056655671034677230614637084681434795382739043250365973882195550749076466209617828937981709816079517096842938899017624357451416565622162847601863869428669613812079153247090177080635847042774209078613057643114748071222433620583600152223785291802313830591383605714187416631847788712535866200215453163837992400894574809298259550015972659855361099846377569922404933540567718799290184930620382434733658434544103636121 7678817649155100986019326296846014183070685649416944864522016572390266728346898908590062214583471763250938223463193615158967397800687417251346137478620732389541041314545994349216425740722625019759942761517506717393129632180661875812575259688959369395538695888678750590265733053008233434167959622900660056343661872322336392818358992441796003641309756083531008154982216250695108010625570904262711317966690588931347156381876499121254064673779922858710161157605547599446816402835679156783082222297346179498580986618320802715532253493649429246684 61262194800517060420411441400837900388586451475334907246445040472688936017605562668334766602040557244505719161161309911155428132237707538249075866508848557991465176566865423953426044863530468087371934795402672093985393238385342246484306499822855485513577241197356882650884513096681901282274698152087395952401844545789914314413454345374504312908795141547741169598515247205067557571617147042791757383121117249620631499970784636090479477988766680529893625736455179425711403657077132450083251412099352387277608316350666267456650866333482435281990 488756684785292597244907128698257203322515567234086561371354103776647399123044622676604120978023991356563689980741741769962880203349344740595647682166231228085133711635108951528896381714656248011351694765610799738359261232795320948242884086863298175932315865669300462256891460165234158956298726254855530970267440292681383248657348381505916756094625878278051851657996923711192828618593016127036383214815256422641366753668676689358395994707078445901119274075877405275968207825184722771022182964866400213584275448264901988761210776498451276394176 3899373385840500635397402808266487432456979631472926466407207272113868660028168480167171210901436377339995180249311316311693473080073415704032842554452975388533122252872791997839965412583198646849685873952186529694777777978782264814681590926442191418757267051675536663692612963788800216035694468779476339887441084468788397631267874522816151648415189636448811746238186651169749277414788114160572486900311636988267665244303545428518691977170920712174428532960918202466570194712949277783539308795274419402934736696911591157651223819198771315836983 31109919267203854708287906553684046762870873317486671959999477350276694383987570548757609410781504365775619242377770604312972296217908222743286257214207646310487410011006394150473670828509700735341390358092516314851087265446708827389599474728776300030695248061303059553794340303490094432877581350874748880270605519159432843731534070922100524494503119871638862238731174523619197689718221577338373270573827309220284048864036540700951111917809614526383316208839861640013971958895466795879083926777572336167785999677750773239249930483218184534445748 248201777062571642927754811458961361998255615704307793420992382736389571733266745905464904154774169418466617610208997717993711439334963461614809976065781807625547946052714804225556928401181047142197908437408702281572772107983238099962900415665662776730537360799757557211143804231869998318359692691259430493279255837802426300351227510026451617241473882397509133808406416014401019745531322103792927567564567455907031319504713605910488860562824211376127000221631249403948806594939801016989563116943811625518254987167279053117127781910040874057527990 1980217181806142982549227919834176000908596689684376987975870410740091931405639846154919031998710190809733111477706236282095814513700560742322116503147104852007924006685386535232780097617319418907220691421945206212269778240759146794848372838984267068051555648895337220117120593773094815234068622161572741835848881397905163351954655945045644240830662998373074937169823039211393941723308549895580083055620815015124630169156286847823327262468019906442798738321678189535643780978496565776700310230955436311318982895113804293208807091664285632124100316 15798748705234145717167534711388323407583362432582178247413095064950326741665622560194768638087580586899007809554555976858396994970129139795392622134614360391468460732725367141280968236822189571690048594924653096550125264340189601854024988451284766701638422918143302410610575922960391965861373649891859872060188475203381879503092541882423378930941528451690073574062365410910882733235966551662072918410476244216997389099965334659739277299627016162391954268693567771102480061792297562618602505287613465600278900471500888191715909946539740756146648390 126047570928050910929318705506468611462688212729246841194723366635509209597151345125464962901798335619186681447017998870658358794999243396321227982772869829678932217001100627530183656299117798399839559650725960297656610634865869085083181099314707364034083010092713185384152518327024991130857109041856638001048306884781413527139892883051049787440390899592863537261674063579246788451202305789510942655938344614145489649785124492452499427779107038787566424055980585337572886895398722064056647058934951790136659079905860687327814816629428112190654879970 1005653076920864673183759456700108613898329728726030727920449983172703019785565511726404627206245491811026342906881495805701641939563391267026696649574504863225613943527963779066252626795211816827531187350995569311565742118191502011978432990669984788802289252974877564128841510657465709466955788887227763580689429019348706070923938548904672402053688076183397076436333663172147193280604702758281720192265190733817087182082430168140196111226634086915748096870577956830669574662167320696919404292623320587296278562762488114542263334160061588459869226502 8023499001037491267192243199786460159889856844195388603464745457099064181350017519363377652585209892381575141342158212317614995329448742859270475011008825998960871990635955527388901654630200751660840798937868474173073949313232036205894925111762233715736593023931632667170363647975690291206283701975477285243507789041594738278064857775355500207983866002840668042873725374186072995775547809290736670155011910735850126004221052856747539223849150250518448105991627865930353890608291082338019142584520286300134335114482745940773019076124374315149405412918 64014937093679732015101243511217514974230640248017359519402810992027480589463721309338137857118072552463058450620098032656101096730207499071764664190907291028431738643476204590718958232558727610225852865462565813462800164375259133563684999487139984647837734837560332443912391329315226661090614266510352703342719278970723617164576032430058399635719454722585901661144507501610939719956399347641107501273590408734779718804002453619498966659740548733378563839169546349555149131072449026675629845352440144296592627234857024394677975831498810331843249633711 510741021882154388962514541646436287285358385928432923650439444831242115087806464224324859610088871999971594014452240366348291125268336506346421937948152279849791993994017467185104146981734040792595576306446840969098303768080047544035658754245441668014963681523039410408251007591187278326564222847000465030622084321893177176713706453428726436835818423615101981804775826167207425667952827149711540086893057849849017795257223617577228896125772811881002175011858976608415251978079718950936470655718473062469861705403370315223375282811746819626984953798270 4074947809454401560594875697930124536636313421759024894366849365391251651339646778964278913393587047638794793818243519155842212432350666881401604832021500677128746431481330210721244180849375269571448992632567516919967689544051377644057584354459600823801452313713912322723393227428180530945183989273002643130414883220177366782050326726004558955304902815796801721899095160329967330001321322815758817869503400704483930998819533958894119822663212830870413949221194073653749725820669282593258940810070209083203172448092703391884138356868413481078966299131607 32512116776376136052331011475853442698224539405837887811008322807278893790563042568242646269939437469309020387144899327894579911008549026034666889175672745095970216507846357348328716847690986453911670088520182321147363794494661605172730770094955137351793631071855668254584484786860943916586417436011588761149338871875009151191585495809994677404009591334807328512460282515407804169669952050830763114978103746927694768905172580743182399642958189960737957175719355933758992099306818110409108642107584519023097704580657453075159707401598349330563038753938676 259400208627056594871782806530354407551709719960123020910624793974755731193560927853059993279969656048297733222376866262965884773047271630688714663136956324586007986422829965651810658853628386419397441510219670706703898518985363592421097603271268039907670872929304241693513974990686168321260230623049571015970218874678538621903538938809642815881653712659078093442667818352700190118137299095427243536430468116159234801791092743745955031725450418986556740594247079624648810988539936669225687841448500802273569558796380351330168393124266696834772617719844524 2069651723137450948498182421499720697855331027056011977742689800559067604400804458347884672684248425763211459005983406026962602809638148696844978949329852165780715102864177574984559526148919962039326767180677954582096900401305105664389098470647777437011649331460373387769673845658461908030594339072848652416624818702391681571653480998589433586726425864017908169402145391316288325794440183333491716900299305511265913299388012046021168661313091891026343662355828833536469104505122541065556114576857406614689487349463357302847894237755057125870563239868754794 16513003966558384077420231761510728226926299070883374948911690915273402774821982710229738831056529447078562128697339638326103649341227673104457178251586299095800323554952618822696206514275786339903561099808923271132190979582026640583512935359507420382222121129235742210666974468156827677038199332956150496857703137363400057212783618010655863223428677075572068486806046859258439021658928748662629679731349660306496985573226498038430588692254823925117112504433923444315666730621082937353788357004867886230708190375894880422644237660473924222230444526424976733 131751862264301380373935697284210096386420778425216616227783164460846210674335589423930301360771818838041899282230647900451655617668128026495099829686160843308866934349604900536311987454507681727235120210018889348347007542696842737789187972284242111945720916273593870880805530529442572797532099987188591371377666833722881188696715515451146478583293359489387500260970610573544968800991149182515535530531121647722032133547802889148047042373997340508765875867642528943507641687480853800924710546149623798813337338435850769222798382941783966776281875185263933672 1051209544279755099649545401255122430002463762010682751259296622816090694898496596255463412168110536745128711297516423305883509594025666530602559454686376877044953282960742953760870408663765880904565814538087085170982426270932739277681039368221365816718089461114993067692419987756412437185524009579473782156966730176816661886236583206680959757710255557710910223833936490367738789914089701310218525856562976575777613910510839794371694800903138699247595238319196121898704279621924944477759570474797044251588947354460174784549171150234679167577728021382226238206 8387328977214196919590640350236823731915093320012065060859178876239894516792600998882169291872807306135630351760652978552510175160530457896907573148588257692992523044397359643457103739587068663636788053381704060106569371440838801855056461977088266794911003308085372502804655471398237339272004326901786484784241664291470664288534389718398222810085016742999495542099521626327189148435868117545844362238733036848618971995568767403247554161771354558166951316039921490020892005447489197017036109962712972816838921453055736283704465977496118565618743749317505495392 66920611971095672845545536603592987726498118779159912021427937689206591480858807892561176689205771673904601102807356923355228235360964941659135335608537564629945528716916580583382670029354660126101815159674966872525298686340030307388441431960472126795201193381487703345872505303228511506049140746411155152961685962074343996262081112605034633028961465206285792556839277235535623508079237620818339643261992703953313569735538871402300079339553045213065240695822351515099621089436347519118324173992698901486006368160036333528024933640128743828645172063089969579997 533946774939971316327255566659053707778269336123252016373545314759419720180010402524693149219015046658197970617972746992843184011648548103356263459425192897788736384324323306226196435796557022453313917175646712661922962887405186285318186557886608650979309472579946116127116154307429126014523473206369388615343888417082461251249703135783265166108127134873482373474263180571897782284154919933149735867188912418847797786393258723193149307773591649762661079355204417620845470844894664707307426236759158389047340884561333464504004586958025244302346647506881594046208 4260277255242489164451409389810777126820476290735483818590515496643013440851962334876444645180388273978158513232579604553002558328238694516557722504821128351179947628639588638503678305537553118845025223908282697101927336569078108263251552180928279853248797208194116631068687410512458306119794250401661154652429178304821431769564980603064884908088028020405403583564051252451908323931063019556887030363292612525546210220025704744836709946523369167794055445975030312163340757560460975614895394225329399501851444047180912443715118554146772743863737773052970219580123 33992224433589129319800957978312804530387669853508024457623136005715999187593427498038602222870795921714811776492896572276877726508107406646673852177262859774689034360586192322349006764988354465621237886813679427118179382049501671913548008522793949887919163618657583146095761361782704360744483712954057964511554589292136657245919860443296148439513875290638166160295228585488487674626006840955844605792335472681587129385199957736745552542911678240085163321205219706797149659398530611145831266409375337265218862242783809074225271963589654872066384398668183843675882 271220884437146198196415614280000370075834378489064203646438226184521352966006463365011318000396003292694846496869871257086481197345017274142438546898593628296377011954900939388164901795185424200659759092336208999155767560862269463073277212064324419418095716487886654024452644430189180722196233192942706994828481307965608817853623647410570539251893564838846321691435054320612130761670108457466604687216977144337916136116610260724034555861530538180520228650479637555680546342083090050212695853903052267060599992941290497716355759554248009403486617116108905110356214 2164055949119145045602601335938294623833425792469561435488346093245578031802157644082162807541474600669913564093867389634592723067882168605934573632269524545683537284515374055486206651554833744188430107372537149160525895235307422418695885679483402800010592687801363171312792351342088776060308358403011462557538484468001722233651892574514642334629595141644516933894952577576414095467930340492496379988874349760339713249527387807375570941321907456162584323016598618217847255466754843950124989282227340009752745349421805635844520043846886764154018943779831974013334972 17266950758760534247416554529186692463247422806308867730822694221774524409071903877731677532630375746382415335832463709136638015848711787778750197802051318821446015596871649376595555299152621270962554422950172075234214268957270906145982892090379435726137640986453957892072893594696328960277270230920745806184229871080535109328652626724067084050932598271042102551333555327343742637752501111875845894480769452856647897294019560728252147227282780092312687071063998320824640004661791963261891866650563934397651961097304140835517975194618807852096577950524322247091138679 137773159931645123060297083488506048322480502189806673270098046894892148951624066834189467802016864645840250480417436957291269940497869778130553268999780339571167679155634501364169978091113016617223235579761214753195472897205761532443831782419642346600859264510347774990785114046558256557363354094794887843446063531990248209376940013258077654774253771250115463645188935364906319253214362059572177643818836296771942424585668249372435499836985446651262146078535727016611171420109299982353009570793632700157024047985368826622162674098491532619144857561939093891978154200 1099297868111490049496236889681583981453108352350455577619835759122776164618114026978497599060310837544260853411895677632110239063188135344044090801854006169257125122852327261162197042498358924224471019207396845157446018079000421038122430981352539075889230825344318642276659138166406187513986125574147666170283163024991209116732214783091748844644083939538117505340053632871569986810894439764374697938338400233579769500433779182691368904678076457160732810720680255711533248759261820200238635591349110812522930660287818719186220724399439954432226007817112698373910937681 8771380356299847258936577427723535777444046335699219064575137561650660339856401154518049447162396478446868643220859007338118006391357900192635618403204884925261873537334689867947386882000631877509005944768624976117740361551878031404997401692331811351931392203955885110275839587311513965349118423744157248597471468537741580574113976553270443324528980642076802276346786119815489215581972836195335328934347959594981099188671269442412769809507853276219291817964860732097121888496652033113500030259494871227619181406258613890472219305491105581987880169013963782141645677776 69987791311689778522826832722986442534284652667717174391874525438197850092203377104250622026321887821449875182288428344465487489152634244555086154845452955021848027151797991770724482361461823755169247255424445613044752012251993123074431421530299473006037140936026578359192894730624335176270773480803426595872562756168751181733767822895042476967625847028884306553916972629035739338894160916042317088898600977483868196306131521459252253294525673537283443751685841841750271447210723718474128044591437863670978675806352007693850007919248110230755859090668397960930412694303 558442436227164250647054655276109968106076284869038186771677156721160576379402414410802160944775261701821264289207967657700380856384619006869108629766029246013819450162150765240951674760884731834625173873681967831167366797137854989472813585147705670333630314408781522630121204738700919743064197797257371131707000695499212472983960946688407927319580975881732659425538468250773341423516673355511030985502135450656260276673215634955146626240853133106338069623803047532424464587310185939265901278185368227594352532695994461362745225716318449130630708767702616772818589308520 4455908999558740815691754045489648574434238808869095380275284382487915508819019650013856370022346458295204844141491676886407437123609415986255032218891704970016761626565267854397932016484524716122510244213297789309920046008654772524133720223883010243040929186318861726392569748896171280350936454533578961507895353431299663151633458596816701441581210731756745673644717240945602424012771322598461592382487653773555177886875967941092580710917107419049593913911156359716680410490349375267408676409528661438197262584389386491247317359216301071168005093982107163132216922966419 35554615157926785042106807828574751510151915626136346886413860921761446384728159371157124037692358228253663894143644521737293603333026086218268637330622229225074390202443784161407401909981750697810239306534904501100257066029308853391110978868686847884999538781668770814091867360294960734335432844845957233834804183463902497891279935061667973218627657320147026886880410819004144388585798135488927906417913057515895329854285056189634874730835444785487238396941600032018474306953439528535486703895466881043625359661800204332763867161115315999822370312523886459495227813114216 283698745533230476997856434733317041004365591847210828559527628232446247007908470724832001232718928934402116559578097462407873096562913811250492509309459158201295227958254634793043218027548986185268691305986743343990225678684991364789124647755987269628652798467126199523833358831863102035630919119388702767265484508952130799077000266846641578431176046829144785072210422258757863300236744431644718303943912547718483623717931949165702763685823608956802613998718161226912568495741166068418711320282735649706608221966471065864270139801845417582742409320227625794239238438087431 2263709049756816279445511319035223490367235960387707077295776334462101785396492103522885569486321478126009568818161529455507824913092699965848236188726247893328025988879990481810161717271168883296807389965236206134017867073166526153544943519864517560987396429237573459950031855541414166095710881050091521685775646290929351438928426077957992371064688773644471648840026232362795871734684944362092588645294985704487774743484552544303787982536572700832037312129597157638224357791726152946148645587752427401431749844835615583325165476366018086388295442456830041914020685452182600 18062819896846627689979079091761749938044610191154143713974900839569494274741011728035869144581955526554867795631121701362374845293682816681430404955879201587238047602584042926514021985608567877540141164030763352138493579997032117898501180826342495992535838735152092192789421918002632772456770728833587489853219189402711607943210955048741602499806118376107636036888517493622306121164390323753811502147121708099985031781608215682010505068965248457504524649919735347628619086922992103513732559558780443339444845630785003215664076267549405381588749356315830621308222824244503663 144129288822270068339170097247845701119648962245010611041565211363015554518105948729430911820444202001250068423031250415826815060902420334641263745718131553919720241479628581281138421378566517873106674867234397251940043210073922437747162484745043285568329698187446242178660268011816940603515767411076858967326469630813521413071587830843419875308986770446779210186865171274192751614578289209105527266247662029345726889989825742415054596678588393568384946733798590257393889916372882658348150428023226983731872097106535159762680300517338569926831541313939505544218841620635410110 1150060474633709021417962752613163322112137466104975166225327739356741912678699069331788946054312836779791308675393921051792049010089691991035386249722603779419414468292788856317026932642399431948292409814387645832863585330934826673938012749325705059484468352149982141810621996239535279623961409878103426737668309078835807383679767292194427389851146495891712853428545454466320525468640590570121878878615858689445926081633474748601533407130638979000661702585798098062958502880381107602808721382906353333678962457048111572542995339492263774389671176875682790379181473332499531274 9176791165527635373407306493746030673365684332121965002470907251921967731429101716315735707741210940903571752901863067163918919322835445591996846053532280149450401629906323898031306879224965339684602662494388728376182376672355640422097348076264617987604237397054219852424479124223460267697333199655379482254783077384761290659549739567533270566779167874380932848368016939376588839995997405731341672184290879013100667158290625147477126225729541976637631744867671348682403484472463613306421509179861472176184072438034629246366171711636419734189905642983099328560838065478451848842 73225568280282454404990942417550051123083096961248812945067087096747044682519429147855632946800099713259546578722608754964977787395676707000418788679064148921874046955248403898903732271664649120721730786523293448569125588901328741102586419275040563347872767064810908099321594463014661644135168273268017224267947660365966110714328287824112251004313371982314913650263133756088277488707022361686243656139324026124070730902435184757452921282752629859650942308002563237695952117377639881261846890044752080737610842157859072962970948178302372323230223365981864768967953644766614372338 584300662695729544871928637708359014208796758185460845712739684500178574225830507348905645283476001051829616619082462718378099872471738731288848466905520636194345939503073677323524618641893442241815482346136570197425961333734086177324661468857275743470921788653104341463027495922819182437770159136143448535624943846058943693599841423251611828710858350516911066772210022789921055360528329839039355021751688142840615939926718348620166519291089549190549308708691257525036885606338232308954622279578721604547526584357326175787370060081723697681720956942229577784297746224764024530340 4662423591561861941879308230573907532132593537813012327452667638245496615002946112333860384452330544468593720244860614110278857276338613315859928793171983496369112965775686999947026839235605675077750774829352200738963071157628965798838312709437624349229266317703630359732732445486448686172274501513973146696230986935026588385134080186619310770912231826391310228501731202211019088096603428705257280647323229071907188620081153931652466133048635994978454787561288828194102644479276718591954305522789203476298662659986391974704026294394362292394519393890942019621644269163732218560808 37203927694903985697849176089966817886900026079866904771252298002905487890905680295250986946806907407947652321105121185373954220886824612299937299157783649239019836528238803079319691165250984377871304207517486356287005242710827598133692711290392365917700361088795329210610506485334323920968818754379703770320048568655504769953431675426597543824187772996329093030714332144263521020436776757167930929248319442899646754151930538339177053161078552853099410782457452071065489571555190590419268551868462216347987612096699189493129119810943063144428584278679720125733471172421927622075982 296870856729410260861459508236185982214332290186661984303530650455566561911779620464537319563814186585862333224382584902766442226119404783684925910228095967825066523095145552857513246459636878167215192766848303202036945157579687517573813037475794563498161595399923300183782486016624563485972848594046124559565554206460897666500044563167265809791487456823335951104781256599995623362893211015878622784145091976029275936652816130813151552768970680946158958808298950363389401762721507674085242798887540948645066901194560957445250749226127710677400325159011359718405292281346739484041899 2368907182625496985355881390142473439854564173434789967156419305497567623780840431739534870757507562858662233662838055070018456012376998149534908941971571654283412076818699916933362975189450467312346288570257671348002194410102047292882326855289024123605292780826711661468724429982364491308455225259177184564933364829832752631113366258987187026731235465246630902330300964661400213189983561697775064912472202961574550720753211731043082230078383633093312506885968742785748469527719436168073487714895217216211610442721944250348101585921008106315818759769640728568624098360531608892675602 18902977756062373467920494527468470822638216769559701252534463328039078049672280181088573500481532534063453265249076493402480724108774328767446603235200088962513507709423925313633917258243251031278206074086250408331802381005786506802961337165740040441660530203176143464240316823392070645096186739750550540974044329392921462636388629385202798111786068468716443836205266588651076430616483402732574656188442961326828615970970038846342313985957181708673636136599846410867334765690916609796363748373005732093988083184960235911426097659750407795671177221734037210305529898325997016748167352 150839156872867946702015099732579546151090771172944526215587298617365001377172913436982826251532805890435178374470824333997322548616681521420155645061716073406773034680228455256329151139325079898422760848676997376142373699422610366560983993748380584848807408621846747826224853282485783549404667329156573457233902195528422410284663509791262639471974346955163675322709903508645987056723865549836547399226911006895465149235749006235991063559564509374661572703099154340950091428773754834610142222657150628328648351621289903792283298007185115824439467897588542145575460925020916362736189344 1203648442961240839295830244006380238985201975583509160872872389887331329382316170078199000949495471736590614951415863076784207097505004725614948341533309929445704716604550086823824326636372213185415430960833730313161484630047707125072739795121884470919503730476330438486010450441933291687347702231181346905807965281923699763862979046904673936245420953473020373866251751559586669667214432465196096094553278365607388335043667219495655494189369827131449043414509783563700745195010591788895524332442560291057035959739671890217027157589308414035342458328314188754319992850703437622029583299 9604768563957840034608098837818181162531492125383165041722659802905064188654955026248620061126287551165141355401506578000641220887160146194298380616922983191503255576934914141618376709624929541143282875887412138757298029157380948537426025871707012452199894995909082777952580964869503336514071655011786439167437690594112369712727322518923594282724063975943243813703645926520601229228905035186717891432201989926570323696966443805424184583841156644419543803774166341329490612488128817958279922140274405081217035182043317993639828652784669263622482258235638865887373012775806298795337024116 76643588368042674164531834378981619941812293289413108601673877756021983079961629777818430273445104854979954647394840590234226014719090588310802791946320075432495477712254176684818406445387425748004854729121922428145363026463413602125250469702472138299077864860769111261604901810159927884630190971098310276478744707092075599128375543017528083633721764576498562579441874539411835803321211872484799193704094718083023435356088615835232507064731902882659201414411676524068281227779534842467509000510214714987267179060290092509292062060902469263213851224041934750600512822720400805318376303952 611598524102376629886867494212395084851340559469321698790779610528417050733305709243261564276411031134337981980806189537236868265084542738595660051147716138281126263563180652696582160482228616009826535079379769141371677835389555309877117194900154678435878187665014654412819465935764593074264359572904193737097669585579025198755994220172334033896219598952072047312455116484845743022849776755398620586990393882056632562598243954969906939719899549267544884272560550314535806244579260977406799500939978984883130351859223951444031397038491172849077418048061834034661712843941418761865466246458 4880436836558538689788128725692117598204642143641080536461814385536084856583767861867555562645494933972361124549564767404122585929120836450175879641251477631066083611841521044265941326726566033359954060416590094944411819190371904472213048263305714913719568902727281296679176726900799182249136693578313375490488129384279972978488989154395137118906215086675446892279574253270859174371377102924626821981318693636046814988124896835028374353668120465038103923566996837872923740251746072672589542772617564421086347712806800982645555252586797007278846765006777370866144334522453122430995186579605 38945082470159523110364937763888175257873907026333942492274284905002321704341099888201466816577759611700333821855461295650125250017521289104252583656670625657993952588899481819254441057112195596682892988863068330334120334811931431466013480667468673151022337925774033156089993165047397958954875628045074609271771817738457494056929033970972293630076153890322608257193416116096584085516325317719689136118971039675885680813840010207538969525246288639486495177657048877883815395321281282631410457159767990565185497672152906098502458950371027207745076857931706278962389413089198031001238272133820 310776533338257282581651359811425372777502828788602696766874112219550311915529324849531407367525118269141235018849925906809271435992921780911915126470427368978684387255222783221881927592044848899279589071131542444303745977025060784318205222151440540923079242631931137250548540385932491600474422100969632272108020684734925796656296399712013788354758412971064663555877825378635954548573096601425012982237390007454112020877197841000945846055044826969694850243763994938079474154065812355011546924018374175251533721574187803082007844201350449936491130282496168373563638680565620011669812043500707 2479964485826680713424327573233194586425313729677470049980518999105436639418328679217274640295360372434930699347483707219128360474038573022840581035519438105869108401594188807761371035561966124623945110235749027429240528174477498358202234832745511320224732754948958784799470943727342336291250227191116297774513456440319536648885850514795642027625626266610848414635659573795921117667412174872229745730789356666032323273795669823927472724687188498973715803394706758251698891593518927939592725362567666386825704226777788975502583871293016100477981216590764137212523033646461895545432465190381598 19789934368799157951248573539881603240426159477628830949084920352736062616052069029362781267038856252535467096598987530382104696654025193458199623421806213232763643561841270633938744073311973596173168613582386597718711985030136052396583333091950440111839850290791826167964574474112303232516801732126668767645780376278461555601660663600510289933473001860909497197685286049660740825067234400878406027462797245184727118742171234457616014901213535561126634079472913185197677060380925967714290830191048903102601944316745909038163418427494381009439567557819171607682960872115434745614372883179561410 157922819785712780412806856628697895756143072840097321443596699300445036911245611395747896434717317397558228371948002008891648814377998458508072438468428298467011647608173753634685132371388709795436005145960706293381250254006371615717539369340975959769007356492028551786923603106376448644277645887655788239966946995318211038565750033610882911045178019603627364321648752003113388142741558619843625063617600616555069219503295525532683545374253813452795286198060673831223855509172919611803875152962244617178330639670396242027421020989003542670899793437301520456087012664600018134252448190477694114 1260222022440069976614538031794229387103719974571789878812264475295061468558620832400830428212611146642165085302985793396708059756635937463506316349989378000206000980788496192106938149141786629064685037018165026383989255804637116038599049922920512505095706877547054084201350456708501966458825975545822345312898293516276586323686790697605153525537463717983867247028986292313611513665299142641605651902549721347326711590676769639971807810080203710569755889713339757625356833061497064335820148558654981155657360725899059510901742889075510489335238494663978639260119146129633920737803647431627499740 10056592977662134951779611161374014576876110911577214480123838181998025265984247720283611195570201051816130916479141271212509986506880108029445576073084684516574906762231416904484672274101466115500573316235308444825078542973284617011294282694330382019611168262170328350525304996625757074594535535413700066114690372524300173852730301057225565681642591571918084937200737353727410355946901242886186932223886027454089874204963859509503452006097628779857540309681208161101883747803173636209703404823137636599174034550085523159122526325217043568360482240389444723925980526234561554732214758717612299178 80252082445984529080486325352788788258571612485102572875000634665338657926756418608283524328698542587083461201543151313114272029215792020551817669917381277504156004383114553348044015153915137508548529583329258231948601079444726211944256111676428811568504673194171796779105212042061019429525578451656872195761289780509048902060146920929591314518599365100979610542745996372124261612692315082477669355589402246010399943730588165568866383656235775129589320899072844316512777667198974814080533297780963465533018687676347908409361534953226799375268109445420984520365742635193071070685255498663773295582 640417767212067963597192055629923157400731793344774070973968193944681272899797252466729234895339262640963202868054249214274336660752729211476842712893800964617075124881503675490465884560776447852655583337839133561656898684199269359104198733146834980831155016568975663150162651959414824508110195659212140854106663355274076365157605323636447677301667035264200153627949158425427336265056922170358398800413910793027594013626307810346672874041782434349174674498831351187657664167862017758290201769100268961554588064254305201113882787436171194269431310965214127291526302977788033637589149893353531598530 5110601907831577449350922388131476006105089186409673458193066281514684784646325092638180582858253655048481499835139533351787581438063176380286546286598150089861485680720524215856236155244889968515865505970866545724939111781258622722585648288393167205934387077850510357411412705024316224352607323480417805273350668097288273637675235032083649672202168460401755093486154952348190161726134157326431596865409335830424844369254839757406797326559474018980289704650225382998892578111096184163372275861494613382602444985776107418049283714503142397957681342270515055294097939265259533863700987915441932022180 40783298469643199898355997170265853961480955682921055639007540745664152778671406361916173833163751660601889898686794371546275118079596895686821057011754295061456715992726176767181978546972563360736537528818539849592390823452974498075174528740092379415960317236139144347154998810388251286079089266082743995403470002265887320667408606794459295467411375224197525773339522498605673338375202476296784871853813096760476900163581906326527747514925902616860615242034510857745800085472493033761345899994447134135558288357233591925920063550524738894386260034625624502780614092166741951441759084530949542640080 325457476096523600537857486735055377062150727807615700036591772736131898725744904486274082729063185843475227205360259670823790795575981119039335627603895520250701904137349190474401968896746137449565645517957984286377610828624112089771596117432404532036730211167165272962925409718792146226028055118737534415738809529434881599694188041369123908244555375186332853938455419675057183769348379309608657763523632657762151826431812414070784095338398435775439497633924388019983982253687517966865737132019114622714927961093233389393878492851176532155192128822437030385212565558608935516834956481047331555244749 2597214156465505360707722792632261760685799742956233623077464722066617812321987007509486051843233426417279194185241075384221850183076768293838722763387610877040160267616725248632898565014780431815662299008390007594493141842247209085283995520617583516977192492747535191855159008557156099896808308326167739382935040190158376336834101994260663805575513175470750971638692827596145895863042752701656020180573464973716063204014752809656258022996395160069986020174067299762829418582957701212105113796733780425773523426240054226182537570682937936084476794078162588042143683775525461032966705419529003391942272 20726352044966599071500959291762064278590232014414864556674800540620362944172619970315310765313151848791489509707060527711893419596889590508324663698601267662241800913946359705516437058051291378158831457554295970446261377313901729098927617019416597476802432861420853367550631433349729735714543782153591082362000239965572305376103019068743760594732750479584964397777143866735380014625944845840781110957323297378583702130945114837512800424474939637480026665564806354082029046208910671584988451795500433938596995027764266692733192254955255024453625465289160697220855394169023646188044785594397583100729422 165401549931950731868406394707343614206914725407336202595579188841656371598553160471296077429689689500044482488195101920862435185286670810335976422482663221706877445307936695742681054443986277809095792680722507407198310525936273930715702214785577737705248947806703691201552486166443695486980879233672800445336135485468295551468161207437418755840210172223756800483649523689312106043148046819052252248802878931328151063858514853960719880284477899323730951859794792887237104260114759488955773944337934191118055879630890985468990774802553577022137902848586769926811328462495930997281660640412108495335988108 1319951183395115390881200681920369415659092664008385018672129765766527080884895615043299777062403894711738888564524559549456583111236500312161571608264518586491830359709757879584052121256065492924606915254552328223003223280804325478070803228050822565577792038855701961368500247513911471218050418008652106932278135575999818094388883485494302617133818800296830630264580745187621547267350293667878023962836057613385424478804767507252680138682588496816383484920565348460331622216959019300994885402604935676830000148828480356379909922154196904869178781366290770718348302409283677805006373862140260727196665625 10533622501869652908717378803826713335477391747036658295193720454575093894652050567702255550393030994594059117869543345521150518188565149113705259367445049982192784467469711855210328921954984097422395636222354728160183058707359307451726208007298479366830541574367161512646649365647013712435028908962841358408212418011599504641529180520604618161543327972241864311486081248874425705104276948055532020674419199672888732235111698351592491509904603389745723762582056650668991148338878041686490660546472851336522692157258820047051786190520918189842019966100762664552356879560524296080732276496053679371307477954 84061901951385789807845616584900955840553750377388182986106031823680913458468664202697931967148780140480068970491630284968144182288385738640444807358697053980755892066678773693722676550438183105360757694159072464757218927561288307948899276908252062926522618323506221283260984461792247925342161458282864030969414101534056991955296585713246937998075322849548843301876475737851208049801900094916145631605601167435092601706151862319285071489101733218365408983508843669957740368556243926572355151172658304408280065202884821095768389333293650001185620177240217350179276185098065699481969504436390760111691466928 670845097042899857263122021319042708842704021626165690103269965628196069616528713654528986434711542462972596100729255347670781749333510265021179384592634455132539094632155508659493301366235039157352415291075904096523525104589071413324292687083290020432805193765001233828552840937643498284770791804131447121334560435986731372680553813637656152972554491098525219458336200956436892432658881885265836500761955675913122731737312047458457004402591866487942545463902729142181024783051199687410979004592419076735531667876636176978242591406438574991376941555265094925589060045055298667985708859706569972060242860972 5353611594623598037108409205546276566962806364072346180724120249209968505059634009370799588886112407337062159381576195602773878980639987479807034022562225034831342303770915533008546608763831869401119899696336430466544635418978291832594520727695123543538182326740868292546509804342126669930086858269087723373394974406103559146068255648094232075084107585122961935223672932790050323821867103558350314645422837415308582149191950753826017903254741660595679778272075973997866884369295344210751258761641308219351510142172731895469026467608395420045066149268194185115554069469572295740040333836583518527511888911536 42724111207654688005188728258590293002714187495039909694306680364417760035556816163876636258887998854349570520823346090445653450811803429274971782099959983849230705799958099750339570916357430175179683823004652706824743786355420413387495955387274530223124053050815998864695113268236696961915189898860348094078939192031180769235192047618609252687135266777086095487537445849470619233895158829452934297506640339216441472633612256009519521623587444923056157249997726859873858981903718805550790338646382144388815026084664950310272562399319178192637704687391949662548345572686102125772934394402465570002051529780162 340957914782592221523422310346399900593790882148314770782291285529879962256590446547760141570512871782086601827176143714088892997492090232534724727846930545056698547586251835345290682066915039530436171147184590947537232589723875835871463065953720624252437284852782251184262691775376032473707883966344900862928134437811303246744214278014925873283230332451551705749285283670268493606215853258773644173597782402159859728723617045561207808603586393728383672377143355137904257134265027046593436796546283066035756340748502978754198841865860723524380510594843087323362023402745604181468126778581390274331855309596997 2721009598573821862034415067440201812201246672121749967918718160204895693705365663305327244084382534499773835345169033134045996862024954447792694571504097066427287263178757865827925908317295873271966945185157163198354776070473743561254467258637655283293395136272710089984435832909272300517476948760889983632392949974571142432238957111715709032495725001108037248670903076842049304338288467063630409670040834190359864008428467814400824763354301267436691789496775882394774145728079433432774281014513201839367529759187872678639600303729063489409389077729620686684528999304061874703348109602018958402851917075680588 21715054547232069756088632204298887794045987126909791666189714829215169381156608112355865968966633399035165075249089962810149232641481452284569088154439157083221670992382107255445502763287758237836214048710862053623128588642676964933149101709572052318156865754610157168585561464642040185158714731097263373478923270660704041760347003253532567878442563991881195857959607838341922772391843402854242733325422231224823187471282752988241510663278120598454843033622661850090437965827690893151251408537088469012185649530453993000113473177630280714449582653233802735667427781869589189345557363725148596344311593950722772 173297909688258105036311277918624069986986058851470804852610657072717793886366682908824828693902775783194968349465757815538730175077464478749917222392121068585283920945563922748476991165905800744131791343010273188722894246384061952980518141726798996713119541954154886412516049994997355919779412513140835867093975581148156278178716068589958770715720073609491309028644583480552856810174491142648891464212614808721915028243955990363020343750529836042132046161147234030420172070513932488112511882426913511601378285138231914657725721666942235876490523711128396034264736746890317716593543474279711990407385237584631248 1383016203300675854448275225858185757813737414239390748796384093030542453996625195653182724100537862425097697296666409319563038520237988895651300958520917028063713987640374459031134284886393298964223128467236795502886062173479628846676873563867426206105096574909534872796935834028724805042520471949437766709773477315787232495283917183689757560990043653916831399370461060568374920110381952792566231842290582391589911151377613004486629826273923142949347393356229181537747371607836811474808007621024692737010950020393852197339398301107690360567364638809442892223964377752051723483149677930388255198268307255303934311 11037297586142213388116945610240406674337394726529777540171100033371189363947021433469059089519697512425202303410488506829643709134538888139452537636671431639012943663191532010088021129599340674939834204628387227589642268454657445689400399812211614295014712509509500759829564613370949649157662566732286221832892732993166592039117386998428553894926049524389577246288261310781721766568559285767784010672495555433690929167222281957730205644713281952088689271743383984623795896284296382193124431797566714843930771031449706182501849395506275283698650924572580935655264986908482090183895735563891558989631300098561108192 88084556335638642745106000559570363539266727011135831857306935755186481388563591511561880927421217894359119737260783348833122796420236082084345669416903164251029340569321488987659297296030931328607929407313522100522152090497320729356264382571940372523624782418085773434816257251342058074054731096586348121440949921763811790451208330518577218804866628330657119322780742657317365526228798848967999296790140720049065233789520679950579400133513368022624376160994579677692780587580081946392795363931596654711465021893548676674364603978455354765380881707958371330180734998834818299303308184686932488256098300979916053925 702972476180159185414808100352781554972248252204877798235831224556167279309537730205645531352206523177483672126451733385576822496576070828839500279514583190675825642988789033942798512032862318959288144516275195061738388288507576309134181954718020352797467534117969462501515168330095598620092449608355579582392678053021310402520591632889010709239767055328168391615084399941942395449151535734092719992090704615914738212472175786843739404178153692245022820871249142985233620773721033141397869347059554201394989602853018845778826543731014014241496791977551073408835040899225170192580566719515599146352346455000138331708 5610200694496885321187277119295442323218996690683273695778408608341180667028048295368291894909622083597317621267487184438940316461414236695580098513275115066343953186501023380835443995771596893420516971445278257973002340564800726146769032932769611422201412915519175183574940784037256996954539613152047081792357046072695746178339446917184696841159733547217956552478959438311094104463163250844699519744052266087821456417219662619260716680948605579220785654775137064188121942724003062458455152421856356183539067655509058081926888121484078859266908752841388171577707553875350709154742726401870475964591821810415676210392 44773391848481560808068280004771699951850201773118291801998911477176359599716512032996812585421864717136953649579509670131840952556640141104514098548181576077009426049619705925986715759448466642595271926803587025781006538916822288129321386934219525394048540966658333380145380854790231914999447944507029744009682792546304648299050362098123839741984832042688312738276060159412600156350305760334123806384913060750121256257609928555772754987266965317665941511482440321649494341210795944175684387306036817856987648742240513036198311110120910937144591278578071258042560148525923625561832350904056062506814052945790836560550 357324761051502481009738827046411688436408439370379216762172031884969788567195748279622674907702830642367330999521571060745228956447241840674477858859564777133769568217806688310193811335166872827821912202976087245271639055688848952119490655530763511580230319956523698702265375825745741923373412629907004933245229339874494544159673655729620433268657988313432839101915910727602468455749512968910756617700534179166957781973144003287319631280567699981194959771363321336798509183943052500927716101932220082680148935597910621873311120511803030069730117519692602596298358395662961372842936522285321617110300868179348978195450 2851725644684600705325273623315567595595491362670676513433091555618242639600159739139763355483515311148867880993292863534625696154413857929470662936264792953202809452275626490326442456127639018093899307770304580367344771887582161517711087464569609903285313304149241216137032964361035399669005629463222998871955571316691387302237402967186459542407391183779492057010734742191471051021823971161767697047669654502983119956454375388990781524692688441160884896702709608610222292951555751272197382170414969854382084924592220673754290609393305366884171234027741862038736234316475647355560876877353752157337697296077646711368370 22759036854760688753861370896131681238323601122682786762615166667797448828134720220669731174448734094069563019471078587206587630757005359971306275250549887933354916977097362267987858776288858857049543399154493085170028259326552441370613655576811980638083656956715893137208471206878075768780225399507068128604227445970308562258009812719799866293859519765638663095086973249980210433552669305551023201701885339511426919016919343283150373393281469964051584188136830440456480230373421311651104096080005949055851529975741950207935573093817702604534734403897598804389098666799480472920404311690609663114605690738299508377451943 181635829475851477577322575548992149233905051349342169254686152707719788305287552378456282099207293158650442975310276218845493589580423072304389002090119599919647269745142454785650738120869687895899763829780773280453557122174686049972354440223742402654673735306111224504248902454805752542462801794833892883571715784305974901507067527749528747071985314228198438929853180608816769600440716431044614099085388510862535937035826877538858353144927257152068801582586285652240951728406698118125594274623077723770677911662431313831030361202520220053271685293506303201330318725218619429177789879373102280500687312764961296723183834 1449608290524717729602494754692065915064379412704048693109967180676456001088511595701713740058856623799480530299292404371837419641862820089895422740050469404270209276584535880204417280968938962052060384295985498889453284024486697699319257102796503771339473967009862875422233963545208449968221377708960306507259766852572828598283995590142432598856189107082460899649644229164553107936991106341555133080532527736005176137019900703236349474771581379363444667192066757095692440881342097345254586332223835748955724576963122471979192449457007727035359470689429868766536084215138394056158797317073915206102875993649074652773146901 11569146019782368362273263150956567359653055797653793178291527504182250266789368417554857131872973529717096549361713484416039347266247522459189039832228393843218794325107245794973863210916007651147093527287860131930483183456468641280634779743802604399467294740971785042837480275402899894032956906628283320397549591380514977012965556766523625239647924337493305395192183795164030559841869057811300004115955052465678548185809799162540423519060718537373187049745369945094001662133949118252906903615294518242793556160752147531330510373479039109768655184323108920923080451077572794844711049298996080458192563251783768193470267004 92332252911114363380339771531025514827511530418657546351951234698784052316122589096298429896072666013148700215333358979569793495543658420918521509233880519195071762763197745776371874477041265514791738132294739951357756194508961111553104074655250216554934130176522822057699162567644227821658101555552170898965572702842580931925862335212913253006633840130915677143314512683296240034741983771172631624997111388484348367678002265538308677208477964422289292678309617853758561467655983662543401575014678729260350067399680133491700253016011275331054531764104359757994566437314538608450126435707279200305015072212853405157413609187 736897443259818941243452722454200659426339483510167770307510412664077641404242440605604365564466854662561891455819185229705881601286595771385105773813618865913729760746716043474384130384189938935255388742609279359733427824058572673987809303219472151472979647139580943486976225456259159173248224867379551940457746207139847535027618713094092829890480265932790381257562453121587925000773551899249597952778283404733207464735825150924687828273549355045707240158202697341984233326496312892666630592885715026728827658207694640521428600989639862903784239981383156593222149579253131791392725916955881211555446964813232444585929158902 5881148558868285363575458370533776825825248785718692803932740972414080581900479114315240676259446397225837269022455158926028936946422231997211341479086051870597097551837373928194276869411213219194200092706737618091264419394449784906103497869776057717271582055480404358127617432477864519257956421865250375230639573298066902865605135983293068124154582125393580474033741682637163667613352304435427308580723545939317258586730408728774378631428329550533928370737622715639725332579364036831522970525228145732250339865208420958471916598737876797481172436492300125766044312807088890517718161983976660403959216244934096058538316880640 46937367552001155256949098734636750953370396044662518290040382282133644179518748863711199472677670698918797104845508508168991794807778017120142691712593181681671116927793279354574539149796233581533468811143324491471425860065626085538745224144183581005028890753115603777506279294736284603308342333678754194609162421416189667232744888320426753342955922386746887677578868373782356757270903061631910928337249821304159175434689682729740115994683389739195774761187932890551516061975578764783792093001529614252506940305404373166865591461246220259367507245151836822827956413703772323595648792597939395769436689978358316948754694771944 374607771050250578298095530610777787103394507294715014705771045903951953717260820228611616053471515454244313117746220256391381444016908803622192130964839076091309226234019328314564502796560139042448221235754966178968507670624976790324269220988720678202270767717965267330577355728178617557237647159173971594678726529409210982152361571573212092571178362392805540903623867171107726587909226401974720760113149393861806687967262983736968270247900541584054489235581202251159457513472387191316481960555143374384728313981837771525442983381693912571363543486788115883971823187976015967015346256160474969133513004041613150885156312133720 2989759855557502480202506222712830594789641047732740641006587511089793105006821994049264688074909162413403966175628614590929920222677323242369960930533285634830097600954294303490837687861213036686769081364363837171694818379167518558999336442240358746814966678334281523350814713280669400406890457591777761735420752314619835974953985885905302068982554731106824279862479469267053583397765372638133643543995620822349498981442657301967534867256802835816376631705260156277686524224003251479097090401908940314117327919048665773208421477092219857202346832552542721594354121624317604580648788786530252831829683009577318427242534865515450 23861475551439843764705874983067900676173034092262742467261181605704526688878897032703663597731560372569120034573766897487801864240061836037810843497625120767658427294004187741125570805828702135666673998916231617090028365617154139828329414603367031606429953966233411887128898513507725075771007155692308500783640362327232654708014508856431735676526256419936213865807177673777590119440711832172748162126196282536353183595810241170184627051310138313616489122943966278704321312898771766898603685636329592239036863703877371682758653326090344326327111008490946872603596424260700518663181655926253559725616992535307977944931358291639855 190440690789603556381830078443612965770666288549251066378476486676242486517790089079177048161221824194628013804129304888587263830026543415148618949556084883607262818764125944830892087727655469250007768530976361886371872583947855097452752794540247087271973888399091097409096991334780464571530320711589112902084385902159275871246692268289673743573898385192478460567225195583797395990855316812500763498769929507857403570323771626862958997395834097273132882720323486489412389345232202293661491874073105888944462145374727936341896124186346531442036313211701637893184604759178157866994402097315231910638541275567874365118367852143820072 1519930247948062464782786576697514569468086576871214193780576266490227094551944296343405921979488186980857275765523282316317661195458372072099509514085717686669759007951220817558975552605328601245199597144971696801004558539010259473942950712836390763865661724464552277978219349861139222490384175897312525667848051632012961775571275949573359767025184553824628861984571910850378427394914441744349091653911402583016911534057643347521486105376179568751220934768531263479254856827309608347688956415351934632549211067915220771670297302954171011515830617107854302254380563360653155322265076614038133919337011878532626745000794450261031938 12130788235874796202131554840944751625510939193755572246419004062390058558702239137306538769092999412608423349646773963043503953041944898108796963386772024749720135830588611306292758462524317235013558931762393585887315711250390273128253884741370801896153741824188776072178656086266009598684615425366919182890644565862348652532339265868358977437993336862721639017229963197362411499117106601916853538854843047622676532058710591985006799745664857489508639911619390078622961370976407112885765643388104755569279380109846600763865564239072275137586824538007558040389991396283524690138728773970701281047067903939999816064471191335992099212 96817939244181518086021951192653703127668103147323221031014715243496593132437195443450364752090405621495398427178264847243861132851093714071541847832512501585517512537146901817592471063549413883549740868591112388220706950370129473578513143226085021145031101340646968793488837787115587193675662526373556846118926375190730117054567635073953690942097514830828850339125525882046603189386377496661048240448421666080022635141533167519742277288463688344411120159938879119383495667876067958256131975746253309425288316185950405315411974285505980236761499047788311293767975709878246735170516419679382777220654260154937075565754559469262965004 772723451798062644650188764820263829786215575350967479293190926796161811586621676086590254640255289841681028313795409874209026797307432233307208351628571724909059235373714108261736341144348974277262133024337740009578111039312198273629006469011298919628049477183141847228674603202356466804426438543440814915760842450057929745805058755313461290612224361741361038554380298328560421824291632308240992400494194760411147281793227753044351775555540580585253750261108465499625261829487115971636345591102769664801194770860037006227116757205127639487605247630067260563213000500943615631533875691445476827156984667435991570122779319236226571636 6167281801127577877653100471984873055736701206498347003129922263192501702821964561706473304457693050294295994576457942392039772444038608968343939663555112337986120000808378859341720234989938641264714992459660296257477706538220315462208221462937255797968959558519813666088034199157599301706213900513576668107232282595672797590317059980409945543959628975177331030797462872794137370586228672214593468781331338514865637382466428757844698885502179981240701636998755125702449644140213985983192797785307789311125329031817749721635030149077922234363573506999587306752021394756463419644373305342870772429477563297654082049036648212994664044580 49222643118478831132284985475047314638674927651851015700128197412537309105277632141607695604196338569356215345357595301432011861407742255656219124633305323697146542706643894148073927526584621667077910865669522049490488222027966846343624063412683754871171595515374654159882367153654309366865807979283148041603260528110817488444824464488589999350478635361985511959467961243008715678237981066991074977763823903288605104226578136029892245522445295590472949793194587829266072547523988148026784637371542686456354839348915077943406229753294273565140374524355292372342801018362057975607504888703562598915665517783531182461394933095938154258022 392859718414942168419883805617116845241513018749652678753024569876845227326653991972925487917570020213505052191154384944535697232792121107975899055932727640864106515229690375916815748916767195195244993918726614458647189710313624586049234694700106841652610214275112841592863984772843410997349052738804435594734857553791978499763519178013138835967351665013559727035764830519645902751108094645300826684726203547169830822989296496317363661831854078864398243190741442890732650409638631447450190620334615804735500917414001020698125414438891732552188858328925642400171349664078444304356216675672030086562311254079408277478342209547910457270486 3135533902865923189541217977670677491229498289390103791153664150733997221764177604225380060707606597730043497767264892903290831599179868977768309888491807715942555440688846402237992846336458022181490363318733245742063405657281118159367973376012255510179795963455833666722808685246108760427871473520636931344056712580638814829904425688734150629285300367506813620799901881985014147862209417869569780541696185745056324233402596103344177289755097733925286049344708347417769720487972564554792369286111462250123978364011654575263491031699744174050745907344006144767453379878040781356502292894943527511731142055749477034192531575417271495410472 25025739877052020501756619184985121210832799156765418871646669981476825230126436092973080221385051484607786023288857561528533583996553998555136357660916525114620943431569783058931748658579048559917037754741892921051856728921179539586686561969109987828651484804754651314486326479762586592260850878042923345193936794909703647771407983240915138052220304151439444077674395423905291112714041664131329838566118298093298058236145592747900126056552875488173897985111528206074672857039653195227565201048242360360616770497364590320914267040447039575959222568281934449919140073226110770744254662936614716371079639693063529982817750539794709554504512 199739414524823091410880007351809997918138337044913516774844122936920965675527707995255655304857386073802672479678784173736476986307180917437842214384215337888978403571339012336497823481990756015800658694872354056681954219882603045900538189290814930798138870554201965320001126613896662083176515408524717945507577182990286701708527837264358015272245151007001571524139362516491061400923513472543864810587481474666732072163583058043696715382250521492355958149314470821046410591572658937681114188013936933760696016335644075052750676445313898190293687726773938267515961862354042322821155984702463296038591532874979013668227453067444541232504180 1594197178917708829619714414129374248450399807691173188971872479296440059528845635512283783083589567083821326574790261684585251837595523747837099471927569870018745772720297115962640026574759934651498195880516619113757349233636272356020574562855870561868156255508859870918705262314738476001896670132013099137179320111714996315041095500988374838017179305533290773686558467166175573683791423312966976154058396278026997742628215516758371796853997725036297243554509330122778075209180221137934613527312183207179566685230980385668820993937713526070210478470116083548811719749373378939529283823987248919090420375130524347379793445193962306116769256 12723942953624939239038005477541618385068293569647535522276034400503314520601368989817809872206308990731915935576155936960446056451436453127165249748526869322486614366222711266197020990749668543647369259198844228268418874168808959523838967518028580253470317881765710730830240522637103891888464715327233232969912261997084219734911798423076934539490229376000394858142514313816546447840033717732507971226335321446120252772749244270142071001050932639686150563956204828016726351373187740478394277839190574568992722762084939784907296484918806608320200938529505731240945021148243082299426641206973471348223626290260365694486327870814538356511034418 101555348251607957146349274395183077395954887423093551839390407691917179187339698355441147066669038352713391013426961314520122641221946931614868462667928451157584759872453023545393153886873941578553873456997596279820170883958664682816020727060853902856524402781415639772453205981779682679613317143085323068675191495041487407747900498288287124392864683418665152662491601967035939889839867920230957518831133221047999003164839268094801229760141684804451088291620385490804987266581379178554504982220677272615621103804622542493230601430609091023289006225080876029173916290845146766508578052463144648511705777715638908527760976153499628008165429151 810560230624024498706525125571943010385507644249140771073883267516710936188303841035288665988330857485272641687082143480121350011362900939095466576104196492422817151324794152313638906068656931444256501024065760122271439708844680407427295685721273963887906252769010359018334716307740545329067883045253765463136834286025380457561592412517357636816878865931894427243995152517250389891658595116162372104311329323805038156062524312212887614679856927543931178031879614104640110512909192951786179279855052292871480377649125175244134497531107755922311942754724223217288080195523245215708152405462584521817441824238657478775911107222074061032387405722 6469477177391516141642467965230999540308804350179301047900189802601375684988134133108350410908963868986985587374584297359499872053178118265789790461396956281186113245001636953953854767170302510243153950245645831258408250160835191478492343810312330903285603896802922166759852816416408086929595446313627593756024355975185146004264481575339207513436726048606216492571684847048536930986938902447976623285305353508826863204523444085187812526688329749517176099344638188277175176231851738885561692425518040487337826988456684015501115965502335625542635965552927597166190085464932425743535548167679965301574522905681743564506146677913676556093456061821 51636224012937237741511643284377911783023415628366979545383775438874075088476597326002240729932501658402941643264899974138518344176573985979153657248202533285965477728244386271967749896123558765985538237581257858017313675356012742381854338510412228134107831329035791960522768441670694904333206552617979692882691895964808617049491836147796941561813147556617462221754474261840587080386768779969960002842166132778551580725422099317947886959668122963918046169662390317587180328824649408048972761434778504543389992717606289841056856685583709430526424099597211058916308716268735124236720501295768018236108192800789190730684343282696341280073701928784 412136578292446746927405916047370124362952951556978291463518083681818595979478312815690528426950240406678344058080847996183126442948116249017139250122240083677108483215228909538711212515043102207600601485978875785350524395015648976154349036883394544882925576166475827079244995112422510149185775642561166068733961576389921173549666749011253115973841472455578922131066458011121664122334839956785081232690073850545677835230599931865703878914069836858385009691782870920171433350360074778631684681767993909326247785867723091760742723152430964454927994940771206192226075524809017547684684082807908412307961427053113513648814536001169098217708735335625 3289495039983905431389874490993659083952970830558038842501507304528484280826776957092534168108069579156702485942784128407812359004983967587379360850485749093292579637762929500609469319858897229704779785902326877219813342944066258762159103975709526887317239427820371220095953141765821917435126981762357263324456811113073465478234236095271800337622526240099163222084877928838537941409791391498388320047244319999788096841389300225988601042894805580318402775422990209734678668017001550637265862461157389885701980412292255128638807203896164175869660165114491054221142860818544475302765569597395653752673170974783983572853434434258162143234604447701778 26255403482480381332584190938104259066945677400878656410351476229954719190560380181643973083185404442180890543436003250621684477275680720855406139444138006248436314610944064909614706661169593828860730359420873651530630638721713885424090971487215549193168966127174028060969164438750877977836516367682067965045127558251264702947662312364668236030688398184473838338830576169089558801851221604210385492405762923327150468525969200956861261761149868786740792682051929012909273762166814797074374700278236504503218623948921996878332937606046253117755797296855091368545909880394257853619993784733429030199178987763326864146086632216274624122162485651949789 209560554930191113963138362138176866980780462035958825130187300134441940651859458295932836099481557971029868032040760726616424904628712071098789893477048313092548953289787816490850006050062440629848001916060715204393216944097340758128249656863802148719308873437933218062892434786794575386085411237864369893283332049218475667945547373453174780079036058671866801123609207479691076947667225633794728765009010998667959838729656738590253811606976584193823600099525784003185745935233452346371388825120784879654656422546620029792733924766804249788188694002979208224946648856949145803622336089256894499655154828388587501701058811996050638246894969410784018 1672637238160747704955002300407216591113066212832688720845551371613284905438954074606202549661590687170567259026241515296203808752648954228272770488350247935972665925219025341629220623706333377796640594176824357373867449729530551342997710324162352598274109288184435348623584762191020510576439348267349344180130088804506518647980662889647970355395253011050150257796101979693950711468517485496557003140876434302202985211415033418851273047002231099512558587003098978985788455677492764477171347239384401138026163107235244136480975549665992939153659393705575276506647567666806319513094626190530443657489831276831796655914459433143886445238277651665001546 13350433179994595452761543305603949276136407361634318705675565987392126621483504761019513827718236931245620046792519931898933689327117441632252567159104967363283044278601452338164906935722345922826303337429679470580552326618724912842379758395224122507090390617129057894143925620517244413118260351201828815336043762038630221478756187178353560833129843925764778052046476082173544736554005614146467982898085003709039834540767046142684840939169582734771438192233364406027836819197844447421868812072685089612425755258375622831680981288265594220452196961307076566839789968604456695252009731999132620180256804639962770472180447589256592709548722978212119844 106559046168247812101080317076712529444128459603191525647665425878284764880821994662594430704262750917725660088400540333546813216903931016969227874213274911685764392103531286081286082178408752236411211427755172653284056442509085318071286252526803048510071837384720138607050060967561852475390647318862810523142876227521083394939201307330205425242201275076736444771814013956901668362483465761228383420694219635012453787368775144887044259888714947238545580733457073864513191847348200026772888976281033394820399223915284926096274990687396045092748036562066524905765964337171413687359820625072918390158572729607630738082122342667226648932372206726870580646 850524167258176572870812927465421779100332676444126736311049730844973707194727624302517291233758178443012152207126045788089357059902602935440664958155540623436699845407770471954466295231706210490326939724685823643188718589752545771708822625566420851207531266157466993363707923888558841607956095697119542480781974342144693708807746070067945659646722489782394064810981398093791363827561778243444885379356430941978013355624269954871435543063226113881441688775266281972388098716060428299234161953026195594447027463079766756363922930032975760379690679990233041887818802892644895567005156484902302266187308413566413611347636036587414116212412357057653747376 6788664650626705254719966416098463414264466130384538412239858295812176880150392992926032407441669631557263730026944204714237413688418002730516757571997099797834260126784355113408601694116763688630059228073803283052716327835449364729435224189479363372816107411977257564960315852575378604695779249424735496759604381077294085518576589208138213427506815376113918686354243694008722534458588360357568374213272457295264304244571696332489667160017232806009642389649681258905287947619306098099469836505384994733454515437636156337991909009090302459843302786973291306237568025631057219920373985076993287650015152602511264252272594671081090694270336032147948030470 54185540854911315600604406214193586038268954113623855605662485154776237292543184007529998151537032907985044535500755093229124654800270119184063010600803274028524717111545630387828484294635709060702848215885404611216539109949427117711018830907776748650098253985473108346740558415213146960859293794326319967240371392664001869425321907146143583956465169115760631901428663927516586895489778936128568453390784198531460070434742832754468099158011237594575872975581855874697398593411069180499173299839636165495726749076736529981116558344579022137349728113388494947489175333985294211789971514432420687666644895184685647956851016718316142308209211487811989070234 432497723072663375918475598311434730598225278125667619703305969934052364035545121382552549213056532846852219258630174385517072743225101173869792213325102166397877274685239051959943779892913871192798822763695238088311958598230872662338036803487471423126309047721012182643707674423499771679100943304976258523342233909057384093541122740973265747062481926751498249489893119240225762322208579422842423666173654225051563112660075691776900696283193616104546840418621294737228142362530222893237214477566513009917309091035960034014702012579319749289629540020247710269000521176208373261570287162677353225046597092517155642440049778002664647197245490625487232275259 3452117666358501065643275808708674233643537856842952648685313257906712690386649600917409642537691439800353304839926209630109538172179345286124971812513002528733791907693455896793716005756655751661028670109263134266439835531536889682136735472245099836235635842501198557713822089256587929999175592274238940330741297851070914014203152686608417745302410946247032006479585056780753226106344553280980958630382734642137681575673921138856224124752150052670817853247589732988057997188292489612810110623002839688439791990844582271601474603447220662517205477157380681092543675550290136023798790330771068241535622056676671987629061576628153581427111070043384735952664 27554256932805260543337393343840844425356820450296226796289327273939382643204091382295429183600855922528888026769307700029806906076636309232943044076803413140747707288310423422621879529781036282895511224351373498166231908796266448012644768552890555262169791172935461004566168060380207606772344564646458892049667552662294366901327249812539942016325722601254406102415700839086569049154907836751517958263719265138327789706337300155163247730809618081019188250884766234681166720651028629086138558634610186864892734346452118642550644215646442595605341327778835548008741726675576237759199984183353830072108425989691765054128610065278648618494551581045146445010829 219934399537505198927297242502541913961138924749742280694973363347075775694114333434008507254111203012128237937697243587300854668681680382711439182002306285263339798347676585493215964941329579560994156427922350821932106529693594087165604002241936547229468127295707331207330639229303843297475222606102618358060607646789202380775877634924940254679787302528211892110965886508940676500262782777106840506859186659926733054917763625209184066187838493714364328472278635267864234581415501716476530114137220735511627703086196005609089050192491519047584607002889170829308858462892431538323197249644970161029921394935625835678499271504075170057836823411065273672464010 1755492430462362290057475375981941012154750668498098164653955574778855279409594040480377004688426818977170963458482396168728732092096056899919916858685482693525950728619262052611530720527211006852855113250940180157150387322292901243080101506085822289298918605733071325805503558405972564971693413622364856973926751109352050941575024993443281746851199184453787748754911742371842000757679886364610146238329668155186685293992708832217854263444232796775685865547746321572592696571457714946862928373686917639548024856542563394807700048373540900801555004277634426328969585856693000396219417271444006773286291671366613428904855979635976328667747528644811053248287068 14012192593048550620311909627466351728495028111511635446811764366272018416037998773916879370878527569007689360555157006377246493677330574846958879695014365214278552410414474586639921127789289728480475110332917806745850138798794187841962337106382916161034639296946694940049843125246855189301456132701594259442766784991529865545378809533829195891879719717438572757939423904511421476235924689147708819465154306992950838983539170636315271012616342516458951943219278404118961191883728655571765297024066763828319149494561271276558438540325062907331656700646345619022218903956885377749292184564884825140471213300484863935183555873750738278929687955515823123233508080 111844483565214629074893862884595287122017363572047562302498106050437424843925923558126279627893151199725293701214811310856489975887443550420279020046103760007318881015897113014775786333097625318452757671490414150493755931614085514578067963390312209753914016444239803649614440849700089717454725744802549281051457480388532133022572245768645873479025022046799804630482063888090324558295846905976608001772753410784150532925495275998089583383106078774046920455597664068661780999260527686498876849261065282097373469366335004841882578861604399465465706165411854760538133319020213854214467703849604123669614414475805062947197958518690806686036310409613453654323777914 892738715669074090968278126220054298800241818362994525981411266724815417316786314322888328857609299618894002095032304338679735370050546775679326368627812220205177482525454263502420795285165349377676000539767491712802327946819179446053937255885744839113067044360461987676029272072342140173978748758638596272194045801124624802464090700255469310842018155317884751569802838746078472662706835241660398882852739260416831386973630337966466506167483537571489988928329794805141108907468541807536317631261529429414457594387472728440750461132332139459719029996128457112348466531054053596150068678384465499827465975255489488306750684675738209748086741253120406158839242734 7125830649595780694293985079675330123124815061896578184741227775024221203161890587073378388470622125613819277996220549825409121059871423363412001240120436927224808505288164833385946316665952920633978341912771491500206348204323526859811236310661178508070636063203383170284489643464561136623177106454777797471103780491591596483429448972765576252758292090432062934810438538705005575900417435010196680880402280966819068449046464344757015268252936044672694118881757747535356748863220552893515817400726397499634363170453518710064637569186161329510887935513203342258949382175196452557771725845075550105533699010552723873714358443050766761415920449003497166164019506560 56878475465166581644121062024856026234932891885346592960917564804506687332196655161546978884167449511400440964129259499353831558517591746182084530916448050985983977112149181149942384126218419231929769466561629934026515666262194416880720726877898370036723925980789826258249301332158419361816578406171216822858319421173927268666717815221802121007415904100319523752416642631210572831067078660565313062488805341752072509483985776838430104239599286262930590994600147549991778421805345923336037821720218256268243068612783722804589926484497463303863852422416911955903490725840656265175677046759213189781626352337107907986201479070212173179337343684758287840421239801756 454006130563550363453602574484233304789854125278719987116892333434127555526139702438280257972941550745610212922813650510089066580461819756430778956027515035582424725320403899858487971800390943148309688308849033344160455926777543184454568770111947145483687090679469809132673637260796769557087410945818221046742558576257415326819445042716688095302266196078081992278261902614701477034517488077031401437815917302187365627749058534857845834120225957690293608336287899319773649608181450445389913306768150515892358315010477297746068243088096662334662931910987721597116072388615257708699064603650440654331182377408817148237577974256920456239094922090772497768873072009694 3623904991321043816804029381800725948827881006987181377343573728339951142006549721152470604451585398910481433778708545815837147483978735071859984257488164321411707401151251264968670685506370719542604982372159916542882131936946066941142400066457589759558847939176400435988656921005637912131016153119968225126558968469554669968070086911382420744143528405743234643210528683067011102895130877410521102172401638475158633147635454284117422082097847125909116639085161744069580330826187515783640843638189366629699409861750728853669641202880933085995468005346641620175963328166365890724793490170611067923414448058270930227068895497513869114154555394539543467828871529670350 28926321005088986736191662104635614513841621434493759131519353326429276412431286297145998757834829393370135608856389986274462372742508795678663753797267487668748667990536760308701814731169318827460871519262250924570092543027584506065233154261244292675470735649556615927206819084227469116366757770641257135425777723752940181127832119961195055586242131824302142960782939974072698754381872318385067526032999177619309452582159808366631050740699204013454853564959408094288180301502001364385503470019389184477449853646663783092871582443796185999790203000037919746220284809870942321731202726723561724577693019272888703942548289420058533491518871312905340983289014761602853 230893075442367752137066804409380526724800551932663502171703381110082036181057128579786364984503646803777383020510931935650757657643673580036282616021218859954643063568721867531237482633701083779393948319569619704031022146850037037295016232812407761082125526732107803536786968922279261910203313936566556410836761523807026878291083259532529021010606810014443460852277630164643320027172287137742649329804849568757394628065821465999368476477165417377715867293309508826712997203858679837392443380273681291509447271553519199849690616653034033178648404301964855184309232187640466776387477385257166762383405280027486884597010922519085256621051272025401208623659100478545368 1843019460099045929733558564000734149006189800409713612951255685938979117105533982383028037730633225454533334138870389877059003656260595475252033766076500975462126004024516433652470290920874169032052348144660136246591132294729727989496251233067609637081088311700637599307124054739193770936818951246636127351347879051192206081107237667177270740033863569999217751774921631785439842993280157086546403368989066440549133243212932343726114095569217603716628119587229306737914406938624962450810387756812847670889349073888409097313808230249921201730220582648689296516882848873471496713041373673529065645674215117697888682870866508801819814540473622177230519007778761909738130 14711272330925587844460402909477693237164580682951176257860533316557009939617841418150271700142760234792179282427413956914255663903367722019626010067225479873995052806842184991719810421721950834212999590888956950029754617222198282335631740879384967134044415953960990374122003338487012642214769118081095572390329818885282812251909128949264656510676589960836923119766689378338882223259171039315696430312112281142403057056987102938752816199737559553479085836532905337809134584878110726743729957984226153321305197615963861995335895610742072522702884958372425784683029911712314736294489157825225977984902978607222054121642209075623972403116203973670228882333805467502063732 117428049609720990131342827848891559987087348970901462562055572603301587725065655688336318080715898096937369768766493922298754015690314550405663669897958644623179387034285704916270732775326711536956526922634669430100405013434453310632143039239064890102952181152115269893998115248870386738604510750995687382353928202689331733051702635641088861140404851071307171536146698940737522061807540797869196276816192286144795258612052565889584769215978736861535722713272562056444741155483194286518809379322005189863349601457978644614730918332062857216532202102024400852135405777140603303575697176339427761503591869070856889664786484697228326731029018794807741805208439883427853788 937334829936886400002684196818345142073887951739516495562020502272825443581601811400489235832824782383250976728832143404253735304140341258663750854068487485127252703006159489499642368902193172973792976133659481287880275631113907687226111282619335909717050008228167262658895759753524378408934692358379402698010193121063395260426354546363935699036486663550655712332765766121499600365105464467909809350851678339192620019267703685941084063712693105619796839725743072314482943974494989777011958977205944423608557268767408859863445352854080860869359291305644226289983975562670804839508364728192256919418108075231384766754638214731829313512782949701770931618536585157168516186 7482021534846150910829795148697171786854638680436110315409043858731931999998272850446151807990280083858192205796933646002608311047925626894249640975342203545016889955017006647540543513523227732368372037444389046290218924782297256933162151535642195946914128647094405861904435891121914128179992355521422517159886308683497671305605687451040002378501042424665155588158212163340929101411006184996036505623422767089509803919071088798079664524938460656173259984301365829033379831662607961553167221386049030572318951696203199724409498328926606939542841996375381013798488968631206802203584874300671159804717920688983252234477702908760600282042459552132014648535929650271638293033 59723388567069281098357360887340464084976578148519673224568551362914261388935300913901157274936632311891470026314461515275315235175451581870292144426575564537129791051665176230350086933483622775900794745957096810226461274840249031587259474534330747345760957701920866786078900830958924481714956837933338849499397115827421886990484414134109169281226134355010278672090216796494789470690983209282347640635089780994176837354101614271436509001829920708717970189780148990365658064898266797588260903766956207906112572419509196713989372989211613882513908105088309348651445760612398729173166193361475560301428159003085891656383115303492518846733337101154806361142403689900659911806 476728605389901234365441466403575460410974406344989158531325731307146468459834006914330858375599150894016955262610572778453878585591581048739881834299123838124254241324095950917686046481064931206294695702626431111787696092130634787862120202228064877343196912570069042732182315273994721340659099089922111821149859948834996800865006691445334365936924275181650342684336589826245091582883272042979116898547947159567554297455551633035003744666237473778278336360365694003677647495761566053975682849877508793380031149488792942521212877930488999677970933140888129931068809771722228916874738426060965042952415715583498615552250499118532006425029271741246292142542843110116229988141 3805390803580963474919890590872194521129545415913340891454557230865267155520052420081714423773953255622864922409490560465191131034538417768576785138693786985114082218715999513389914465415591797670331105543992589137234460847667815957683986388125188676879117258553555265820305123220235899896484450480613721971915727765047163163465541446650519192695883392000450622041051846416497361503011665972150668601353743419472964950592577046436919946129521535151105722001796427376568288423167136563469156606377219182135077947968664748738482523694485377930480582858357405760312735435578520283858639077581527194805819740875600697209749716858213515362430319464925518810418162949893806942156 30375860830764141666539062437098932694923972624976732238816627995733547877442242405288539114719911067470464880271890472625531137213729838593415885355491782269123198390489265857297097404441730570819117087577890780954302709067921779515642284301930203783166035629404328873085136860777679209716206949176320438949810778101968650323544232325929504045163891754443452299650954318345739141573425068745519937295866877025391004262247359192030487432600486722802556017493770394398257029722617550953695600300733643314104906174076804378934010538611135864236918342794428436434741292707034700330093244438296124977829765609552963201973448475713820062812706293543662573974285798024722731692186 242470662334866653440273619455313052260094542016200089974494341800157411156140050330868542053792541961102485102505146970377248236621871757443078055360401831625439100868099320690403004406039720982602698278400263257747713378385932757746504867720821672535585823150642424554454057579488360196413601525712330484503556419461279900883543925133774732216092721563472140489265045766175920670613964476138836395124975112885772738902783915503030625295812621905078935542642538350361311028851817263952854560867633453456013640806946509074507698717803092975387986256969103141510374126831115535215948581894032156875793222310293818713351927048413257016034504735373908550048734612677799535071038 1935490634217236149601867403733343884506584443694633603127382996751575694336965746964759811068440641734264500394082784376137066965153820737803613484413416373261388747422820254874428745860701368134903651302876899449510515477769351705918823545912960242910773456759012684581336803541144511636887594483422772093241954552479862135650006244608160208502006322784951341664436299140592466326839333013767599946694180052823424157880780798807656505216028199018863117251366478133053682257224810804269019077828379634891888958568609971658869203030731489120432384975982909166937016229446311008410379874182050103951118390314020124651566291714843959735344806422007121011537983621016454029159955 15449848211937898863265475966517091479141140040237517965343589322232625733378295454749516562297371582616980738612207195776465748991687953558802543250984239421312196720807536647723946034569105647853815769539526543883362273248433157855103818933313518903122653786861340553466332740289146028271526433235330281715982950640931965307787785518338720935093443346065036832752339289760842262870381080509420167669967107692271830528686429353854258824000838085576071561069326156636426042597991610870017930169420682742906247501852524707361831476387174392816055953595265376679072017833083076967660590894170163418566481462438736500154156667952062012453263749066773085712193642261057779746787636 123327129770475838656658007528443260603492525354146919407900886126997616996614488240111475127468444328738642237812660010183765263534288490516833655984185681684207006706887602211744173652113600656924935991232116087418183257531018001672609387526757824158898507136581806603269935292029230680250764390730029484314251714687334651395869617888509887353223373853071693084044412370940054072061784003925847565192355732770625678566617014287470369285595758029255728264837025871563656207987283214084272742970654125647546181806208306289129792299153226605373984922091888557363016942618032457223150915598375687130272420778240188780665790028187043673810829811888907843558477182451319410062029861 984451425453711906001981112550555744530725489073078668908632080267553050103414710196036124793768529702829223910327137328470661138484278443883524815037507866251943125602662040119668898350209426253758388628723155419602587486771389361570396792108638066572963796564482166118525499086017064209567300829985358378933145599470915212785414185153036488795344139529671513301204199854689112363664318680279943242437441476847794581419209561849698708208806285897906021532520940204424265654438962129761098688011394747454023764866160122227729403742616027872287562790578226987759088597580835455810458864208366694092073308802394204571522621482217038358459111149123843475226319722153548956582294830 7858347284772210709777836191488934224831022058182428912603970678524877306096236208354113429584220674508572155155449162429304329381717037998883748605333105140179860452072405995005853325022719073879564306589772621212462826455016888310451121775219742835726655462839240110730760425545036561448968453925191135901901163597435961358789623489552955394210483411425134383838026227410776561054374769683942997979598651271083797178167931736169290423796209594392021758730883028644601055828934935685492738014507267207858459004993817350710782934755643077457470003898612812699861307509801478532481194715919896035708724935767937700635595939756063028023158883839496641168476494124904857416961811280 62729149246782806382443143698819736157840956607413800569802745023287176775189801412835996992504507622434971633903993484659564320093933198957051770748663988268283092373224087673715989991179772173369223119726826775728115733851089226053397792237754821633065093893586458543729922046152380109876219994915237721592882716229626815469187503803623354555555419905679211597446428720643734757308811021496473302081089997642605363108068709910587829582921845184015904870467634110883263851762883116717753217143130831664076302269388210352825309728200544826356831083189673769571660158169304044649507226508117712465326186804919942991674091040136829536481533821360481542644879903014153378817346563856 500736014448677680514722352172288335478905079777802491438193899685653713121275225284015852206546350527799031683220215764923413239424306318217754883904654936811249174397966025563581732527626982690762184347088378774810547962658390451733640390482724479210842561943119940304170328606906805554581958111336542974917581807966848672981425017738048228339882684757641408727988309193239023145945027503365684732558320725779552961673972348776118890074423324693591417855248707845831900572956288729617090498311535225919333163004957501303629550815568112633820259891192928905843282092305434834206462512234098425842985964311941478418091142669084757890794297823967351760362069623745937357783164913769 3997141353059938005949740158134248375948495395137143196496648747776061206862718542631526000552139835599467419461667366678983785420458080908717696830833011450829649490407283524988677033479945705580286125794846051851417632362699684261661511247954941321735203931918163279210629219645889336732264696852949586554505032146680977443186313896064328014762528463844524302142527386639916731404261004753607461108646642976623976368606846202375638714972118505615667458256939722282438468312787930398617080439351833933758707036357182830347383085522249370904261562283125230566406188948690802045954256369480758884935607155394365816711328746299208033202965828878656812179328648752000232945951977467304 31907400935850011096253701200352477286382446416668592602031898063735026873553816102696781620991422144379628219955795556878244285201490187725952733337989019402236981319184954133388054683048674072567857928193279213835571085068847876577289231897090270497602383413772203517102937965665296253730531714329259350819621512800551817894819475517903857051349694253245578430124608085200968781971100886132257733167510275133892582746897389073527205928196759850351324749048322334327969805083489780179269171659718974077512964910091887652181024875664755053907900669714541603777413620713585560327136800731426848834107526499405067189590090649175358472361461551100981303400444039789628889927982881101485 254703312705744595081823974815891292870183106039134819628572140103753003025401095519162894833545439334339103109629511388433660403177603070678608933978557708820930479185581644119377433772977198887558022031042546066965328065445582756164806846507859308211916299063354206517625001622236386897288845522404522114513603231571888140372696639902685946430959297758003004919551894866681760204689966203181534546938935571531628592819638752759787873612563785110816614728520640240032333463156562255466448623061947155919387159579360859720870748634812020068477802293984241939079255532336912060093032805485693521185053418431494845735954000907876171441259823263505819134586985792668796617886844256707468 2033194823558915888187089436927590710262748267155617286942034986214946687357567228585057664540898090388987115276873626132374642324620386048608935780083441523825856827331552862904289494163025520881363500479901331565890775835375660370720995360717962167645938364894011424939648303396492774989313174338973740078599412810220806236331275867975937599119321249908450904304433788761884855597474245747224832678838814668539895477136785847480305836616261711404814313924543417289849505634686900357093093647701946773646095166756045386234607245531811412885071476933148952865022329958441593724540322043343571605340862591251108195217616492905463500716551342425331074396257832598956898593320015435209187 16230228412991900066280386382793852083032192880301210274765124772080212574591931121429099850807870091228739311764964715759145894739840968524243318209895321460095304234794234356335862014238412930674334182750850515208150749868907574366945936090278012294365888465422490935815476685308341429907399593734341688795485614048070751653630757653965569024969264177018395518914040157773960549724331925218609181829041915745824605247696278827070219328068729119504741982112109786788634248395533707824062770169899131049049266251085402457327952791680089165200316236174345899815696169294870093463598631098357853693690349947880160958627991677443448503372785143097580072683078631494361188544611075579055984 129560167186027927141848384925277230794086392304473809201623693878053626470038878897211006319258122623110541939816295227743526354530423432186168643413695381386868206170900659679622755019777828131546890653282081878804478423377307117030492075337348239525409022949575281411336265529732333767330020576669104729722185186796237175393420701213112500223685575491410983349921750704808021683017362558732163048908693279921386460796556131408311441939256473318079341863146687605564100795466249830644608649481951300057424583508963570476085330419766748389549353702684318558855646118295077507530991875573144394009479029787839434394163111069248905308971469482728353706534200213155977213218322542476650049 1034235869398536656887005662051736241688911847882740663249631828854897616262213422817733125742331336287786591152871124054966014038666960832804246244964653523974028132640788279664689478276669982920162717795242301169778168674961481819559543702449883656310317836953908397751803351884950163323965639379484671260801104075979778234782188635213857904993884772631187728300892597887639759564122014910700954482917458280362373894905722010281308139904429997944737759791009585427303412111388246827502675315663272842965091704083914524099199240761603184766481756083930659894059589826449268846625264473272335126606873729062874346536535189469706310661981394542277524492463585696122720086431829388435954968 8255985415643899652548832569704729725997432271105733707144857305422226345843363790290138782548811762942662860497675656420883943448367338969347430179636007987621800349824470812614302458043555554664228091016283051075524678242912138710518468062785277607553573613707585997320909935457069353990087978254982789927891657848347569753948948419911226432960657296826497174697391858008449282960275964892956394618280786804829931427416164879976617681217932202404708176244220216799281473884191320894634596805224691051447247620509545828462198372967924585541611869981534533830517662826523468551178897091161442228606440481836838189214595983179685887373746764784923525117455523279886786975516061984330597103 65905166283353182049862549029614314191725459792327923819279858694462048978875108327969734822177909809761552362536260287688652080608443400899783625817992544969887689122052995718203476522052283240863044980700311864567741276685197181613036183873420839434207221224156680461395444415506261561615423365599524212110739251953052823205645243966976470424245439384750261399915579744507034693373175795290199096544773915486213371890071668152287881155592609379712526926446002434702950789918431294925870578172919156475272096023869808333688720148890792562240312366483071973475690763096155514944727982101819030597339867496309092283623976532085776726307653447297293033876836941382081189783426526952107377968 526103537308759015797800297687388610416722769374326357887906717020799243041273869806017909145668267485647060837803341827138743035707270669273891407053459135313206372810181490267658532316384760304671610937866756404157671172425218724244128429888546010539587301268716433841475997921902055664088141082114447156929147179509387646056907481759567207293985076060400480560717807142884435802005884326408201597168176056289269014537106944452812425640120506575537150070130223933909614326622091193307785868793868929817890425573817347509226140492635376098545555965929563835832631537100472013355765123866363900183485069358792132927387853430587402064223848534518609332883205957844969668196124708833941202056 4199757352164106730424011720247829633055669495176775077390883066749571155808201058871031789548123653735497935780305524837948080207389002792902602169255498801816690110548478975953047535798777964830492665913677498808895978174663313197052916219419646225965275803535250947223518365286513018868805515954815675288996491254400942182869607200918191951065660164977954450385081338977652042489388935642994302505148737976234861172813543911335840734441805219043332956404474429964396065631525986979336033331935341156508770745861668436083826339096169676592145408050721982561551064542672885124349611488671255864284924252853964046854825929996149674302480947912907413087443043317409171196031596156931679058088 33525741235737710491364531235070345315373361235849299527462940272405327298527604558251124006866799918590235421486956891181845402564018231183323883944628350703525142862364007332270952506982037557318359028705048870975150803232117456217162231077695482794892478677013278768931570054636722861792379653307921870923976445548996952184018609330075544251930906296362245091960584105388092319430347834212171515035437379888997578232374259877947927427898640562546487288505094991022328302285701138624269192332080933639977304432697730154107930108707284189600801453337600140298118792071597707272187873892491027643702960045887469028700024133217255360336404105363032330320945306496787042362019207344339190113798 267629379681649955489535654707276365738430940023282208685247121591171278597828201551592780724707444155305952349410074706301506238773273059536344198589379119367577248818150044347304259643470560060851073485879183233213508368580429957420412851258934326309499241816477001904743200872167571077202355941418170778317901939200485397634591345196049434935977577389899582154940413074241304785616125378897764680799760069843516891315504944152475646538585135960066295571179113748592338608137463468274694788283714541265917655571929737634183444889254475181842102582603155688168598244783972915006052174100920561320429002900294620408523194393243745797972879593363559247134718252953258675775578238976964377426288 2136438484160271812530686521004416596818270796964267043366007465176327964337205387392450661967862965620966055938810506804921524855572728336025421969902930860152956957484130116525370821863228157018274143824652998351384843837291844035549376847605750357249923075736941886497887120909490532720862887656008222479870195265453920734440505341730054242133979296969832247521093537406522646219937820047500565356937834684481154752206488370382827999393424611814214540159457092867722901066853401360730049513919135528499568792531426511908663983365733992985353507749745145167073297270322913002092339462760490593413308594816876341685140078943789287195015012450450867258609633570919195661689614207752639559675271 17054861635317913741733210136629173797356077751307879072283566147992366642355794026982241239592479694856702067382400676284103030163457464324858207884304887522122544156313427677178595543369900078910125087717379573144029677472072002321268443573020522487748806836242366609670989950976036541451561711900593867203951216153262472578026095272004383039898127432774429051001348485298362878303041833288024922943676488852618382314420348882016177826058798889958925934816170016253877245527583386582395225745060497083747892377030468011487552404356901991905601416568093531679538348106283097275336755069209343614227228872391624033421417220891167804731968739960126331091820020838231780221837555456985296848718216 136146727927784726254661375207201924086750996510930119887770478350024667935710779551994803333723885823710685539227688053016393952949820307512628668170075561499926731661964318577550029464496054639967342035034153839424869745438334107987934123608366155104992716311695469279991239047833592050643662199434814928753040655659189209825957192987792399982265308838019270703459615315221027558300509817634930269542479984134073584383165193059797767756182366503182463280677587670291475195950671571809669237905426514800493720187956544604613648156409999171256515266863623385576932384608470412819564018667450554711739035169803115901091135938903956278852092959563509651748726835166783257067587842639128818965806288 1086844502339306388707933295019390555888857529058312615937326745628901651123211895384694726488848004639303201716846957112872182175357840302545993181335222142815025698868984131063272240653695320469570274678660000149360685847501031446742187366376965632423533779692219163628379390245637940637291227819947461876165137116392938246817963630751791406437853814676930886607890084563634499662638800848234958694472540449019083240217113290678579749320017150740754520944325193782047231030383434246204125199223607517438722154033715525637849481739046114483126520969846369422023446235423797230923723753365831737162543056019085258234113193265224357318217232519342856043927397691037138253097806841930952438208095584 8676185150410428428878137351803208690986256049925714020820452113616920338403896492830611232625134690384816233429203631614947918922155747236794818804725493227811678757120864077194605631084111546245576698760785073475201295377661797139121560557087358228204900471283661786549944822926948722249064113420956209925830725698057981839378419923957006540735114274059290214483910288347257982366434031270263886393459168543422946056612158561811878167796095867473942522753037838737710444182199225975262334480904296887937077185487418758000382903467437580863638797701324834397854659852285922902132617607370859190459440201366904850755692423015071260967998951141980151335150657435794203356257686042411485626010809542 69261421467066588400611816877990467675954366155821539275872350347645614123601489958912225055781890437977083715034367451838706310064922464425855234917879831246679690355932378772214809394074083398030387751468356661497910165465598322057656281184528868030735003437530117780528299342424857824787664677959496073368652066951653874253532533933844538709115818109506408126516906253861869029674321346962188581879670637014074912913858568872675038661934221115471315142718354236356572484132454876768247005401094950628766277727957408849343353925875571753827900125111284972499328752232738303568964998286343208947537343144404904568450160608723002715859152868331587107984544685371951136906509995276235987567784597636 552910932501470057280226065742385306908388715427290952770472708324040125424187822358995231767439418180301340883083117536393385312510940082001556936304913468939515789074231399770673534918909717613556302225704515675517530028688336883370028897840762999547332080630150456680244963605934178213829401591427652145801120826988440121925289788197593260738311363176424998773201333522967257028727807833605269101607165730534461194062262521162024048593582366334835577315790879937356607656343524838528666877811706770822238778805244145413539913205372203077998901179897314132988475408075737083490864341888876115820617912747896905060712348669431649314585887693159085964322416735069803424997800451529379189066806481894 4413876104059617596243063860445240041764488098859989064768461814799578862026063065635354907459392523118226077482121859077674089369537630226382562030224250351247729074623683367205109620674230013328101947146651510263372351712724003448735044067367766284183196663719578713619867620818900546853218917986192748527605243271697809233863090113132977227468780880368059688451856029161660181990156854701525300074271122512876319204020910991222533390260391320561938823976528317556109462587847389295785651769991182086397256907465753975392718459757790587491652762529091801028215049962721444497324044458664282343046780320612527481960970090409452188084119485544651356532930432609681150174805865336658017313361276644406 35235974045021133664147876923844068924845389423573230908765882317486721277625422281070797021459641176188992343561719937160217140189108435262877135285870935019757460204454895686459661329458301938004991465424362430815695021376937686024662025108794870477114854234307558051510122273902775917868236149616389761302161758973805584730743964043426339512637543699700175316379516390610874046362298078230091670472105959333608556450268635756365416701847398007428657976823645127198281177580339522209444968393586964507413203739909417028966856244775703099217367173925904051535935560788830035304907584860584899312262755938785423603405202095071179515637471293266135043861999395231752487453165991053829644595711415315207 281289552972925664405288674776129139412121391611007402162271656196967693598731951625955839827913118428919368571671938755528648468756554106760975028646692722207147773629166128740296762914506743956575751144208996368438147769984614289042095112463312680931730906286505257973499688924222952373110498118712072473364474928039293693964106727664528732299390658323816041419255600517240251974944279745731989021106604737718646164518401922159295978365043558268518513309572184064821098187661582413964118829060592815763985759863734089073320426192450476568711419304782093485823991648778744667734803956911629650092402875589144159048576227376217467171442229247224765054912054942343980429041914945265943597328282520897528 2245546743888172160798803676665777141515371476943117861554223381671787490520029183459010609841744823836528818172715876744235095405336000291039774141716696119716816123258206894999649212584010979724606913382269931607274915141806918252425947801397591534728437787926555351098274983047309605959215770069651896851849313070400117024195634123870153813894719194240091994273688917178474319968181579725789722902756275019485950722676307482462547465578140689670646890994994656823097384186830424813648547517631317613498966695701148856318936641259796430770449098918460882471745667146017730174305133792917066706871327856243695523904584493677267915234456747116721583503467427904028728365177783977972486004087393460017763 17926345788403674633677846740040896279538649698177512197441060127255512280017063109664765315728530685725923392836273238197995812797329996836475319888056137927732918572095475368194733960648389584689898816013730159376977185755001561759660962516722940448857727244910914315181295043682667370748104703728455770992032846509403241421820004069741466935001332860976001798479514032072930729752042630165827189634095291469452712199837366817314707337747811097447869365041260193523413839449719709299848931703175444649879911223033735150246085353056359435572682946960089493497163237176136427105427058931169853134906610503678314797081146111529102618882242671931466974622040986748557685189170656416703291837632626192551994 143107570404681162386265939031139567060672002764260962239545341229962721799584673492988611600176976206482879725283473141374622102210082931245799999624779037997674833229625074389337502715795207881396096266036605660008901097025374091815038940064659587649121850642551320489479045108993080895091515369680950745053522940404608981189620754973145750920009271578979428061505791220931300147826018161215483296378557129678710461875282127174505233259554978518284647335146464022725495094797589286106892279612516260142106780788966223293778205055698474924440946029695339932885789826713121676064895592684791850078151081269720279178403499522850221036801431406648729026054687680740325856654227041214129684399824980465031511 1142443192936422953977914675232561927835930694048350718950783273344147889081317384903572861122142649333960853989562758254346008562483772458326052330207102262938813721487227220040688684339822744373075438643088883497649520883726511813865332850623442752724550193845519118171987834350394933300933396776627895591630247507326578235227815741610277810350368575050716261122813322612210768515850142187378065375237082462819943516122346977873857232759717783035865351933315479714601579474923441745526311497991383228731700999475358819182600006479414836396809249831509409535631911041196324464316045975205620710802860905780483287889979151699228084829581469071533042817621816752861302305282322182911492526149110191439163228 9120271852061776862032141794446315267218827812226473840912622110816896375901473815738256450889551474282515577100415484753994358595898308696279921388468875153154835718165843219260882962665691474072840626785550605826807624017990012190966372164983868299950947563971232420782658924256741326067959022943943915791671234547102772648350367356861707286069412099187124363856961593146004407391114064839989946620109991209377616125996455867103480331013694448038727157117380076727750846369165620786792218780518975014185300461550868918373273657935492213048902131633882819387505290705887240919142838727127815506932099169133212124158795364995048772641461775117068690877845401618834281325310261284153751190740427040937223165 72808505032244595553960685716079380817788938084376883636877642312023494315743801720145870049357964170900903035523094003729523905623856666483657430937549849954301184778783171544646768185741473958806110969819003434502739966594081301615744546604126421364902870836973678583399042517838164597691066077706259441785886606582543175433917169391441484146085525217525096577610422126272117425115928471997353034156534366184022207260040153102396718270987570884185545463565186116931360718121875132695178848038345040379119849282138096106649682568710528901906805394935566178838279478496926203280814112312784391197910023113768760511809127180135585993508377768586183320906825651519222789915039305788925707066697992730258150812 581242820710450876559055901846746628375182436075119480944301214050189380472807972731780761131528238638344887251303430797721877980859457693736864439422340496173763017001440639603638462820783902356463757310350381286593943110487506299789421293043229144193590032590699160763606673318942179144486782353087899440347860890809172320762148851556368177534851197548570196347773395437981042428623760251092595527742341567366488157049361871871479374464120073706238325645884081334336565624184533888872716405999242269012633484554414557084358042308249865251189412704907280086710069532210485408353201391545652984265477614638857955352800635414780712177130443840350332779135642329976980264552336886888110466420204428920896986666 4640173766013915559246811817530501555444901780830967043386217487924900613889402391058703869131042238288686904863712504986448054592609460127862644708478765230242616059190222765728092266423611554906488884643193384015766416877320517955811946980214998334199556756481249970361063377283553385345330477179257931744480961454474945247323874756788722576329594599675669443354796028886809490661209232563131097048030978060286151404146236594655895438615507093624807319834632205279755021578163500002052386635626509841816933084829368713088555120950729001310212977823920820154845912761466296217806066093495225309294076793738726531260175443906926576022806965035042455001337992587774297835639368642283408036698257052978647538112 37043502166824137443243397595049470402126642673985073767209660641087384174767044425112100771124748288783111229317356012973593713576943251224211530862953291995347964158845746970284770878660446283506386419426268431802002753579378385224016873924459532459021446046006996512427889355557047013945983275541899720958930458614801098393632476705697711286482516221956609548595100951442812496658818133227659636265457290632970942353071677555117093113721442459752142256146995666904839467024963347674786690536694679718373631524241048964551166929229573481005492693828170946568951749030926345407946934719303341719285657484350221178874731221041870075210066627427853117413851938633245052290029726024539952362834062179068024100655 295727003449148326314139843734797485176758866028656749550158853984771718227197958173037591137795377024651497515696012622662195413961381806737302711601261013738619437167028231183567213318763568882563022410999268563555015596352931265185068512409151806309299002236417573326723427741740075572024734670017356586949255433839544909439646449954580497689525841980517949232115590535827610489352045620022997123851190036857344742358604152852587255244822926968557933773854100927217445676627069738865882738491218518211649616058319815171361691007938645082397995510371277542751543039738772332966728792065714913236129947641081747110403480256038243515445125949397635131814996168993456278917265574835235727780692353927120278289900 2360864557933031724341247246021732239355460474808612556997430303234062322477562693041022901778229655826439478282715137124703868242874634994981219496170599177518232755687978069022094806004722898496929822718162602744347019611841745203264728809846079227545818787344957305550632641175375059075635743144113564731608998858168697012134443952223814331401197236206724043302399236461252371146316477677942109664561348822978116864269884348688208949821338837971475916388471635758890991038489790953143643291979120077071277378396619756072239211202167462370545782599972511224593668797159794233563593019016723295349553854659647019274780772204146055688928300624195672685724704228748958083972253486281114980102699856140987694916765 18847437225055141743260701597895330761472081431545898832659812412316377805885651630744164667740352919663542668143883723884764535698778145683661902024039621335093722334082562105158417585827754657900198084194481527503150329182324686936685232872460796676105093867117243231626860413485391511631946465391921139437732992846164638895411633259594669583590730892481032151199270874675942979063820540387181134836784924346189994247768292234723807752299137310583297433826751879072177732265014418976217594303381302711105654404090847245594226336829717840483899114180451356150816073124823912239022454669097307513037562920780669338760057720524946712964124954754455921353023017295239887467389282889066530807906111748054365137714136 150464719172685408939835350544901425145840013916200202586805427521837282976158968193957492828545947769685124815056971982657691424913408424883038552998485903785633973381367616264248059947857881932430250670629463172220315330472821446179027474203110386489992611358831067986630621586331126268223717382998782967143340919233264965528478475148906395799475313228466869821795495790698921041867267865763771809164250826980456723711369862915368691326852062188131680276641292806783016034155710170127808332005350932941496272237450371820004306663627967327768190502045233134436486008424611581442897976781013660899691102965726893389956636537427057544435877034001324979378137518370014138273802381024017768879131931269866980342192229 1201207927851557069465126304384915787742458987742588252566418413690093945417601610389242172954401267694145281967743164933795291249165812948221116112467798223631058635588493771370516989426308903652688830585514088885921366507982060730251481930541119711149824771146250044488634697411851907428003936106668909492906943680409226304726861699651528805979413495093702296233242175171452715425811669306389187232921512010443722266623636091504007593874939202927814669629380947454960067013892033905373038116751368350715440086602284984161190851386645816240658975639095205968641746059966247861329046226806874863873943801231648712361921653759304807393822928195375018052732699660873779677498269575438119263876633524347418481825399230 9589651738366244993814379209253433118382359775082975912956467029917249199041034489333621894659325383261892558686024936710879193400207746129310449928371085504827356992124588312378852364834013499652976022932551216866403579678542565169082788051731379989051461683516834268613117901628971030653998718654383161284225929857877586894172446816239675138904704864694841239766286890279442889226747641951538277455939281350110232992400324442306609418042321553370937341351005889374443547322750834369555275680111508866720886426266114911853048930509481594404081501304161090492881178745657568347288533690877576297126994376465457765585125630225908826177869273272972864072782037203953622766980540451445040170290203142694191473518869382 76557653338920473792297608961605112596143328934103644149416828551855805604472957279308920855415847438548432166631153920482673765193094486705341296957262188450533598536908945032235620915062559501188156046918516742312749220416435428095455939973097469580062494785275188607423654045510018732568098680361254752803731766231120967988575760914870380944780315219623569833006437074170743000563253205040386137036904446915295670323896761597623311005883173652722930810190132856520941074563521618622256295942392429115036289966462353893553160996989880559972831072205502748522452383578502967103433986878475305019492597720041723768559403415077353446196324363642267202211225632274110601595182205778446029085140001108939868835138417112 611188985935591864034163382485686198622378620720173828437368443541047184889804692398218394539694380697778692580132031760644294784979519507155858056640675330557044651053978461593379788875110880630167649998400628386113128658944666567257786897103307739658992933804941002134277667899123477683220824112054316774955465649193666445722524402866029871390693381918104606496984161193910945026431974389284449690823340401833750064447031035203058333233122741828330092742321750748569719355792277151272318758127270156715504591544847029185278341002058373860320736133616872430987779586731781837135835499783877079001050222449556650622910354422479274044817314327312433269578095312089792704307223418778901362210905485740636722250904741491 4879367756393968788989548728223436645138900285963549085344839870813390444843364138609578910442968537456443036211490775156534747829384406278493916919806519621973533915916923244102253502472882464478746895933829021224540115750638404116158775942153266984599224312829838176522216586864186515976697273144575660392438134048952057958141208739377480650689121948915589785975019327134795569140294897097442342714198907063424380659277445578397822496287604264497139928075064645955828467689531832639650291889613657228838402730922060603310706663189630242520892597838713854847689805377638708398782214612072768572354774668885579293246557264954369064317931317236160831354749034198570108575465126425182714428144095605154762278727548387548 38954058130300787674068460507573104236173596211774193677833466005667534435331903425979020586046252630212504173270013346349605192596906355507542209986348559399825663784890761319615906058176936578023393243446075147845558012093289784504890351437982488786656230857675032179375983175995028349803839126714742303689046081812323553160906505760767397345808769799601475072459703141026192955062758376421286329939770908510756120709459367712645996125138806279352637941496667796073739533912530403306064696657910351778748852820002125060461032728194697786538473191692637266499517617723114424585472851686529875960123309031717504431088696172090218983119820199173788933370642380149386576928598787524368059500388668261125876987070796426678 310987536891410056289683774616199051199957402481207379629950765185962325966129872430937711612343816078093395664210175294632277852549775022759865888061611313763449509972794525380574222860864207388176934237107569121323727916085010044743385810436123066628768932399287129278154740709094005745757613705356273130589262226057650187214562681369026066933547105619883289786893579359537584669597124013955153371248790421974073424164476532258564198500308668999166262368978584718311484229230892063316340586566447645036278274035106951581863808111023693048841154932933221784653153570007072569710567702271247156993683839607824734556392100192578269536353688106833915367739701030821742628232185641599851108425986342485239745182630961595450 2482757937646625238577636744440885703262904328881206372211313668700412469410483672413568815387670454347127799521900235360005078545643203271724267422187195995857062662095538465237145410512707044116046754328811210493538038309393923724849469557753124940552096615594317244548496852418385579640190969427683495935992930434902415948443678144054670144861158233735264382859260455419000692671825939968601727958926352765175130474230644586866061191497838224403000188566199240846015320703254449106351527410000800256260091132888536682344263584859827919862463824435159146603607766978122287536263893372770950236814643210485092163208382663749761200172163764773775218712916404406664180728107984814440715021832829835382243115516014346880705 19821060562666070058208974617660670461308218780114148310614764231535454041185729313319525310230187635921162614379319518957617629201838471091371269155530218582305932072421765288481098974539986646437568338797938566170993772344437348673454333716764229444792393603122069479087417447383865053036843805571489116614998058989687033775462161219190792723434724777470565572755993713617648568470104547298613986685363892027385367076321053055976467684911248808912555809282383135358952299762352344015589786288774487337102011678677147747286748908076362450260077018787132321053880612112040170324824408180385139950157955333105028446662747572826251617684880133682320862529425976614652298779367910587970860237528785293177056506463408467411456 158241543429577023259695242541800326843450460573176269547182220620336430567728182775514943809710876709786721247858690940845774550230713328634622580266049186840897825955728742803458877472785121289881688162729611164220478559149830455962800229082183755864205386905950728029755441020239152191314739839933923236766501968761316519557351981935312699499941383195446923600689742614683261428660517857082105427776001963999768812510327458612353628481135749310072616585521009925802669683636847575519299184248438190774422111067720945008723692403017186832816777886252407886562785815964640495361462243597140733106164268586161301104400596120254800454366103791888218755302254972489502646830367109207719757865200532040453058958529532133979940 1263325439103528511955618816652367409037494345621815179359222263453143211566212167127621894787475914341346885055963783545407216741127317477949468891133039420009105866425315818718197132614809668175412575331109386391515802451377421018674403335624002814591522873939601498380329912940884538927383735218621950761575219139082901481347883740220283174417481519362159072480152320197871664504426621671431101221779391450836594871322601046313511138927478040777423751510636119383355440851377281339404359370799070894597141986574909134881043625323743660975893810369448665677321688067514732005040356405781184015012880176991497904758633708182399435783786930473080451134629753761868447110956347837523640319749300175931779252203139089978220244 10085816895904213497266832765387251662153357808341788620529856272241741648192078463994811683677501677572689184268246141897037762415110230987516436181514885538000958288927157434759280240917020501733221385397909535712307248267893757430605352315441193673186494480724640707263601744450612234554069197741177177966419930132686789475574063719341684584875675721220683595573949395201078346692758553811705954667736096126283054790829989535817979712239316814489203582259575853296639314654493104518040114136505836438761696828914338740491186896003970296689426143236086832505601621597481026627620512558258008912466221350671877510146298278453303466738207384420021307326129686818737182021112431794917050106392217912368962387929337483792757934 80520788946646986111101530271910002211103218645287262612107026443188810994300028958591392336529723439633736715204833018405592763657211934288270189252111633449826887161453172837117709542558870419769443576861505785538717495075234688520393987707322941262367071543601418887480343574792714998292714367795530004537579950508637615584642323033426604559098566543548585626342860354085652023114259353240436106895796779332409717866182398258411364143625883776441868243216946448037062616394149082581697315675735139602849389363727344435918801504574860008933874374218737543725718823837239976036666164833090212194155181358999695761620932583393593762979861507134488499748799075600243725093877313741229322279663230092178356176681254695193020774 642844695776150451836801696648458025661331822621448679931918997507862687024913381730221349832237846764840455933209679377184637465296307412976434756459832535221444995028057143300829219390541598320152059372651148156410065038611802946533647575713383107057709527546955804859674867659968696911663180185636411370023881381323958263842046671397609266448829552561809460769513771194563841309559414500409179339733904527388343813315604376697716554797279497533715451463244078936967780278707048464844531496424741439185230722520176658729873977906149909400833410869592058411552873316143328389899852423291366222816119987525276482689793451637763893640756016754497797917396282595949905714298014422174484665149023308246807571451017903840978998633 5132219314475267253544453403675653172705273380550270917561409040371699560128175245833231724305264902570314844437590195656715307375525141508833619740211067414819036598677228233509939895191785208799148577303055174456992864561191685546915398244785081123450068047351158213962032235983960998878631654565664480356923320588798021419962692823547381185792079363165757491090397817135450687583652579534295432312539257231503939217689631562891778558370664237194231577712883981233742046478095162223387569841317069764990433357328953608749311726732575658690931599725681987441945522232137860177000100384803515937662424415496859457376046840117657701611358011629480753476095899146727821719880407327361618784699297036477396682317364006407247433056 40973724649482566833987995243606669832244998594813343815763270521079304637229175754257241087480011218914021685886273994221018648710756931566941787119076914022156247792142871865049411868889814217058143652829733877777794042043572657295360444696651352282880639394144025210358457819057006213745865349547991695152354134715347223342730229830394813453252896797248164024320831418150696556247051028687868636773566219226687293825439295632945179073191099006960331476195399322960657300103428354675301486634222372852329869653429104750408285690145072391031963944514828014950258787105326313931493252925707813440355784503951912719109596817147706598976329439907869112868402469636246934698875271308897305911709758713550994649298287566016830773909 327119757506279981804478780714130878842099060591106342253883311189999801916982101145472205667552067195361328407042070241011485758196615342869570633827654400633468586636140766958613344042295491073389711418776541417754287306956076450197078407454566168247364144796330481075257039134412940016716933413197680734631917658510714713134523025595396370441007770320182878757363825844058613555792991891311483724553064856496773122062451958301690732962154982224662739882436180335018062718118561419387431941208195850184937488469473431429493797492527339693077042465174658787843410485275402437918835860627456104600018635448508579387233460420494961306366938863805264939693397594151838832346333757689248572778664336411369343844781709683355366873138 2611615257400710598993231512978489352573468403073057164522786645101844019176290667173991394120051884446796440618445423055835234393558680312477404726611182922913689332144302284051225471828097960565787794115970666119260299977726298343656707902561232866576805211638571138215979772296809549052137130179956712009453288999146859555809139606850896417866794639886054301354152902732269263066272377031318752165380321954875782683770981630618160797602429931671020275539433606161996942337750338401824489317382170838752715149273328608559279179543004600059981866718779682488407896414708754146458586498037424903055431585740142852996324353355610687463011668891139895681280307510073522168496026376657689049074931986595503025689191633272332662436490 20850319128074158802525977726542749882802478353499602649066807183562824261857297136876203164749955797747330492392893534967957318370442181942958784297157663316734926625162537616228043166818790478482376032848324631167187955713150506085142607008399301920730429158790793255282487206435960774122525693901554251558794923643843194038180214619959377530265850943495205701270247943493325984493751944636946710723993337067521405270528384074202740412693928493934200012113239529442173163498369410873051416508015054613264515018573749019307153301462119684295164984551759250316528166576219355819183767315200288460964010796035037081314327535492690739272548676888164286586268449043582107978533300086831559531036182585811698301296586223960238672249060 166462840493787361466429600609232994759988979185282836715989408396218934651618885589537480861131896331043164279046376489442876258337916503441924144727078935469078947669724760474487109089037611369433593154670034049151054140028597428671743268668591580646545155396700679596712561758808600278559455850620676155907284454682898955587693534711330445755243723854644455790750670012251214583795139827452042614900479707935701995446911229938901988989366101945968012997242293508238876283220509418162078971102606785977491545250306275327578578862364728698665658926741427953952174601200101481609492525048875006457153731416605500356503599245908802507970709357036362711461191449500466165590871261047863266371311067262244080829566470802915747697072924 1328993871259712440961488912539460996168922498836597670537643491229033882985687964937170773609107136367520622708725670450831211372594420556445044675618832873068204510106216233013236133048556034841609369570337710678896842729971389620434285813233488718759422275873748399182131385474772459678941234651938857356363887830551813931527794322142472013753820634347952663944856727051164500246650336493394509478053544408883337465007494851879573852526127772935004380363152052833494561745651108818629937720060432017226639094983932705029400351949112182502425470686581072072593701974714656543368681946992023956230265483263958515892770380714359881696609232545301512853123066741620512412401210056456543275602532063587339853232271520522742349382879202 10610350612490897165754136920244666510624509856189368276139016711726525135628913386386413090310124710790900292670044284376374932465060078826214499468776735565794610123447974607786424234489993710550129658172338008649892499392997183187486549398365343812001360520684224456166171086785567925665542909578940640305378216010814979115484648170716132755111051708583314914168812043059327136811827477148598109629131230811998370682493689115490461505312781373956268390056686193962934999707696904630325466010274725962876396713024138387236230193113939476998729338226144668122263874275620311777549859738031745385726962840416285085495264427318249645412904698961476669341795619058034613130379273950267865267666511142824987173862551756048989973973667103 84710563233058854663879548035007669355084586312953730287978965074272495091745631320818485950097326283368488266765998384312919456337600305309768928678969494754202257158043629079829516861902768620521375308798199805856053521037617742101313175906401415007816099987502786961619397790306320869286321990421786935247824722160103345494509282561844225711402205362647216907914632341216615092158740256881657239771056665752518670751643020442288892662903270329261724023968236622485559799351107801299737570686043955363393960349451724937576472253771638560673481773289122997681410234057467252100889093624998491950744943431121095955019616388511904864616036338419106837100984709344676974666298921298572807386547837727251243072743371609252758654135319926 676311042053082481459818129111264551750559621484242189928142079110452052209649259856990573722306179491519870672080385185024562887094566559000314746425372712469848681312479754149129867585931980340412883075300319283444712638438117410200501493048235697337543287742906440490780548028222200620104114922098814686664595102446637003786657381907982812615206632963675900313208903343252263114565291495370829345434967474831460489642131217267003271459161227137363821978875156622032942407149266231816954550479882119373554876849184604995564188233046305897069997526033327024908411702343799370784625315407406171481443897745323277138244887286617684859341024291374573202980801714736440610068606792971734967870822177405790063959832386760806223811744068864 5399536222814237992693444697197336644202061207226258810974864531920993067522018157776056426799638530094445210495992257860800814698495828434759420330323212001835485004106491334817764776886583700037466247301861170342099371376874951533403210324927978554166966947131092378512490460351365434505804324511984612978890855992206264514732525610034876424213086253415976214806604028422383753099463336754168353738571868959935410154761072643785443146031582191426295655427795811739475476618487319931491663039280613995091170218385712014190482708439919007662554869167498782818037742728263983297183105922935702858776318700522226249643203406696122122164430316758298307209642573358197494414514617145096867239889592756010099729995565658323862489137221034176 43108956381432748835059099089271818381019388978384058525007614658308225898330403479322637862466486467614693230140091592624641429696882390191524439437207595580169790087717284709679143431973234189236144776715542330730865366761987831257889218360518257900180981080551130620493353093163413312646380750707404189111610141083023190997811126336694626405007702371447463683351400062544429575732286532404848614682169787369316193517691093461350338395381025142514439811012864686025581757945940381127779751319094712278768904800246407825875853256172762008054897235258652540577995748416781333937723705184649277872082485328735419042681222933746526937712436235445072124172084301760954202969602519241003706591179636551681409862386176937415876205347872031667 344175241824639536072593892852799502640882480557845277206600348185946940069139793307252910093086528468366962567339742287451561453410246915901824576822788265157180512399627541991753558070020786522526798107478707853056595479088941381642263493069884918879760555812526491434105085137097053891735801425484018622950294492559395037460945796149624258724887101479434388440668614928145887518041263171685839085010800316134066575688644851299368361752885944302336619597114590634046465517332388283706730447944962227881821697966888379492725611655621354147151270553085102234307249858383676054352700781350927430204721596594370335145614844459110321105810361398703670210557234060029874031428991079974295768358435529807795067868655804021645338097986849316764 2747848644448115413333009924545711895161499895245844490669901771910570559951980502145944152661349278078034526253196548679580313919481759361929450865754930885931738879679039868424827301926213459895208880301768325310461696105963204287037558960069834756505373408827725238840840433040906275487496876664302886440816469342412324840400724052484627885833417104790271063011656129413693193035439384182098955061680910387880283666977049784660662903384775877660677235778269995814573113492766889358172307366661477952021646605183251733890137005249371854514415450096168998631920905059828959404223955100171697436983639729807752513521650602945348167788307061669410409917737027209809837228447181674531445316294327131138977770213615188629947357958652552403970 21938506065825814251260601807874500171106305106082262605730247562787943011185470748632011399959605603334273870073424771169658897744775194947557289172686582647195906610703763225457172010956524246108524354661565998430423697324220869163431437962126029503859425917454149797083811759371170640248780266054967434218600073847744449805086991116392057542689642817881647435746600267377978866813121150986657778328955659974835042619025481831547718260912948197176386803489866899112834845950685567318501240590277771483224721326871095143284097522959318918420956088356939362403730024929278643853869454360878522012520340530721750604499161560027347644007605636661940634664652103005397629808461455891568520872066964563023528447512795302963497494129084126487486 175154924585629107399292295155621881236991018041454690538526111682293333724292734867693592890190550158840825926311024174237552392373017445782408064000093221775106749760918917111311769560350639025516161474729145555342523645138944123086294413191790978647609150796584798029775538367302799469008294146413826598542701419524933236791822668585170620793618662261744467547599729228542235353922454109798175431598629859844716716598429803223413265481170854230967984507286651917726330238950224272441533945837937561956466663536207670979300064372334391259821443690532802796675077240246201858515233865717911351869853844587391931756563121755347276474979116679568355499538678393330033038443652680214448458414116564505506924820352066775714061494492109920806635 1398423491007591249102427454546523490088187756732243155976128673080802990734350727853685637072479077474698577982980359170853806057787546850175808781826111990551242912153133923293896963125359563862497573526531789588613527926055376864586544626017563896217829718482313329304827911820528226243261050253449167250989008407533866206762194548941794267031299444029069916493655546877183387733463703405881113675270979131261891733058233261393315341096570692674516472957526508280463448418160647689443290960797055817258920901491240054888424932560875256555001433416355251814794930727399384493040585748096619528027802163228604598225323073774115801405440334469208186422401779859180116936367406207029322443957991151673797126576310231211625851073311828683761020 11164933048329088328043996026884205916195416243932856537292043838400205275777883470343576529227473639664290038744877122086355094189185586687130575517835235787976436148864609053827730586531805365284814600681697504118070359426671887208216170749015282586713562908647948700202067504098918815678705424680297434977826175066366224557605076926179414494989229490155024458592668103618614118711585072821451705522887684123553532156223845414452755506448994098029747038542929669325288583247109688484222588873974765106910532854510914006786098565888300302692297034484673830016227442414452092780111353715962567743311385195635694078232910050997685962361509686045924936572472849027117458732506455602131581984118337477781694641056131584072499430801516074903296753 89140401719790243065170164757101664805154361777902636607332372806721305209100983727572787518859809184068981281678595128353721388699247366308234765310670944950997844718294332607451655137918646938125682714686794099547814654587493210981607546280517068261218212496630576995950431215059007628658545253077545164968652922843335013662363555263261330356315855240707297531982653428406779555088033804208346427323819839455283504238280103761832466700430077656131871305619249600877888328611797512725123137879609116676234738772686429528434947764366542557117114317297311975636056648021910209454714092696723036873777504740056517958922208164825919396639837329917707654703980600474293964265740125307123114097799098716488407985514464404548379211313350491888461798 711695303070370179848208485579473094719116603372994072527650798451624955080071153212376591313383657780010043534597047653041940419835546510123441984130277532620068016846461186907681554341189534554185590570256930458317539711548116132131607818346406721885935948660246418391939472362325286295816256728277590563683655544866398970559771750134527500836671130397744472478001574116215758425921699750364389698087587672444846349894961909905464968905944343616501372172835005002690627521822840151362296272771809372192606716903824774180577373515241904840284273473542649539445233042329911383132790348682638496722004762084825207551756891572533590358174825033561333024659301200116681393382261335962891749289008920214728039043027991208494400681006578109762941756 5682175702574169085291910995050357629426693442338789638362448982447808931246577322317405450925638856555750015803708255955752176710788649991818508956751491887786356590874832231380203670729948841663432984780187908079804871804037062620413103989990939824712215871461045253116004154352979897650077000049171944816341024658586268946819656948673343763624910792611853519440560991411623667360579659730678726452801717226968534570349890363405479661393020482680863201622917148820412126034455049748260177216223032315998789924378895449451054860245430582594980320371356588308709916641193716109716715843926368374576389549308835259498053412382097830533763303983808143802271358370435404069222649471206142528131402570981961867176253452883775093858779012366029500304 45366603066763388334968495359949335957172504032464254177978535196679992687304259730257922375941659067942531028351913167716540563264659031554505440860756303564296671807893291735536400110300758759005099000702356965742566909272467503421278021311684930032082398337993614157514600209167435913686221194700710682407349791807895845434424541770677658223393170958735698564213719788252245233997778501765070871612162753931647019064876101960991823895299969450685371397587098378562761910515541892619815581241021483399828403242152359905860208411089841256283357824437787859148994714556276863295725020468930807378949847692053807730453938967875080929156845555655801616784870791902156295474065400364909108427159582800589167489023015128391221877193145490654343214466 362208723649312987856341897086545818671082672673988729192613334487291278993084682796972685631791970047482434145156948849699612903697026338854771274125007358482569001561175928422933778564048871571729448144976961552050144349196558679595426263715747761022295984300914187735257225533912640521497987785417873027856447869828297035755192215560345968737512777807584152136003268479540944604989799101630503353594015418346718018372169788846341605237967357337410995229854186905264090812808840946746442201502259500181819604755723521894599012265952419993949493716584191543543682924231246993715415328125838580789076781586936939664278274919646101693714905381147312638911629774730412631218553259258484657217089963714949684689006393315409549791944925251599196522866 2891895457093482859426059159541005025695814637024721709750030360927407133536552785196533843795413309594849504093195638712662528572271019055821780612412644244570660255021783801308667285506202714514949857870965293317849396290005290948134324761364967219039428054145718262201923245422161871317061166191850883919032595804673723825788054659755968731840430400875939720411581045939161316324476331676382910503101860321241535100797908492102333875083607538801849780992197259800439020701097209509922675212182006039494780934921931815426806209316307210069218799346177843446049302033731060898880758821294075692760094477428218937214430315845748224654203914877011058955068318690416375179358969933484276382066316788859394173735457623676084067267958882877827277102532 23089116152273702522815580478191830965536338423119077926793671461910152332324962846941635975682641212531137803566626992845804961426930613924733439988922302554157613689123944462472223614485024637635742146307906817002395013549214422206958848116111348537031047733101207360496099367549033322631297463295996093167399353428479428027344503770341236658772998943711890158321464492173549178860168521756708924525168237235088947626318041615144555805733342406050680873963252911695907502479403032373642248386893647294004813817112449612559280467733030617874787388781040325309631078920278740427052266024783663363266766067387732851089404579603522412528453109654074219156592878667627325379157671086181548646971529486621144497285693457036692774255070729118578640722396 184345721250041283501684451194014817976240337839825026690377379578163792922727399881193675960538961778397002279752050724614363979720955486338764736689731611307425228950598864085866149707235042337585833867502979299885860323348972958354692699221120112985783752872207344837289549979587552324595416585180704366097020540560886313962903270960273780541430086359010710231543046342856771448018328984229626106129658073096598453697541858408333631596239710440977230682580417743141372181131082043531703757710491110982508035049258977907894649918970962295084024885215613513176462818352537128195019881223521827696846238835953992707092732473284203646571271568365603351904189636671808261158834067739392709126798942355870081337636231980109290839447375019393962629288392 1471837441817327458715319911626496040728305605226587793225665594331647717505003249987973898139800766850166703246843265773886693909389684423763912310210688654831295452921019059140545745695599547680167078118863010882982999830344670005817208679499410289014030080044224223325145820376336787565690698649605333524451249429835630699919751213303506847877740491932061602647267638904904033690026712720670115840632172714376909890351870741425479164029810763049494966026946909825570836521166377457785148945887587053606759113629208956015832075097455057900543821933474127231995746920171214433290178627721614965113629761981818275787527333519980482518243140085449272456831123447580612240186994768463526724243163610913930725948925148652110595712044703628744542860149128 11751347267561818082195246612240893929557007273079730510035719635854411305667553923166556248606997214668271101532196713678021369904309558738162812516569666449939640147063323289530073562841122374829997234624329856975148326833910041729080386593427619283210978976693397469502079546079057659868523516511734815960419038844317542374879012123136457668257514952224951019967841577145219367201330407307306069670693071592010338992143262214977095751127339485163220733107362551670150058850792511276738235915909725687768551589647181325001245300459116011104344615644061628057612629016169216400883289955129699270129971818736693812460210678747554714979724850898408981064714302421391077382779680377916135233123347562136999865591979654639855258155052972096889452304668183 93824552278970126788233996481915443408823912458598682621196929067952313619562271820626954084745146328611515535294807828881637930428683896606178911254081597195091531046359042536543040021413236800527276325140678812833170224840289702842401834277654957964390939377513015770896682663890175171657143087457698679014936808210970496208856848273590772360633140780437498570725464442771973452556890801568614676407241221809858306656686625366540282626354338295979926219799347087030500833245331884228498852840512921190318794149919866633291812132430275898116139797166420615434229096487855831236930853053531960454662657129762960369158036068298501224441293385067020244692972325130976702830460684786058052346361133276563795308436432025014765783717509552475820723945346860 749111328900037803662544611236338941973201269743075644292048650664311657735053220932301586344100032784726028775749114086588487619155259455870768612676371063260867431884291295835535100933814113189613102347659494573460490141754295285262145977955912598822895595319419984098045874264887203761055190130007685431647866721029601560925083008655255238939629689913049043389424539779795970007312643003075023873368039811965445381013678534746920185960204960593865578460535342851234332805941720966003399075678805292326726914393866320706392755166736983400835059236352569575193609913370481236813968054937202556792441617719547207811040411556342654379592129451208781843754823278360486237687136112273659865238336239587074384356890097283119262112039838276578045099284473298 5981047492873439480369301596700209169473603052737545753433886929331302766174130165662684680177510885040821859656353528394158423528334530800003095048323699575819754587956510619285122715803658088513768054671791453862260601184306256543784430316634344840940355799936880539179656408782358341505392490883749225033989919142918958268006329832212271009869541650007519676916430334892582055325449838604384553480563656626923339856039758112157128775464828075302244566960155062278299625067821716285597248349345754469426934281402072588477100579024850191118401601261068709525789790557669151960438927325127799643574382984110047149955345732048473554831135055527771351990738710573247887829117213658053114728328780600057501077110736270612817276504672711126145481973810263128 47753934140995484721782126492895277834734490386119533438352205798432406464953308281486986815535049555089333050217177473663723179821143956832801600653344758570711821687069637083014110541208643593449364798787202494447567762612966488305592049631486866034483452058084384587530525782082948167461282100119909268370821139726445914963369605975017290998345769149113594104628963725845941461881658746768332589837256916306766507653291502843437435769526629328201440039650799562889395936087397648941921822658614153474226566043859808471850605466681047346606804474406332188824092028107591661321924395739226649409012334018722304017856223985117863374613650783558381352026565417790988842463819381127561661971327878211596613297701509864927668160169233336418525575484945002550 381278290758779425360458320939493621575298051420295091779458170270716256699356244920223167718573677774002966872313203417952532788858642073430195748663364548014049315085290446065092991167893479375934154775035079913230652509799240869246534728706020237357293970654099024784322346138871524443498672107134582989514724296413568542517644260738982687574628362758999101806412343729754622715058271787073727900916021923676989746797421131739657027246342058893873995829503207864515261264061435523237724383899068448329754206988056744962659323329946835301051056025120378659070105151442061757066018102306994371373791861749624382074105272185807372851363052120141946397833877376149263884972547360895062616349914471342383788013812427447882526211769808609934319429993933290548 3044219856827502730292665469691927057181668079070930117249503508304994154336366792935782189925906784896016087603589440955762723373696881432037111121912899576196891327234186973764888008409229626037350351444632733435771037639875736022121106581718497805819979635065002602001203425405688091248707542720475872407551269594655797948724127777800813738034836049289699092333626445452554490151259323234953224937800694450036227148290877681445856241269946577000726213713845472176143839217552833229837989241164971426559193487122482592307926970433678306403619704755153633866735891397610659581756453542305189853215162307920780126919702387158327617733195216003160599902367245653874543718129928135394511337475926062317701327288853748519459816407623479999786571627580803531360 24305858360702006996253871689553921490824841832418830812030725777320352114516335570632867731779686718571737287403082186656226430811978490084195336883179163553630813218444581722696785096277047576068288212217277166367845783186431267394120555969525370324552027791008253830908682894423126895444447410131067930723084558182078783914174697877415471010455730934764240897111434612954407381697056832306352715401958097152985070025615545831876430543156561300349305040966449544109184585121666124799441435205128475299172817243221895731502272426305885838839537471536296628665877088479704413242796894711324505482005189463666728188630086983477782143031890547951930059756081524160915605934090582663825934282628468941145075914663386388136619038276915990562403140117064190883940 194064867782123672983708848570075426344200945844135742358348985608216828577689149033549937623526443560770340567341336532300829381043805228826272166242539525448613034629277099096370593677074430022535275703894086771463441680514742922587055200010863459618943638875389545153429740817184765117145317340971989689712639827051612779350760328373960433931041657385605106175478118049293075177711871381632076509347982259922986057782031198582245039025029526251347442354753542057242101255925368240267710716788672906773926562325942702442505155765049177541592011806802130910450496694287126307143658860594758274595155880551092937117173883056415853242650023428401225721849144567111285051067607853275066651975273904336156884059262140171502732134857548708664636309387502418148016 1549472546583267236335245840059353402156054525687554074607867061184111134171113889958483681964207915108731161208236361162256131495245448860864531727871500217692081054107489434577647861919503913255606352904407799195344135180071041115561533416396564098383045511895603380069138394896928971097246700001883708613013083732032759204321563702016300606402248571252811086152490811108890757913052114898285146832926435428098621589457431367166631527922165727236603531607386974123032772870398977214703611600939483578831659341317587822466874161260133263358642752460611278941300194312773974520361633720906033314684458567139208801933842750701026379580980055504445280193290849111470818183460222917593505762940343314068387668352421443681679064080172728196514530888625320380474684 12371485653309967158159465837666232375414730856233250361693331198338742524204182163419469168858154662341459629021035077325534070858187055697856278943496775862640270926798053445451585859321963565494203337260939836639997964397909775573742805059481261739427169689438328306266773101851877078934873440621272453790018496027412560974837844943800078335324000470367081936894804037645675522503532963518996366416926572964818464491025955059588226967268368590742902665037071692626274890924522837540872191815113750031335178411216692724545205641005512002390766397240643984370903579235590356150760132727604437330277912624273130274362136430120609079023491902075584492398875733411402740235634794435103543877956920491326956271828266862212121155080760773961349459356463640277151625 98778136404829930902938900826813973842524622075183123904644028293221348929350212011148179016434308726924127725774051789801701729393589363013400053603362677763925991094919643871103661505721716958270626635719146744031785083606672857442118078628225930584246873478669549310451485653254772741444265964821752916556397159362973367599371255662841600844640857651479465345357112856292615151254475603790019041019927265669058627326973934331225198915960104163159112359783814908296520242945448631744014859930752821402138458334524817486421530265526981339077154639790036815510918418839631107911712129728390083312821434273667398195654045521744916866848077740897518045049064038839265735272191032159189381739858826231342140837284810266189685602413390842614596517185358819366347056 788679951165963660423816807106990890415933831838282648573212286400233450435693526535272594016761228341695034786950924345651322481127855022668151235112014512554710447701111636277846297443245052155125811804288866865795427129073205891287829071486882715721301581172444265208488556745831893045132593126219091526573423776074795614981720030924714857879903602700718098185710211377718763410064035949548707291843308865522217399909688112926959816833342343791510175779999987114075399055259725933280505755205722699675802651839288110100146184492344266710536721421410910230092803681748027587695184982565079913434737774131040160000977996821203981154612587494220712200545969535371513720595814426583636860825353802124240219084157263470076715471654579345343307712023337599968912500 6297117125947599279114679692376026540575422221646876651412508016614012879678661426302714136396578321119705635425199098779449683662704442440712212354109596449656586235451073570188487628400425429628793882320683743554655318405085104299336432224578613585402156599418913719366391006519681486050462027409887486705395770470870218160403432884053261459473566726409959103577732939502382537798353039774133693371075303089588421175069246906817558076517520281472763175458821785641742561118107773946837382839682991439159148895584385042319808285101179504915301616165364333635231659536586972611042282996642837313828104714530731904269653731998272506800910642532677419098884020496797762601422177045645082800980410488824143164081221642610076790642248440476938285423128468322911239794 50278664911020121799147266014656107841136134839740788290734878583391983496835553947667141751981792353379323936908820642384534483020356747523617876420978284189609175706859657800734786728030514526646482470392565779483973742477861584771465393649469850648810545275812685284780171490468665948823271077843064830168911198254439734521192112757543839380816041889703321556423444714163155404208208642960228895405108401385741587802838573801927385594565792362206267159179097144069655715447836429565721963740188616300903902665891222513041490535620106100842752323633998393784004122703596771040580231465830780654493494774845724541689847711260611635113613128667751645568339800951600634827121806846133011715687569141369091997628229653605381722269644267987887539853168522034521818321 401445594120432523493885815964471671034232527677998576311204322757625086109677094894736276582000198243469321531836123925739277871884103284470798466517418882101516547175573940731426976071071051012524572337423842765404329319439774280769421668922549095063301270604950240596210503805440689317056469277119160437221264302310834242981029768145139943133422890244070807531530484046957944922039488765026281511422027661423788084688537510037945950860197822807731527322774186609697403412187381697292787215396709018638134563896235572758290958402202379932318529452537821309398851240036086018857256351848487407257420182052490943908536356117475128474358881976166274995466166663649338033626533777050100198651076858395614119426497361899394767985721028789089914802844319790808135630126 3205314480447592651685073688257149163362208373722391741332931035578001124400605434805135479119598828686426157342087361699105154094292041984356787538007238608910391566979218713097959797417528121025768453008274957107514612475221256279304336871838629468160459835398850564476336735018446688305203290054412513476286182069878835681482917593374206323950268913894281702184161218872463666305356174680565210610019282495717934213549505626897210404262760230292421838440109718219575090722494854425651966567937627742160771892658055993905885442850072384738445177671476173411622329014593648388141130165360055759200141735138665386531636127235957811068308425227437393021399541622852025475390273742514612356153185976428920631704588466786569956310465551942422596413166592976231674633397 25592669225625009299083960823834753257533917633595271505606077669463932602947214023496647839860116514488190423613086082800901766352654680368402264360957891900663651651653170970315800295085802435012347207458513743741337475595038553490975878377889184158835888754072679675507080807251808877746954031722354315935221144733234922818528156244492487132220756581602596190806751898801491984504055953035757146929487532091303660930901832028723608309157732023486536291309408243538655333434963463223044838595404137477270647892148813667959578909693625760654563839536074650750993555998575953408258669224977181323627980705512561450773097421970872337936918637546829955060730365559894144051439132203397865980322046620979793731418118051569571908528076761471984960816140698191160697243092 204343820040320994506482156833528030486445622311073428425937917438607319311155310282516025763265087985549359255054149989620802553927165015597758449710893501366206232782250592214409612020044397424094871436198189662111707775629198275016292176965726094921803114101850968447315895070132698003364066297485095136548522034051630591183108735425448865933198566273391579604177691304012861304372230219911526618348572745669122135619591876168653799882379122862225424218901735922626112966020148023820390556782042296545937667896596313316794969028070036824888371448194967947141892488515359891600687845442440924039420886179862685490107683398532419077339867682543371549700950416572958871390475562880714063504066338140456862071542994613963499190057946051169817310905894360921078406917958 1631580161320821974095744883046664442143698181469673638682850360558185651872887802349116545997340273054752961639543080794624981590798087191705286951042999278328104882745117095319987462619307198542795649130123472042946978373087405476362927514726783059499397952017857554895142870561233041488354456927753639490400162425058090075452083799321588441936628134805076377002575567598676138657684315930128205782552994381889225194903390939554197357446075881308582113651523390078165004873574960446121875564484209140805174177875034813988468612954072648906253682283475931508280607442861318219867950021702902512662731548420247008040075553055729505316536482297646683623899038028669111228959703715301525682268505461616932404133672341458799339081600755704823730113532071655570746826410982 13027356730786936757332022406635477542435710868789515448432643995195997017565197498896057047266366210656024099964727999572726641555434624655496112705378811792383514640433134411279547071129361115182819075129378656594533349479797130520023703841733031185558668118940360540324573623655879397775625108555733917713632595265519586384164639005071145248356421570564677718082908457026119550109787392919135613563491786714682011082810020017546958026543433516818126833428560297285047645533386412795393761515658454529229248196180213519683314194040023949662368991091751286933262748561628430646629218757388933552159470322413862088859303625433633807548602373588937745562131307925002915177929919761472063236549783867854080910492230353155020897435909760138963257125882254246380357101582459 104017203747004669496128114107897090584836071713362864905524421845413133066966669099307554177907105986913032839830878432326283625340628758277419265481650956960676674689933362198528491262882418347647704460718813258783845292059875949269451381893994383325069713770767531095080349884882707810269438219285435185720720932619249957480640653770704374052676815517961319800796948556378814594328102926730654193085832619146615044505549783915557649161132210438132486353895936105426935363536630847040294853587845885739725334433584018129777977889753537201745333352728119480194256471627077984411843959922679433053157879324722505332804564170153769966714237602618577163881450124980574636936587396914288304183916215278215351254223615312306597106519142095118901991723150646908624374884276760 830529418897894049405606184457341170140175073528524285466444953264062172990295212615329741996677538963046199895016362528111263228225225546323238080300033134016339531071579008523382852698281299036007285967269493971143195580433495460872520597623902817772901222575953845472998536106702032023931605048712294795128560623625046123616606229583735984758775483361437345169558679343910037109125271088697626776255961485184730051864925438567845501631759182867263085856634637597997203904364830679187042388114045180649909732832555767557222270044951689090352668776937623727008349400173983714146131208313400202420878581107132725809921267731858989693715520426254698183153767980292510060991512708059747509748447728545936568214478063890191003460272432522346417846256926402148514264397904239 6631409410686597091737812794064514529129219329661240168016551259305648772750680059121018277322376400797321236084138095799494270301761035030558354995506010680360542738373129061378334738590026816609485536677843478230995837512910324623056063319601990885662418509170058534468768329879135060607609197140003868079393244006758641875653137745213870283761954295629496597715006277715597313154365352273790999401455631651093382913096190684750741096456759603556990261015010957784309914631310464183719261357305593331382609963431995486246647596173510557264110757238290622228354242946649261037950345880723197711429598288709292144475050800914602301304922687959845343849815980099450303072209700051146205144870602215349443685879236626487544522844096149163949840797919356261328131329218050650 52948984397071430608787888877844410985181864803801380424255467415910079576820812242752903994499118175250902036201522567908538852725999068878032225893754619687965425763798012079268248849123762418181676422560703323563367062753590888340712799843553827310298690412668473640516874827571811860802222797450557843012526424497416610480463614959386667077452667115154868087128496965801760126371059360332963984615827051308945956287890569848622656309018383935777554503405748502807445777786775157861066467950530051053037141716257496284620401231987489195235839250681412485677398934984526010360797973052566087899676466470194531588257076738826429820995578025312121388818457564188466113977030468131627309071890826819957759382789234308937004556846692129026189594350625340214797900208472993454 422776070416039124656024388886069336683559408145611903249814294758051886683015151953904547177472108709139393578192332418501968870645961199476000584811036461892143042419934216246852755297285034167891501683365781789098298010158847756222702176548686783206817966567478152223750091771206174371027718453718791457597045563686012878012355424549335553986957077738919314616115090087179183410808683691271088066755249881953610478560685354119710278964772773284946856493345452387061492694583058611653732184690921539932466428596190121239283580435032937249451925014837595631627211947691933638206830925842311757193655048548821994522152435471770703048693454778527959701833233749112590419538322602742986549354699418844532445303291208678497704409223155849396862346755695979339841282174144933376 3375702218581155402646038204739628604371178701450492604301784944025113347073746731430108206917029000512799151114456649190572814671423449285356087472720043992563760530368023167875998544700504865801600391740180648069846858010976723046193470873443554253359587110850919885466204757635078142655617567019959274746698900151106588819320371689558532127470466450797572807121657120045915588320806928966289680277400161367175304196429952076160954742662506884905844786343787621942943373615122613631428529935516326579802986918112036926802047882237440136965492279328857672019622542780123673042211348626713638356371566513591570512675499434446720117818697579709230479752805539719828824832202418649179107231651409450370655421880040342208498944426437094064830431600128479529009750989969046745925 26953727057547372634597350494121117337808702094815921073875714075521547385667025892223184944836227360502963604106739140613454679227723951860879718055883241265644166134665393643609342781201462353605752526871973766801084709851185373836339941605189782784114981706480837342388104912606290986569456150516577348972395865252466170714217042881238103959969883520555559041692644936808375339280695181084363826466593428273270277299744295104468949340761347392677919211181403671479469377907866310855220626708954255979450006399650622084793400610605879135930824091047430626430670232623638048434644692602403030531119969094411899538920294495562323800193087556050407092730430339076185819841712785637819551804615667485231101903436780411551907728291843792278280194904448913304465749478016960661062 215215966057239071250188290188587469636886883602195836773115522429264462854874669935825832329361367442429966857814540260304726517164773554949986521017814168853715177607647188498973222175283087029438445903383441496369079680370262933935359722849857619916459794050708131175517258273863024122267382337670619350011734005381794409538988971553276682620490249732765900470453402206429800047952661070483527178230709292415478092315849519881174151354648032342051679810777094671483335227732340108778464200588701232801980986773226319753265156839735486317496563473831887436945171614146046683306008700071168098262020823190893427330014911264132991427050256206320869557033713291852110071909849310320866442165001943357774802140682083055361989875145925433158767684973065818682580213296541661373244 1718427083195989516119890805923717097392771498356236297577676556174050695353289771825495265743879836665029998398089205604454116034427757954388714263572690928295065233964085997918201133621538382853857279190238337984805091812457141969334957065437071715278224094507879959047643175946794924102676576693025566549235085608345949934349835564940849606027059560425941187451392307144807234661444925804988465170282147147816531948749477818808299639185060631143645060191664455834650974130938286797572794687427530370368070514790410011096111573689134400666779844608486656890957129196765880332845155609915370141562308584840880384874450292862674198092827415933006661030095508019687905147244730256839231906085033738213475912182049253490297463686674754556584653671055260396245303103087711411442868 13721092424687716895799451872740336010513769785762081878441727332491754906458630503606059943508119782911586780886781952003382735651476934393234953385661224713628733305985545933421598060089965865771154429228205157019174814907407793368211707849303139340325064077660309722466773422211571752498613645252248948172563544459925150941375527640357385668741925684924238229408414517398364173720458433233143305651344748142381612169447731598569188516583753718884098005237250933083172891170125890999898300412636890045983424043398094811174970342940557910094398389383073812782488588542123695759721068280565198545572227765792569195708750812245797124506757065309452445422772409558251420638173131481905104164650507290381833773444980338823453398198684642896791173511525979483173434595804235671954934 109558790114940373515318569742941083116203045082142456502810019663005852963766695984451302871269922274888421059013100729984359049245104164969409069218576747058971119126679634658335585174160367986883055214869511942679490269605937821982863962980984361720631901138517960507859463859532819095054629027478931364003526611393820322948507262275944620993291352331771445953369681140005096294386415950472159251171349726548541730434937160156294155737483868971571048799376634403649863642702650666823220156008251585961019791893998291138811270899930592026359789858337780695914874057727633524688271767207937235003538710824012972757928883375108554335180442447059367647732122846467200172871983056930037600304326744088671245924502030871633426865275132924623840599805771995860794905791279358736076860 874795862129635136692380961831523807911742322711062811012095141716969115801724824838149156949756026611956006897680226870346925458389168575054626789635802734522525406510336899680720616285913735873285467043551434930883113307228591389048577026130892559033029649376209121160471113212912391874861982222101218938232680650466460616323967974980177648185707012194412243230906943439003051356953642730353700314837095754817330924624825338218433166467111807002376429946678158146516620693505418234410806828537476839827689134896776915354128011625821823785547270141891959819319256812515550352285456246745845217351783781510877268579731190580707067168480676168997091047622323101871007747101024237398958817874400332693049442441613186477340951817567497345711242262175595266109004634978979199332954304 6985012137928360651227210100874787692109343334532136869771255885579234129213841151790970490245472814814469531368034204956472055254895272314287435106194920139431464281143406437106671449145564168083832118896842399865587940860928341955448530246776958457583388394066535155124640762015349739995649004906848958721313528008281833428883885055320459336908361019746073323294046264958990572356480036732547163789785601880491323724905383316020014825820847848535097774260704466757702952315288093337240531806723269140551878391319568996088495033937356026051821596975757372376805627748533014076276375334530218805104334868656282444981904084118084133072221019002925222212934319895688820872723992806018130493762781633671209348581852358586613231024953789744788264956398717178351491735130972973388644360 55773584947176276399040597670740042304192473010175736502308352291159585541155536008941641647041586360767059372179109645019487776742159897158786499763546560848802451262582493446924982616025858792320009947647202773288809771599337074798660391152459877186425607794666924024488095868511169224770401022348277144407869394667054518261186540900597432043016587644648468158543391385076504777971431805378669965320244131951633701728947235049524792087745191129489766495132888123296616231935182062922083981671344097460794991066376772400513149399249288537530508665917876148897505183811135775178133216640831259461309893625658226627209544720414040114128323517503437323728866070921409602625432588533761836771029224983128262723423430677734311895597384489045524140641882989745751713726808726258873806466 445339178734438394354178008465485262649042119021087380121193923756519775663088803437404138915795987789775794504219052051572027323655393602436512937856474670945327548562452103835636806513231215859263044931546998125232719523477859911004789879622700186664956380535854718588361170043084540850269344759541455780809644908286636651268150266529688527558079418782722447884898223311740638054022869982359433568134479202724094407302315864594511729110201579207362345728636687263881015053912338656899733512443489354198098383232069956946994512603877389739057226168829482485137143836716755342435862026604246147050162477233946326314524951070983168387797173460199459568569889082911586642056460391289488115395140241793622283448155902763221776332575977330258623985398888092404773248436221654627459013540 3555938107446331218351895465155239079199657440643194115845150649699743646453196381570697673263877400420561660740436764023566568889389054434805757659992460337351939678592778718214061213655693490322149118154372791320448728484368552991358231340675643781782025759728354213625497092239817276615441745089089354000530930988764743088747138578830121787745560318827951363504218148116183506929932486934780020867341849220728211667285731760011111606675966693412741578727935813694605488556513717403545019674432973003790695589784159717957906294805646969317809764679275129736684034096795261722430491819671957042489245236588389653728119323938150711124817852177322702127263391630559810762598722901313441304414669129481460954992653515014276992112430502975535291931861093736650328817879619089630188852660 28393467062822191980731340539919929463971101563012022481903018516752140189072137583031783030729637879865951855282514642923136909165747663724722851228312998904440110429862458204531205893128930019213903586043727726678365788923244907891872701262552560461716721932901973092590931959494226868426949232441099611618296583437246419337067531985394574991526176146697994158575001894538828753702319145898749842546336462981293643658533760510797677989176126214921278721212036845414416074748361965244368166799532637818001104005201307447028786221521895275343096929584036186510495977813846557880012061486367047634487197941155276105558839251283825087968389655575951615627434156508318557472979771074196947413615824793616242026843290489563481202333001690668447820571499340765500971364536165586701571750618 226716746884835502319047745987521319918203496389011580934242197065528782218462799581040260481921824691894613332930298590853789512678989890967101109236092271850666201263368181722902210855259135957127820473457273642608374478835092953889294423995908789423234888614615758805614024266420873444410907403659136456650669722230628797757936084744992354690159591126417742771391882040006384970556258849921636308826579946025860889108753643374657274629224019816275108182169779719763070501896192344817788427368014578060222981157914277259847522179925363760833225753828433256363666473551162397438926130952694957792361051810991521675686992381607865325615276560681234945590016020682163856817700689209338318064818835348677519725437329045807635630833092776274600867797036036137083845534821812038285930002289 1810296516378689314113953916380536773660105304463102785983133628567175945220663822064271410469252018881763769841428026232249716133437309788839637220111428752979656064268527023440834815410980276929322162074929343403316911817880910090636756859613037520696416461030768736942063641056320067293256978691573300751424202711618981346309298362742197074974434814170691056319166891351589175236879869716148385367703108762666190280468574981020336754600223891967989803554641212003057580015011144436441721532153841915599007560168751409942453239027151983169882633068500822312495973112802939458039091714911216794229381105963868331899357524315116271556763925489698568322359218920945368343788310598478543122321236822125593114324348330705292326251094769592652687591522828827943003676077906761766356277333132 14454955778759638720612532236423625504114071897531376829692725066367172010579532345317828086891686699678493240339235847477734352450630992338997613066808963524298725691017610773223510291361320980582771411078890581149288155179734386898553715190545184642939182817115090584902441886973045548259879095726574402661728926091524078337478207896338214502353537318341980714358317226647742768276691082056190183104061533043602881424445971984132868238108857777781101253457731474039544387946895313702688326192101103786607443523133077767181378777737090195961821598214993269051052118985993577719849860378089156500210398076020327067216412387754725389353155454750132278330869177656365881526204186539913664539951969843253714828905958228231018904561294381055118684108280226073067520692060898071714074296380134 115420979176489384855183223584150796013475447166001619693313072054510032923797509000191641474084510864131031776345620814761263664709837717157463291305491847257941593615125489051024396973630377648498350598529638787382745616047338696914290210832776126276998137431059390078181359799293845920348344265810830789882734464214595144301262721118769209525097474607334661439155091239585580668377480602763521202080383239273807528506150196024209973806072376441509434415513317868018809201273422390131582012727185325869466225632904330820224788500508074506494342119940143205948298474701133856795881976128216473012279044172158705584917858610681786922620717491522899883858750536131232024137555036312636337964040075950979639127773505932489610700470767922033735085199046839271110033006048151752501695929236548 921623785024662871682643739662417867235505907468897485161857145753626080673095380194646067701245436635048756062284374419270630374993516967613916296933602449196187109053772148676224800729404317461857363401548108775247568128154884285804486776417566882272339321567065235881934323988905022724039197147061719329182463502308621065694223779710151658002981980005008585081345157500605154103105597846806611361456461803581432834883137395285814346987283512582605774056072698231942203571659514647052813363303954906969596755818989354355283205348106497736864677985696575080300045263081132187822292757124346494102542274175083838964608747718689066568019252174816302375211323753328741523611459785995886852078491199334194289550497984227553393258591986380932653727761930078978360271219076157033413063413981968 7359080021763361053656873456175691158150946667476980847975114741747278020040793846292159822370158320450280774670725256264909338806578638716720742100041869168180703144009422496311054466855646557138564196101941219306366950641999508901370253500394209588034464866217407333125270965719989678079813003213430517031292137914032511882269508512176172165794224602600350131948944364829946443073535580255845289131441142675755048313987089513971905461682175947454940952200004848628330631984066282822453585927007154236409343933925579192831370700648784465565998835406619699226026578067711618494431892929697012645521727008348510124816806073764827405229717916437264280570716644650098483716193065238445195894387696506022520642485048114179187153921655366891219027557121244934794544716027446275031096217008260430 58761693738027466356175203122444515680926591336192900981026619006263369379396455596984565950137208990069438242998807058033646225764614489373525844924941359248040114325052158899068857799120276134876660338007134441402068787430513472233562503802738419507031209367204718631320424881468010262552437066311057082767441216809351573996771029092245605621199961407363040510033485673092722683299245922578201967168207192766981168613306357230837483883055164535004964632336956199623341280387431031396329290792787034858781339336559835175047085966298701121996734337561853442874699299500835178741036577375932137751333924343590336436579333817718009224068796429718700834873281075318769205983340743204776431740365794505548913438232278147860773940583793778694448421161637125588713634567799037726829595363109958573 469208652342334578298592424712609025502470197307349477940256101334563554723831386937452804171294562426504788834391032850945217716760352448189986045493187107748673284934346221107457074771374548876108227622461930782163806012208083813473911917723355375886845055728051400336004232760331311548094229801350334360732400105565466836231450547344898724249495479254147555125148387682288069013486424270724311561530706031980308869975829312067972244365707051515385257644318160502496190029664822277692515859308822476765744943657791264402748826068209479388225589186473242822688969745510470131387484012188870680620151311656200999736685892765974258177633789990829506162003252696551987263489813272604946068222384885751195531500383962538105706025475641647233670547091362998687615921086792593759203352079284998028 3746611341131303543932825373034730655866366141724746735348539836543049259111685638229682026341017237730303615075819454048519807238131916117050744263580041780545060878198406998154350555973624385897962997117108400744433403134902086230161660928387880607868138322278462166016967655842779871873001905242296149985832588513268290158575013522339479139888016647275161359625467472365753499218421037438124904904263420959205527497309608382631069105197463820277358151590927821875315399297978793472831354571957584312115195540731247526950889303884933737158398278863613920990259283927991735519504515943402132323274667561774781343168533810880165579573498978469678693423690892523822986695995923245053582613121214416323356669638411325226650717444685523305491161488671922124671705557793821848239875701159363711421 29916597426809193397171437452975867877425838566247396983885042923465227407918560492672615859497803756528253035290441889806782249895762032040496742911631784628243950389867120671042489246202263728720218826048700967176765351416675207964427977683757751725590022705523582527157642288284015318553827583310407666191305923521244230772539773025583282403348018337040273160098459385852518178176039556913478599652628636821889631738111235808064979012999474714444619057220596306520960687979671163903868208194003438647910757781644761275554030760077502019751365704803502124101668176101199254881122823091828998085452748530170491429698305804937976909415996567215028334220784858026701987031648556645179491178550039860581044521397001124339518200691707397167844039423872221916072223288232859559729098222614353361416 238883785139235535660854742117634300469616111453441081113280503570559437318221681896750794760118208864003501919214617424952662913327559986345195429857835843768928271539821695274678541422030860283147341000679202227274568085295103911986677234257295138452243276569535909212558162982916760421837170134908803889148701209808265036207877454388623817508138760918952130445823980450123190563040065412058665707035169209651890109606267367723647999600602759975916503540883306789418946899442602389759014142525659931781906161604776959154603760402075250875045331108235939176132115722361892574093027841280603144756519295938123921865588344597270140019610934762092640991242462936325102530724929092015734192511759240177312099399461533890731337036905916456864241371252830563985234389484844270671709102814171555690063 1907489099438972853306251751085488820599944660360822454318427279052608767262701398702246619603122500470427257869658951064278483341905678711624527822346586367716524750595927723386188890222842453226824515999734426688835680666762636993460865878824363397082419178344162075561428875669449453354968571529392943696917326801986875467897555969068531441359635923202529062631596328941811842996806788782257154024638091702357698890555344727418154638782369240526172875016999225591599484778740399124467372972589538383855789912443753406459529065300414661528934696083117731054635237855774261269669173337743025076511106039372452112751255789639781266635800471128887437023073913980675370183182961942993929366199687010477479386480770129839274777037959635370568086941060205738206651753000932100297219141251898690393784 15231349167283768561454779714791338269004032009872564986820474850601891672875565791268590180644006827294170943361129908356615860565872841561421094686614612709306132091204646282703252136154794607307421299992198787415361991976192955253610068800600032979018873703577793129994480008297985581555882125388175342735603430483690462746021697720298952440854600579851680919685409837899341284320842797284473178423035076277242109601307658729611102994329501612984229526627971039006236507600372119661780439608283777724534488345140737820596353139746330778883811584722918956198535996869435530178252050513092560656104327838064542406408706312093393456136487458990610902363475557131932290077784814488600879145509984837944503904458769482146905330892909840924255358022843717071778355453283298197584854306604157340628264 121622968088337084334618781216244312133803689243975841933710443776028502656047973173047588420876466776041247071435884706876258717054200505285890933092196485286409602283076323531849033753683086926158506431068512658401933956533306266369989872186919901144058219831667163680693678552963361368896988525303109552997318749857512272457992854514880816361687091754429233207577591061205392546490159480766778635426442156567401039973010363817707156336769072726381872731626896944059874464619348294710514924253694743653909534041478362201695901786675129520280729136917200828726307999102341062668116423203655945487213653656616471648961727555620561384640333134394227715065044884389976654550811867781564153012196973250005047696736112669332615114388417836152367861092520331152650742560278602194368514415119028168872848 971166590428796091660642618326944076911942608758366437586694473531568929657058482435126196846028008007938165636121546922408332020525746113173137742380837541158064513767467422049594832410403131734406190673915881306262600900978103949342857077956472650767203486176427586410119268517053367237445588615079209505019556409375459867744336970065425629822197915690893844844934576350156368290024083288780688613476175660443464204586425852746793867920667762952296240283266169301544097004720978567625957659322538303352082993097870189836054932601031958308046171349150440506008918918178503025588113701254264294540524516046437354935442130951144400636710755227725020886064749146212916739013337718522660823682475509139330697476965767106581819184472173787665375087431631404104480150776293360656962535713023915961159068 7754838892035305582813129524256593923429645566327421782029399875218507110321146492569573700322941579740622102944861709912028856742862555886353386317767681202098683474443251861603323990113620644664013145609085002995712515303022545527262626670685741491740380626439427600932269283393936314018850573356522821460772172478847903491555576474551891988487971673459785206486496206373479649255301195840037406997326538336427790288794544958205041189513860673705915242337316801916606715181126348203048229635809439201025103438845250656387232006333660007674389862585944283478238842252092755130890022625235681302932745575231740817068517019495476239610007118264920246190983143918832820414580260398610377251357877797131807318681893980906928624688667980775628003717058658060619226792242175857751805307130098528874538964 61923106283665595980384937333824497228595534339161283987254777648268507363095027436211295905520967263280010655929535389371295616112124115740599902738580061199901162388233487805123657654448891835988509442222442956406649419407124163657876333894601550124917269996955355684555414721062734020322244893015425253044893869034756186361774592908588741246366746881658369575279053334913374593199711957190056881007997122774088725449284949741542960326707760146909772393607260257000060552826797292238724515197038451936387283645856168579086433599679143930426109400519092531142445544887250971127118215044252078171239125483890666365621861491733694231787187607314827712617251728552490038889182528002621739419776478137375027921043971718843613589633173805547292502862278764339240071564478703334070689904252241641395243930 494462766503496676522413849682137880099919945415237842173764924481174589680333353392932793532083768297727310449421014563631528923676905107251709901728488332258796057984119875897426506358329437217077592520897450666747314564108293372233108588947647426409109043920898225473341396067583452435500984066007195807048638067087012203347257680668691955339773177784344552504679423990662044322635432442092814659095254107967929949588981561623250364128778962197209805958205149453786074299877546636741835410112764173978963570151055941912817275328289890841206375475138797194286835956967035380868907233078625433091111423045882095533981709020640092277128062229534210279328971689118569607644961442358818556542913792677019132142050703472473741767808220177708117936796414818077880006109775971099420225689242746767722692486 3948347412148529422390418017538607482714232629855792585658162700865181849636461168336273645412275203317890018647485805038486654713374686868374394502796895314472694122879858513373470928946623060343041098566992972852024504354657058167103948050313443716036991060356134577221778909832110422133011084834820129463629613870405368080209028615044506198832773698487962412150672946683714340726568967905929038408533344203578720399858115517446148860727063326705648590214136808044598576601054065374148513446700045192300529388096668199274826281774772015439094122727673988778339606393606991188521500677612272598048905310450359431169627292474048870480974016007184932445664516324850418568547093956266537591965651725743838961906129227515149076121227092319351436724051592415270297168762062920155908327009239838464875008937 31528116422335014799979193959593324170311331812634462887601183329785022546714292975919203072079922506707624182818429226348908237522265659867409321229178412047322850402964568208613051076907948073245303371344386493199750252311751474618057303005343711876714629000890611532365940587722071160271891516457817054023602062558188259308175515610570662524404514550202503573453350604076735221385859426022777214207898375164753310467727751291373060993532192370157151177701712103926138475566705107373136383093817397894073218894334206336055250619133034863248044195279739858314549306723251838792161849004950219323832171025153677281433111761762494479268001041743397913650733333545118913053939318616410740601729454123140229478456856892491659811006855965988244893301852210591024249995526535441016044491463986095212015071064 251757021740796671034099282712057976406866319848025174526841533741470678843908972743850482219049399731782909374736692779734422884636871694515683642343969313143297771698954915212544769013691407298927822463872280269546063506316264673299021310270982063699630966081894522468625910019953547930700383615323300164445994941335277507538722813140115918018912740948310011189877758960396991337459911212869002269360821589508436155011565155090022525031815853551838706329177909846382420256721580986892274947148845273301860627699597437067821448892734736953892167885685057977370797284167439476166087213570161163082099533364363949284260316521958587042731465089018602684171606596031567984228510404474860051661986857174838169896876483254058469300516786113409266354185959930547401024274640801143797796312955512097861812865227 2010323998247965078035179458775345830518921710451364715854598767472020676202795252417064012492439793374042398405775148656700164008374827872466318784121544130269009595989534878195389217325303452822944043351829856899215378914927905368024196315712120909391324219410821017050537535613871129032228538318120133712631405983046099490906047431054226184077655129021480172840161731913536552357532022350184071475376569698101307207360607878952457480365432870231254085000873709181374805713602863101931338736137748274214713555696975636409482761032999891835462200168521311071268806200685723294757365912580831924861615077254642116318653570424929774277096052686698977166092890799438626943075219559266119517371313000973426891204605666632620686578490637685892967267079374569255695056354464191372474653023015198225652287822778 16052823030136753201887551173924434827311461210614776392476783960669859757610046677462200060211265352457363820294505149095742269501384851572566505624990809130438166600638561083715751002931057567748499864617093105087244906450807706136857840947797747801783658824300314858772132238632283893478501755940336733939612554227192890197108252449170099576534528274934437125588835599380801149804733961429041257073608816882392574026201456885833564734616112322871058003738433799038730471154016166200808345391105686255403277039442119187756224549757739495092350273319760332639887973861356637330344772445464903762007288317343389647936576499844192280371037152841109762062295618804266892490026714683630234428283874087643177196066994964561713029045965825711983132563670602808549410233559419635504776769426922147877975785921734 128185137311418428476871586758172417890332396276525692531611521046159812539013519259030420801315289946149860022181407196660690622975959154025503126728484553358285165383426878775819060732630799200540273280051246081484005797627126563233442861233554369550659111300182561958950009401403985128846970163998713736774438918950292910200305119097713554633363476880877984506606320316237401857480712469524212833075983036002390419151985147351483212119029700365972948297851978809432547004958051018545356283416622762670987042012887348486020352145419715085905108581202429154756304340648942259195102382610527411500975711017181407662487518292867271983525691144627981074786669363027284350695925019336805525905019499986049105274053066897615500017509475757719851103158297606531282513246768088656062061778616822940003263554797986 1023587137873600530292252662616992678622215300749122360679705178120000800135182137422547369322471639865155433288411530060620806107701033281589239367153175447929035371718514151785796778563400732347501065182804560089916950855598254394582452430878194474926797501814455776104171424312012986676558614856173801025608030707418569684863697594046297622166156668648175650710428655556502704696494071717666717350880419301151856975431817921526193057618942889325421295326330921373867903020318194196578814118925816573375536382624021071720367204763589558269034196909115322416650714494581876004000719619513019894394571586270384497287523650589570208034658860072811004545343973076463936785940583625733525720571255985874820991401928764638005611940582886875053932529725139118916002534543304355909879820911547868668532717333060255 8173590154214518815241191863766339003770213261445656649818813470058157794095427838133333277125170954972083473010910240077734978652770467525552172692518093283598137968073617510242815274760036851657598797985542835209993715655393469254546645582347419441344559326872853720492046672690605580392494417534948713812525201662688393999537258099195621488075369576182098023407554140364071482027368081968540460458941957825272415883845822474575815225108457142563627686531674155078756875347238779299512172180937180053014741513576728042304681485609358471365440707561991350054975124386084746595870763785934581024087020099004389013444020447799023793708636907000519335677267069671244786990861437523160038031202785961994922800460305374557620601655036911265782325999784679087433834436960117952525921787889479531932003348226061872 65268222081279853656711787713445210009665905573069546017170810368698998275299079750478629691824902995895992720079642394445474535287820446001888165235082317328060750619099114339166558526130358084979841918369230970041125087454111350894946689129334006112709041131115263079545827776635892596975590912093422261214473125605212724904561905824761556884151829157037387961575561235679333728498312384647165157031707608084478809952442351737770350436023751573263604874002945955716621107679158267639534689008923773725808588892974880715536874415078446151857812211509796925910709375652677784631840758448593119131390573260105119854569774996193325469964609502589353850095235584745369810800216614008715785563236325802245730677728091865679462483101653958419648758948744306084518114612614201108366494045163326025011476932104447960 521184623380031115185929183744529917362694416989510455870871310073579880690296621165337718920371194904495244886725920693238160530365169659418941444861479214435868860335271034336581710904624502142940230888338959051644206290750918740475234131168763421280332840945527253550993869565560278161881106774015407169265114521444347804268483401638639972192682632953451453942163815149646050618505705826186189136051930626937619042884002666664572496698502195590207536484752526821216014648067912309430761888555299160710221671535811709305372528517957982887752835923293799804328465279580792284880983950820291496332582968827824866565113804143911356916907585668050035126344523292142765741058162367470719010997732909748203448310580804761993702655613999553072343624099436858473641455312972171969923250570784220856011981013073270304 4161810388526697683268918530510783578576106605437503128146287362125336753226063881801456761338105973918267383810133799084357624544339383882858626265773790223299762929640708248251565356834224320096529161841658391220578399299808030204237895903425742108581932436780703864492086928654821168808550591625628382650346524915756956841341726314054164060891167991700974963556328409861340018463933618609815969335860149816688154487808523300745664599325983921278735609961304825443227939367647958455378147538864517393000633000722279123437247541217351775510070117194285044845628067159366804590333929758810562624911469361197654332709562107630749922445258680729011287192332205325571743840640123711002191573207684188917411172283600723196286569903054961418946611949862177753698479072316303578059838666698444197523768834387034012846 33233330609505840482503072792782840857650858628281024587202454173864355106243817098229587765150996104210969178953023858499563030523667657408469336282970840443715240881890553328367117289670716593311120091231594238277925738273458580323416973292611470443551016931903192944045988574304270352233655723380045968820284053817366971532087435124602336190959583487202440005175078154558883066594563830398967559692105154172335446765693456058343936880340409663890292464551063988359828428466569893150794852056682861826805244890625756863521462217823982176827604389610542049137402968049943913437151785887167168966878469604539612951328305015885105667526074031907761223306239094741432818716545135558066207950828656209093548566310147994531517896236169182462927657767393685185818329498613014471134988996682723256185203691140840277922 265378861377407354221954157526562891992688592129736640540253245662139008069352048357285890162079629188419672340914663479795452946055746608568707222993616739041303375514204642326969445997158885030608203990641698324094037432845251475258215280918977459566886244562409874739827466083386417346336424809731460291017540264426512546154946767716185896704434927824295036096404155174282044811492122473705292506529445282227971550319579258539021451651054172282923486127782592518511283179342635591889155616522343781491154924743593019572023175927687889002749253329082890053398983067905411404943308171053429363998902633119112503648243971586131442597918370607665237571481938005152642651935736485712379872703383498165904052717431262296928631895805063063620065170063981613895175418909729537724591461427348594854745293614308654894977 2119140068604088438958831958218809366626854022279287142853546020559552048570980818890499140057196850566906248138841351128802732219092151488486954743327191839031658127511580840586534244958717884787314818524964118198364503677157094470747834885638201422189882563641485061560900649227912176998687822733960642750118436278213079581453313157788580099614286230381881440212034954784980441593121184170511901620894894956410267106156752246191264907737918387969526083486988307329487842058473401992066463326412114992118906762519337128077550462679359340542091697763944504286239544679067867367439131360688573132262489000952609168964577240992067762551496361277217754325413311951561041492347594650662232551883764628753911557222335908682150117592496761984677983617699108992793121998489501770247179242022800204103617514562994205727156 16922085165170905426738750409060562792072037995253105621103781865767088366881875892286112847344668141344834922519642660685569646767195686145104814172129337756336096476292456143599268716377575202176614548777636877517369701543244375599585016539622465705407858382024037324922555194248477917140081509760106571845012051999848453336465561104210889425087433473842032673943407708863175026183686615655619501580175246035744879576200381573001536093240644547250070579653576293731183502742691633766343283195526234318605386517683322573068929144303297630617034819811746403581601205404122804320690600265195665007663071217078980694816514027988472401102660594038060268449194669690110924373148185360623199257279109379726478068363465240952449688886790709753690595976977799438313626740314489174632473340315411189074614518660705501580867 135129124881013826529783605563017792699937156875562483244184475441727687123712113250983674680471356313475226843195798513607637754106128991465797502067312752765138207927679689890365871747187897056729636336574460926750480887038093637188852567819958734646147097943020281836304266799959774180409785905471049741644962399211673827345803585954376038891520376407762883406342836820514348838588970771484267974274148991224823058136878649283035342578713733873608197889702543259618047774507311636844226301330169974389430051466291408690203613079802795189991280977243065798226358661652948318006159491959226159904973977384378974364599798865732310664441213599283145987963652829804700395535610752867407897256140293395280320666743296081971452750040467547269307571059317834425959897031708757062256916213055489744528651228807889742222190 1079058337186339420495363789873371826730084972833850934866227357705200514146977175870729468481936573114667525137688072813215662759942950712910812120376945890253714995365768285327596474434112670052638116012963707607710166694368796003666871635505966356051951193620343942091861929938047687074395232038751028623543120936630045877274803402265941330684005660049167766860615529576725196576510645395469215898569580942131395313202990723918824348112002312963372179675275989913597089340082458485736769402177311606778426066497177298988182454226358579281131156829210980644899707368432943552167260801141169597566941270000462285996157190821362910999739520225135463408674351197008636345065065705751152892829203066033638799867224253599343622005582365065062280884547015972383000976595068956508796579519173294717596471402851446873786194 8616715533876946571434122193818968499606338423528658162639345201291410169436959717947065119266268847082217301715891431001826213254118320065303960313632650911870214739302448651167292807018812378260755124845296973452865950977610904505149784849401099370013566101229513851345647573857032000978449396867860091250741681254969357359008795485909401788225732936950233110519746802430260152313343958411212815283016158934055500167627150767982650979870921847270067555637769973254411313073585385476178759873329083617125201862388855522792817884517962758609485517436939804972401414247456551292689363468933937473020072136910517912594550816799759370311698930485383599970315505345713943602332129853943522577970161967564796994958402642275766045846251628524529867343836084463093099446498579205208378547845344151163837318579887593664769584 68808082531882640789834556441335995491883887703764417469856770030958789291218728535105049028733551030065490503520390398013070055589955425209836303708248578498596592801113590852496462009104849970938045156063012259764586827885487149720560505903853619115198510400803384355648154791887947356398846933673611977091334070233619947583290315031857767750090442931205887033400910082281733908348277521074685803846863915922681375634736904862090142937889108294237923908494215055627552500339695646221895797100824248196766734808669808467989901244126478500736195175354514211612496206610370711019622499400044588511780703128843460897859588082165703466394181100236285799069383041137674213245109187031938551422102729128830778200899720809586311125652237720251403460748378977055126018996476523624022396728184731789248700671419270642953015876 549462455116898191841365780328604486441717716195299499513900667019347818611228720132868780472968282163370542391635675609385253601175083723032582566006682442855104777077311641889424319847318106556346242756577819471770905611606061493907283059368149159641898562321985631720063750492413976540233616529645730193431974463860996177316080990060986559845496493122073109690267506121025305852480779762591381703915105073091239808516422320815663520647941108658976131612878513895784346565356784994085512474212095709887409811415634481343530616966280756625724239852438478942291371060625036184633670947287849036858671844869817839602461087317311828301645018584673908382846561017928809247364627791794143965459797429817744776904363621521246172598724430276078524094261428688861515274920012696191437914967445839775531590145735055933405743604 4387705336242843449235424397554205983545690214198676356960584802862159000338115532170376572854165617990924106857923739426931819704307945536404250722068947679872407542314059046297655629071861935545532741503158603561322396376709892435927959331057383206662323512874506313244544202630868772814163574562966324744280283447044294585081351708301769836574351574704955250915859726265082372184549574003691340262106835586897148551685312509319874713378128188197139280671970797104331335656873487904730171487252777070886975496474409169966972043838571646250993114659363314193224889317205630364368228443571467275926307530779263865225650495006490696632666162980104360816578741900745268193375325403554904430780355541996028353370635969191885158539646664650723418618483969406575515599796348026956331535779719082495371143264980751855726835228 35037874197236371939637233571788511966607608242448982166803680863507614855675342942799106839717569513948338781968979478818366808142209687308639131779991098299591659999193613283968608881016238581199823839536263422590887755469169127734018471521042874878860514423028514125205922909686096960918652566962669761886054440697675313951700778833464368643566936483480153195179964344888673633539474026374094659938794081565418144063453036242073888828197317139918738609547393010733328095663928686462659037227056987888361187424862572925520137654550411463282272355957263121580589004336077074385474283821357988419683094310618373306998046459449476546568531676702314033233330701831205098195876805298233084969743858521446523144815302904585488793412812764836170790960261545799897829980997427991934771515987815061404079148203365941722952349592 279794327253488506705529005376339123497123859991515789464668607861608993698637739741826702237301336423889616348604720276848854990545422606324339444157006507840691098195983829125829930619018185432201948272097843740984818788997249011617948996370339688628014596569409719255339975081166732573130902101223945704186225258317932532865494163314159930532450866792596018882567306963091645930865836538849582018508962707051612136634057303397196452873234840659917780407856389900331189720750687278243946199179906837009178262204015162357847153029869469561678779140390585001497025997294650376634519808424616945401453019525282999619776822115074121669419393323219204708774808322452349425851207982599228216751040086100122694454890039254921388235782093696502509235447948791479440976642115232244954785247951754644234594728832270620517505742080 2234297093080778180067912309676804281037064788224653655743561518951008310655999355678308883826857397155650200299867937835532049344482411808888455657766249888927270032798279425440061723120681677834857389230280648433757813338459815062824167837824963162408187560501728822394096881035026640829151487128161255336416413741615905975908934836179220560911703292411528768448288324986885920403208446223980261779011425728800373811732005258391261870898400986998481909433453557519907092493488320191089894577484653058813956959927103643333883914101246901303282051040577734773980923048291368901264044523718304341356462480043173154692184848623883775287752370069163289987968299286739112287200480090094996504011547628695602811832028193352666546283663061192318969013286869650741827792657810025568411575629898861010173588552942568878715753273388 17842010613853896918476387071578645112280512593076239583293251789754843937832470791576323079628971336788242812402837214669381481386532426423375763303412369705318265737732810605283598716584229451276055912157469894734983817799461277354080760350372457443367957474693572394210349190548967587630876436090585257082990500690979822055106753510530543110286889885397433466454375818983950207232971072764356026604978380312452822777615006898982357410679294178963702369179719410594155800112787719046229606113335931507219184827448459768815878394373268195418420301775006708870852938237032711897448984841894426428949140013087470768863354641848294158060899198661284962945362996365536197997168925867466325647316067141212998018857438560003936962015558117210059843110568969956175650697168936663985556925833972871285644228299756166363912374231288 142477905418829110252803066601198878085176067093332614193865847008447220317429599730609772907345706824370535936290886424205771107023268232677950898385935555669244983443230090301161751391652897841213644220752053625316733704881396940472263804917162134427516161913676568431284833805777994180304664573816010063603429652531156661187741799873310244259300868949946628277535580873186205552330339984686637642864945825396965282115240905922947997202656465675792158055600395883966122032171474064025748230029511381386329570602973538227720175115809026526969781885924213306940202842607635145818896551755689493815905478871482754704035221426116560830843734285062142550566485266663243300439185637024388043123967139693267991522192780838045291175708498407710215024656402482884241931464638949170830209561919191129243476653543882699893246420337104 1137763780003101090184890505240653897213020646409404312217851054973659460223559253607661757414738337780635811454039102246249259061587764490161530057603335963116881162325100358229966449157860842357905894166849780404139113458692548559950101188081086087044275412786784233402597199803203875640672209846210297820469635794678414770647368882162912284398365751563536754458552582704890621439628441264892076650344356807731822680453654025995534613424945470309289948714755905971673839755015692211497842542459418616464469584941161174756777653755832969250947969941171871408224135985422351370815879550277411246056206738116208379851168942002332606751630191320124477021821109176766326068252472512899001727967605789788165710074914536163561715841251474882192347358383619400558962521510294369618318258886294432369636061137630646006001407131349953 9085682124147379759074355678629431977125436106757037736521930811981014938148651901264377190270956876206278384673638464239090333717985224835503943881495912572503394942908501183665632607494631745587392144131452727080876881031634988516292523883710270231296912093133537205868626766037765952524826543262805176472698863951900420699843596796008800568258756427759078078260258190484573794163196859415815322064547472798207741330712337992825484657091503658413773113001986025599665129470843289879383018050030603929573390888904989971274954347848771260738942597744632108756065336357177920555167183092610611122258891456335357118084390241386429023320865993354910706287576086868261188849420646839093694837074413426438626417505478675823090416156534748097486050315537908892647172260973581106053736998757964080698411081754177071329104273292571944 72554411282611333584418195257037395879924552983279171953534740285674743751712514189989683368167326642957514687155408807825059403641981442194660890618989732649016907563525471611123669413396789412348641310143486241251654608762559734274600271258693540139257906731348697624137145833981446613386259309165177073054561077710372111295715264579251126528747791058447288977677257971266709170748840477176307867342099014791381074030619300968021236013268906103097178629206938343069817366386306197957662762694200350225429596236349060359072587804750423527208923795488993382471253065008093239659314639239107454364944059506159683334477993581331153788975172473210881579343796996337984446900676583064839082645673514357909595408499906960867173567977792382508869275076734492775067833927460403537699572926279952359190789720063346462677770275493341717 579389946282776252862687643387630478068909897724087031250710220773098807494223309846498591903957761028811483543742720493347601902901335916318251061738455699836283512388564239497279968200922239022655215449658335983856543988193357626151187727153872172106236389522409225294178379802074555472603922907684166615802027190327663657877897095562261437959487502900079710845555916886733911560276797049871141299897616805551737387082431051007555799751874073111782193602445229336732228394404029968867652815872404985908331715967714635473421478718563184647352403411063181972888632535415749438200764604508473325756192978812288981787369348202559882840059226043499737440372638589568614712531253948777337739599736251177789791990121308904139893120833093011936198741238534546540876223386667975682960724321453371084714602788499791509325662950462055684 4626780896372077061039835490790317677386749070388845756495192849531239916128373996191024724336366323309505648120681625941578176533505657076210336820915730073457152147789922327073639426995839245651937674139781754435094065870236654385142022572791701234055446220527985812148794752609372210434369625456385805235733448803925142881655228307827316679475569566234813295079917276729257075028937542614703781523165880907026996245560498371017759689572093033956478475816052702253349511485692131733815691420381659080178416991657790625047771041272092643057479009931217584256419837111795881737204069218637349953549402506471967521163319940464498778550504244378414909732219021782135612461125251385934994236076630833075539340132650445972654338081291457926255970238331416606792863336041750761250251916736446012965385074498571066664070471608182245319 36947729641455872379604293031966739790721668177717550020125250843000135447078223273384204432091468675288333030479960535736882736166111777439683940226407379786829583228218124311853233553160591309662282063561049615493602189941488571291496198852115574377509075566514138928000234011009501263812724679656559528986423083157100212677570309600779204371384424191161873481158086144368853173149448530144782115554164249428786569836850871920148040441805409501654243604910310875913279963010088360540627624210688611384897909201856977172940572502940839053547304593119625853656445114226578867859288828575642655211806600596150999620685005419272734411789621712133230903685555389047687997493586219795239213988965761682615513564332175679275413612495498803462441649021154742774879239804481250399998616474987055980718290516918557313967794617493517714568 295051225723912860276627801697574543205862787364477523687940435507848437866476921208972167845931700785563998537518105688075848118236204308275804996843812002985198238224130656812669473011951809012759617467758845524576740226578975726593715205268898247042224069425257237140626458187097246121932873217462195133500650570480027683234214621252552145767219056818917637681018157273489431161020749483874561972038791855683669483311658641935971910311514702436070813732024039359403321397360924284289239566689416330628697265822089963789660770299543960525501852885628680504264463615548258800009590584427678341116250947866809060662130613848622824548224161145883368059052819714064637422435116371518999747360259515611604484315863764649352232321430828858357501763959266033359146515757858790616938387526299365461756788332627878947688297212389706774709 2356177096885645108032074585329318738839304960928801206018556829272410875100015657007098866843181117546189732233765651164165170743011247619372338549307991478039616197650075295120917911556818543697514221378845778978121574789090451702419652542660976976401503567000651544042161080677867059651149630651775737275141168916952922655839252758767970637129424773416843061595978356128790749704692418870836224631464910353022767564046065154253157230059545833544124905873044191766740815412433755613034888226538614913336390293515426932167715625951556371653671728335875908046140658470480690315113763926629230426299280344852407489064967254891859314591641658791501799074886097517655604834800266325244817827106828641272827242366475507416082350678346754270671176012686928196570747838462931877466734776717682029492987952770081263505756196221511786411688 18815652178457631764624386734117400353855631055229209962749172267129457874048754877604523331281316699641270240445151013819740850265532071464195882928580201981886186659396822439985926507794203747096307851083531256042318363060800678967300261754987606581889519301569521406715232899151941700365488962867095087045090901163617746449334611405322341966820291381620850455640164539986675581682044570581701951259592261586532226602755652999710464908915627138626022021107883564365439192594867947851418847461980288909965175447556708860222136676881129512859637843505343829203272304977261545574587670739530481094253784322416942972809108402762127323236928903748711067745278957704826359056734295004554525195489240723026447614704170734257861848627568104891473289987704457529798608606512670774225323681074594541773963686356588667691726117145656173201247 150255874193135820881157704521644729578699625823113143381991990271191797757199588290607770075317016935372374706121978319981023221385859679002688306183804507962360781205483348600349733578640768674424307660600945435157738280468911066340507396181738565616947324112956947552757736676759433854078406905025432524712929479050473868760145730428242691202635308013396813871454093104408725925318581526645788146542014552614103545563860165484291193293476483303229888142071036624965809829761399812417323086050669147408546425670180439970229031562874194304690618194808897028932773452156529459430451225985555245220025651317048639554022373567823289396059986316920165595463438559929014156389306503350803101451422630364558538914739067292612653419892171078101995538478300634794353812419783949853534787293392531098935085503878165925598431008342669059296592 1199898411631792468997620299595372300900736510484163122669937293097876492604823960949108158570275141310153105822394704310712267560589411866872209695256343714064353202962316641637589386900639941346214682678179293290303600254692551484485904624994388710099464692744180500788139454239144123836754693954194645136460294220036239315984123962576397299588780939377984600546526232556008584512803968541590264495732300963457489606614866923290352895979012932519066560399243412272392491010679623274783230619658715987902166153003202155559984046532466674297800621159622153442813269699256737940230322445516001430721423377330108277620389444267397574366736566074813044830164815990783122836752181620739689019733942459756956168652695374988513239129209385383178043273989949849155639957381940681298895656556887824212157301283601469365150028256958008788667103 9582047755665058584544130965900821964397667315477435047548618323447345913583387466279524357592327403340963085124602834294754294590078066376041909816106848018583072415695766339865971170367170412624939306370698913792451795456079437469892107522385945226869973039905995252320488924202896437189454606101927730783859151293589563036635840518150449471392065106773712887793172842615498192733778922145390377807721447885291129762501111818204168032892356208966143558969244066323244531459650867722187056558962209491608594217369998441938028631397672985436737560076856554593554156052563072821276268930990589777074994142250325947944788824043272605461614501481094119921399831345532152138753416868204800817537499005077644115903284902187601372802180394432018962449735581035670949691535995511259149479244271439072720954048200037725512552767903783669758656 76519657146999792662006481702056529484561522704586130152621381664589217471226229718956679806391723679105701907684470295975370305648039646353712453031071765624275002557336635607975003617481252841874634293288582787306170096151623657229248859105914778931776405724169706731233303156076138479082493850381552774693037674709264930886750379719176610759483703014858888177040310639585203331118275964796028061395116442073315717659888038713632775755666132798428509079777874675470515102548381342954375331349500487734864751430561423175101956780860707039594543990122596277899159062098287507884993368609332101631873826917194547332978474943314018380275496516862728183120980940831257476013089404866205373882818331146579400338932981554137828849683700994297971416891651500166935506782979072957757014730365150516018650062509024759978282243883429392906798197 611066576917034067327146740073947659434566526367769122619797428999908978749084042316818852406075625246980265441376415958154884997869624405786083844018046167273209875844723271491145454844705607216798662060407236695245652804683459243576954877691151131411971496997779360325914054432855225468319868989100730643866788507971326614506103399543091193305899171376356304990084541414872664207508395569571336847997202365822455700560508136979963585118487211831134897712536797023258952479932320226177766763242642179995505492881864187576887752940271997661548732129915574243003250879160469645665840115476697123301479498032160181730703662064374253686925859270907339434609141859053169544704306332354568489666454316118188118309017669953630575014589106368216698416775624327168264882968814504493927135040110327117976403273098854028987178824982287270316840396 4879832026945176347017569586787059745009333023536302284650893562080959486884052818548810119950429145711944633965960102856253652382800476282239805707573668072319579127185754326173698777116389501256259301390900217847364673841961530925564018173949712843025997713857012433160771301596839664465319026952204604697283673743721704923495110268993273277123107392498816548657837235711203920425265347989731358170330643433451395663759688326671356484957128995045720717325340333901229788170426237245051307079530420899893568313806841007245575149568972656544641512200389310996863043612206587291071667114987282415704121729657051285786503463124744085344946867077365338624165528691889785982408986167722010798512638285664217464305198387392735840192087462737348352711761751719526971107011554601187680607607906831477067246017941428232443033192251876156682239349 38969249559850664439712480881028707643764670591473390805853963593623929021327444116272347743585014681369107081496432904705779102757097010539663344872872757493858947430604464814011414069665853126411565845186198593421333359476107884488089184795984677117257598955356302709272128580424065468144202304462371874338779923346508209617396047603534283915438799952699269463900707477424790807068920560027389304101411217253370421483356556357622847308523490329574419955400045120508004765605382730726069716230454161730760415653353229214030665080519576235052640832623918301511779895990091116889150694360305977166496992519849839877544532209771528236640654197884256181792816615282402810877520438090063414942024440329794340057423566698211531180987864569986381541909762536964160450949955511336320658702463290346063590381487085166221201060207152839658784858776 311200321451216769345766355371299396952782487016862491277566922364035558833079689348889270606418047725685641138650162967532705245039345910721850767349105200898978814398072743648169195353000940067726324372101627137330164399885959297031071735362904555244062278473578669031090669512842781297992630621412715789633719320963890150202170009730303134214742024208050393991461683272096309729638927098964789997531529909505240848003632117710054579037958119131364683045515853579616101735755295211884521262994360186568992086832204889339370861393817324252633015950838755112630619272513420100485167566713723751978504703663945352479533214528403559851603333395091354588290285440260868865653768183788823324497514888289870316880254354971699203087103009545471382329958103865065967575121549603161830801602726932532522197433773368565554411376344051484397501107432 2485185747834084576613672085298585900254946452874248033500576426464883569803043167348868774101193599653241506474829830028823156267107033421890797976663000282647877551519554961967903622952382529748987142793732899022955429176807916890550171975310422560771485996805221336010440832430603724958711970953049509624006072733740147873588747324160028786478467237653076597310919517044404847447504769988391674247734581230917354784975415153815531846193165299805893653810983408553525311432157951385418978925893276727784294508502609523532901185754886114817466564164576057941863651158248310554412460256639597220409001851069093529984058195941487216368761705191462963534118911375174112320219987146345981266966876339714842572865823801834294002254449389771307748694424602888062858615897727682321093475993954528759901672930715827277766625212423881562125559662108 19846251611588335332083350976844963873198690964199604626146444641720747160466199752126388118109839225002658278296868441352598066037632467836365974305857598981938524989912875773368957894300440350008535793687873519273203716993771397957882489781465301548812286235524021522549635040396585237568402554321860572998469663670506877655505635041962459429332980590516554704174766705967279786406442752878200835248305072360088437976507093980876913480278382528723706508440405264036571200077224809966115314101179675074367052891874110763231859287309014645212602516690160935950709467009242342289219982305177710277106702539852982112771922531875908708171077445457762744318236661969327543081338285895974096326561400705361147891581919243428006590099821004872794017692375880319593262052358897542972077526360713827386438885933525214643374125582214044215233297645490 158488936553052723377286088222959802892390735333975998370768505657505790271478715686808802988085536927415603470963130908848661059642498836874203256917604760836402043269620256007692760425036068781263059759575171246231813666885448579432835963771667911430905462908629093261151162527726245999259420536144573065011081872300928487386978835361507985013226851090456339249729708440698728365411317384462050006637036730865197960906008526055640179847375470154650769576151938255793003788775744186930253716644815435714341453092609453898386123734458137618483885235561847851877851982301386633565328479377651315551376314774397862205101677989043309797358453310642454666500643564657844810607193029042720635047416712089131589395206973636516589110581151440924514108279935746525383767961888761897790305869848937004750022659708583841033992013423362170965802463124754 1265669245871605028205638034575039343217485343963658697989417315642494616533216187611433501614228158004214804652422313772474387058430462114619858020450443509274170252219652823586763413064369522055930271147766902526017321084975195967217858815669837387123847557687407253482702787369344066723588793478284024987494515065221998323378788370460383878689544233615807652262995964098837850293214584269932634725803813407015500330169507057125111336905205334376455241903400722548687175977785818962253476235377674397782117763801622173181844505519095195742231344794524364750691833565499250537376357006492268383009983025486265735026072238644143693884116565878769709934284583166126033628769242666219158491281558280535601462691609011171262705794248166116056798342279306300276893825935529263753397775634249678670221451090157008434243621224648979416275669161657645 10107466709908200731094516273295997217630032801065156380476691651235262334960343237984191031384815010507312710552272920951361355069326334548226221136154041143074529761097025921618889739965174545945831835805536701295263303742427987622608758433759662871739981938125848013583897652862498004104322968811249866137584339113350566078447330991346148951360414915597314961947651932670248824624080918082371080581163711139771981520742621153352648466330633040905364444137019165406554091085170676230313376511610183357665019742545871134210829423233114876362933311802279247874613879898214643140312012854565577878013814214446285901014542931341480340226246268722795320105529372067154862916342057488397887404255496604133272134955351878235039013241464092542244440309809167565291128285446398636440299918727581827934864824222013756511075559413241625026775343556008968 80717039769781640674421995558872477878834386029610849249883938273749405129901109564899014037404331349910179928909076246981722623095811638622384614179756376283871373081426359719196091399987464796644285648402094652293299080977804734561187645012338652756591658956124127195015093405789278324626886482214437895631346823403526711366748297286471418999742216824406423292446454452278302552855557466967813478173956749415408266978128696447229952250978648951067221842481293979333822175776557230494317650138533694416601418100025721945912863659647525709729934640848963385671925346217384147425601681790283020790144537436610566609598161102941888020320921759599682058929906501852436978477841324591245955464778425313466518737484034444950831872387082661241050021090638467664290300841490746427195985613867597960329224952353966356019704996344792909043278509968696116 644597987514266050312779596516299474790995409577831146302162392275767380537772562828904653525078007951776673023089647733133041361501968772750778992290228787775488136947792627240223268263467943418018463816924776654574835730677346177001533323692383778560442617761235297563381912736140618810971226199087488878432154292624633329120724926383103995957392543152984917797888537930949119049063661493915416896191653425036634075710936240791702887387100978017006780981708541689817195522325506106828177691093966963491913297617946600283903628542373209580989819814574787201405320425480007130837724679718316469057432058337084877355105357770164853740575081921180879594338427380782995011210706573190477940563405983381778007675848529751675990966490736314247253228740946489920212933178632643904983945354287628720206899404858703512112052396557374058567404387025253388 5147702920157356364741020764276679645418636480433393906866689752318880756146268922515063574930234661983692737813223937193249571282639586333437681498319740841721704478125021053485031950056699167840853265687669290969344698540878181999023952032374590267382338053991819530695361008509559562612576795846836168062829645482964845322311889917475467512073061493479006273771926420857848370452818933154996228889949498023711541245627208898718824049315500854917101727705592462862696993836797310753267053327823646127707468945507069106648131918398271775393382982555634367351524967462563351518948186510617387407904690699154972861508069180231126017215918135426514717340310894218668499606084011993286345011004725972952223392307174923450943508983672769039291354606056088685113493905732743226781632327322130303278727440983772874032119604079451642363993796860593308928 41109180048223081157033230172952371133548064211266947574689240289516016403325829380499642381879234612521451077419736967883925070287479955576443359120698474981541493002786262921122418660844282235625833795231060949174755879282784175258869532631560594450048194300595179894914396583008589997609570045134866964259951532475228583987615238428521639226390079543471545141236656523984448574652572161380630064688864735734819513131444608555531130673132267157386664372656858308097338311109647188187795492496348837566919496174437292336263901800720478722066614278053591608201358330477235112186604368480679558512874354770313821239013109276907901711155129036289491427964654812296621503920198471939924044306761913977148122217096475634108100889949075643938973760054156685744001689032239515932306349763102237265422551368928580330942688756820058178139313245176719559770 328295523766212972248547051272500443661245721121811338422875721224717173892422265673627950857835026535629150936389017914228247771315693837845883708936596657814258829056484595771220027895297112100877772967496256010356844994035879359452600282545965052328395507436209133432991539696094354874509561688767227714459681446658385609289389273889384916814482167586487396109684411653900872662841771476774570940299787513025245111639926350945636707317846158582368846206971571841977794331425026640446662054111226379438847126018893267334299661540842017507784788518428080817765148169790368955817445853258730037684826441870810554433138997666241464599742802749657821636670634467786686970734860860483746692977466110981287022979016537107522681451742946215415264624358534318932850968677898822789414180699595003102204414853173204780070052821894577180887076648603650664287 2621753845873951822908600075923296984001008899893324650278037618081035204614823801076828283492640893073186367727371144995884811647785001665130096088006449781680783700856756554890579281691267675722805771402425833750388668305340929452770916310844078404815361244516904276175855355894870731287423660634617846140615312793824972879741511824285078807922810223309689692104069777465714657900295061589144154836014663717599755404249193737490466368655870040906131362228708798646578052693200261330222212953896983135044803217442300951707383622877861182271813884022890054482666839564208870142028254866024340855814596975041502590043983295423958117246760049177912489956487585152120736464238247427739048543053319025937624269231804770747912252447430623136924304408543685408279542304833594520311360530017095947152866286350570131881935366341002494654540726262875574708900 20937251521516875340593530741504992915836694176971089409936690119741413133556450116768868722635170478421699745553352992853803134935210827590816325151569787093701781507441484431587999117272598829737034217246257232400928299684731013160939426677167444548935125054249151270937659279532344962079443398472142887518428204695707520182108139560483169822944746680098553220506141136316766480928689247916170823162525596615335070342771315382017645189202618670736418292974700459513770944151074388568868416427888511693510635899375213590104497711854292163130112199191920873978702220396929506177697052818349927283870379290386818824617303431923688741190413935745170791271992012375514137029698325960228686638476001269144425841981489137991100880069661368059709066237710537350210226682493720842413738433253344487981064059501752855414692412726162159649768047759300198436143 167204603084369423094912035639839009658931180914552227251899297516760045064456641370296143195058899081105179097124892947986499862908570120091039973583136332656315357099522025393856449513280888136797260549957948610201773872230454034688412281411117337226797792966609736570542369016190059795249268757406193007765234335410882234055074157640690264138388646979017109943479597160076261013640669834485239360249175146957112087945462203633001059405317502417581427645420487101144662632139443228338767891958275759338328749618404989173547078903803735710287518795713250608188463593653961679629906403738266013474243562779655877407889850861907831505884787957301195149949658494032446368278259818727014010650900145168698919233674396626721961183507036558249859612245616249792924901346033186963981705362376801119898527208458793406154420566142113299653773615482567664387224 1335296125565992435795179266482207890696007248874225117936402527583524894297939258383362587881276665302361577285608876031573797966183441981850201211172860600543400772783962213888909481888046574044864320816154822968348394137069249294453409417792466156827885675730500047127272933352335940434527146467270993962462743634680362364880750862456124477395677203246821050178841732783655026898269186875615023339105628529513516051390481844884105011904486206282276004216744887423453714265266828442845810241842411399559716320756822808711198809135710808990463413407177336258479670283527184324515699113166213843554204367712549181970972969382156152647262695395436363871196823882515531796870755807368216262986947164607034489470713453549532689746453177649985942978525803362097196035451899401093651983775242819273007074680821056661327881142596598978788155479849864435502055 10663695798076444870390516800025808709951984433224409073861939295479549894429110057135839835661852622839266127168302967643708060578659292054444119781767793937781853031418562969806886084227107151164199006381287054356654889964290958079194506023425819611623196665480905179146295274147190004995774699892327338986739787797588816098784689071419913070148309960539184738799395797035995972752536359901862554435088378705902905283944004498823150509474790501718673950525535477437663671411826238606568840231184183423928295756625813420447796345203014822845601791935751404122461086449833112621478517739190125165239857605874980867881799996806780038154551262681533381619262654787969262499114660273460871001059805062898256178039830109622212527445202833820023522515516721196016522306122784956249464296889188939376195712553718575368550797318825021892918556547385567442322368 85160598213678806676386511264042993047783158403662011657212756899138391944063792275594754978370612956451628091818734467759358348489046874095158296185650729619643155709582095189547296697379087508763048001905168887839198801222426432792305653564417850570059277164135754305777456900004628667836594393345544029882437550266964441784591895535928138506864376240108214740242247866443581216326844425322696157276776987444321859167867195682564396016486714269807353064428487852814484719339275116498665675720935320000874664340761969457664985509545793868226535736255786610096792940952307477415438842375608911606215281771257577303662380946544911437606983881848270329567265790533772536142113678432446362166727510549114899054206296069903370330403799903208590451492011312376915218592664151241640115370487309352572136608936238308932768871226695597573732580525231180081610875 680096367364912076134367875588916529072795957955253085180309873216963755500669403538741941802660525795452473691873035665949172789614480718935894467159240563530403292298732856536503669190643586133031975638368233469378849281775578407189768134875304251989548987939372826566338196381570957547430775412933986619360557935229386045392857209069076233444193498939285628161394872069662375098961874661847032731479058021252240446857467353500723064087836032946537247079598677383747956646493148087554922627248885004359293661494722150315084697829848577964405455826683743544826608825254266063216354397293971149503495476162463672528555191950033102248821985235284387396984546153304729825407106027870531401325203608508130586071470987079889072500909031421907132816766979024430166822085632369725358151194440551378553401822593290086723516195242166056636568244932405639169210616 5431290106267550206406828729864233047751225555813759820764616474057071878137061868332408748794826806370786710277433474038374984105920294960929824444829993144912648184849512630628028486715622919738914707516118203580591714245498419786684921283422722207995558107246293505158854362158962894829922994046747100145386257622408783169962548799612894750247255305093221025923052382243123216684041156413755129610343766971536201729679073962769163982085502097841785434918048143329871307012595463614703276532467581484556233100402596474489041974625454531850249360425493603062165532602187071667308123377367977249686712010824885556972345673944374652808460155238083185298725210672324606279030878158829372029895620284061851502565842567750951851628764376237970658982211143468641036729337205323745410113618212907548828917769115954858477705620847058775764264342912741096344305567 43374685489110893589655679860312245424648773984859524317550568227769101171684859220198582470922102398184723091383195528310491806532572716964276656516744326193206678295592894411206296199953594356007498908156930381185561955256982763660641508671964363653404620255066405290980411133490033645128667093655300138458315118000310318991877117073127954719180250772525738396290688330100243999350021170852597870176799163538160263001962704974654321649497799968320605240718023241618687300905961612811685439258781127256925688790461718796106610142274432508844913832166519400554433534969950858153932596903228302354357138528772071966350150882014869504550461994728285671162520706104064895482939046037336536872248240959393566322384259610215020317690018743527630531333985524958270667762469505758075290195887025234607805969884311431406881344277058598073841010812347114309868181648 346394084956591944680857234069807242672718046069880020641157500278359970015725796250781365370608731599157413398783630374862202269160944187057566840459555642167978589334195499968419968823643638446633364993699463883578807780480022565908248744426938559523152370338161703847303168920239657964046379974771551018339497100621233665451661864284804274753348914339970495675369019074772086155757214937938368303957995803412625143338355051564932421629560337443051214461200600122094667832899930581110403718723199530592886745013339838969310779716789889572901587134003387698817735450156034994215553187832855858585810935711901008017703462308753214340349598952352504010073806687805816000970776430452064683341403448346799951995875623465173304364511275678643221597194366184834056469753071574516368471571752894053744478378036307123958690105195882719435291487228494747184935183563 2766338907953493397897078113025083234580981600236566806845337889407006296871208252880449362180328986685210506276516592105403873268316276572122562249990379985440889951842715109574954161583895384891672564632322348366035119877904525635308267696113604690067236049988082267434068758567226963933697537552914085708030890404626434464542242392489645830547938957230691586256065016397724827653904430454973665613844581604225913505120567289750483908007330117917591208681208360645849802350522102338483998883110446004682431952872852492752775157233282503004456272102085238787198804831429682138893581617421681487837246041058869087002677270300450453469493273492945437026629204782103852250872494355357241187582510191163321512605431363914043723848509347960056098248519518131078958514275306467001041062871063905113022196979249742832230127539107247291638052963892219960929808256106 22092308039610781454679901157796388687043024472848859083619488921863992176959541126976612149246803494629672117877070970728881928776591830758421567015149610039113141113697420463155658032246650188112108887564104279409538805858571281419894777394686879275304619367132529930828795887354907898805439109455557876396064341844121756549687367642505277658711580490684079940826354565684983131871044160048135634598163572614265159140091149562688907815925123236456717462930694663107437262945127502435157962426295136727048067113794611607719073504354528418378972572312369338381558280251621574451091779983630274219017681585655817015743867240206875571290090062823458537003985476194472148047218579398213393450202107037158083100072704649221624876040229743471124311112969429108538429655544921325731243047738168982207916984708674289297931885375441355651003455398271878716225164761462 176432090857035719254598645808028113043051504536427852479363466227462017607218854952928983455138848143502113626886742552766719313077498211836791964335081034704399521415279414061530180168989731567399202006368696160380848919925639996709001743362914211608500056836455454417363601125737417644931364178013992470775597547161586092007995468822845895015595571922248649125409967397972567360944842323787590770916074680115386426735667143052738357885009508192902139759692748352559012639813815195785792422645202898501995658895192282617951563037689030290825928398169350679868050260548466030905932054903518765063873169478879502515281725674753356028411784271274577819501890855287818569192060085926508966773405761937810267598027521533700519815583559296005623424350935026539494464342543907002197552752253537692405273276998942000136235814449426447279490502611825162237897726931152 1409012531847846767117449420177789243711567475553417574983580635532373045277509013845055399096821353949337506821243722871108133347548332871936604680006169661460167200773530642217255342809177845296048456979932652748051062004603955364362930386525141184676304122126225683121670003641555286635382152720416715496481271397973921638932730858594111071392807247365304449317958135400636035857666644079041885771774423583354061714468090971165004236296233018131125741884619859614636488157682272514240237882915356987939737790546412547131647372472173252724206105351696506466382326445473355846481637130428809708296050310845360347760301249352829887203705115244242315316486273754200351083668733714606268253496042239695948717206313252183609425997085373054989272035565431413519519788711570895968959912354921072927566167598738825806700781977026779189309316105908498542133676143086421 11252600829182306627520947074966836879156431167233014277076519169277927346635449529800572493132592405611840957597273430062293459145114899491756047330091258294302546026578354467119990725387106088652079195252502919531180904055978297495061831741746640971507886029084226228295316372601855348115662472567131746488371875820658923586601294527581841626329050601815659631289094326356868528963325164941002836721719845692694717707620693852024912000688738418067663867658990353476961921978101429713425351573290981706153784320972343631074402504565994579540558733672680416561890091398047486286200672568060021824124589198858865673814662614730983822483982058370167875111263778078292644464260195539225837183536341641990130856075760585400017941530592147567898587694531096569285757692123778368779220111499194266711030710711702093132122951461680218252840767059155612530224254938060896 89865242657237095584458883393403649158984767116878396120635467717810669788868714656869039392718442954377840610816490894807753541264524425496780308812388482568655519521839164220398232136654997535767257499855013585054463065544726586051216689154541134723818251507575142507492093289086030844690415721654083154242736158502203668438187470849818132414353115953744885825525663442449369551088053931867477524725074129232367457768249257241060475049815048586410464417691164398677813183506901926532352953224919822028839710117037146384033883030287530480125068418380866158407528061249898817060598250164336472876843640462303265048901930410341807706982367739168835655819835257009520181878552000759936007660319723835987739176681789486512265550782251501473491488777721385400316455083834778009376363349323417518518948809518829540910208449220840426494956215001760967863325486315498970 717680867763281096491147035699962350579128823345116224999544086741657253777670027922289117001855040180415482877887525408082367633570761210806014280299797743342917115290715397480987127397050450603151866186158670387783906614462931361554850464148199936693581488662380475148565160083748291030697506299543925914620736318603712280331619601491216314551552971751863685544393815512834616944210339546691298507026150334454005127566697172050068360467440693018217292909764213736212173937869398281788967450739174034841454757805247757970020057909618488971390956449382190122967047288648464132456209456962827889990709401453954536658661719805185757033241828569420687718388923042383691404312504724394470592099976848061295480702628971601716976683369921000335521820995079858963597590396308963310812787309223871958720753878120752335989143192246118540758822687907517673928817781883440302 5731545756269366152863196460362919929887782247933655003707275303788572370068374502389686891052331673523142465412848141668575253698478699437272216211176476011177700153430522678754258581298785740207757883753452819159388802579302055924392389266455676482143004641873781592277962323877869307552588521824194038064886050939341018486607166918219284127040572423237789963142093096299766035868875624165236991180558799659833877612299710996365011626348346889920238067327995998194996740616551361583959088324795657663205512388885530969299479394004150563387529789049120327466618390252592554605539020146675082797873884558726307780681426772010782075979968661293924860557385842153273655370865093004215174989741086527671948278802860990960128777131789523372065468057199026357990480608334646047071530158280533179319592684988427060162460433778580856804896426302668712840922320776497394903 45773374949241512903593003362249149981547629363428250006223134055942518465019615644288075607311660454627374103840989208514577167458658799248339152565548842224338285220264313524637781017595809151380061774423862771946858351770478042034804653390701811723456429586719798631593936238924823645218096766325881806177382199095292200369549306555902616300754594372331082573964986691824604163341500676141148925949106577102699131851189802807601406226408330737872433769331648283333502529425488129347733464458248565695822634575784515444769404504699082463177168947654452445834014103444844002483387916045605762139759231940010061903316069580341415230042872064013132553615258452591891250443681308995771060832474713652039985541465404891355669339643020242691873199244996250084518139758247036541427209199041072340241670933266540481765311433146704767565345594795727247211376147466935509252 365556811255506696082861605281069788496042706120581119108164565363638813906695083036101969609530575351839865078273865034003712120018259955877743434049061797734542781289914171616679565014341853747275646246982720717205467338538600326635349240923084539015111944715533039079947138561450863834196161424477832176192602611100026074635447709050073364008031075675141580073169258594225548038942041309187577137443962294943135605945559281547189699527141608774877599199307308593363920510346091459187042540393721049523695470471427810122621524656260641477171626759975447226555500332107109291757696828262451823348825135209238594050950963758720734253976171498473634069111885551040587727658283077199214492197097613731997882333822356692359052750357713222694922249896969158420581969682325405978428475482929985133433284426484199746934573028187185965752809605668629194702091435416447262068 2919426854403702555377167316960622242551173794042595702440807185200972873699752100370595195998571828034191032558360861969605473005067436272615409517321821056964222008265322106991161854395838780613624910496883234572480179805027164249477570256513668922595212773811266855692972649684786484258491694237488244136827173693559835387341597386099625727351556643277765953225824504096047233604838498347921835906477191843504657069595598041311280809958106007885795266735387863058801208546791064804110855687300634909573053912836127165125865783584559849333241881365314087086818295636920889558363045126541638203910727551246972532729890260028972072392286712046079069180321333283017455283385761601251548273022428063074838954909112120640456813045017870405280622800855575936649964727946596065128489839245014869965102808432953448503089773622648404487660140756390670470441063042762427151672 23315304299199021246821201482309447396637097872221871538633633294028836948614931972206063032009661548899972593535064127831675940667736395416635631048753525932321359891912863183257721523032276619761647688525603196421543084629635345086678206357530687516398163196279738938584062004672210695758181341268292748934181239138871732323882948361451117826436262230365796513211464485719960603608165566238789843437641865052953982880514551154974191381945768003411489869635078384077098855025288852606075671126878090761319752413084135481520449832149986033777086482230982626759082621920122861891770144689479117659997338421405319344931956821481964270501108385358084497245831253845235484164874131688911530419439187497596523485527665363498293638228604209871457642839079697936352094663826896494839408901166468285423554717092834373060270740201231992445474124893274622374494176052489081811906 186202431158659217335294074563815079922223428173654337030083801788516071857243881029240197250781552442713737595594471403206972140213009469039678089259375439291671719730667620825030582264063135201838832088760346151653873793337766080972766464397650317762741529451871780046632626570824560716416990240195837361149352874897607080139710281902820110151932437028867096279236626557963394171722825690189130140828795799891943634054935117826563797488646325261066941003372733395339771786838411516653642599595508579255772829479876480081412850560320557730806855119220536661444514147141963334224325562260806587278004178393738968185706368668639571389117015985516553617655284611737166807967674413006953056368754435715569033247706414684626894927914503511505873444964177633967147296766595034891863589297276392313213665693082716970090117000221959937224225514616770511300471431774990324572502 1487066445229168639602532305934430830814696915939815196240702432667759307063802339964077197984215392313262971656428355814969150692126955082239301935014205960079674282167266058655288727847926019453689427486755040218532570414546445050781597376155205290576005799174976140980301229734233282165434780401752326564274152408798016664860295153764881836230563353909347855209183193210443064788093338075502223057271686831088452819758454257474597067022940989244684775617807984460093511971081338480167009591846108855562146100688132879550355050817592293910920054497447641936089817214029610390715165466367263644130860555366424711611550436442833332072218350875346284097868646219370616768961779225115561617666774933353971586312161738410733754950077592286057408553770531507072172836186427099589616646821768606958652481519700469434457985064642728122194287139276234411337374101860664869078175 11876163492550473213737018852118193426467890815692864008326877240692649732662010791210291089594254440443055345324425543021717766718943910898227174868526227538532685316583879077636718138684281833336407532618150982621220835189707441017612148025314093296869295663860164966613491603666979538341482119894603122753939638398786721671480735442835623535352542725057186437343272515074256070051458272125487434526866203481737715783887036163331477783399390747638194609903940467888409190723458017258742499650167662657079405821970412073743163026330928801428897128166750874307791389475844250230795608654920040276943498370125287482125988536065886817448012653749192436121536997928770705712410592206779547350425302346461389719192180666207532466225069904519856890442038124687268650159104118183511301074615870407107870442122501644638756779634162063071715298395263614722595907335681857060592002 94846809405143272379497774652524163207950440849194804658261899758588028206895590525201592673588570784814194286429046899677973194994383056406507419580161142990446986606545487142509232584919213966563964994453457826440707519336791203212697738829270084490205367339882376459952587781747287059046387113977968885346484356639861854094401093457509859946441690813887721855710533624218383008327207612246925866587823405826962333239505428996286734301943440537939437854166689227082709698774924282031916601883828533291846471665312992979907831326983191369818238897895677261446154873150240448499344329601726366207594284142003553341078594119543765623235038242181123338654448254881648922712192012578491715942845931990832810623350352941645267600874544204175264881516049699204975971538347469339686774291745413115970871984592244265151157339932150199178880587759441474380958630249747386351902130 757478041693206910379063407965274154930022063646353453975165106354692635363586765201582281390636521514876483669536310341661310901177576512332821597837119119553617531533859458416858457597092377792661200316434071197280103825232256968075029586641960632262270466045657561069023570241329510892404427744073878937236777334999542203579618008601802848532549260172502873165181655756465200941341936204687733342972360520207949929255077875676496919003323741137187757024740169167986484387305175198295499011476077404769256027786738474063141532649239212198864771178738728615854130018539852016047006712848889139549311508042560343864875048279672465616977083618824398743421415695935635477741203635392252398970359399225158664556044603072395772943399671177442844393649734340495036152625533983597816575702727467262961109527123502409198551660168185295728491172805938293387250818416903372340749016 6049481196205578504435500183060186180555887890054212349117492547266277712360072663618525831339870935074566885678174085294981400147076702555046404105170710904459380616858095031639975675983918089871780665790676420254887508723645710094755833093588836996851951550510317682933826452045016513958253845764578155369741034166881739373417775626195698041421410987065480295783468574995957340365389924324200565800665771823526754524950672450778553461246851637952410135725100253735353698526153411491771266627268395433343588038152134292659833691943248408453778006669022200697270446913604012055770793727666211495039789874584064023834334891563746341969113204323335861651546621449976972392533629383318172506420637089781255232871949349743948281958551741633140398492580479917780290645526609040377427192815405434159161356220434596555842610473434481214582285814702483385446887363925979556816282713 48313330268716158877410877117676678780131491708493603876649107305812914444294415262289285682629587737517577193046666167413483229901614845366229562598630450400270906636769035154739707425489987526354952928326955975952258619780875961894176712322734791000497837919648323293525428576158741707113181916040633464415083956234374859143140973731733071952580443135056989032035798557865564146724071108391612092189941345376774654387750383353358323601217352520331054551579275851077069502872779254196084175854388368208882217281069603873316979417285168880634620400125750780209080239460590576880845164433469764770545109940562658156702742242908579343217780220294621938493396366413366791052192382229180440666575441217470918260384178009412948668961787441190427753865189300833190925139241180577452193275157792654608436149973730165616030575328789035771042063001647116875761285498560506636110130460 385848287352665922129368890314577958605735840646816224112510451509036536178682312279337756533977242811627629444020908697078305094484515129801836115282963638067987685913477259938980167932897860755268585286357577699331055314743709928895862973129104602757754726142895289259838480118106901267729667560526113684689648510734340841850102642788831249105198738532425563331596218521001428630738885464106508749925360992877199502012285304493307153717306273042806526555050891421636055442742452242451605992244612205609389022331883268324547584831796725483151782143770394130088890712213924221949414757092609944656685160904376321361235528325609999575895128650650407205419577445870993850669519135730067709296912297052131784255773989976598411470845979696343163619513570694623398829547614714102876010883852377309888194312613508431338243929905999507314800925725050234606716923701170906344629352846 3081533803410210609973904569663516693921548732641474502303568095399756732834561058681301733010754172364880422956585294507062826511445287286682154246587039919629597156910740904744582316938959609052253337260853343173176524463767784383159939639429306442091143314422029338868450373290217693146379464744459526257566613047357002055649145515201659545314390501181803129351549107276601723416837810071005788648602734002554302162217250767424996871781903874058140378240579867934295809784031862268480354043173457053234008351312030864372539432091016254656499274161867403918034675700420299984705959779548973368341407615743577610240990898424042540634392087908179823462292253617363871951553403129673115896278091813997934751484703155191192657218321656259241512640184719748361712291740963874402229277055515771509785684204028396160899531443297965411311529978783649380140552923234862814646963488778 24610364778429775722317755849059129521248693891212184472684938624696086020655146133637826610482954919025807690689054917295703132262109635702668505308459504325927021374705471823800707995429009450041192178711505460517982417554028759137597459111715483800616506724178175165156185651011091668705514419568113228981461194024139869086657653768776426205757739246909005373305588080423389424586308457561600731869595389903770176648649219351603239252219149997542936244806541451400175436564413865526605435540064664875172805852918628515121810253078687232519008992898172520778626040099053477884272035159672263398665177157601655014786194027983826264894849901550262916264391180232354821271788883412697746050010573372925629601022427160535514096196050969084114983478876433014891695287950913356795047924909538699787459602019881338871722859951354266101065595717319819043457809674379347655840962985627 196548584134168286275067823308166123076302007678727996299700275050090180606917804648653606345476815445423489639157043246300476595919378303994502022041400828008477897717340794550385245280183037032771719211958687530394491826605778154437274591117187498922259989735166168322007616657208854890862504694018336383056927014573278758666461787696834218588217687943956715802723313142318908990181055701122001299416476684132194964500232844256804193806410863547418838491529047797743127217516466139871923610284237729583569511774772708883302425298277753864061598185911634408966237730717341821037549506815685160154476623729460505917166604266744025456573489403681690902433003081828045856263070035069781937453980779141211800173049984568940692291862278477767438718702464445695445136059982329390833409483757808935531325387765808255263964666314536698600486363751956389877054579973223819345521117176384 1569721261893891988527388443389395311131183267691935866643570035304960362250097394107899288367127540780893669785927460609108035291961511410194459497175908638223336773683462482332096928167532527353393419115759271975088970039405060973897899700238032324385437198145195584330697480136013147417368813646264610088475020659896833026267109881338794922054740150370639571655550916101363399500536167238330747956216647853161399895257587632821891386273591433773447422426457556872404494379767877018736254942373047376946960442539964576829626531662152041757704196806617706333358638286927493295047450191190178435474561594497994099777052783616055679118338437295888087175558115680707619716209941493388461597724772279047480979093784547296771256739887426968601604320178328539308869048888789616564966795056307201794576501551016485692155256758256675529589046476976231221665148787185400281301314683328927 12536488681573477945510128202585159465884657441265917295778589561963098960994248252090599520546479260467693379895478936387287329080874267791576374081732438642613701549553286872499121375934862430031280813725348088302766198405842600336645011256488204644481192361870321734489255220275683788087885330686629407374841703215665276532544552952970785560774100275452629247760680118362072514145575139704027459381240984500443710837349841757299953597126535108455551564000330054145498219291562261774452349526528082500763610886180057806926144225069766643882988395723989318163741870533100547760301891720410615588961867561583523205341181446676762211256231649717015247760097327084798266395722363224575589328286974861000624511357645358810673423045802540704781197925731497412856575280120575096600113860948132714893687176087808985456040710720017720334502442775062492618588878636342832764115397984511046 100122119425646220520738701385041097694967453078473591817407903364745074123680739647897625841750432441517667181908211736598748901399343141659160828540866139231374681350856774963401344263394840680472480422684385822604691110542795156246620878317677135867673725746912005427409992350358382289292157047089016580484140002347503604945178171252984043385060332264216730536770471951019537376241507084784317654833478236338618364311289396841083190565942217735474914748550532777720538722487493249163863417396599337539269755639021639323517938174492820616149698720531932507564069070295673705659981707511866021148368354149659300483583135486639184995663864191386610241038434111783407452467080861561998680132990545184925190819735325999548455253681499773210686953128580083597626214482440709379150832487168356538567216173103967003549146197818616223449948790140427355343368657336934251738530764009566019 799622311706991885360508997804489647026466121304041841669408805437635376319143888874868204039047829970892212118581227314437229697985340417495171164561031049980137158496663983932176577358630208714444758226757397671113439309571510149330809000195760124124454084001712121221338288584732672594077400925681276940783198401234420700991373868872875781974329847329520813380670548983787146887057381129536089879415416059361257080027338700859748744229821439988611591877960254473274935680448762285866060059985461807060915998955401134107927730204410072753419836797558579130952455964435630312601656992105882153307194385992013801144852672314251520777376459874172416033370310559457553839643913754613517375706006119584908441158315727981925000548928320863586734176747312049409156785615181095916952405291103428303490058078191537578464179869315251221548479601625917547754105712698841957853167090552423316 6386170646840812958450491672964684700694110121484137561253704311932559094764860115521960062000126081947190136490655834087504259291937656926584003913367417809927557261811087707623086867103364953561033626293313087765524767849357570652815376110289546802635658182665456127488294266866734811542388093292183725659919167013541477463711433432660179580445634259767336169240437000421406526360234223446781753451213129805866761005301928472649888860549971962770704112729459356201624247983450205626199376241809074730845194419813660532636125581757570072071937126016466472529414322410888385857271618312325510145137758960745236324510485985905907718200921151754163109824272196270638707546378263692973886415371601842880958657693135856566722768940812084534933520295966130371671435419950771841740962476529153344837836082848127844918761363174805622264084347779598504951166968799740625921378466328578775817 51003135951556692575396491524753140530601845051920277971244701830517732177658987441538264878825818399969423898017627915847827098780842760856297271569504928082134207849511187931850712330688518588777926398894659836355827686669325952596107669774171169235016037635671771354996654743089514817936843282011623417836964636617097286171936965148624880280815601237900432085240041688294538225549042315429486096816162274185423821475396344913646710792334646810129979107761720733762578000840694251798687720701304349844868478786503051803133459202774979472291712323896037026084711230810861666281904774429698868222715265734465691081623154509278988526850690607870163906891826422555368683483483596647690238981974012940398610118934679909810437722006435726750593662716227110496422344576517416356794870614001939929820695115081597594319294097867191649538589714130604633865216046418283876421367847012601114508 407337115304321141283490412924514807520487902677021176203922738739954998919271309265233158219413119749482225006733100567898252243429106197101537728709620978511099363200719359798083126291762704462625038975634669102754357392755410272917700922189585399374990362300144041631187200006459164366944646870019054148307560806328128912632030109761193158855929956547813639294490178116646345115940446111758648364410116446482192765352357640012662904501367511394405222247108426359010477647231841585708517793742649971689285668789716503508001669010521820897094092440668499267555987707414403183268299677986406897020404085850449462956489727282241094005157423790129868393047822879287703102210287656066506315452149604809333329607204901732661700098651564636979756423607501050031986722942272707758217632721413394773722628250008261183715610799201094062897168576133284981050594406667301236994777575068438013829 3253207980580397728855838321512436671492207521097366811802164765227361432063432827546157301254766787094277701820906874020540800236690897028598599221713432676697421268925996493178618157701406275962135092492955152037746577525849251372710517274096615727772308059710280203351894291387239842195473191600013426222838869898581501205259456894461194024571928843457695006637817874641477777673831119869225881169927872066237752616438757255804909409832877682832403925715284155424319529337931493986423441792084711327240389963808909484963920336077966886510767011185966793286841754900192565504379831051768526224540792396633056491519388845094479412741743289112650063528452178241538399023452612978662361225741263249954716367964331867279396644617623405730530491259886882676575119851574883860753786509813291843791257673822538931557713548343252685939554871920715491678610305984229293184570354628908047640960 25981870563123518208412281529335540576173124098983519695966574273532845927584494982922638912523615918381483833191560740823329236016837168576480138067799307895182072855841610720690590255446291969793945876387530696524577315786894893995505206993969078138863441067277830004672088982776459933200574677228334148212847481347499356895500111978238782732500429235442194617710721506174439083279787581276968894078851761286598631072949729774664047127720076340926468761118569845819731627607504413144664986015327682392101386087159655642221579634714133281823415124423134126169113931473727376029011654951739016485520737054521874378140360629008227235390763794459960937206046275162143835444891461679182433612442970392640918496763520447633912500130748115039921208229836548655276918724758398111304664799531367588548142518028931058276987367080673173888396069774866715651051661300888329473451490775781972922723 207505560779313867806546825501950555611433778526772336852135170773862079689951966656031427013780232270061815863828029157233185452542796539175963852493014440641269035906593240951396278347118781656044848769862214426272651032565464196090590327390015298200287060934602974563883606435598360661169988020938368263314843067151041670615232599550911580707064682237776611766934679638111771514917696336617436768045781961894608822486581014893831908655585627776177506840373127747865523801077227047352679155547051284933689279526318527969308295348754513077505834005075008985333375459772066119272220876291366626741020423349584274029186869637727214338591587010433040637546742070971378917686282596933691109413186915216584457299459679452140928561678369123544833085227690547534343098419706209765115777815110558780712953587420329706595504456391878849973185057085052327103748355909362560301314774805746040681580 1657256768772495261480545674167185426184212391361480010639921257305948763135117148929518540633092808585261900631549911745514500430369501682126714674953961046420238684077182425053294193222029224611499649312457552885944584126208386020316511079392716630198448729674260321048564723928254929715735842677531847563360773641237249973033644341289970509491931474718397532537170673571438374264807615985329937177269523144575831998749922293611737536215383134533911066289717063255788157398685268909003155261407474695233523716921054521491722510365648270250068704093479763249717238380126371624755024525351312991989196002420766978732174689180620203241144447939484966383875621466733465800215335753635171601297223995162463451026820063022956502733925152521812413036020108781432415227957908691682132439395625403820692557509070442301175386001734810482059121996155375553337698710280057297885482474292312963417921 13235812287330783437606035557321237360225172898610121362009768259311744559171152117054001024950603701663365844975572585305985357142992748937552381112096411675017431772832754349515940221208988445682016522397603661168405118537816761043345378187520361310283702962973842115320391079848923498665366879419998713361508035250589147861476131653482049326287846492157097597818336109073805169766569961950673206375440927623655511466579539096218008903150031112779463964055131468439851341367810098413432764155783282975326905916300525893243246621826489343790798197824891451821225953435977761379056906234020798677340209007409373962595286688236274948556937369748850676621000688437011878953007178059406134668793370035405535231557728277425749721665137893323334624610000568780895795866038333033822568760299361864587007693670778437691762518841705900816688552631450688678339818146186354854712902073951514991211472 105709040643762399787523373961069420351331506907158872693381269325425323522217910159700877859642923616102465183062185362619446798556550256628717194037100712799259352861232311116453992818446578150760658163037161223934736278576115167281319483547781452073348639519907051303554199355471618292828023297419132253325241585508877898246609755950879196125063064498939340457610914542774146100697464243709500164173839773077253230234587623014797711714114572426407278719419104646071788654288880201266748525316240027229383069966479411655220317058822226794256807675429362719871886728054569769729600301892489980941991468336138809824822757513041057190864890597452419848706398320190753150990853487794592635544996986126547105735326670373191802407563655412385220090509981359973355882203728644447057657011445006003278406747473366820040372060314626248762293944992399167378734034599985657109292757515309747903755548 844256467825673977213142884046671309559807446670047251498149486636572656650764151619158303728313674460974450728750171488077531392817150635946424453452492163326305532672986669961746024825564387723611259535631155368742991619168302107113339787592964170231480075240784199758521627916341840294204490586998238607200027591802583382791715153398907150204176532805654548923853145677719854451457719988557401415997415657894922962782569081347284191369166645021097277981762468552215048181481197980506012984653103645260509618270262641450768907642330110552251802669625046399763534139329490919270646321464741262322476284458745081994981765761945010166211995876128582665054019098308715520732368555517479015917218095323201742120435855759712448181957641728248293440640285322373397326459334296691229119331049948502184182150027923345107813264187660928039733692381971650856362068050201223851510963450389082123391936 6742755203305470350994509901756245790338277718185943030117533504004834219226881464878997431063002612982469289180153591537359510973735992679373313631638608900874954372941127159384568030504596371295924421745650248253898773377655417552431433827679112291234327408117220594978863167451088755435489066767667243021195899476824425302592204631830021245976903336260114303414768908826463255094430341799911123363899645864003103608373017288819346187249502905461368026324625178815204979437662770159198997984608737555594702412640205833050756609674784388252347982177321238443126156388762449706446851797008979196517664175496936673383951868532715914440226637712761895268659878748033573359001377296047494084309073476379884541569036873241232104997675880443905026096583906026038176920344657820844797355244480349217416768671550702768029398815436163744284160938418635870371907181119136739646763947632554200861796985 53851910974429653420754781432728054758021349609289373177193279405217474474371792987771752868754774015868980036494519760812411366686290164829448121707425710762681294432893866944337472545238634470501821763506609314650388824437448733680430076556656518053808386833292908205703263533547271207426746381378926950304530345921486317781650009226209487825882528880807071820047718160421443549953508306554383957801481926246012467760948111667289676447365577237724794486081449020103080639225303283761743724937462923339370184957958029420158988544554204533975762585947488520844643849841362300277336682038641863059340033423343929294040899409849433575649233220552577906446459498492562234372443027418431452336515766291230954912127730409899383443122822118603568085958634586395202679941050859498531917701003412032412553715437432514523026853947947596036602238285829489226379982844811338050467102307693151278861771802 430096168775946465092074967292173998020327722025270314977616450378028191001234563448386725975022390964816664828760975034412242066767878844674309619106081840363072957210367073703326728286441375024276327143525509247951192086250170515121444799950226755138118156837796477921542824616076449499566595942578637214074329084063878207610749979676203963245716317314902264687929021766087200034723211517456990293888128253998042489779707575229524220394577624088849936230677589067618233967848683585185013055178978413566124379511532095598828665415773119407789909447539559701783546990832280682811053745080541884418102919856369766288692437832057085202490946359829528970976675613080257993469647553955350438274336793514447770669832290308536287063087668026307109607294695740545469888509691770680340587594334475141359723665042471995274959094443892778204481868269321212105007023670592003385428143309766163788496540206 3435031751070377454806691966050002435953116787775104212618294016588387194932317916578127632434121127279368677125667882772779447365910537156802989728888843663319386096796302374330384263365208904122651653258731675077591611556948571535823296779094070795882745017645182217821000804216139007436663168875502069772228015497049121406373678003406895101167849863806784890463617369919045663747623031172394110297133703783431443198810376910183989104396766539527999414898937311009363056433493336920067386860281060183651567331725302746137555605727696777081279097536640574387995932925570756303114155730768048120984299272603284607383935707738439158829389508640326459563780843532187612068366914447437619876737678531128638091283773560880555342053921709075609020553648774441844916916735793053061919623488825369149597440095774672330061804596378759984005861399871972018267913990116784372452829778406550879342328359812 27434475589292803572648191649123337047654772440291414596732967212746839531752284228472210223504926355644169048418449340805121272331751518279296980002912482682709013917753448158328210518000251907326737506202737954912616155366486013324610622364913406016476302969840999054596926790840057202037267281556541200259638258407950369817724771001321742189254948264414144100888300920177386316323453885604626569192834626635333755695933646328885992318699178733159224926251658737336507652818247934220592677212453518766622407333164576386532125721336393170326096180178144064509434710543552955231852681696463592539593882230649246989687145987161633895134894178780060755466506557664148414414673882133237754983425730082998344579809794993822941364779410828285242188204504290929768833380252920743335060550710186168938280760090474774783582219996978617776039606107282611138926026342297512623972181654771820582651271318555 219110552765015188257997787227340053587897682263114984474188465702671364561598223028591599199578353685239779536216956368423285887882772390746975703376211039568306090565288937613734076062779665777145929058340985340464074761273238418788671501708427340213571666876162967795322151001107268104437068673817893301951120352700057827560575684946671913733582632319365324256622903076348315880527732359629045486052355442790513327195117982770752812771096413368975256799470196692442979423816229273797478628684365922565806061887016840021393174672717010472408314535044397465941146485349418404773606711583800100526403261715384473242845079115476929655638148909062665418781033180642654608219912259274662211531279584344849097142408953404922627776206216873774212558204727037587931765419597937034793310701202744469546213006591746706352136335934873877137524395645062561241115441664948009914588929896346407022117419427928 1749970181211513100018528362775287093152772174794690398602814192426367554354971467313701886730399233127174039103663760388046083982428985992935737133218163573371324680914548442195919794465333496542168797702394131115709730305361992537957855686799401164107746204688467495121269445290881358280430631605985821798610419593957350738494749778560796518935002353997768476271682773940089889519992932195209481883862503425372991651860370231652330043388067486326922083346666182278744849950985792134440612871931970996255869958349478434355077249345377130814561928328802571320879884529607844089611052917831113359015705670376378680340056809062571661038335778955281255018416275928932560808950269761267726435907479062081753407620321130194277300006976397466825631794084047563201715776294593667736511869342369434089653005148924740456743635401905852782908517087818042333645661761140039837836013172966565818861621856310020 13976509492552801795738605050098734378930938334664947034817799534210784534604112704655995367854807303191221842415706884048258965118133185936040713672353374908537925045506600431797782361781588634137174817273146926632203557357923985262913330002113197003407986902710143053740252810884995757330465631175801471302414353575845826490727624451406021342090314729629127979944204309534960569781977974314628055764649621265731201238879571193960089753119022485017087516463481095196906494935155065061374182414312297896418664378976815537802272622518631511679769626854748806086600411514009789985649398768368151056972046729600973003452620331770155013724398879478166755137990590854768260253193728297243472999687193736411828436950291952339660456637157571745717358553037393333517357016097781525671516419650733749483716235728170160736365697209383005226738933819934456655065735689047917169014235349163184721796776590955110 111626554233930967811318856724423712549405849290772467600016398088889786454950042991833050371032545266441313176625240919604289379566470965234651243974523499390201161393844401236579447747130155114877593351819980339382121444459202310042045279732562756404525330270736181980013506859116686013834659063898969602948374058324565831727683421025976528422492842916504624912178525379525486209195779796517332591381772719823928072406415436653484465683915587672005247445124059008965949650063090079163434990661448294019987146630932265172854965394863631857638125668157236820785378053847880274972330500210192902221601821489297309972805654383383609951069426157543360655070330936014170147999821528434953756913339773612467266710677056174127191910585562946167965022222561133082037309253899276121710542441096504263998424809139781052802293682687076012886501410484413297073163018410524093727478872187310770695069844801408101 891532197408446753448784285192717755667563004896117963053589925105842759050661517848428840750505781507475709893237601085648189337511004880963780442785599116893380880250351121289109998650148006635395481379033890369535823763249767022160542609472928750290445847197739604484344163656857292181209971776382307907815593412236696685855924454653324794518576230699207119109248895102902778983542195246029876523129180509475109571777904917749671776851205443553670798849131358985747599203874015363146980973114394778065879750045226265911608906519319945509815503839122583541129364666025372484084148817405551961470145526095096012165767830045774225166767602014016164837497338978775598314685901367129599899071196088158552647415294693886883378669423950900273816076329731107702200114043748358396294708723730593264282259770754662420674352487048143210632420285446630971066265004006367744245700237387210912863279836735895298 7120447070281594247809894374559986427334055915988384549084447903709326277303755567157491741311212222818305703223386949623802830166496015128402800024345575954170261289537125591856651501773675230935640023230149870125451625572540610903357198554492084064643052267575984036620209723709240394260097168064772771741815527214275458050758014174437672570914732704773706568170250502877221543890688498500653666669587846215234096484581287828606557847801785407120085022039423700595097393317805168770710161303877623811287164476787065894178915794808976242414191891204469639511935624735465980289668795457610879905346162364739712021600238391207444990579528784146448760638829911347886554164841630604937554215195642064184695003190734275864778359202724911903955437802713249047212968222626589405717237845790011704646562559196840807580594151219555336996384132602683817036687329987055002304321542086000486074213369776306745844 56869342638017795264412652311277415390193573050778911099274941252302798720256537784075193547096646754758473280253750462391487470721017196928942953546271879043335995423579457557702940875731026991479747741722879516922828156361402023951636421725853864805265321670674919108253200112292241502536710540719636490623916444067360576774681051856256492437733752404431695711413248888060970386267367691300827392480092655293184841628972430212752507571946450118838378118623028411974041784424848801791788217731224350659055628287098068336126580057147108893351551815864303984487391829079116368067525927949909792852455402527330761658694542511816442597267032421148447566802476568727507137840682129639490108503539686163299911171943506051626309420688689402736091497964925229955430890725686784888618559844044529775042006487122727067197737650928547191040677041473245891624305747867526663007721643145966301013184673730958213742 454202863612611427894763581400839681847945600060741140957464413871750197125730124187627792214144966947305696834390215157570526869492782352987310585620951423040077700765742170047085609397382835885610235929020280477227248349693559369007434043549834332047624270288332372568622448528734901745438302633512543408536247768476057510571304813874346947091265894060735680580389385630032492291823032665558377727223597711114726581496675525875743197147377022479274489452626869610195891843673244162336964991535601468562987974645289784054388330495184063335772146735791852090541522670880493014615680698186980616055473297531822781772197020195722155663187767339693963778620553482704103659010129834445809228198384638984850380286746274995563060747793516748257301918534734992616813704937208708555853229133077569650484156965320866091416586408866249898417473845806662301646644838110549592418850906863486284067345554625811110364 3627623782225769816768083814820706217722538685234635009369673540080583299913977324819057997574127387286189942836541817885652057821307719520477743695626831632310490584844885479157147290544573846484123552798304427336676898647498647429969245441860262976251560101197807283939985133627521330770847114405248718113021898843208122823845236517604093582236544943410535447380611999074450988757838298626866904616072471276048322332536387439126853824367102902589565331271232128716767877945351593364597066784730925721976005965387606472308933067439261052333565216063583270804377489543726424563003295166888370527039302366771896231488407045053060408904146809877459687268110940314923918859874397876048009786142121246826815616666067098094878235377313144098901875396708403498128973854498715100125591032778167878999163222320289954967645542409461447559096195553593250241500450251953018218415635406169907990238318414165418273604 28973123928911433373200188847860487933652047385950000407823876295053677129064249094298077610287243598917669786434270764475665623089956764030044956277243059624384013097033677242900408588946606347958846545675803840732623565901933980416717032827772064881261032265282853602230399145649277305681695742788718805230059564093824927808163943696408292263977057650804898170148425353534372296611286356373906567547429041821724871071873003879755329514640083187644867946418337439584479398219202824295943390285047728264293836238099916250150273907800704821585385979151754148633206104526524711997163688372423165727933688397713443431810851931694608315586705284162239543273274077634564277140112685239110927738005036474448574162865791414416836785536473942918981563885819697643190691266810669562025048822011407398930201885628494236934137718622864729395679919825476240331960873100027958115162205789299733447156878036812919391076 231403070600821912467042282511154032730707595486570763610237309987705034006368234972361502388505018967401897869977668329145623926222507129828285213136790687513062096658770813219361440693771257120290639308788513551335290371042363560111516888361930195243059306801662806078539017099167368326163799322948809863797340008085663075593291755124806282368373024875691400760559390870502196985544588016741705546178338594287256787914100789177396455505557520402927251194122633161042091920271604915952958867524693028208746393922783915129509699165478120495948994850662218836240764371556170950318639836482154733063870843692360588845095248943825188312960546140502815750716222233239734582808250563940961686297705372006068078704474711782523093249568852723103801711068074222357771169595155972258157002755031008395711379456943984607577036098225537116022190936780803044457788561640007532237504231650669446836987027259766622059070 1848177247301022067506220201115130893735020305058969782720724429117493054709207607574090800906519052927364180136228807697681674058145661045917191640385534629724440900498461340729660930270131679667757836450562954022441855800727965350986244831055895984216160615752832347848275912193623392389754752810991739216182806207404320194950578088534369547249849063789966687792149449008788632614263819172999330038740568530411633426765183226124709215740047562006715057615189583264599192560873009582340491056728560172431857340668042629294817669587314354871501286446052908399139369397905137278517597803007586936555462238353816174939567999987488160170460022848984128128852086826558652440901441170156683786409167655974281821833143910777719041062254306239380065709451600165264349015523785136384952552322161106187878320757768092000664782163435749843961507298747963034286249390778772218385974281381579240842888963325855482541613 14761103598409614375588832843944937532081100493448622312977685067716546038960405789507659634694869553370977027399228584004240479170174135476090635695158052263216283575406259409052112154815156355944145763819624612806993787168789009138558260642274788477156788901651659992163477296827634161875743651697810257449745885452643399646286164393529012940425498511862171676027955210842149215036052050177163656354120794398125020547643849991397119317925713043606977765580729902667711397909919937161801203259002485800550814646536984611312455145852024579067707882088978271537806700917309474474298349915868189156481434551777794964342528477782610094554370567429150211232528701517067752044770747017526529475927566720579856431690755467325970660111907401186636467727325623470563438601520970676515543727601550785116668433362690958700594244825544492531062862644869018631009478293320449134359741262549343971585549306450410758095780 117894825171758283668270056952261027233918364010964149222110063070683137290811480825625604463605132904500727133857269099851984985747344616023446418491684200361713350531404004867939430042716585643625095599811922189879016868963730992504074527012375180347036413447118824294904649624785269297995390600336556386050802161246110383374894933926563921036358359252520696244115672619281854237809893840400542922718341479643425084656930289311492553418929677171421463668446200080995279300998762522014120530263747306952995589685983574142503221551131620301822779146463093512384049759396930423521967398802911921972619154784293924211709942967819761128695380247528183761675287901165711524645731639006827755232637385254962314871034008593725775105369425580193888250501400208737029576305815651680871169936532414236979414125612695595009346723673026118704976585076352784714476901362028746687587459421458320960956821344879835432774777 941610649066764909309812684962819932727418288175200776163875485779551221962793079591600470597409386517600526952685485124446953525085003860819483106889619382034235621789866981382498163030230664355111305698960698834226578331746315569344715195923340050352502117534746829380406039430414701654950062708920027565727455934090475134449830135647799385279102621969595927845697802917864254544831565822326450227433376972607491670468387908659639048679942849655131624320334677154344964823381506734985524245581639463534750676795906184588040058281905460031393858413706598639247588810857479971531400352012004139857081172597288626539983031869207698393987753535381406332388861762224908351467120189280900130597447349088204715289266830889926103160769479446675151372565631738630618960452056994912007559565350883259543134715584628247174771967042164672481336888712781416999021698022956482733496571741796323309074510731395614852480648 7520534069322274604609491254445807832539885331107681612365045357014336465584304834128323621888767312139315976689408409811100837918702534986552319299768498032321378152784239755334200375157018695657912728946351763987303212090940791284925992337552705895424571460234519248859158683082229165411300992409554786417514135869286896112321855183405580799181796447511105076314671386866939222533959037452312926063290654401128954842755911358675481602629154510765394324484897420139992427022865008980735260243799803804693196766898830786624943593104420800230793213403713656323981294393569499653421376848615829000997424566181344305618858967213223842506013933232063137631683844223838176926099467197438899343793795513560305951436422340423337253775490337674003562279726673640747541200484722106342242832151884910037877773059456592321907140653239350572422571954015141903412186991506401375052208573909590286951010311340066329396177615 60065722593670632620823678828146457532957859483238271207626663476760809452711402995636271688430799211887076265478630300142134410164363716584834484551775748283159650372648990876558692037457068044286271028333998269696520839284309375427874005042461126485614859849655411125117525852820198163436163549597470168110242774072854415811458967607210993483886559840377875600551908501868870341162033021956800284391020599093597827144919163035605692993587852076435692872450433199900995806952457120804118942910464507048840930687515145249367015966623676902565115065466634732833768898642296620536837020224293072811091133544558673345680560369569447755683427393745451702573819786710280349772598374255803242989378804314821205886355253271240671109769486653918075502058520140852731261257587540869047937936195909674565085846967441511423458199380457202291522026560297226260523083692257196453469824972647445237514168772747567466204877368 479739445797290071059339854167429085340945085170393395740623845088799862106627664143733770816869838076083313721459335991160052696581841981655699918339164601558895414560793045012522465073827856185623065818008948938905547457402507032551004516611164502056995099913753984698795011201959741670845785765256736543556088562079087726932898247242011032704551137984124359735872723455275673715624025887065117019317163049358864297177889435711625032162855378598769427762706844126261956350280905441842373761188704603517973776731145804647311406506024660454020515654357037659751886746769084534556495515128100405577601401963476645580492861113767107407119118287909365118912350560354184147765592041105972838961453103346657400437317922088964285668822556828992705601338522084247050551624801490866422014283885188785584378608321775039618525523953608663453672651072317150362933425746928608680198859194064542775610918781510714213059484694 3831641345211744775379541614294379634850665812937913730359095208334944690873894934835959481510917389622591334789398314937035872819087987529046809397848595414026428441984391778704694499725104789199565151763581528497192285922695334127020971308522212073563540562355316986810948678743653661800831914114635983672381506995449996195520736897334456843863384237746008587126870332582126992395105591274849749922891318704472403658199214568654508368412972222038527475390792809250898064445289268689261149503693749163433761770573554212737516244271876096435696494284117144303929470809455951798721493822040573999023476777183685022526674231006814372293171012013184159258157729675878970944760002294520259373992928407523739760424471065831553899185145653897149597783999942190524429038868368495773663200846447324619122693680424261594728583317193015417710168110619086728960793921983068536862114261431642533249659852615335644021583079352 30603068186685199083011683143839627998634084321740371995774844459468662418952536335236385788900171248454658417185473363204877857947497860546798949600920310698142222408395372127189677248831644869817444860206021548555198566063104280077820899603254915837362498232832157363537857878591603289372262994437416107333377717814306362262654048642300212397524302425077495323912327595156914917688210900179249050749274658890311637708762817591196935754098271058487185817153407643449212607109876695867887260017703326555151726484963896375117327431466140407251580445473485652479781485467935678936367953466200746294444544611974721257155761519974320272720037729304837732718567156686398424600205045285081920900573488235916272521448707569250460917119686591070930246744552156846748259122302936438762087670748820927381111838156329732314600400892021068066303504444925809940220035478632101735388014944749939493338349033574453094735747719758 244425090679097611124598488364562209570816154132846510176004885866859402855786306723048606148080526706557183452818496500519251922629536723755765809274593090500950345781473447878104247618964337767628914050513645776628025157820542070014986150141828655357246120081378205568162646586886559190130363333401406099464634531990486474779465285173642909656891264896449592430600970114562681057776404255228364965011248176380167995136380384233927053583467226363121638498768814269346580855658167448170564858330202733090482193338260020886613252078081857537123929237827193502034115799878926582183450730953460369451977948137820299957942916093117514029485260782003192056438147279966804659685576860892929794577255362153518730488469615767057066270827495649342244771124039129385502832097659578165121676931883880724419375538745614356875110860386368357795069634085270518524586936147837486276599254282661307189296291107159770336146111206556 1952213423189641174562463992991676571795391320217333458069502340749728730555546253716429351326945809105269920090585356212660042353069272048890043190242963568634945270828573426906510102533555435198706149301981874477104572412435059830713803847423165148346418211626152714105098170889373150056624844681570225170736630825840196339332365944330882762559117053185859095157760513053316183171946112336122134336180434711446017237697166746193394850591818777451262648438292087853897554170471423773041158908277044748889129627630350417489088461562188177145638721873442034920461032314712148750545388839696756045094679995010696711675636232557028939871028448216729780602441316566112715635661053425363158565705731362309574967668160899657763578896037668061101491064576576035484879437334664123296979330654567320259674995518258808387837450073607605590810030480402784427109368583337841874366679448304132955499024884438669445595439001336512 15592275418734361316094479330488644215353962614953551187555926591180475918821675902354907836395104521305221776583134326161021699815665864079278340074007521557113577005090745761619292597238900095537503228101695374291521311100002514137775310167380443349286450309137475110514375193224456865632822243815128041043397597499199880191045129181284719966188533206234657873612963309035660016087788951355191183675329070295354321349237537176472791396436861012227732508278600609665796990615402729269072215369925307845601047229617631860603608411708124767469440610676568081763825783506230953554245053761318472961845063351361816440835118157654514599429710768636804866798016609718619148043096187064903594695900110383592794905247405626590449193683272262380382815742953735675650877803770373961500204717413470251595738366104398314078294527652552464420691345287930516344283895618379144507516438152999048261240564795269859753004807490735302 124535277321520948123157544468937297225991659205258688290968006577180740141801981747147901678239411957808710987676970612836511044444568005711676046812663119981222333709939220429403113848867521864550178180092752872410580075950851877358889685193009989668458813292918342855711394227165681911009338591515257456518884292336876344542423319210131165476375017258151990833784230019817593411592136227404660162903010187123857309433713632985909820206974215560122853083713036579695730274540346163589565512544917506728944432755282450500173275533781453815354407197464845296427996662037860755054252165749161387494066334686412142573548801704581240109110235221399800754351317117226038108784905816862296117338398578670048092602181666691254275266377785728957769451311350062978139733411848194280686169395796609991165236270348442552899504896710153981120552916497160212576712681731963356370146200903695797958564976583092200069063033880063475 994663032834805569295286095319038382928950307587803820714973410818095288948668065720450050270345421352311964395711060057405576227155811073697327092994709872919015117260525003530088659136167691252563904754635977076140103852945697125415090921858439420231290671659782632626914993451699226845104054340204371574104765616172878653981481727525136469181363481007748985154169895913414391143642763610524567141505089816527757083012396069100913872394283165930524009722218853643871449794410268190299429218100790914541126774208704193765725500732093387081366302832398651918734297125178426699753847730273405638903079419354735213090406870018242435212803707821220687789242613760454230754445884403554551077636349521323427934617466644180853948323024695417432727437810688282581592672001734248167793547724761844854934468038184010208583825719477437219063339905284988636796834626339854896025525132799710159796034149685896764843471918345975560 7944384435984501579444180876036164983859758416016545293404706323596601150800454248289639492925961042541370633642180848550127508734182369189885141689210597777190059237365402507900420019288742199158475885916982808745280937011854045237226671192292719810025972807638380098501426658910612723753732073331282199238850700213801594621081694305736590742435541842759584075438780501506529320663889862816231951648400304076370517266304190189755705937728489364837529219996221951837424730771761060736357881144099277091823126422037098073891134865477118574084217209781858010660711817580065330959166333234883639614190356726571385849372153488913028677876671466309493226893575606116022066074485966285821132084067661694681819978064513278945386128072204966496129858840428434729891667826666631784570654608126793150589979123812164169878850023711518458086910336712966835855608659656773422014619529322754235796087964118394771902037695741913057484 63451985186665845812713828763680616286537283215453184282980580899787668228849302712669969996580782679793835497647255282849654919863520732641326455639722627322742037373124076019795820949156705572788990656941459537445380190654402395613918223893877336921225010929217353818761837181248165764040386062351372812446468246987345198519152328868641340222915360474657489222735545937425884562688254051064157742964998668565140455044863687126932725834411964999427900856003682378710923816179989336649923837048282484135336847601343113891187697622157034710284371736531786353271135302976659187590584952777520206939860121898564337100356563199137761095981337156426879086775207243303654771765341962463086345648636853820163928215173710917120067060199259531996718814510580024521802509197716263119556749213149045693672411175667011020434778362369366318121490778516683513823459809606479422300828709525873632071727141709991765278893153805493598320 506793297926902336713715329497612230584398261320166586718534803326242576220333511524981058839876285561633107874663135650612654399219287976651832968653013165583164022629068193601617223007986423469036948847852011931876464143524994379799273709096094667686051976001985039003105422702214782273946127403604817530999944081646489498661690800522414645498480737115684767009547952599243729496053780943505748301195129099888777939107511488131696530664581138431376716525419020224496028381513227697284501172859629641015464066060869963379635313740800859903919779650815907385582110818981693248564423808931393351629752416600768304434730580829587816376664894307245008692745082680666209183923411879806894729850657602527504596275829586606674181450793322143011187483587396301530059950725642597549393332898463733913008132905106621800612790057724445361061079002493856230083359216480351437044658855379954712553683412125071051960376441477521881974 4047782764663842366504001178497164470031265759053554069946807838126342996729022906522144788865649584799540840281427299286543983158443017530451018546766639389827859367231009219791484647518827924014816898633439366874072863921424880832449139400999138653625853684519665994104169943721748762726777579818228954343090422314309598514250546055972264648814448284381381755505796160275771822503964659174447435353654184362723664703755277058521344514081487262906525765408064963735732078374266520501055691996518663453333843201235949234128397074015167150915428331789932494603210144330424133673319856438447642259664138451158389998330623312363655216134756271241285396302168150079115008203910024677402166058887449271452830245909008094652041994413990375757112692547426333982980735805356020396822457592076781433294916467819372723884332066736392647510136878959280010750013792780454587046681477529484651913215326735571467512814729407755028757768 32329889080021420035366861536278659503122886584171110212082326333058188365716969121812913212184960562898125139312123197585869056381309166418279480495802323550828247530805753658133961210768456220602089189204146429482253477587524261128313544223273823600224609618981061172420421247714282418247556163870686639955152501745427164976236659243179191761835270207513832493039301593758210670499141059498965875919937949240108972759061130813544245847628369822158263276163294290070678092839295081267884004012385753335642757496708974491047673769888094803804182325023830828324183058263674198734771159407840362009423897419287893622805307892971740259438177201043133931342016468616328472642080753913474688516890891321818269526586202283746322240869538524944961949284868646161981155877491241205857336272576896150215882884265454627306145642833590750208028983682490788391315922197806083714405976131811844843826084237495175509114029158714913391532 258221211777064099014779459878034705875984616687830832768000766289389937981417384405760188396616485034708650240482679168090743400095617212458063075497049442678168532319500906285495390685631132633567633470291805347206263430598103720696156586128262256202326874669717564279488992741087943100492524765139989740838530466358635100835657335382247493507268363906495264495213107619539635394898667246627215192067275493788607286151418796089359771929796281961580021072331993037509103663359599858193819783253225507465509367082668675379527300316992297498100965668937569246282425641609851994412928137935548599113827074737937020005505333566018050249424710981839652983730492919885158994710416249020348551003019710444515366995233685600889699843799218407962419799210189124258135465936904419795808301638975050213566409890671740586420843833593755801479742022964243765977812645947547168579181205125852166148009525796723613903748856779915256027474 2062435124000662238541808910282972493967612507928072442592687694632992705090481862167283625402804486806527792789195446198787241453926641305817396563590058227625302949179767632952528351575852909596857991650579399008099420717401250835283796567032099787631069793446021733449097216965948976293655200295799256558520932191848302983481773496572530923220413888200889125081390236947150281502962693421770870259305968860284375599021327521969046099943710018007552470852048892096259524295432131432201149968909020609097017366854309681021201875131105470972188116824537246585606467130836873984409072310043133350225184295162125830845583745883266887491516591168739536336660100322129628285573809990855307097829089353369965144952396187686624110962266207636258455246422680220285731790584911164934002361323446253670461130882882818665649830168821703317281713865745219198629975567601028164207952515283561494797885835900150303005350510705294102378946 16472873278562241577309030401302615484162882770117586244072409268143103930482742159361796203441551032685185500681045881480032323075030236486945648040721632090352596411853070449480630473376719328735270287080170595143191832420935815568669175164753914545822822642610946248702971945902953056523496516989887488944133639008367112809002222062524340674561804658205043272714383905827145256268005263093332301274862406665988174453441402373793487389817451205976606579373235084148590792855610338342332839068965435927261907027859192051034541589679700238912841792391000669191457250431287772748813255746540799963004906290474410566900970941406381590734339847337819699252050987993215977990910364846835274009726747804111264165515420175809563877770221806347463250583743570262064438494634032940616741741656760044554413706728193818597281869603575371401074848814666721741310111429667304249742706098883363156695719507655263973802056632520393394508856 131570673354251324204482438361024100776656854103303461272880195359139261565956565062249073303636028737184658290282097973241865834611813160266683918214910445125864012073339204554532542455254015577919187417458246684002048522081095655456291868356544712823044725566115863886925206000506694613289531142629027690341566238676005573612231931727418843707402498616420049929436222933907736769421065594760718682440660955962758255961753863152425254582653108402016014862840541148603353370604944894576858709385393713219162396536511150007743704822278043759938933060336011987147793587077421118552061385068832860014598815531000677933930613284768732241093338534660193475193908656733016671448116277212242911399582787908542373445221122993183540149747130927591652410705237913111863776195816397123291956326505925645623596098993588976905953408671082509834993344845224589508042134704187624687236408098806142100934166087502803642084088518541248124725802 1050871258953090298752352921173772542793116833747746507393362528128593577547666167952352708691742448392873036767219468922658295317539116746439247860869475652957447881038480697554336560693833976684538129701155170444882493530954232070210234985666238099224734109049598138343240391819398809596113085591812793892530556053488760434689739459501141309410379520839203840008482069347643115096400006783157960921922189276076499496295668658006944165492669917368907061124310585001443188821181232934064393220143736575573130656927917675585788999725700180011360872338509742156363947988795514714139795761243103988433690748784745816582788532144094497350510520015330036787685191290721918206083953277656670239959836134760432104997700470892847988471410087157569621235139868983595263714077698237937759018450185837952518919599026680538683186818806231033681687504814025943570275490305678299638675436564103441124173299816170739187063506297401258450644656 8393451925615632135588415324113470604547446947169314194985575991139126735092752762267792918453884846690147005509678630705553562021855073160855126925733687438199566461766885717017859014607089684663190901750336578217085853483825775417073763768021206208125292545322966144673142778213624091572418563985491565132260514694248595260961672274731149882316627782883596948696614211158364645086568348078362855952374901082867798764499899079295992849527322529029895073043591979123015577940777138394945552073181011201106421761090504958573137396827755082613427984092671068670233300548812314570129380476883707311743566091486679807462244611683538686365433610770991770271029689273114191578606588786502948155687464041623482730672434704815800165720909621246078387018374836469241539365068741399161024187961189166612289657081136738845760996114326627713663059513363922103732595916006081739067294573689027865419576398027580729956394053361393540564975904 67039748266688761858043909627312076595774588532347930795020278156350834288792641747964699911199411642358670432531843573802413212035407178820197291848610876734348599129539515104058469618551153755459435566661285497401020093361434359177430895692138157832986671482479020125596987543090698499266607873331000706607208160596869809571461065609624179885055388905484587612797451721420360073043960668212358864798627774663019309607612470150309705673874499256733092601769172957821118428454751010032728391343953678680614217583704170492090434297777827941948752087018703782565358371577576553088041359730580536340159787462933158693839673400678597967475232782225181079953266307268134308326584323411703998860924434917533106577344569077675160173530278290061402980875284296771285672360867229678401567575653720578581730460618555803577091094756671694664810056499651089421330620602454017506510235823529445531310694877714838655077651969998101866001480924 535457265410033868600007783825824732790382134298555751383101885947319054291915293527067552412153757222335567546906575927943581617590502357599283295179631559965866131676499372941236520658620910679808380028414127157174364418270683115399102328393264173056451838568749291273023502845300317440948281614557968837582723229686802437796383065122574483065583884721071249632439047364856916333834180775257567824567948150012357485972774749749542124314181577004833492663773179422566833381297110137166378099511301048520006493248461694523234670634527835978994303845494568603591055710769537276922774368312243806031403215106509070854104588179928137387072357978642258691173410245421493354288410456929758134252488544957872084254692227839536518427332121016859110554707533116106202098478358204496794593487448241652598275279583419658664445539624775129786337863216600958506114101818800923822440222154250787148659058036745503944104272431045114040540998838 4276790025983853515411104659931259921476446232763983226461374159379186808287107384118606037370315609209483525592138065161430361247184727591822617248736539957429656763956141243119125137985397266315568204179234744378235282937713340968252987720761006361124956414656303260569748870572578442228285282485386350444214187499397879215431342628145955932722900117035895835385545697028595011097642291351564998426969791122403982984544156712609413400020845103908280705278810142163933159574101538953592767842064156067479087974142289509518328180417562718155305826095136191327678776194534679556578019554361187405879127238054935803477421220314614487226913659411877882198681764523642285720133099793807509653940494153445909845040646588198099918310472662688857481823714845373955900715853237322749945626086174843997600567386319406261050674490696651777283962481246645867772321231545253289043821402205636798230955838501772428743408718745040212034214692782 34159516279133335635296497229369737495921742481867057474626111026397076385498730586267502704217485378893780716913656426988423924526781964328686212601180646915254849755907728115828047106448860920083782821728268413805194836731541362865386134006697962812460220302068672992171567876489502645958339536495441454961998048585284531861656791483301237994566508575367116644407938138627169476928750213067887407233840930857391595952994401036112241342978197284908915121178132728807262085025502455850298069325310053580640015803066656356768790160274814609947788262221753164600025779757837267286778551534761634853561003161586861764817515293538722025007181494004751132953713349591039261335710529157456108275981752612464649724244169136909012268013295864096643719301931750797190937737147408442910721284196383063448625585774404447058780425897079956652006280519227470401550386681561233785451479536210954977203825830528389747258936099127049404376053002283 272838821631729951850580270796075028373010887761652242761111414986245687601089440228626030637544118755777590439195614566592163728203960091898724679014692766164699900214551051280657733814916360634959767503061540645193684314846125404679111733498605100253955443169093280293662941058914687599937286427559153283122246603674565252085311251271925018954513253555254337389265870518544422105021954075353237431157339211609137491421784041880692409038933679996626546699575161193105353395862047616449077145554534859629707976022214518621101925562539890694390679040423518264987441730135793310146440290677580667774280769247086302891110006409480797311084844876758631362870092781177473674448280896538602125699841382590728351439950477319503078631369612285799960490906311652506350827166888352041835808626770686858503819802716929785658562204176939106956294575965061477608712588666822005084786588399338654113721628710796381637270297665959821827312212669200 2179221055265779418536502813810688221294569346980326073190308245058235466273207923757291571605323979803916317424931750131406818365889319702244865730245324439510229254592425695556160851932899064925426665119864858752946974854137390445660506977722992634784637335545499495223980521576633629925971030535532991033988399675445084541872827182715745318995659916169095199342909611613916675084901518653459388921000889112746275507357932498993825518571224016641038680060297308595500273751903325261417628323523426472312031071175689136921460816035925593129630697102395774878299682826668132907056613042103835025899271275601998099872804671437030080642634650718780947752004597910616274926116098873111595243970373798231200476670362252379960079819894451331464718934426926519932365738225194260907137840316516596594487469158017130887208213306992241514570003897455986738820106556846828846436485182402070049200442216794063878569516763685882078077604641281469 17405923656287175048290945641303455383952561449487116546484684418497875714852630285283971349628261183881069961065122987480002348521960776564735302623554691857993721549488426703152875919154532380239930288195513845066831793312644339708148230801684936064402086397221571291401890010919272960280384706954679023867050750220805735555779131778035542569527398849791873662891833329536841779916983485532609693658079703151259935374786820850868009083337292870237275550882254001644792430357811537080946870151443046646439936512740611459372514987768098125530961390596080311522727029520927286103895104117922780632074998414769509877615312609271230163482166555919502457903728744658579339105214005821144773418413309699300063998904454550805971849606013457995699124341098936317644444624337779620598567355324647834806879148271313279230112256620174015166549904895329307893582631527937056902167937298717896690506337022453566281056191211064930593917030716041718 139025199810584595349703604938915244193110575362665983879685916075684197714550600641790983036685843382655302058994491827807833706665812627984860967297786432753560602958221575503956381654289791228955742943527037374156876185979880195809104955297266170576980544583477833915607616235950008843388028556996151909519286064835509893126588231324209433876712598935373883544238994503552540468329242137324127451221880137327424131145570731174320350155803761695080576297890191496193979538082581713272897603470924054189478661728347705926025458150880168740137886882625542532383226544558644825503703430142149875786010246894667641080665687424123411135935446167103785961629627253882984726306884739871996194328794950786491404311264647548064901594901828667697882218083914151388834808299979947192077780553628371165380924982551597220178092254549053674328901317019782950136769649234312768150901774441077099277391125724858997362702691478117400884574521486478447 1110428617776803599056109968784618342500988890386595220303378432164278074976240824824338130994687210210477263688358530952335344220316346520136757290180365770079648732409190949823889742131092848924259206961868714966167847059253003371610420049951281079581398913527228203796709964976828386865105628472333220631155738097095254500788616197096757842481949798479287411020125913328638148968916975668189962934165395850708664781608496224029297932349292738258746914612635867974530164777120838187617646022234120106881393454829095284197850101952982666458501949512937616277484692326818467903684781153902848722633549198809360896094856406813132292406383269555819521109981110696620635843663330946004595325570486995314579023491241664911871100873753141125449961175179458863919221403270212400064879432645176322203864035717131367166024376793789961570412566456844867481389463983941964001362680743357542898532274674424985338447420909661998061669435092546530748 8869281247870599391169743652804174000778543233591952403450543099738587752034071306934704036875945179548891267761365880499253588786783570128316407540109138752901725683562322048672759760565418331990583845360677923405255659300011373842061962421830750488869699219323297812417639215688568140964920899058224194772765716964025962086627397688360157350637628751176595322711901350727593995589243416156093502998658383997603115526681476101130109039183565070151777844035948162453014824470726344781830384870925936417770096815593203497549233147153120905128800436087759108702866349351314049577325826919798762371444447627259656283077152482148316549603708263624495286868702903586437804820522628668017083571019315588193106547185026807684235469508800503328181144481810562168422287116761131001326134659958311492140538717295067084791258021654413245951259770645476879681130546302006393287192376567271149262684443958869154368215951945476188590995739746196173357 70841356626025838678346758461487574065767471895313073848536538942270141954460830447173828827392225737185168900576819465356803939772897076905263388394607638960765729692258997809918509116598826222739832554571748576073620906366861742018950746149416119597265053449241641237306403711600834581013669320205935901440321176175707115026686912359890571347468589094318882093251014120233366311194160169935108515549417221446134346438371850327502261868685923349080054123261732808828760446504314713355989218765972673136348636289456399409821767260480968797814166634792103965612392077246749491888617017608358641035686939980308088178078089900715387674069419490974688228034593250949917795277819513849235177138670301205018875772944654392489179132768161411199742398370697402634901570745107288333058216772500312584464259744715671549354006453964537859101968641925572916089042605400400886677437699052250679296264198699758135282519737600326372944723709900262562660 565830003669333845112868122895624919556834837125423210471365511053621686416621369837448858731271623224456956706909978808507359900594068515750884124923195298238236364249998269158877404431847597247907711634173149025275579158597426742233970339314219082426959790774101989585217039010392598056862301102897309181177091432596204282147244948796274789194962997508690149766902939522829929403837608194418307606074168348349892810722528290368265071715508640107092022904401816035700690069544493625773559992746977048114496358298949191463343396623929295194449493626857336157929976470448770984996278886407789771849282364138051336591384122179555466928282535895395380369372860811262369462074981580911463044512058812353846287571242468530465815585967424030070766928170165495000802428887467378359995217317793223502244459106360487650179761310021954161614245327640633361336758993647780189678063710594592490705197072621788545757461945831443760906885337745477420420 4519451550537024955175648108688690482707361347328209161719468213167326635940600774434593306808219400517567999966160817830819274899193407614893468052038738634305343052935266381777482534680939808676402823340663843229613814415603616051714420135672301426620597116122871447368071065083676384996696612730358182577428285604964595287957715438212007495857324874012759155017923410420433183729132216867817991289430006574552636707297407552331616506662217755052064792939055354086924307326311185486757610919328702768061065002362891573281294219016909118233175443301275460110887208836668093189397891260911254134411749715369327628964729924129166696761540863674493086113170063236030967149484904342542056599753706115616809312143193557438460195939907194999850790926936573512102553455305829051444784362167142216419334624340881429918468870188886037101023049409323590781941429581982088833422501247546538721122628416828941516414611062067237982897945990763957551848 36098250589267661067927664597344109055689310946457475712159558837472238741043223065251595942718902218405000906489090459226457118096426973430763881990010822355461354730015702607946074713531408523702649379518117302452702827327005466298834232543483630327799476523599772812778957331772752976482996395653366411565689274299920159435042146430927770139619938049518578620272586646880054202556960864409768765854466962844947488044972020008521844579748310305011981616826367352417720103088128350505852853920254088418649101279704874137127976736061251880746065397706836920306323434124132529383302714149168675952157273548948325800617618310908173798403632823622983319007570289347702784003191009799029739087649356213348906372583857514847112921968959688977071131749428300393359619058312111693166996439719783525766563245724822165058441349048481280738929571012042719877692599013248730309140174279051805303928456218229461539234346276254375995431186377356915679762 288328274243115851375814334083635237864548085228409124538544046706931014974858538402881874979948985909880863660255369343883927705797891272952877472887267494077178209680989510937214666702449066665788121578927020963705429505622655682850423451711630753791136566623265921123706003021378741893342699353490734210714020799925079571607906007879274147940601577603413385279817926606229521587802574350341564374714094244711745470367806781096249621946552523077117206763245715938814484747970244444792893092677628751998373578416888107842356974556106667624181137408075580684518228263482489656468269349040421958838734941863842125312037455546679852933030406763465818966989608249630351633740668102694908313709664584853061091030874191508336741578953600615822870778914813058965823901710858903890092456799984205100134684040158109163464593687006921032550722415574516120999117533382725196961884296895037803165978469984651093208792315240934892997542627187654193140644 2302973630115773018261667420292397637696246214776649442036141359822793460593542287938996034803718665544759351163568588587708998747124598396273752267964587151851836474619056516064613942552595949005275074861800697420750785587625625651566298191578291102245644747766314651128855361245318507215662836883214568797697403205446783064472819112177055680970983435050053199689085096795564870156043918957645313885765785145090099203050277192930560541892135725100552848915535215925522411293221991625062788308102137939832079408003124209523077601558118903733975415805193514431640307242746950296364467864139768529855278454917645876581307398037514425961454001874824380064279984314877407071016658674849271523787143181385305844394627525873905142059128480281721083629351652904112308143794733391579441149471051164348999763325191715654209425051571354157235855245391607346041906097737054544131067051243029516744810813359261057823729653646081869016475578734033602621096 18394642511319434488516274097147398818804851136864727461870586648519032220319837533725304948606792635602693030079769583628407552381246268468004799044336691123705319996119437140293929861869415199737516794855430022563861193346883640256478217048083884244027439208345233142817457851955691757596677095495643320490468590217591831967266887610654480988528514490359214979474515343466396372329983168187908067640075914949293213129217839677819699262698272178351223034371426315409583019572822033264316457084453397364772243104521615112702718817742358437699237236268410710114705347918042104270332324946575035962226486389756669849126307000541260632575581439007031382225171988356468788550777593521558455771229135490204437683638393134742641993499396009907126171561278930056772643611405740566849804719399829967040760202412406351593890728135151369199644141443129539539617978682579094231437602271046991714214335454762158838419786357386519868499053971026491895058332 146924557643181845998528840068825799697377499142264371569797645447820477164062589611151083778936494070662708341410220411271638983607033118487252356637455881918035826210293226089558877118105778853790345772675049850393838929897180261670849410577918192952587521369460788719208326366189277150054250751262529613531578992487631340185734128538765676402286013853329857881461314759818978618205572586740483604304323130851613812671219273571386242059356625433099238311431723126805320303706466411609485102108746374854860400799585645223729167138463954694645317828099062336308146453413345689328524327168561393537237410606111612178141637928497156545865799632127669671996002802397611221358033634869492638162009258315861696524035739632759313401926690010868322877673133916435157025619494672736529669216437839880978032703205954013946475067175924503852242476598060147350567334453270202552112066393296310842686874600019300008201992078957553912724193756881154525635782 1173540503485310237390875606548038819324060265282929703930334814696673293821151961137075716767401270492400371835989933954240559186667880711362339922349268039832284221052365110152674548042330486203528968265099614237189381033237992279615522009681422624761322398273808332569031876081793522370023539815859202484665719724869456421616571814772956014557965416629991619469535769927331655538097555631744321093592706845295679483543314181225012978655632513108926068080995543571458610220525752217520393991660860965896213518026872830749566394203480662127140585818480163466802491661362781205219339126066151013863394167944249848126994886181021381513219549438955058787817495913493138939449013924307788294412916384437662757456704006779541754992050428344705579721760559619715030951080755531430631197182309138346079877878995406922068919124250943599828212167144831396034811400190318943890155248876272116065701542197906560281177843616607615492614290354616061398414370 9373513851355793596099160757879275783352861913202372116306559231015230592384657540229584499138920143074509894076363029773575405374927767059293768408946218298051109412502384707442549058591659652617302968253156468022304839125934841673346845317019779893970904930561912041138101937722931483139299008385509327138661542635622429146250923018201419728168878354168149022980062580819312062423718078641682689530441775288730957260169448397360591597393084755853221264093499673969455182543565929810759064425495417384553444840513728153337466171689287398210208099741552811527570555303441838435199249573209010155759566918768347190085385216826546788543512305684616328258856122915604120700763638826460280271577473304579786474999013740101654463257497914715586259715920630156493204863936881213427147898028466342109533766497505495794965277709060002143469806325747980760670281718694683039060236815318451856791329418553706736980537207835384006023309339500164745942121407 74869928236511010447494345306149083078090974852365082602906634571392780119468292223513709848686193565707807234192840719226976366131183793809901952682715504984440131711137412158381231427126719960908666157957816500523461623393872655868286918884705211301586172518202467691579475349143918707159345172471225804499130731311522245705335648285177642419417724562398677382478262293611147215986554527843256180744753046048830852286355298348517916569944450877150122926272678804430733709794974038894820246975982868243346346817534546662287956081616835071487749989600977123699771435846420217284256898382159520075445356227934868747010861778438038550504559018472170813242795718759050093428146837152701270849945307698798044485524661177325038674476472952713676131895199529112933629864608856622668694567087386743730984429070462082173493624728130079183461438071967670391167573455358194259270838846202121918006754912092400218576692247136366544614628245967708327226517872 598016347715874289409120715122985602524664516727599586579572065351197237700944947409836987160869611720735654890110826024895737194799926620975036125206803091777851400288245691475277058937469951161937809376064111845154380886533938846592316524830531736857758823662498858625846507809684684169596433891002813780916754706301797230369156721094750225176435444410636017764177744957639174725675366155370572266737736345569428890661536569069692476180790024289605204325606423207370180061714815735784649351106827610365063690294999126060010388434310774270530952472761686159216887188687920333394006892917213116650828631191060001887106549835722919139851411585401991197977669773663492066677617185534394006142086447786300641137462021781581587961333071611562390029237309358196009844959304501959108340650881615973482226972919400213056544203109159251221299419080104371633218118307564002181501454170153436918833287162698938600834296984717572482079198831354901835482891762 4776605149680645800763855409738987092301860704763195895685478463072492242742542798617203297862214281582213744892299559805170543924082685077118506690147674905931120515436938870426906188503342450639613371215227504105784690609927608536516226514594216444471780976208272646913476648006909216629994802973531260659210226591129385941666409797195387035204268569057657652534572552410156033473380053333811431691509531565469390246472290357500251995479981789666079518138931737433124120613810834005293348742878269127959712680314280714529152450046396326987651282694438018581456749655947865153217352231556671381991454441540801861714801830809647605098573765271267263719394501686990229579570421832898318080501885529775213597167893344175236447992775240528325827058583215032466767278789326682374665817774189093282654689319706547846933290559722630864180556312776691369857316693035465026123184279887411192010330136583229548637864145737570553924701717799040866459490268732 38152787562430161432721581511417192528055841404741766169064802245477616091326007688909854827205295947299476712974499956599494301751810577920981810013554051607683326691514552526983768216404818558416643109723911671593842162199902091622982306143691240008733910047021610864326670019193321937077806145658101624624008319313224242825399458427613701844809923095350267715911021662134773398484846151595189023716134211066549969805082065041218853212335862362327130223608316510635227061470720236029291479354060350880559651836348459774370836353153938254413478032971438148767073744212277156822188100686758909112781210921572961838062131324181854467909130065241422965567051475420217100431353630157114530069595657216264457804066724134702391703049220690974885789640074833377784700132555347586532826844121569662003761034271083041971995135778717515652222963098326861209874268890243930821316530484608226659965855483195781351293094942080206750258015103313794163270030477405 304743078604251350194219258951681801764182187401112137088508258565611736674042117533716678778236733002780584803344301427417283523977789525719516711137095146622449136860212478323997119451049553103411258563104423055263047757354091394763372348299739169860095052814799062931927777707635253362234963861751664591830195819380235047372605216932805471406393994278649542470001079286568942492748205620625794610287218095446114256274826268566939435095279411703566558462848563672105080114786949670738795355997471815995889992381272352426336604516004328410321335019330320088653350196766493517351563657752442399258560457100452851098583744770893232670315805279605015956957222918494191364583217593511625456550327277191087344135651335340200888277068995411181979376401974252117891691065398121800334377837371416605653062224201751742936570076565384419643944110756733335540710567166543051773477085326789034128510077150784058317167451840556892867947634357232058836207381628638 2434120477811755066004430182086165662685133900502133092931438770494672115830228094928853454306682306837870606235682320915145493132135846792455862229415213837688573098766866039603287212269710601438332505597611073853188012952499167922243492425801910274280895090221111173403234613637535046994889765804278720385573941905566819866118072765686927668390571416662461285478129643526626791256091004199891611682622390097415121160502295705132869573991135533578895837483302281904905002047336305063758756671380643421611321182678096217355313909695325272178135428571438552917979403313185557144931137137211941206739171285402254815976774716541605262147749104803177373743962742416838516170360482276284702954155888678460790702213271093421535230061606935697785890198174093291702036560214550182978951020055402188043674170602613543025899833415091087263465500431651853434610937946699128319686427862936655095654742014279537667009511211662256810881295140052065676169828354878468 19442447341879631639153365201586963163333567692286160254518979258195541411023777860064506488762090841664539929350926341236512651296113310998393944897738916402621118466485008012102266884691874923971579061532334185237855353258867847515813455536288056544194930229209422558488708756697803889964512281258248264202840044363397632677261060216879746953884391528092325563853069031691214584097426473789029824098488658723910659417964668250002915380320270609497985505525082351322939014874081165469031258922010436937115344252344837093160976204808000485183603883541191907442651714870930099154662436952683953424826647760212294450698095041286748178065334657633586462538180737206463394789670701237707109647385687645106928229828254312164143474912355544022473930481882075380892198023061351614234307438075453531235865159576883476817765250902957875927592373592637567165710071312988361301238485426574139811592269585558745664570936597278267776297279024433657966783111491866384 155296058595544737393932364855949358216768314181270544883402008604507291881435244043982357444250203513382799630769516521224729870557577787120949652309893789810563966216278354975926870529868538605032209278033663313415764829457910126605230180245016364077543616545859030971631159982112916357490012548714025715567039225428288340772278657035990312546614041648947918498229498883678782425567183550377478020120559238993425328884412647509398776224364940943171635661528162897981131340126285534980052323609370051143526718734950114093718502607791427285003658309631535877155406389576513604828641160385894490867121478021747235056395982015598819467460489911345139805702458172518975770059949428786733923052009170082961712705466427642301383860222620861068623234513362129732927242097130781894261537119131883973611777693819198246170110633457305609312195741325069354955468415929869225458774694868924338919870337674606251679244975680932166235495132962651421067628752660890055 1240425184445258406460756971580100642636311498464355192184023864199726717763106319501387845646019515203655412846175562088713104692524486318949770735568099067491454025453424996516836298759407715095226586101427623090883849047118483398990794373999640881996982968596665301245783137227212752366362322000921912309648545731610479905853850505247816487599325110801130297246492232887787972120137056106691309949072722104499284973732506744201646362360806955834888340258144598337738846304666853947693285793164993856038679513607837448285924298213935135038705524066069715699059854685163118038230519249079105899301762626414457940472131618932807517899704932544687357657088272719746665145107141570178844355403773261377191627693118854606073694004441356685284592795419086865820635533544212505545261392386280208667080914308717968739026423558119650783911016169487943955031315792383985733444657881083483847465014610353276734173183747204999855766243698166254138159086876012136516 9907894081201629410252297662143595722933619045015390743970828089858281972594482508166715670137242160178040728775442788072340871875681863947928554916964189519224891711012394652999387557441007982288780084246596365491742927470783739876474439147958940207710910509862187582978069691257054879943729177238413648262038772673705705396724915515402337235642773386869047846321395827725614021399529305454984965665160163444269411123373381914324378238649481594917198850276883847887513739296686646652657793530093265592636563534216693056309467155746357571223635757539082462503308822141025794283027635850865241611844050666953273185913391635283649046671955716985839566219319245677303435640941659389990912775488444553392733495194888054826419876634665394403059735520346835580155321439095778675118666096778340256439280591045707298445054736969889195284771012375836677484236021533946358279894447995462723506767042253031911687876916260334367531518892774434262714896178565508347770 79139403467504516211206956565286780391447708060292697649174587194597373752172403226649458803061571906829063553121371024164161811681572164533566252948805767761591679178714788260770513250904774955743294151859711952639669585732658436968811387069229270892949971797029616711132415218222426327706337908981893725215697842887439796838469033278526881038382867347005780921709463732315603907029017282334760345536543712057699911844392020806606339528593290520423144987476839013463254705131288047563836576842951424319743880805031917830651261383944404781150749486931958851309735881023788477691936802496100760991584630054581238918969600144597119166758993294018946384060892816568250997732068434402268683132266774582582184195497701884437764285069861842195043733798745933156245165386744160524647193427308361476022553619616406433638639024904039111831941043298774655932444474300050255461958930001482530373183225961336090335968932448035377848525344660678392624521523179290433998 632127705552617110367093815865476427920391689575489991579826682130441124436128160108430741112811122571940230229361334700684828812641204507261502017962651860201429189049917764332331847048429656437934986827691720879094098585147144801604146489824685446323478100044471130505087246548550723790649276020779937376240134550931303932761244291240862124253806513599667220557173619135030627757420322746605090268979499365150209998963909128028546806074177961564052309817640553305260268299678601685758737288063534408079519485386941456166244014361869075699642095883176598431946417655645216002845333333941999185394575572437990722158413139602103124552388790459444902838029098159744167993769398393834539474577517598031123657722418242491425312258242766055688908669150517608826987825802810122835946382062277125868366225249587280583225127045822066598998486347709263630627329946637744246171097856179856482443942339463630694891431307595826657636472513594423124283872372200040180237 5049141169272469921041643070380801075748827323395164503573355218474561571087996469361972106171810061206621974281547278169149188398761630762306592317641379065672720364430079534498908229257049983574065244870373182185263357807143362824120420053959206141441227498494705559717283238580620753934107928489227362219751370063208835850942144732657679087628387626850910630902926652298227147806490703024187745184804498201943302992769558302213644361233163710085270535876632946505914040939377544994594321649635550875125722860440482500142594294554525219983224888026998848387599456292655726974027564887985214759502996122795767978377495985257801602730601404992915718608958515651267828090578500384233316989581599915858610643762971539977137788142343202735716521746670544233059096239650275598638032726262172503834706872283511225833111091794930062492538378261842913572413775210784468263390682355732087795235213281365333913026749070476563727069798153418920659153233704292162915998 40330242631727229422417322727065743540493047450107662247776176212057874044198429193295562187250666385808502061252052611110922949815835445577131430728228774421523387814864067454239478450462951463767694354853668973592680875421948518482804587443859530097850348843255957498043286088344978746396607468791555637422547633590487620357293889582585725932185546751304881305605829269433932181831258948320359036015565331152242150672870569493719740546973925615258963088963541367043757201116516854859872115547540885953994207458040774320422104141834963846143003778653532363293964550237199489756099201363684074227732684647197562487618032648864170486393698131077183275018430793671569025267885116115737659464823994733173114735985609003803091575233563148351939217800235756931098052285761859576618311674740908582029847069976231672086421148918127272152202565928092338573226926066192004652925022801746586683323751547147264487560546803486245803137651034423718724412741798746532392502 322140099602330385001116125686525839107765034181295354243480868734611132810435935717527403262711042732141422736333344097994922657408976587767881750174651732261620358889445027147082845978726391016610457816592525920594395157317076158785295899244602262328015739394606059997475165013541805823652619560032301928643226135588824982387216763399961947453443430616601946322723871416869837673000524538401239738207575721167999230912866571667890696084797787401110895803313433401518914838897577043353936029292441507393547733780549251640353177013784577187147010064233501544452651849531292290763597955331881505511811397595676930082602433124508589568751826502134678931092449928383378593175739507694584192159301052451425919129924930938096529057837508930099907765141998855992822054010469833080490281998077818572532953632744329968798595025628018858135409604625930747349403633555614255027360296441557220528601168712254890638442313495756718536750189517321580548540418335069892475936 2573116049567627931433241044120627007350070853836518209675846483268902150818295147857930753812771821031115488819650256670507696694324371166561554866417625843002126647383494799717526134322915765915855634757384950612326474262625136646536328545766620552233188863374180568016185805534851961852293848748065951689654353551656603041292197804545504103958289678192936591160892831054432578421331243491976315257059145087320722627982798500504305682560374785522649713558848883067667979605934312030861955458033426299494751670283250600145852780654324363368310312572827605552310700475631063776413103667709421043684392315583591776257589395714778628054099884594306630632763569770741081197393945791893409098934561365244207094901738956761477064374450358509907117247491877917764048758161195831798242486302143893483189859436692971206634876037128266790208078006556119337087199776614061532049128659801971063399706731913851833924525801239314462519912988345565175001918034376536812092463 20552970020498728963007195536231108793074597374755994682171265207194745082299290292543367027171385430196746983171641909843567609799916544631847630981816792666961773077665387099657545782471462453797785064871402186572411593517481480316121755272821548880554937073519340624278939896996686162809271973905013787427166193448599486181365192850744439992891318615773788559320165041508302700883432157982972948340126888329654184381954875144155693451228831832724972055180253842789689303765731339481169224036288353275994479912361147673256963337847222645982535625414080059790935699127716689469122820375029683774018880940759874701925914020797833873851498930886087351383301566567383315647093038152499451362335310787940669992871188045970909797930203421512705748825928868286908015437961922236962182770549787859766978479709435164748645100585413125170011420106802273970454393649419720746076201199271608428600147192484589141964639719483833220972192245958745963748616522579454020901012 164168727797495163590944728210444513428099785131171006404316088534480421672641249962331187043650648379476635438326253301574983489177509135396789893479621428836962339282512270821914908199099800844585148523810909405645725925113526442498694198845509655196408847888118838031440781172727021628135930456173443111007227828988569890422163104666750305990882398980995272914175824651317257283554692593101468546560633612854721336603065533078969607531258813447136544061145531590116688392207606468872606540540833623230033855737992584166670360805854522957855987111507237927707562575479469184540530170682166643353674013925340964364388194625292034127943679576843914949879186243643364613699821331743868423471946790374010235751398725507459189230495098022729555907985004163894037660109624511816214234196315570454083189356910940883711567894545691753515192545933743390087428747957331666532946965740629057890347600819547229462097870995482005350558044891127987872695467920556397978473718 1311314623267186475752977023544988220259405228637351640915049355501121550746795261963411748808341395352524535520861240970450595432406592121360309499299078052586245596189257687213778728308684533486308785524283157546499177860207754144880574497395271032585024676026772310414397358351795838799901990594564574733708076363884284904678557002761254148693092020173603753400608609271555911498655705689995195360117763282018682219310532580101786998043422725462382972559601137170340653691091901720744368794046025485690963853753439050040262405883687629280560412116539656932603069520120596218642524359127329507875390971879704440601567279008368527319103843850882303832232594870014900686647102460092133090901356719210708232408352508364537317090493259069991574554114217924633365366524603246091412031285490723552673727808958142082800110286506977577159790059990506361365653455396319870153221399411212444931207360139551842039302295770330021601625383494897891079692792581798956985047810 10474275733865007602314801691051366310845145602545898673362702957464838569538266467610654542735994351219985671122877594674488730248614956108575302221532182146928587051135996323388117699405849282624943999740573790271429339842721771716755487059176111007517428889005423888001154482023899906305906512434625194427182826610001212996272359495619981718023732756510533365765083877655573573070576232968349406272124179389441706904024014021135848573771113141304008472866584934157470740484181619186906008065941727834668251062354623303368496298778953256890388802547808866928960098941875239566481313585870335701381395636663664245200601526703038790059809070151155310566380169961590696294784538489037114426878025577692957054791948691366571358795798069407464062287777679981139919072548270295552680743119579957461209284605354649104834425209823612555261847612837056646616454834125841032370380618380030001979340456417448066341232665193521611077049115411552001564035652974298046753920479 83664597479168969319692709047844354533562196311066633037707352613292483797847389605096199370888100162500625663374405857471415037857326395450759445148479046176546079781522928032038141582203735036025305872856839399240604065160752032340275369582769620967236781107939725431017872453396898125314435121280169883082118007356581960535933090783162910616834409272031549600512101264730059190453069852382865539644426480960917706125896178089406234380759364325134409010921612423183370729731551235023008406199219129569724712753272365238909971956773301698756350090863955157049624065321261977921938177999868508831222739395951367452932381835150298561308935047331901254213139865248242578752974283527018702462382330520009389787897715808494246223039250731635752132909052418889141699948959467816751812350423880811129417972549927676246695642842482549105754453382143582116377982520869903103982756155753423117198937794367938698688979204492888920209992123978749157538966994398151294625834512 668282476959948988740124198477784887311997934116699355344953288305514242600959194934636954072430918879625489493635489880777464603356452969631955901163558593275170549286117714416215267893683291125616758000215244378871780077554139029093538929210562294784755440543318101052159616155231859036951121118773952524441199300312170628417102161917686311262274377774862109685688275419711440718393155115560950482236042302896287970844063678788511648674644673443787531890892023703065502561540222129526881734912619371465206937828968516667785973721768237794222139390253671987243614605809903368520515126763107480301963861572881361510360501161369585357296286066777623969389200799864334712588969385385999030096327885910794299923427727880629407575470088268201980514616491589721600508841151747685656118370723811409271815007401329683015912734289706334329428033478409911054535297718610855373235231177478316088795576069559089124738018732876287473481191080210056910475968416822916447876748815 5338005837073401948385751815332499878789780864952874797907019628160776222250544247527383233894294261893674081919814648487102750305558400669254268749369078138780579486906594180754256207385784442299660199879707274897626647348178885619366006706163843136272358313194311818696867857960196545841773604061550502321346670268267610561340443540550138489387507082468497664107519324969558679947390793669085320169677519867548104789366519787605826611273199114433188220231965101848367061477036594132340133931040777652493837426228499851664831889527470074647514567678442534297681443620508388799592664729169215919743619758171080227386305860714299202880510053954417477206291007531517696374658309852920248374842407222776984473780544302306137444477882357397384573150666525044909987535296853769938904561190751124328404298633603974164551284678136665313957356182715035364677564937872454312892663554830970648568937867659258780138667419615056231308621703427109930003276608023906998949057121906 42638177867564948497772427112777883067187789244958650055189158108001181745085349757281011321656020227597764218681293700094932728408903525763384100626084023030922003372430371553732499420863790295331311879670241686775201018398243873234858644854704297618576615473724574238160661312419601044732785393953879744854757575611861285139344216264617607710298329429650216401778002902172195525460008030839354733654490832143444141771269369815722124711440804984357388399387389099625177931898315473912276879006248747347334100911359022653593580974450056269847929259810199127852403005735576185887093077314299458380631214952354787213201797984989314140181804253356876214208695705771669728781404361197558967406237657862753225022242715136132229165594515751835558973204066710615840254724591500619323009947220106641126242527628424522741438657325576179428028013495221272142065094367871884966227248542682176168208165884466760955500164239466704603166675166364327903617314046941095471108992699742 340579771884366537498130502184204476626936938448711898976815806638842551808134234488020853426802312027137362911158787605209535024271793753827354539213092591345837395743887798692528743379145746477032681383768543245265705075475461713832748437315870149498973298341408437253252970250231745878531604964453220663602504371346157300614241345407370432530512685312574513170800312784187724787728860892639559101607120976147815889387041880912631613027626280437218840757205681554106579817456228268088919632060874256087598009049404215616594501573138453179664607716607077598304096885021068560831487439130483343603178892575988912428941436345938160232627898103559600861627972772904592702095081453266835305719912330481505105953039795109599460675807470714518866728732747845667791317106343541172846930953373372667766128075107932767441702745041189185053158581141954743157742076992017441980840927097008717876292589127131969836895756111074347041006472050319412296484935488743431906963392517256 2720443328005762474329827051214258498161759095448971295718432805429905704800769083370555399564529743823667927424366597042078246846062221801626652604282789394989886684894753313756847446220613599638978700029069437997774131807035057860635392336496205687427130376358354869110855948951541423699692073201364937381963102972275413677543857987223634567598111909866502344200619956830748031581828401341525542219090616525376831057095953165366669397831296233681334952770917362776856385663199897902154547549414771853376152273800125583253675087282494358282277814836993384295233354733630159564496329154727766939285592713235211177100950639500974643310417379174682462960673166116987437333133285711638728313232423478963206260682522065137002873227200959963079693085277692971679416255203801255965495492478082496064245388046317548124212267687696393581254660433030072091692001185858345940430492006325420901641491349151014401259052088205742154711923756628451551560796315072489297563307437181046 21730070457922399735870571605835879580214639439612491453990226516030740004437904311219580949450053010766872568173957167120434198645995064431223905027121395683844652363239056428337905557755854619307660202728012697447107948122167701152283263852893024416961569306591218835325188928162279251518498338710821768193713225662390980564411380491188819766456695180468628864976096454263585390110972986177573341133743418876709770369391378283364640733914477074955971019395475300264648196182371899223167606211593418799611549582283777607726336548340075676057163089052626417847410941999337229305646701678361355055755003660683233889919999363820008210291877985096517537824655220997996578985736423224724148851763169398017859718500369697637703450801879305071591615069720298641047503103121265795790120798639225497806948679799091987107950867527662187022476072472667345238002004070449284449981407007151058223303573644387397238213508550742272099652280826331597297122629991411427120667098327732996 173573412982604977151278343632961299930386652831673127576904088975736721883876180939011575953891705419392389540332733805133363601847855807998351459527169557309797822385734503184578772262197534191080043207310372098752130982843919901280776454849329575906272500571245174241974728222796117077810792224655765112251402828722384455269351255420561768476822605959579040218315905870168929702359401840766117740798805607305464130201655583187401730217905907109620864806262437532706020478108949299100899082478021359207148676838522220869793940092360736282113015105438402705246354623131683904605622945977267157754039190125406957373211135000927054948210470294703436518417648922832151155722704814905243868936354322627203262055044143410672688106411825548162653469459389084574398943284809277685878560043037171143039016363390415332709540411347612515467291916541411541264427238475412429334420007110166313417063043112972850567940172612310552077024047739021203773092907553205060418459122368073204 1386455349795504840953110579837714122777675232875326074442989776095550761838664183856702997398941423919067328362419666740730493202231341828140112660606441535055600067218018379061181285956527338168468965836368005534843684268507539783805101815543824511052387747904183000365404897705122649599659669175386201286886918339685896873878502217157704508510191700510830403107900548073973241568759467535169619118559432639083296445500470594911329765060979137800215668147524922514812074831141106351871137491690744892537176114338402979255375774957761077420131731923270576370222027390182729385529188655063392668572197827425128613847932917980947270630613515782627183669498345596258395473279914716752362412695862473720293323452055189393774920449870219484005820521215616572852935746606773146421516286188543598880835267210011322761673993729770345112698023968646587568703003104501736097893208046968622673070429152224054225698923530170293084922929210226608484882812985129040036972188587366763656 11074629035061391353258149817528548769146489559652985148557262259991799581988908187279500913444970571611651290501318838199809579524511455206532046248780341622450483797525429276639929025833153630484504181586966926720392141301745287085099054603113438447773657459096604711328037459804346520949085115109798424604573322555699771227017109441471301093360751637212445891932536654223403363020635061343525505263864170855150282424494555137495411246916566758937135228797708843788197919958486788719229437934091344023538313337877358788666990045778215508175916878275642732405160970881445449363787316259769109136863454941716928729863347745226639827780607762685213965300206094689779100533162756234717984253573211625468016105564143670388101790479195012078091149578208101822980777730571307802841304807486230167774744986646595205328020712914243504572715084267567903767341815309073804166508796342582734293433455527170968608408116601906973240019913263168739687786014033818419113195546686029463732 88461255998086588404853063106095371404227273075294471979590216622959478192396389578822006570611577125050102433839679940247001468183323879437842727552855790139951176406160044850819207726748837099800004672011440700986129368273409801234816045169980899099878617849626458725659172772092203865706812730862697757014358045933632770100992076603889495323958220011602785568446592335764291444065191722543838015841121857401309927937080837995235746948958884831483085254455030299533659951082001502094582448758067971832229044525639389779650107157255484526264538512865696749250521605251749802310599988468861604971997527245032019387111555375830027107058947905529095042105490064643030399620654043238890950610067588644125959010812423877813267541321949905502929716741480142755605829018833674028449631039351623276929505469447199663917351212556919253568400482660056969287403336036730658432269532653628884057195157088185163551515493178049085163621417279841653511517708517651376612576212877114993652 706606499318406140278910954816539326297123195257802903254678738556201722962365446572515275405884891548527337321299784680452456395030050137746184307387251635749712013518057651876334538693550435168557422080391632408342478827314911200012995133089032498398618644177354491926881676698893598164006761563995071151596611989262501428357287396959746350747732947104483024068384022458650104452121586467829695387599909855743795730065104686881494813520027486300895520890992659877863659424403270269524395510306883769529356621048982542239268539825842890943673454477182517815975330941895864378694798278171125340285199433748624598975965462127673374430371844457077148045829478726487631791459358030996661735649566112001156520784145753767673983404230954045578091203314577989172870051609299208306502696208143832331943652212263463900193984635263939021185432089031979285852586466455422869924296855067066648639206563443840341585834547916073199917102632531893343878134595781259517999332207417357130430 5644204826275599627540316031965012505051531136092932709702543252046865748127140707501681238145378877856001496345722458075138982204500808057846449794294049243997426292774893137662226195363122607945067608724569234360992340263902719181536090323450051758700709008416883416616846426036368287926515039725043255335912242713083065007210777078509103278706534544937159995498044359888073768659447712753581487453210361282945722934975469878894334756272599341912873547937915149351704891622636511871546991200531465794707977389336422083748630187612713271318152601770642625381790000733105955082179027437077655766784344548036296311744172149443172833913107189281401921900899123749689928238076682902533737164644036778300588897847967706610999469473541903437761405710516895759730331142959265225642525209038964226361832535859905603689956562839415026287192414430268366555549266513734611212235747760326662702536087310020582713190690927297815074716523679252598013721832899358842411209347204530872482048 45084630461476363593579110145654786167970829958353572076098836683671474742960838868690994960987967651382421755107072986323627123273888565578324229816912810974719125374527435443998450788153960344350457234531978774713239160707601593715666583807551031052553360532255816450471378975135417205625431910470740919351578117732074760422995696971617817225619179901587256821764821072030329655158505055047545491991830908816840498807070760083937218288577940609107786835466441134401551655808940884979171908628452732869367637431995115078747435289379830414266347549060461733619890871724266028184122761691942136684115769195896794563813228535039903833832962016416010504720146607515462360451517941656046803251040996724247603178917369421979706569218307102543800639527724176611428051207801105953671919979235412085371676826394672031147123341268222469945552795234478580345633259121890500752252847412104475589493682014470509842866359526294469489766137691335867288748574378603745087920026609863395767446 360126327532886532453656335433823856279739907694619735000163579943620642216605785485505975529617136776666749762682537638275221166792560380827110811226179906794670909852562811289736889205755574773537215458957306021167594295885845543886607536044249667334699952919108882209477744014705246976403504780553808668757803313887763280062302865398660913498133778270146500118192339818780678745325447428170930040467624170357565628442933162228546292083868948445831408300734549848677711615771052395073351052933657737281914400312384972736647554609470749788943116445900510234805507093831729382788573566284526396856333955365692257675458417498301999555301384246569195838526104410588213137591966893116681646149031575892356734588134053171851265301756507038941495440839654562523393481534941875772135863262684257434885803082554889480838757598311287272098869625248145238914375064449875639532875129394625063721485796566074168065751163975077024983057171898760483625378904434120789913548148674072119786866 2876615647005191017237264959512944040888164404802561327084727289673022865423901896993734289285285827673001926268442866883695007171561056201263371932429007604855366116870095212597764593921576795862639030260700738712219320091734927355489454849650361374353148467249468608130559458031558794443893497758091612047139786711137671854779396662787613260141877494375746723042954601531703498566678492361608519244199813442606306175631763680461090192177107018083604354224975750107831418726289721644078294912306181094325775904925574629573392162952677765276424879893530476797040902908126635204987928549304283004945351822340306005053985259807122274373424067852525513109869772617856979560196581359876207306132015786440324048724675998712861210034454551408404651134067859153476918560267587548434754961298899004074077711519960492966054681945181577647285220516181437538529131664980444315078447143350060768839623875380364171951838924484052182719446288105803446270829507843099998047087854819681959433984 22977851149454043142111583834167118423246004952720508847168516454343379425667756660578858882405940756832633668624078754896909561544576322386028210501293591243208973033400912557804973774561289763577642269778737649932038316626815168571482890384711755706270901895437398896620275329849964317957070192907681191704729492395321483347122418332963170164818337456639225410203302664322447220901436252955354545248769615148891499624948806453621748937728221833589350572734302913653429854846875601573645574641178189683971835304545083697155497576408763009071734891773412001121750500103270834337089359469073414382008522795337565139389635678908907572566920397304562661861097747808462463415898163826147842855105433743227211590707718509917415799285308831754282328414977458065469000744225512740178403510812303370871999984436173493608461464858029888904506230535793661709174080450493537202967667184901620916580735669237851801121836189238609748924726255903707620936980305233904265159203396303992170517344 183542900759530154250902337583287568593209559676377137544626346098164122950968120778800276755966892592819850327108612601366580161076579561439716726931050098710082353165714885374790998281561425330481553127420149431451806471052360336947051610565012640884959688364992841549244089562393231529916417813467678631964149900164114658677305725106903843667004882947696892095663184801205405858252192747138894648256321306792082520361592057872637296832772644713900049121169725387847148682524245079810195073821892117696207299632004247181926046539600171504924748700943023716485027037187771737971707982092504596845133381440989204787047438724950108186514709059689343614630390481069193911870127715199747002123645178196205001387006710080840134507550056873124931111970709668380534661326172283474453243272295479951888666095874977480295513519147599319384366177155619343250310159783243099736753003265911833160005956801836580699339497138812063317145318655148516985419007509898590563158713430247034756774974 1466109390484930053255599010109501238373282233246713553463941450292655273165312792425820095051630002678359037899033263953877591620864000326291813178874326278197066283590941761732918449010766044469569067743297646477593212766871767481660068330875146153810348952911445332916837481023605733122445481210613148658964345719299625303313584845391880420043655028055176689344441148824930321904235504959798060825535856564901353692606769940934089386800184404774141670773206945331160247630730934202872429525437259091152560973077481379294620846845446171191349127692471942303929970905545973673642189278609447451647240231406817515122209343104642630351956687471156184629533406391124288781159892235127321870785265308511334991043257711357882461069812234233982169562452058968017378164454454520971781684553836938765877512920005147007795168005353589164029459862734377948851343287139177197613042392253596171967138973211481423899774755628310249247209937575782363882076164721569882870154264559950821833381080 11711048068430675514002148836022488887924834502739424718710687103212078807490132189534291789782454373180582257111777553953307938401771173227700027599945478349088765482830779888877032398071922068259348859662376292946306545273861667224110232982772614394490311287599886542106031922055155230057709183673441520899325317273930859684261208967558386864129407853584275388820710086215862261959197031043998339644314818269519113387302206177032499103572141984545294754739762944863740837948036612784331295983067349606337950426798351985177557195280176618204032341803238671873759878792146398960971838643386771115536580738149012871178589237887787042947348749859394433115091565574135540427642032788608139593307492636069721630731191492458566524045573823435434630296199056634675660188473543604208705115775691232546586169585614070164126775600180541412036104044428760061835177126349495954766761147691264954112178791299154233914173176052464940554660025271695274854173508485955649551431582445629401187148927 93546114695887688449475745174081091126003997044676598277678382826282479069087953544812230215444486452827095279595700879612800416591662678135681488798911653700760352080717914603674722082938777177989688736266607608953223692874489935873234742873242760376960848231624387041813366309772209253476154230961413947122625399993621822636629196636090070596620463297008179544941574846990973339242237155628890306950512765252687124440579541148902538070392054150561161403921939750654628811342379814852196990294366959330194191828221245966812867364372514821845093424459365153936919457929688858236473547253799276783315292883720892162623129691717805838440513525706593769559589987379697743654469222146637997181499337365999215953430186484495711136397144176912556547045102567863713931171899672064193471423033858404827654202750455308442155628256579434800774724426527139038520294461011717185393977694114930462833273142217874451736550898644929327241894254899330160041942536043099813022183630762755859760752372 747233522232644592918321331148072599983668302770893714597485550263133853282336523121530988797160458643504119835082122745212691137265445976305371091230706189545054449568485141056424437843065479459317895342087740526500938941814513917535469494770711138887854553856604092329030665497275856373850632858144586068841595423156014846561257060421513155400842943963518993964969499661865599666518307142048766373992469827136901821412215061402305656783208229403194892153825541733410072039757663689600478269677717251852581653544907723158862983604188600789713967008933938702930739735393641940158843904714970115773619035014975381259625778928254139851824196745307536306293796529707986391507286069226280732117092298406557992175724445990320382514505653703909439159267956468015520671696834917678354511150424023885988393642018553816438264466682362081988659568824339591155574265372701240899458305781806082913808642835257937890443248119900975224189045963399554009271700232549787648479176746306643988334741732 5968807049258008172035710196795542841119148186044861576155227406707788132724385425742454766798709548636147912542921298383575244836214307484371304298168986615366781943114675744956916886035863940324589551564824562933173740065776938194130201784056260701053303491499016814637649953746579514543163837479419892075874599296878205880407089696463405511739956178314014677130428149893652796589650639404973073043497676043589189201065544359143468936901614511455884472498729213141415869417291217558806731377610115885309439725702845575468619761037576452136904005833465989010973839259354972407845937389117616549685252541777471240765647239488727102670694831033344588728067369886401627897350757143660075569387497881904913366839207089978457728307000227108510866534046308123202537916811591247566680648977296503570154366567195903412928420242966373834469246121929856772619836971765278788008745927562442894583758602743523822505427192876220189280358360706316416022188293758519033945418473336452225807070818772 47678143050309743402700475532366691357594184339985241193760881084836522765644040886352455689023327847741725641505877415051271856160329061614827603582470528336573962609216549665018043245576388667108093906611334032176348507496281265764424364801582931622173112276430431335769982489099999323139762375472247045207913671737913001127940842439075280888273386495019547133006873601135666890729709439591729548471895003747508081194607141036008900229315774723073056469382610731858707058737481401698335799897836198977940382589199412516467097494288082437952283633284309507640923226584759547973185091027662490518105399603957472285053499549793700019240154048727674480036767047768291119485798436757663958542066939741304853038200656847924493022415213640864547409407723344049484457147933246882634261155861777185915981553830017590561576080894282224897223643750354147629716337159591581377148840106219318026304510003829379670248060461065039930774593493602316875752843149165910548783812471074077392644758875210 380848038452858266892651286884161529009532933239756502907633951152028967291777386055654006074369392283714618053896871099978392160652235314485741343985608418308412249723745450817761388818113881299932144269536918431256090681230855284355477697063215021614915339464495461332144853744027156714092652088794722936617760065895186258479454747514096702754984571628126518707987266318633716802777445176558728843447761765327931984411456356623539598926932156002946387470901050706594647559500108758898583415851277148275493714603932834285199204929904592680521534985734756534621124651009461055331683239884724451496710274726593374058061137132320926502352188498639659841680187845866093811506501873345503865163426772138611976927563524211736119776069175246304541405393533227845820104693158533853245697775590932865217728392766983950812729374097712189415934564150901193720277356674738320473844481346012134359628458646743927733505940111279442033583414114976519765674368546434749933203570112174428949356371853682 3042178629146563674717746354292446863370643947418216279168220748765543504453978005950521693569800580406527827170673216673900815966718547213136240093882321849929084369352315818665657871194759318516409107474260452428285759013994012715959992061726987402329667541454773519367551664071228229191440344308476846512265126250438047962035733416105282308668097110356835620200142976383169827604675240877113064502484364434460742574596317681765403675569920882176313686085301178356191008047641304464413086645817630721054219178486678060233974239239848504606903030057630883039897736059451896861875379150693196925312176216588479790483629502264905449184448934058711267697966121481213178254663719840965547121233727093239502236243233882417120633334894286742288887073088637231171633699282365210104363267964268887526236758731693858341362859632939674617784169908511535814622167497166583300234091139370258744693894512889150696022955858865388369802387991887429534153512225009482572769603405245082508318060633166157 24300672661327916081296866307409452128069764236964223910977186858807543512657031408272952649685758493373392791331756567351856345162746519367596967465158779420216504203329470851451794669736536142495227582546998647235158177104972789466102198122724700209044855850538818363220832265451661295171358513984717347686272688038784118894128480994729388918145292063280555653109591804087559132366141219939934386492068578985380130749585553322552656777125047666221232608231812905450745247120910161232807335663085457412134155139096487225849920781115487897251021494063670409508951683575135237475640506120927291866827073572119487133454769574432955419957076132539405302517048081264471470415168017630673072075411433196752092974141189571136052740630636822127634339322119869052357195496363296062916572188934021946548940322899726688500711800297443304150591338428212176520072809771266685205335122023631163637597881449561478866453892768624134237127974447851641128854885154709981763899346365353244067923359852242196 194112040397641263886732249112484430402187155965815999390567088871898249891889710948621690782011124389816112274945683828306581318024921588481787413965534878084841757571746782279599115617277205129833705174551946277452458318607374555748677573977092879416716797733372358150274615618284082532567279834344251322983194845265155669818244541021821110793589091174730350087556343865159849609818575197583426080265955714934339199436482010697080405256028279453401001020914737986723855260028468795078453463179388896594936032552344481381147155702352515042946933828028379624828935386234260363714636355382492207382346926757472373610391812137495469680992970779946119770961133473561622165398600102800823679236343084751391231452129479625436360494130189383277756421521916208734113104746190937964299830361448354503039573341144592580742667332667544812600895184741164658527653862281504908744393164726804192181576414839294958611827347229563981007303603050431475310914602456477374413329962316307677935079309961725252 1550555257843790577915508074651185809382705468911004204180099413350782744743041861323973329951552128056135577219410824574585734389746487536304689159685886406667649525177347034066623420548954452558652774926213280811976619678653508281854584959230837154040990690071400905146787041409640668104767273739336293377975104014980039572045563925339978491871612746053185853854445765167855042133797637515921914944046693017762923959716865284833870496916825279730379559530915425247799841685195641236622606290134572476482700265554495561575262510166489132272053866785947441827878331149943608818726469702428943135367659071296808481511768119956475750422253072566788054218934690155288970470256893593903241156811493900918362044798533307116951456816177674388563231504178977890907949208865731623176030012232665138082615927606614560226983300521492102542568064216242153034992597975018532094384545347282499608967757775988909304769600941517479513375899146517588959175942471012622353553102110494801721864677224570992996 12385758684358503542461318913367196683291243517032924676265436402602108120735833840094258794288740243597749570131871978259206312417164192691124384575867888960698753003399258911244184223300181190880655589350349865184734912644348615875837705677889441171783172808639086769258198357366327113931326206503139105387404900528801127867513269695757145943134118135366059111330842272454375735222550436105240901995817597249075811337204979756924608254977862761627409268280835313020825819414212215618410296340439102412785849910682420884606644051901070033926290245292367415968650815392853532075764111914067724049846789083849348275996207039230182027829715267773203073854831670383628070717998483673766370200358945516969473997095712900865747263938413377385420280097793875731389510334656778613318307637821739120408275268956755612465959446139595527658427848695590282312937472256678654546770147866257064370206775835222653664499258400826860609862165587272657027303921740652549457758023915370313294420473902490680389 98936962406090264732109397889896015158676657815402580896674932808404927460863129747808432507185337829809168705942297245173018845281697341756424929901537932434921622535835464708933977580239476442813911541204472590797068143515972730211008307778398656787276656969460928476888589652600556626340206112044927093793550501652888506205655642480815306191253942258257667803157989173936564947946081813348430237472883475117479950782360607139328655489617802545948505103622472809633398798990239035718958875654097483807723420319574230382984487667756190129197135865507460243743990270850143372887584377645229184948080854150711762427403053508202692932691889872356484345567476050652330532811895065142006168448076714560374233250733873467824187730895360402668228111195000535249196822684492456997470359079275325788179980995996787448957689759662818061294182242172281705820090223097779897749117430004659021553282010976931991506975956898125994095853599282642221682748127569241883630843568625131794714188780516967503120 790305712836868962337353906667433580586517818590862635178900083032825662111769360959399628277157438481369292959525485223137638350616605293602319204767533517493869060192665052352634426924089982751898623321265649231694837675618371075204389412223897352050913830902645533136319747179087968094392722415314579592342872240483755443861317495344152815044555867106300245900500991495154115815055066147379598901135932220394084854435045169248341989374510240745269615049276175158180896443707509343124498884154927863607499097023802712778668417416094778199698702694726386229114626321716640480113476356971593007347597872281133493208504627747689991556868204499245662872150205814824895480131223574616719829441968170550616995222394390140869117967230404753515972539278187443738829329861544610362679899793538999251298184878134796955546975335677821061306566874410702016821500823683148422867320611485099945724171342238946806177996189449161117423609855096099055372939303633178143454769506745979655669149485395551195832 6312948696599957559394578359392059899301186447123549532188628247447122742186155045025205396583106454523427731928533270933867703899991057461147249631150688603238435811493303648321880057689109308985220689441456527978442564172165004799471003878633561898369746235342186157441138256400157969309998385966575492838421503714974866774692794730985000523522057118992199594006960046710584773326410076818645948507602158821598601094984969260146226176657073360375099961338912603915319374159765540131625166501076548897562155344096865230155056895558853160228414121191975143401360364439918180105174677842302276371989555055751925485369885322292157110302244728238041258766618955511911244991545214240444627959946894468369284388401444093044882694449041912672489181699945800369797066256571178600990376408321089290026110221272929895679638939615412784694784658529892965462003951223381869216850527507291374483404179008810165465679678510863929762981412438671918263865260581509315102548010090591239600017404794570810254844 50427796000934397849400313124752463572738667981422428136814739997164319111804039617088396149485037173058784106414413704300453524912360924166611496433861550215063584188228908809304638616211295388422039841475059885315815761744697804502245734641038967151932041518710361855887456839324439837568665564118115237508787428680244636077372546427234588146976612503367854923640782215102754974347839966859809285891013328137024896573210632015248823784248733641536324973122101817524595035294511461975333168865650439943585747850320764768005652815845887518520341458065495973026251226490079891447815670661611870804021322297854852656260452079388621067762129463450462667061703316732909366001352943699215382633206242975731338512186841715215154645728561262914335279120710265597455576096816316169659770560030341800434349146123532138827294870043275711712393712559115425325959275441361537654055992152807737816425172861147960603040274671681314622713989162702064685994683499923442205107708249821932187252586744041638644302 402817474430398805168570591646751960625879598951622658174581350719988366681051493023070509055196019431760521166945189609545211363022254713079818121727495377529602390728524052764639243717149716732970712392306257257854714966718860821292773965796189790556480414564369696618940261737513382287277276764128691394693435053571942541249610185428120313396003243022469826825986648107644942550886131084668915001028467113590396614117253371213371240114532468705535657202752319818123548362903644873385000235625751278903368502218458540658506879947702269625927203930400654222467503314299934361130679381736218171678669661973358482984507326311847843999828265517751080040263379395418504689472827567505335692762493194971642752307306197672486996996006547595700336075237373569415483642657402977015300867280221195232917513932794168488523243184139407141476319414952752432851097072866070491975368744997987642724918478670785163013547296684846251661936090620619939363525222977087982589987112688357228292832644551910534263002 3217712248432581288002789380912242031208184720169153402338827365572150875584509298535045266718711477060417173451608258617648319377710219434186605413592557027834448085856129698126017510721868110653669702926029414640713424316681692239486850167659531123280119248705895256806800759753054418216301227748425727281150231018167680516740952315700706640301668540749003396998081953824222256154098734874209665435367381104626368599704698568891718188167269709322207266034000750065567273616671837946614119494837139461896033869713908009348092650620562878575955145002874081021481917677135301980606763143822235749668992061192248118368277510594799351370969944094037426118792236853453440746648601754032439219980721209016748797428485887814761401897926487846881243640068055967425656010322179673738788110091100806961024629153113533962068698275339811242095688350060850633902935855293561923549937924694862503405538744857406104925166119336140893151542515849385476325989606581404027624430904460246743193357725735395620779221 25703170118496936683428497844676775082800542555654243316278103391984082088559441728286377368757435055291992653379558699787462091288044791555883993562372039207263731758855694919294571502156527305771895896227535437615171707287193871176727824894131000177870324954425117034385164027219863496428063522463303581951113631771846653165948556060907746694751557198147427679889281715064764622306159035583354844496776807468912901568544933100728972032336547441558255642701505825402489783242941918977308926538162512836674438500234109356687932456940747008709004990294456717736023452174742784563739184891209820237752766666085931811673176617149039698489021266284823406168870747630630457591560407205834794370459195426706033580533235107922370493946629474348945786499162507077824858710668068716756735391912541610858407297333171936109276357941472449780723982885945035863667668257378996077078456439727403365299429625432723324843230441632198389956869736051365422433880358656523581662121238237526899696403812744615535556276 205317875617665879394466842196003431954924484327504466720999464769292681209509805236111502707582631597250441453334203557102414242567972551719764588269310053572662765457446709852314839306777516820833523559414780757584714517039456202471351363372082738405447392771655710145790143439378815987746336983604584743168434014452552784465787643699666678897101907008163218635281260674841920822093882220625426375420583617085375841623091637237490375277180859391755581987316165298399629838586567434142166134298159014962250325465754664048151814268141990427933917709203663467005251081391163744877007459915524427142604717308071424803698643477625242063217952296556111613283221434686261881919934795812966615127217900356358908201682635306929854944353397752938494547797607121050204976393741153767072862239061240465976440841109001669539417495402210724187936747454645200056384481915753880492387961245108676356635426343254910309129954045597789456403503798238419999268072463164770280574881946548207059186202602613307374302540 1640089003867046118517543678474226252879517842688478743444772820394771264088049216619054560574523035654539560851010670766422487136149200524512852052612694835602065488815279442144868600991646341528660909142452214867331071418661507440738950487626732848978667105498284969753278301715159581595554429165112175082640922100164862993118165012242614725874313978723264113422646963849368170876085752350977968512124171464652538300795339476749386422358112767684956691293741294444767009164150795176657764357978637119501214165975186237764892330898823712983917960777788360162129850022462654097959240449962627986004456075159651916362464375390356566930999693336547648708944732918389227975040360024027016007749614406864295160509767687181800769997131141105316706099727762058396847646171558184897099562496698309481423758615029525918904757771649223300680138634193670955296789833413714681844800667791257992476321291604071531576043845161206944649247266767035550465671597772468838087469286932208533837345814172079589144739432 13101126920312728181823695444178958624672704590083716124518061798656535596956900007317155685688761099545631969734864427802286466604381832825687175609736145054198148326501346567302473221804818338876124145692423578224325717676192896877519883769702568999671560240514760369671370084917504023029687182298767998373317632092144887829763045823803415774562236287821812481452917308328233843795396052186388886499629403515071484609462762150299667829898436274919445862943161433500529964375648246721472772987534272795588807037618377837345462120342732999985690632104673188896851346592879989948446461250700463411762623863130670122807655455449643035137271438973967233365488060787316483201326599446748304304462674722582244680780646218539199398418087341907955587527086752414813950326192751663563701303171509303234078923092600587748822030296082695083529340637141668518757762857078618131455248365809406607523430688495923897789271396938018347221477591295909710168731800786501075877287360686086344527328184920978839306741018 104652708429844129808243309070769873095644619786818843235033662975589358615183842044772855390222555875948217734997593339543196636355083606755424078334129031672589467091528624495069252211288656644038216191971692424490344929455420597116859127519794192254435519407352113501520772375989857691083038685579506063885096691727026529563153508651345005509276125051188549670159580745451007214168981826910565564717092971960696147632432746495445855919021042985598931758958037068413515364895861988319942278831549846148053095770617120513582802705359026953170362102323531090482751018308446254588605551486986195380189093284140041688217907287918822433914768418035578593740538611665720963556521922785764906510177758720027398798317659710095391967491412566201505769624116747968834830401252262505084715198877474132572028414030117710693396381092542002123831076438185562723139121443260435161061906734951160550452245315500860336474857678594476725538744674534496890900635849968137653404522888336815401828989649513732858772330996 835974193785796195069591242694594620103540649839030254618913952898703618078637160879076424708668315903066399925714527629141714420958756096401746903433421676204550513051040905181528697181736929472880242979336348165308036059192889006221059198649820425197229247828029516902427297640323688979074520939168893365232047334696350171728171681911219415101390000752728558406325843542973301076319078791719535812127396626477402574925812357977021956045266536306253585595586605912650362377112631667730014382660663079514571545900235178479393605895920202848376967031609542585391529236145990919571698505584285263792580919642652547576753638531835500342692414963888098535400181235462983904185951619811743925976307273152346148092723120868461501526372567341876733757218360459021508698681900568283162459145338796591268636633689820950309608614857757750727070440041254357675384272006177694268420010436385582445155396868049365423587617015142037615504725166257034200993720519576721190466685785498801392334692496881481547374386826 6677837537373678039987407557331905019911511169562963919035174760990994081166782069465547868491064627578507641243148862303620438491752429869440831980842880096724811458952079779309492708219874422037954769738068265325092192354385807449399273462873720883730650459181513351255353978768936362864676087010395219242199550648646029143572725504306383948713598776271114215475235112728598326381204886697186046907343457221965527174150738963489679460549429530986605374295830469307721803236610713160405525072974756794239946255687805936004232995189644782846813940981740864979146290069740841275757943788579664058601239671892025445651487452920699686486779268337550992863837033325385180640208207651631674057416434826493863994421645213403238177321930499625031603703099155933140260849781037256522793976208916074949899553209114795888860019571803877265672093125524315701371334570447006357543276139478519611232453950204695176924366168440381967632486412487366379492357350559755189551868323054433696818405573996275583883072737290 53343241783536946723151350699637939583364241590250004160605721918849482856063259140555744438879604984598971593549221213976231851802299869828459224245838029491135809010159036109619087959421812634358267307817232042017598837830264709066081964783853164148696206768036502427050763977569519266794058684772639368899382161551782109194841484109965899405032297788099518901463240181789351476831812553178485949052932783882688683492909878213431735048036292970365098546160048750332867991170898594967757194798935385446495210454946070110633516778036104129025963221267391825454923777707488088802379798399817967249320969368292160363233847992651030105572888738858890517751196428647980243259730476750093249742190842948586485130523202420295194129259918727668554622724632066955906478585537021536048590271796228267040092549924857306469885214792386594037749540123288094145777256330932926962778731950765609819500126224666224981607932653766813329105979439014380453115675726548959015561555427882816600471457924230134055715493534395 426111777887094781505976727933629303836928991774058969482823887035009726942324994991747572920962506653655477266235644513041076836203056051461124705278450498089629328076251701830080455006493728638208220559959071690138896214007325065258294605861566255093990390269463248556147547065092791167634401939025115560961471596435181927531338070950566530029791949791028421236351606312812307265135557211140952127800347415994743728573935012621121268351312765065783726799198029485471642157079734112737610717072336602152615000810484219007912798421351938718073478714842203060532165722439316111937290214375934854531210127180496520013412858632373918224489633208535057279170236844919122113434957278966398663786776026757787909214520624464158502447277884753724153330730144271969205066815342299352387119042710215406748388805587630562688699086506138107424911428126857495491386715760176788267987054332396533677276676770472631634158783315302117608950185770546855552308259370930470821197108960223105652957192331552677818780344126576 3403833026468565428106112582254503861171513071805039264638326478938078244605562607297772522968898797339938986306133221785946062331997538988071817373813269738650943256894994450179119079398985642347631515321835884687917271938478673207672262968882881114057202180108216585055035285044690543907484788254564532479742688695722704782466869493135855644755955464480547593377836806140554900720793985157017453200272569424728727656334628972136126297928590053815737375871061683180686886848294555217043437526176933054784227350497557115264980747494928198318321962894140373155632060664761932331796668179058490524197130954198293751538895724824343774594568634097654980206585743543836539533774986123528609552721050910073455288919177057100864136231115247002121292270824311613313957867736986837433888411430850915276485366406828617508181286769987630030996272608317413179232051788725229117276439967828702777714803540302263818366474312099015968055590058780764837229709932563791823807999975311746446711518489531269506445177689537199 27190270759264504524229118511489334215087433950594650475273043960034980933098397243585623089843495296225425308697546491713509335079475746866143350388853082403242483405569319491676267791722426432434082143946030766856985421481307670609306238074750739941681654814370319119634256971668938895060176901764482269423210111650727321983275429323511829167427790127175462365780463222899484305241255388928012047606269061489333801221177704466715418656652628014981878578468186314582030014705354494289504622751448593438391187861180662802891885078847210456930195060348550073138223300945926774006451199672377873917796075282067688791037767437956289010903750779954278405272773446689397149501302438442234735847233115806372468345089217257019467217664079943545386668745904405390422806591000861133007580055151267992189721925993288923291021114104011946256993199303786343479913071573995803141482659602753973262080550260369129021613422045719317067766832420968591548043938528645512292932876052848107785950199452664195909147139572392920 217199784910394612660164492602274031711526817054288166161111676551774148689404351898200155144510178286128834557860155451990307985503671504285811853734095732743096398562948717658056462190386390905600353581816548114461888233774624081295576374678246076237933189710158807945186181361902561497819228910606522928402724410198778302017624662445848806040076605431011300331617015205332978138013852650772516748775262561099969263454361395090533401571976658578570692083305397690555574956573961347628295993580748009935081435475875359481980370990311502457567581168517151753958212882820483539743844872403537718959294390684447664581971684467908495852778883758182071696657978502162326877381269660768068387819913951313491446640695039474525736546025519783967858077816711668951377834790644791979331296023527201590788211275061806243343308129657531429347027435236689652338336473752336148316599245373744241378008938980662704964311387557570926251772799850023344754743976386077093940711878104045839243442102764174593788243037543512815 1735025341640372750118041969349938517458717850218077222042707398778643134691002144770220977858831094127636506125470678804160465855073718201290381047775689180179209386422539696166840055714656320443596090672165342634277343839891862602823348796794181165540776746038788315367186206452386064940519806001596720925842866200490800913310622691516593784796414651662905324310300284336939134234598561190929590064161502491231342190916503459078094482704377800126960970677346003529722933706512204385443769696685879618324135607457059405007437445485581084995134526973041408644556576445656786445491286396471604014630526101541768693925281635429262265667335818441187314182716873025338524939598732782390205715291864306939406131028983492864794367786186646829843108953314697284070506598784403345454495097244612275608056033273823461582486344567345189934566950981705216891973297103005476276462428244908829997121940243248178482064541303537216112814041814152216388330721379672856760772133894121059356503213806321382113847937692621991434 13859667966121371679872510000940083061381526289070213557532921246718544565482888587538096195643116661889262112438230366201108685812081270066778522723117483936190422798360548861958178968387891018385632434522723228997323303183076787943498194464503521410180863989485464274873309834799870061711845145368831101261241977738788376481004952180523420979768355105938988809574921065654459447271003904830719041933465787004720913366155870841745495562671804261330484357276720828637625326029594081029445124392315270490538027495807465891885963788217559419532176216209004343957303769533093709627453847231295359045213290194673762694233130120234676088019745372233229488101652232669827624752585886798660743306288357884535921899723261356986901091198514332789841815214688719127697562788236340738857721189765203669590768977179148184200011919317922600505451759280474588194446558395344782763153893285613165876437326371158439972357999961135365231673382381155091942335332306624262855137405014454518570847337194501138994013444937135043176 110713454197794972088736422974957486645854175082990931510638357588042299907487581571857677162296133740469159957507674744011352702074659957840518594907400341593938841158466594434139787817258671429837972311025899758018619081811491857346210857360964346257986030888849192851595348952931877196920974500443277101474534436616760267662585737873521441551446493142678084064312152416933908206914210365425199931143350011759651099273477514573119995168185208783462381408645041060871059736240444603134014847920137169890158857497762298142510247537382365468127030998062978784273685441868103364438903141424133669912262670665802086124853522182525796404290241700529975302778604374891606191233174416498532011681670032334386403822447206604283846208972461442837092403992830048252530079033677637653796038608561511977100166220366645385980011858999492277214997541637155115488050686740653462468729254394270854161344523881386245475049189423587624558045196015094297964432965933689047022416038348211147777486811404633808440649912484621384946 884399616067315157124365949958491035859139579254316485460193667330293051557358375313806589153210789199745849710803373471770021640815018093039944732126776366755785710189484279109708287056307644551714880659884942633736717626681512956245990400051467517977978376214114071133082114439883774824035485444346409349087881371671942844171531189718537053897289673412615719409412968447614827459874910231186667186984646681688870691500533269997787804387897842375567844659832653123745257369467599052545848945301616452232264313715923682585602631577089077286285434266036920308122979388554401767972250857792178856251187153666271164693265250579710980358131796797772764974028832826771058861135410933469300847072917083805331576289556995233430963541940204325699438472049685397791623942970058996721230659196823650137778763039728181825599618893198844003021139782782398241669447358965827021947081177819250225293828745470842210601450928906994856701122995606293816683209625695049809702138589468365861424929403955527904359104357452288275016 7064757497792538316919966313878577749504808663710075425265611363907221393942272016802263208888935756348728562812663948461183678727382206909651254543709850519860523981614627443475279484344175025181501354929333531388062411291091916531082009287470214341249201302212297898675746711461149519020159135736257872721365231425446048222674479663239533585990369990388172273240172915615083653000940702199767962711535344726975871159514076484888189559562800546437324147930687210064880473357911748075075171622341603761083605840302180608253608055045951883647239100201016217295877503905211200559107095924450462565033937938561895907381537958103559870622742797935637265195880562679455144900506299251506236195139964579089038553916319142249396639727034816110312909550264932731050416705471394546113496737868380396736364353475645970725045814624653850263407200797259415902864165767722260957892456569354928117585342528479978459314539798198206508841619954561616821207294299975199141242752316901999523087851420028593082589897918482724820956 56434741570022726429317032710896086394976383474856725931023366097503638412376089269097301729529192791827598325449165872796689229698989535221527698402438816654388451761375823827412441296522759475039234285830772019477394550165342562455980540300566972102396298556827136693648840378235536762422710691377318794881937006402031502915599671416859990143019469329396503946520547461349249620932667998620534001224061369073507396818702472552441565188797166480893691246285444985104924381354197197072403275601795175135878361997229539459483422773186332153124163816026203710660649581231343060293789310387855348296953485868208502526420970869184266819237413195123934549207065470637853683031902782334351079639095217964151280765903391809371890404779408031791855097850346735509456514893364146681885410966682652503590147673907727855007621767700909147826325388094276231637300328801642092420281643904791020744282278125428141140367196298321639806680440384919866997712772234052131469393828525260778144154771670430481087660124193371200090918 450812956421255609421363922873221029072583474725363146933147951348638051311334819460926388751713482713186552461553469161494099985667377638177728704432649723036671043960328440670823240971691884426575957959685851244205804875404733666024192779947886908700141248683099011490002718606037402800422384845675571677028617308317143764102771276735098452964788469252844485066853027478476365467483656654209402688700427610593295512636010244197892220702590133085717341802452218281487755340132253904652728775912012650559468465511480602285134209182715951310076750781200672636169788552383172750038711450018207380111850792092955738347323822277832505013621984321882238141188265927007951944290460215598474013175105441473242942431162820068256817415710227858999359952453166939216574525206020284812572753651095247042694553086814199388568505056445099775688529398592005874452514723576853338866239255098181251358910752486819940280326786065388666655048265866842131688335033243553683777441393512755208890361499020807282555966495460737124283634 3601196370827359029785183863879935839090620386921200620228742519383278094378455528286627274057360370549217649522994150178336385931837763745701341878745705368259824190984339599640662871038845329561774037208142172737670556388769436878676008382223640716274887320160155565018359531327658348869321774426265320445124362690249703326619049074398707408721020403563618800864718186817654233794377318570166594536719709173983327366288028205879593551060446755141146874246091055003298851405919988519319176811356221076927137640357408036273998940269708425810738940340958938284823709118465960331985292813030683619751801038741438411580715180141530683146039662793329521707944222306258723334493212152366500293349951394605655737498112636052027203989702342406747559896849455955714947223850738836245735762259803653575568237532105348440376676409925385640636272412331309731632056482151680378297973131374567052934773423312571901274815193074120991689000697688199398553173235219129831135721510990547384100729570703647167217659666493563896790031 28767212626502985993645681077687345745027295222669659401979079396225089077787392213988647168585417474573366185265368491319991689227433856667944452981131777890506125778683465995972449064498012818774296639173588935035570462625265587340236659942495386274796575681847465338796207632004617729381343122649552598717854241357956474192419717668949862290879809911091534366993050665473990177588852298596299031175656588944441167311729851047116404000429503648969889510696949940781592209064994748037067394383548959534654658258805426136730237174309123474654642922514788722606243189959632964589223012522311025023178369434676852970222965102257690305864101582586669179600208186140897065954206462745756538875742860593034604143533763127138668160783517598336403989307232960516194928893368247711055932040242650369913360976299198086051379091219868626080404415105577549757895006968093242452748347942624684067211435534825478540191164132662600466893801461712443789621070174420388001736052501312440157460212912980990492978782075637236397104988 229799630940985213784471335251025571429367722443588508478969097824590801790143468923322703884793155933045585475329582364159815655107575132906107345788168752329756856298891215021218670745978659988526761929552825062210487952355848150348388621468455508148464966550349209471344905078208550978041981976168589857900356137536310513806356689685165182006649502831033897966481269462313450825207879596266084319897146182452893522986918461643184330251375221193056215012857628351752763775381426247813131507788621243558453999566821481089584363741735352029319837494803507307655029246059530924335586639818951707110704776351273738183086380901018078344180256052745452647864639689620520234491376748722768451577058817547599115987264163105465813889845175476942242663329271633863470794630448136835970726428085333382924134824345420248003403528188034941105009572610821588285393367630955313919261810374671609830448279948628135588114065294417732679092077685140787114236054100609351180213099412831807416327998452028416855475908901785569766411585 1835698839572339083324581037921670399531894135214782549759398697913431510922902214194934401467905230904570596849024505033960258831819532812016174835838184998539101780998018871438343595590208278292518034412318867967708439476347053383372540118124435282843277228673963368486073740797852598681115435120547300941421366297451640782761339034307394911173433894554353966142245384680412250118645027848757964217782526474670244232960713063101760690006214976274316325477735122596899615554755502253856901428653928739716789315248679742079385294739105715462559658199442887535131494725972225619656992113045081507641742957566850399943981210661695380123419862551300139712305180947395450947864169323385000332193237049544652804528131805054674024829492283705952152132595645457658132814392455579529007291192476739534611558123008393615867689260685755271708360404146058427371452023432056470997010591071300764750101437134897573003334196069772357820933450839531081894761114386967821419054699280486846164352711525584265481527292069516490817098648 14664055709822313836586764160589504861405836909601309830344702827908622918298152054679245732192720469484604637116068172222730571759905661588813127108948439048924447662419998486616987248019582843459091983510008166379936630295432429162776798651375926555785939558703941036540646887808435610592194509419166397763677522183930406895202668411952619193023061616941926819507672540972154117979266981942039458897108768708390570315310439693622948455794241929463946957066956511964909854072494179315880053990552701951456774458756356836991080610532450191293004050467568874906697464583109662969047057405058301414782212268382715415569533303831586623237865633154813911433518845519769166188844472889049468000271134084579233880357289286849774344397478097351952960298553187492544759752060468149837600349396087553735044721655540687624773767036097425412031577536155510316534752259572083059217097118169114597504979897966811459374464647418704666047570490120467066743093821388781517898202263161662667758203280941846603590626201567004445482682243 117140569572902606640532360772752960165910197720669559172836279547706126533210129043042365524503458706757885295009563887119030703358251001796740792582805954276053016348920666595177196865754649762327589528482868739895534146326629602414894101571922692302293616199956872671277248098608012529782529309424263618658176024059467213781993584421040687991915596816717035734531070054224128120113104912094304410616293127303732850132663601874186399929344349921199237533356483503471109884163046769533707758695207503439583656636640299687179899642933299496658898779796025917933564682925376666395890658310632028939196534473825625540141244779708382874826340015896549303691106924136221429858850462105150252464272167195752827645007411587204782908590800398108090333933332190339048716638214392031554460912192770437248379892567473565367944256945161028173062180465655814146680998723662635282013880048335859215006933217490789687000184865786761593217352279678711848861162509304512640584103406260636407842829721358086013320373061209095738277666264 935752768913857643071062994986830198567828681256523664026352760732235374523896582126305644493851138239300071118988232818614020323668412226672175055957971504631336079153647066304157227514032706442050574033825707358808896368100493900479002108717586854785858848733767518834499593677067158129197578862225168073912070941236971020886650617285545613262053631778815473934662405572541701114167382802331343834102904493796400148040293412186157556332427878379298901751117607767893512439566175856982530131494100677893063383296182300090883643706006188365387069122729679018508487480787156964067337245138562436411583253898388321022204980756602481324817329547304008403887686372889775094676047092096348072455926662415563814283563082723612136197722915407913333854613656751089528460179093788798552149670474742117334119051027112260546350205659344595453319623233244742322214367057217423176784747578818188317013708884094613227147250056646332935996175612831038522316348355596598609339092138120176738998140724387327109215631484907245234564719062 7475073536417877098114792917240086900006200531091162907693847458864672447605085022048921428644898980197733207067350755145766290417527924977105091618220070375368536520916315342522026866941146524621302185528109082761738714456912082335999536489492458645833703214751277926376011725010886544122573721638166446562687663210062811784647845928080459658587619051619282510174822603696098311669096503191982629924843654668905419630316478110251118518048490954751202313804444219785797094288049416215983666626893681440279373548933910643416898664635883245931461801685706124929414174452473038410067118459489880645793355448008156306860601196892168248484562322729942655809661132689492615839076864670108905532551305082586500216264835455117866971693266253493249046770281131483297259056384871822695593793641665237233812605898405092655606286067007462053343823448434728894736220049407341214798701423776978746342063529345838784555900271257002570930045111233446579491304163532096210650923812734687840823348749360690008397825560999885684328297142080 59713204203039387687855016926090201762644927644660836882752263513363988293747576109166808925736899475111030067421577606210272070612033804992436354396817112251717578621299276098301954733478741203485714239597681939934765366419849216085582402564979055968827133703867591693604690486474578713037824915687701768216898419629590690784700568876545144023132945503022452469471668544216404678306862651267077951366022593192612033751423042357808444640754549249716808582381028858316167791279281461528043159420881752671866245575449619746594838216997825544027134176284168636363279804987169059105797863444787838607591666891856986594848973030125840047616252983052741705917094599641869104818766645641850948987844039072252545053664833020756364813596195389348271941627230511655889107736067402404303338209533244813483430995039064332660243608021432197183477173521019752944764534798191525690905592349465442404685360505787305355207844595181271196937670818255492257795143563078161913724332328165612512173162931497853242591078571766802766378416862116 477008194299389564396149404111732279515798216927538109465105007175402268307403690514440534755554327735392001312752100795999396366936940997059091534196513390509497492784399738391258907885067668244186885133996798515811892531854979152903927970770375908132974232161118751477040325375743253073938458815167863505107879578702768211756465350655806295724692780101945234535392624182766518535514700456301232544701585259351012640125007109569932819161451249821205357487949270928378275398207195042973345507274530899809584175397493818174051735659797999201808054989366145957195845350678748070185721433920855600584832803336546568886613921396473758339885908769060841444976906562428978125519732626832343733698174311269931246997591388449355176523652127560848464203738315028424399837133685951004415803939854428007206499438917814627561674774298746616716819928080403627911842573837040694723390960503103527242288645053452432923037626846285408113770562113565798578971781335587985004390730723471205940742677289948543639698120900738532855166617696652 3810499064898114894140805946092990999084093650321870058733987689823314020391375158134892699826490802885005662330341764966167522015839668820777266476651346511598752814237564169267175760235633120288131155630897260580747357147637174625789491519367392070299484141923384942695021681056332521915767069961419704157341422296110253275729894955546947185624398060915576005383677790089367887660989423688897118075167351466542575061573343579194507538081420037181315587752325405125553103418991376451134421351837099804834284730428028134761500624469560064274210599395665910314770424125557354968125400748377938948973428286443525107373316228535666625739584123551480582128850351992496582298524604929870087345877290626830725308666286794792695184331383462619163867223516160521434822938505240050995988905056911746774769462068895206394041370976853203559201055933775652451517452566646237801396591818887865085215685521959490676199444637781960457673771882007028512477460648703910241407966945794302827418894217244734616443216826684452111993303632849540 30439564469801276745536488070068270910090859019824049019132270079621905445708558223730628891639914161967343883406632583548401950101342611843941798714578161148638193239578567748332876562161841727433481057491156377331268732427165700063522125463178677785318679096744668453985477971880785846979729101409326238389753842173869507485172559364441083585959417279790485993177111632786650968233229538802259269169475022200265621895576411202055007279216569927754060926601486719382107539462285610833950213373236929808958631866916551368465712920397389264785036700392360158597523772960745867905628464148431455412230409741521551340596041816836527085267979176038609741288088847747561342559893627058101701892319605855684608146478684417474202349187765118522689289353987459872963378045281719612732870647571605630696055663131188061476014430015062401785933772530782139084562204425281242010445486449337292796718960073659280475340218749957119264111049446154499991365645964988920408343705120729383224879046550654063738394320390192456752890683619175554 243161919633172146121306871475886258103897342028408589520530128042939057380493250771215523972504622221054646071842942564235343355352206535332557138533251381428907895941160791143839825910799230026087169467410704071855674564572479984011383903351862019783180026014055374597320570530546285121750137393351575960675425034074594245111669008321440926009222280030663336575116684229895148744356218175328900753909654125323454523063389969432470474152472563941818710399829447031141035314617043767644798573083087820141396372521799509215488582148337428712307420273973225770590291168861494860429286279363649560633839717169963694004502505417725740325543025641705505132339028629030665254719059589195822217951422249365869553613308968354868670049093750793743194482668536671921825642791604207473943827718585092578382090523001733531307249438263570290058960503946602474318177290167294764410387106644505898736003773203631216374060468148253186673705837788993284211277417572785270870635616051341961175568954896825736154586858419067763953557187212248721 1942465193005681507602200288168379327987882817139671883715207551665365068007470829606971577790558201300416944349279526793914995596264708473099019278345164246549877490907131987438957368256322137165069587369040036407977809041592266973419396578849678161466726046635784967404130343830547850193607369860560253292951640995483940724442899106840236096147416392496201848133347801936504319968499790224240782439457436919002078237298365331447677943653435245962353034811443839769806956402671698516015411414576337560750253532936666188613958531872731404137473339758645136207385793823918146431785166185732231174821483603577086847596198610903175605144647957699040625853254108550092908778764126270673333723553808326964803817026611876522423261550939129438050791416480525298922866997050410047540436755126274957051938218505507213448195153117845580991837032646936032352198021042209867138726685611213410229279920030734309501665408622105144541321642576937166941661071402080431538112031772204711963678514512999068608319820321466207517912703335170068328 15517132902065193197819629431616816302294983651069386982790688383848306410716855072224039546149875168620897269696795069099515614868869233928337017703005396707970304172862048214093878433343061335941644310223401126839997475994103699631050246610667446101066313884379635393003501752057138425945409248064913441324717114099381006002887613791281726510922939193879257339766987669642493393909470204972630544564961431917226923436984774941214851772342335814422298796584558047727162225091737646632997366893317592900448331388895942239640591627604636231365949519249427167016227541945954097841662113788772238251052674063980701092885580711704082194056013263138543704117736060180634050049022144127200813580656620209351666048245125973713019440021728339261364349215120951780116630700417289285300407691543738970993344698380998392996586672115700852690214968234836976264442785405263273119091122240295016970543226902131419247061607942015530749644700545202900994985513548715568620357683208318569082049792738314870927811555172487144889098884563759179343 123956774097836914099482252054299872522188073964275093115784219106932428195694987943257186870170108109592254673166096186403695360233393477877401112235944233529946450477763467916444122500257816066051860733041051106617549343449852445148439805321025446178800523748041237410957215684078637952793748240674273380109504908828932487125753417623666278125781104406079801779297123466075875590136952670139029392146400357132365753537383654145342866115575391599604321140849655094386162270900188101578970488643058816189311311070730688150972438326093320770801966505151790235128871675487351721026432731539056156793601726955592316858681280750226239458015573790469055035734548626306557483227462859142981412658446462272480324808931472530692951302030376148968392629478123208802564370011685308806978769408981359286021180036984806344873218025944033728367463604215547253196961702497904163201165339012004819542370817819316175071491523160755038822556759500375486055441681317947856917926950534178597753318548851271777792093738291836719327618626239044916772 990215229239707643884722893672826824328826049589622444343422452822594743660960842081640619152039270937048005041745897105523393251987044052422038376122431765306841489268440803115740170625557489131726532591012171572715752323421230075211650235957911737696373297073888500837724425431893418442531603197524373759564343455388499439227514474349705614261055679898075255350744271948134469803216811944985775882313233531093547022085349760494077935319906997648044326371290128475314338340305594713974704540619740664574142230383684590537826293543541166060776230709976527778753261409449927657983751272704081633611625958457490393187001028159293423999287855934704491477511037212550586154014424761142646699724141954154784351421164962334544081549848149330666448620945605947734935623674114347885229906344335069465525222894917507733576302802423202049035101546309442782664267402401706693717565088869571875452090890599312045346000057382015540256491201453174794003745868531375017239373474295598147711051767045585970671959666783602662517390617382937997269 7910236835328169389517482279049557232295965613943779028766346277716788735277885497169864480625296817031244343769178195100478808283021428651382099477961208147004436662404695285469457337066731060779780309269062972214459058953727120890889188776960570405277989553730486583307287858977704989719337420978115939902013798120586402781975592104808283849409277311648856650129433323539182548242714201999142543191348051265844052957025927245554953932211904215940817197190583316078348125707332608655522105482697874212216163797614751102867967571553936031510951385616363249369089755375793662309362694079343541472829245429950179490092261964024281694418323114074214588254133693407140866617403391827500954265035322588398019372468750254321222216643070937216954494008018713586667253189087520439247707989666437746028935273552768743247957524865215495335061943019926453331842178342526418423009120963739615822124076929685250262607749500240755296423616551958040906669929425646983653098942032006458517685418401553513804293106193002055282176016915876247468504 63190227690740153800148152648264995219100468289335485174011955048099616154433474352244232731409662685757942470771955772469398957854814351503826544330316226333496108988895560939420600365462094515036213930652457374231719782794721459313333558166190828735737380826982758468274479284869355241121690257399839850576857845109975949105294617009679515067317509112712052103563552029284829314578326601512816928060277624907537475602097488757687960451574703825489622022781514626081233056680482507956278636138429773504617048368080042321053988529226573759824183675620092992551644838365980133472728453278401603621734133567335534261884340929401291523616682960228569324616282270551897943507208160650238446078154577245628554495885733628661110313058106881851391765446873798638583826706963388898260498074307288829978016039925568605049138255249599981614009421238931933321302775354437599605768280409253828055160469522041435453780990294101141884094124865659558823604528190687366967179069272358336762547923332279042382581122299072001332936808065808403056937 504790184137943807647088011560914492604230468243782037850145736456311210917310801667808313536008359113289652576969985972207154627143484885914800436246428336806847843262885947851676264487938617842907925960854541221807373210119431981980373737145998168550140712061630046644620089890738321828009263449419361307666958728113095783796403352220397380357774348411980004184559812934505696083562315050970513145263729419240730348659010569764189715503474388589726120395213077581010822205926325787356403767009350871282260172166933187473895400392430013666576103926744234871926939796729917069216796145356713404944687071394904539194637697436542211160873750966597874033156347024545948068398549700376046291196639499335714148745215134136691770750996732738784946491709950634430510349886796495117334431945431977440343127889317912625120323763760184596335778936040564197834050976531468998924530211904095324753114593734429851536093344330096611012700156400071148323824161446975671892312337332567196315207924277409318729765046671719174166202715129785799130690 4032481919132119090694152558116547465746871819212759082971459410126645340946371866734120469111292374554054659747220658565076966604150480965685889206981722160998558556955554668354424788165222861637451482122051318475929011224091146869892984425246068462988992288583523768044050442108248800420800196253079785935505897775671136219170160449377737625769875325865501727072868229399699182869192327102071338478830038592661514981269100473275229710786256347975652932710006743211623172455160339889966598578934255426375278817874445703362130550937808076938875010332426504075264665906489030083363944451257836721481189261810069792340621042681502535226415786082352033757722710800175537122040924015015647501162013076730467086289985893750409647455673731869650760884099699243703987010194539983124418200335364776575256882434390212861953180400418984542999778351134718204692519268717457197882662453628048723509563769708367474932651818121189922149747207554042323647496494692215024760743163301230574055742438353923516786306280005482630788380504622180324602988 32213246937789229297748947767618938403589587852035879133076628679456918971186534173213848156436823334380345269200244691088816326053722565920516203953657094131864311716569000500825218056162737466104620962019830374658581216149517636258654174419225109372959643022780167133279259927966031599068941764121299011697838675621055991091325386887121688229881676342353235023445808879810996732549486215751098226461392788609240495234073942654268753134893013463115113184074012869151917277730904140049148477562861183791696243278982986947406515039545976116995602978806672801419419020885324860854448330543460447434193066622287118929120868589712042427584871552747335056635723565919431565123287702205189261377177589065290554421099546941587494477632520310056847473986406871778907081114341782408252888133378027271820591354994694616686174744481093389623290034446390567389056572644185050275775457323802121151320384838934676741194425900031167317179480781815732553440025550098514937452083455093236365277962116579647765584444505955066578818242386371522980721696 257333969566905346447158158854247596614477715777351442005474721232005444412976391688416603174129988896174646900244994205557661352421484969062831379556239316931911305898132963168932256657507679883128865027044013758971855537926737314086460907727633671410478259027041794224066959433507059997613232862165869757726678275525908245334246384674820701419990444283476778798095983283630232042385462785567463489893085348457062840342931175764896668479437592401153950672848255991380314915560483856507394118378378873023590061801064873740601081663870889578928869382532294006652361073034068203408880715904085224999771838637064259305879685952675846213071394576891896997603594276129725312857869387433130568468290411547812263050677622950872696928211917869659895815809069071564167502410792111393603644071344035042267042826488087659387338954260287241284260750746856083982463293142762011140301508123358891305000454582028103506449897365295682278312163391588976231439791411035722783528339788610061749602531823120432993663111861123136801933233725780103780716814 2055702578272203512698151235777377951733253038245876085294036889578823838572990496496912068918265068386853819643017064765606480465224901685869108011511323136881840725245861342522946970564112497686527719787192352297599038654004979051456172966558381182220406424217758298220843205947592779505168592786292333508042759028758531069387314589875888396864637928580119184497996888479194142489945248132739477622790144431364996855067198615882752032791124820455363821774848605668656163609323786292190224332376655740734808697853254344703279250237526118656887361460650878527445101953088144135316665967792404867335239935493558123731519233015652145115289352312527533254815952981435333372572500997727057354531408362083269083841662105809483742503593386180039363744848659142253113531971624203895571391866667641174731508749268932806359722821281192627479993201547849876793224441229494688854469222615302833065775077337852830887765539561534714283899207263425058306925135172462389689196685985577407520156979538595130211983894041398221870837657583564658619752912 16421921979552436540699637022531103979160721543067554599438150256864621351077711902800300345934748104885152738625787434758165320499577671830476381085209444958837963717608346579031948806702243658361003228247655669475046074212957445351735599738246093513268437914245822832439234924109686873277562237270599912993674404522152511830664704677459301536328137414496011882193182194477115728285581882023187418713542503730683657496036420596474412077356977044285658641723821007240185023265205309426297846545473240580486224723381320099223660391185811737308101239753473966661867517606216400653481539031215187156808233557096743045315801956818451104088679341552927207620162232225221603134354157132706630492466208202074694206724597915845755788034267621256818218202014166630111323913953296570276045923345907274997079780736611943037204173988295802662468743785113995588828048689730249637571230685430057486535642981330427739499132488306857206078673727533679399966538454686274935779834048652904617211394789784019094634359802572651953507398675703878360713718514 131186223510612770430918137521557541617954670780756503043796228358718610863836146380221657575476270398617991385556198884114230731990796444547615732522882043885710406557789180244056069879803629279056011264885608872650500890511789308091401842164734403276238021492099037593206498831766545942325269770649587843894060534946676170528512712660137693253059177846518196885281009925029039547683253411498519037102367279301209075086952228885871028901598169531860240576108938362597310572749778685657394202466118724564407193423877242935658379278188821588183474238615431608059064157828173533958700898889488174120248915278315958118535058233289986209144716543748137488338670377495661304272378308733080267220437886407225796593977910061443648969566611220844626423014601910425983923862228097734763102170920684349616307900820539438888839414377473388670747336982807716713457177720061815126010069137147326493634746199082665514245828260915442280069986712207231924805704681405607122097612632840780803160342252075377166919995914370410488191799727659709209108217176 1047980053191669227738374316822453320697075275932575997296226851821036398734764542563476001297953661619391756891821676611791759044672084230878028035865695158120860858028902528077525050959730277666975249735875799923130481496985493829168820653709625512871920988864791571927217210176225913000424835107579745883083779401224006840330563707217732042440045104861405314217664959967885795065683556349838491775688642364115251531543854784447023343188578244823179223990800357590680526683185721879164136230789163122533693334968017119131316953176641618570097213062969872450084870162570637424742373040313416967747455984308788599754634193357345794150257290145580456373184909667596593456862096816686935884936701990462103453087757589063228674903829596131014879748954181825776051801336913237351942560014263169300579494104870124008583311491219763086361391980159908928485474775622812347756386322252990485584687845158380089668754702766378899543629592357122205350374840051681128763925294032149581555475906037048767760470960280039615334022511818423179114544176822 8371790327934946435718964747516868381970931228435391891944297775787695752208262122161161515357822793836331992439191119025106579925066229902729815970326327539617445431428692207618152160645529596399854008585528384768118025286472294607446773178941168838441803584559599622980434950735728656564306558380058936327964302056214325219744563649682010684065956819553495556345394466484809632835782256965645948615213819359056384971844550537013464392726610082092624082297401526679054077210672228356614591245430577752667542910728197476399888987271869933976688934454170495674878275774592859251353068616381043264364427486124929482949646902394973842791778323805214853560589931245167130084267980577399049176553800419725118231357240887551409396698599347897459768052380937021743361163112405353481979460697236848386122431778703293132190567431094118132207309419066688280754424604297634246220371097970467299852364937343852585319246093212528662908486746261345031424928736851572021092479528559922072249476488042758696448650499453738687376338134411686200877090382228 66878143392642672044310952386930058727475471118354553068949348532275530772670708898576919816974362363836142317075173213826201523095565813401559621624194259545593029936675287023381967486866934423805449345031884725713559868558669248619990368845174023333323118690365235801098367488687667763492894777946533158152802666188474375101585304745900627937341989945698870274084751599399986131440128769727939438885984081568316286518943918486711195433640234369884798360667353160933454900100604930763723629611616891255123546904250778192637013000005621486529127439318018044989288222666255738228282821896006733861352890320333549684414091415553614582645503963462325794689166046296742549196667143886075414219599933817808845805384855115714274609069118522531292883217192028452898173278602798880286827093148356226263959620410242032880422856822034228063241456554233033674531682378947881589617841823676827005244654808168210081691849894811216492720775601895314989002121557122975051585428675873831953764662260637786971269304790054777838721473599463005646673266858942 534257480097201522277606231035655640231424794406261340774733942858786937297875670150658676130345114679564029876980075931619309550978629296848019253391251968891890165336607760037536610021852907008901547115409512645174497754907879934442419003579959447311827768020488852361627412971225982713204537793737569983847806763917716205011837099288613955993347737375354077985449844385245578245060994392906553495147824282659487088515340771799964652730414160511206370419249534457448761771546297166805906019929743863663009302570816149856496018825111547330556192450898814706587603947824694015247949955599698780837326563248040391321927892288565081258958542984236958033279763777871283717570442041644029590034443052169587966896637372286598582027903491534705523534676775575867815217425677636600396706500395613255442329963217712125667598818072838909615904203939120598503237897668826504782610951563437681082563756411053135758995365630469689465156715834190320927058347852462810420800697861075118605096758501389501947740408161605670343297684773778993354786865953744 4267932594253168786193362231999405905549382573314324480926685978348347217484877008768304379027192786473836406362132919451867166944049868681030192706663095020576523287780335270826831979352969135805354886750723577224955475518525354853817707869833864873110931638458700776237183721880014907139509598264111167932909749503794635581237847920146142030986017797328769986647135823019234005475481406053797362921935392458098598370880880499592238134197465500590938727276610952558981306863576582560259251820810769640420085288353214349214455146393025782864491451153822934480944113671701042338087353860354152962596794507651959761132822403143239927612512789134966920027044036891087833304616030385933910163990182401321164824630899635417791248772046055148293403770161289341469067412723188097481624493507901951149371477772302235800469488854265049479574470315123712697141392070452857543413731475476127416910739669329603708815681681405640981810563753810551399857130884480330465758114750562763546037855217327490310872432763846873304525459419682141340512164001333592 34094555145118162925322053782346010764944933528466099836502096606226045380716624692292641591795756187311360280853397493644024421837645913006313016678066691557843240676119107816342804039358938875593645874583823265263690611050093632732708673924510408151991055550856641564391104556554610356658633388689006277781888488539648610418317388264361730543905302964105997690689628257772036925796434759805657664699902207079709261671530754231465458951607321094828221529870666687386940891440631981110302178632899196291922896285046134919467453656245453983851056345041813394829427312571833484196826260099929150683704155273829576256275080076385617653491562515340512257939778028320370865637956953850114754666306292937592723698328425156309240836025117283872012837978926556114522850171364847604661955026303840639802303833857498197112959962400364334268402501075070321347113204857102513750803712292817908930685404871134157610490551671598146184262708202770279975410394643452702877241428720665524249399152783393595742358712308539523891214921118559925519203253820011536 272366092364764935385923850046600113924453943139895341269083259080782040745497304704531056055951650251640740034358973919047352715546514634334353317169533818231258894305481763631030205960060469945260798362154730114434051050198029035800313226204254660279418804974085013936591152403776401287888999903787731545155574013100135434410498237135765526503760606421057208528577097251741541064974599478419160080621518471897365668032206695700101497384077928933765490432596137701481995470790920349518018499877460184884852258310635324110662375333732655691568931655458921505666342214154406132846640055851487884673715384586535124271571445789660548196146963994310539235576506725986015516470233288143750690864359718601892294317025602265470058525024691928161014936748733099707305461616078461135182172996712031613768290783267362007774906148816561746636909052758215453038877935765663978327390073611188375921679267998463892654350728982027232659873965713232192182738040499969670120276670195244284931646156092995410577063350262011627394294069074238194033293925135511012 2175813094590181751615394252705981935844195112395971203716809432307896113068502508333129109727271663163753196935557533436452888402848508837731337278922762865571327719879012173511738375515641088705575819789781706955900323672223472660181392526769654076174378500133180160826940044945682114393086471971491239463475190485915462365351870230982133895561780939715307950533139214018521222159506785117095077645884442274118447187325191930878444884207175615598330624649886830494622890961747721658758859849689563186639251718725545889007721317608382366563279675799875686696347560623510983554369942791253619366874133819799103340371237335476860363499975817932779965943866220830681831023894592807238533310177860743911014521557537132856285775950001784118077012039478708356416179250028787199057699665593859119084355389062111277882035941586855660923534259755488939476711019493775075072120228119993476205981303090496405797702230004496582150051812832776001197986896232449096735014524180084890058830202164525253018965698955317938647431891105536523578895615137960385948 17381636590679380797293814853742829117382439644669590617695441910810872495541066934262708874281482453165415857883976514698696771472211942251526161192999804462442437710113081294530323619731190275300149235737007865943867025504158072465728255519030067132462295411189178745207802929283180736573795573871715414637187783292706005605235868126525019643347632958017211431126078953670122005890116555796302817298572083096992155972797853122944118057145099410853220290397598488737169448398628165041163784106973743077167313551964619888343618265424377642392641301926624049912302097862876272021010075675546131917975430486939522953039527897229921541057977998478684138875747133530298246519263332311041667776491059069431447860385798044801661177676418538371506123821145248170184249360567971935637295873051498622401985406782104618356509165767301147394084745403705776289568778440721534938118260810696096016193358430447143895911533972403507727961288469020320025629411369217225081467845386220416093477648680154113263319503546150184116533094245231658539466230836992940618 138854601873495179029713235577393961954298979452911189346390650351351286347863470018510060615324427775065040329125038437158564886536761766988001746972231151052180387154648846319525577586239333389296787225079436121345701992095293380089574371376288651185415973929791116400672885713384230116062311033104353667057552398845518878350533097971293076078082067270608181869144071721722724467037201823151758618186965713885036862799638475307392560160732176279253804269353707288913288516543598480511325614157519222665827776019356513178908653648179682761547807086546489399612131403321514262190150861769894529187637320084639806064942369622152899225098725900531517139641879397684640296639247782425343774457287500400206589095025855492543643517789754830285236263449569172838882726463263898221640783362105967697173638677220862235713697980092085227818931304563918249897245864739311639778319804423751936929961947704659652658315660900127285939955659514170185577276669608278439919539528795898042547200253850134428301733590742466844887076145106360523755951644457946402504 1109252512571356913963522552825827083453230539219291271833139460228949777895531980045944868539702600692761934524570103713385378047792463184130539936934669434358021645581942833432807874010538384022431980851306403696898321732379367530930316976121781378294121190600948094446792822801179085565993113704923805661239823286410719748601453541775949611833921256254958965994705076030534894195305523520590176251772396134168221714701058990232432113486240934858547485615804352798738671351509334261382615490285484753853682376148078006868977762924156542053347314618109629691227199696411137450604689619492853835400367329413385368167502536178847330193934079151748633265359326725588835798167905926564219858698189804399272648032382438270228214391394059655011505595222744549483335984155704650357902387604859999326205991571076493248378334912284267682257179740389395862476788103916050801831771080321630427481457488725013953832317659932702422135594944651899051094282702557557606905658254220740921213564129786506728245554775340125664478312446731862632121297621090623800756 8861374585495711444983581597340495823062446306363902641779680229413769772720560718675777034286312881447318170959418473127011853099879361910831609669304385062282204628754641549721400010801652029245552828847801468096381768525320909526789857426825082148127280598949838304799455041879830951777085965049840978155912890630253692327872807333047909824227375355004189739587753789252243759342469486156240353729215667221600327924848687387828015434745550025996470419891735643928954653072797609776125235354254479901294434220502675904162087691333178661708650046664318183095510253946894139496381986987075650323142641786042498167415860760709277786950670516886001290919140668962554305936163290427471199973955825329165508238419274048414220142509655627726208017937847668506760598184123217836484904400335299990701540882704777423508570431303251833576665522974888798993980194356554131046424303070091554472039001606899242608190829245577522378125430566179592864388353010257095530065690483112682177685173895928480974316261410427302040251128119732339198285838513570514932216 70790063072858584568701576023277074646392138279461226939691724035443734770154622480674907971897750420525663936367100342836999946903997038198154206984420178770100892535080105294176485981224724992827037781883599715262520747612328893278547985942645935114375081670294237528009890305654715441730191757808276068554271464396120694609383151641845467989387201517635783553096191022568926216705515054191158631870200435820525924959294550422676439927131481442597356385113307506073393717526443091769000370764195535196032282582567780603710588357698056774216631525373164588991471139231971033184501903054863680950661379855165333116773079136216995999008087145576650300380270168105557331189013961821217040733139482250718770576569647233905880880223562635407914085963400717133600881762563278215608169474390059947719576139388390200660151262211657255321616730393294694962767063444974897667093941359345401655747803139791537115206556645917217521851309768757506740392538626457682674150025771442628105720479436726598211462131074879357790022699627950000913547964156161582493990 565514873996523809462533198004021895385948370361314216347197898632179077626851449405351594706470048363532747374951652080743071876215072650110108562026796605227278865116520207997133457006589380548377392297331163229909997417427296425789872243758637167087231389974785243488909631984786590436929709604061236785079334948619948346189287670317137234260965661322201031010684303482149493996910279899281527186964003497499649231038820401839247958082812280196092831453896823454440683251217923979672686537218440437326115771231287866850605661816438212860176350837519770511363977137767958725176595784807230150872520973537135274822776174333745598339917991081364790463151564385991398381170024970404493919285528383052691903744547505100548140620947122406023972104701993718246113053793234112550534742115271489936144536209476641589882810351340511863572774300637402224128394870804483593308529707289768139832927761077308991566089235403786961755050986774298832513488606230815733848508791984895842730935963773086164744305587325591901554658625034142223492290174618253846844688 4517688607697907742235879012861741857015475097490161163393773378870938732403827974255300974429928647623656215037081429915736085097869963461452732471904440182851968495193524972329556946845664644298209683832428606962582936230376813444977730429162178944526399996534702085992984815736157335227759099942107078256491122420987907341391161632126737503505432466984789252373535068509497669147049049613862304438328922976038334675380995411940231905665252615366079571313688530241829638510385910892892118725065486092077006050172365609290176269428048345878111826945371055752994212054813308183620584793560051059118448963064878691566643094496745965161299737454580328756050627448380726714292289871593993108103886597582244054269152994457560329832840436627618022074207375925625686185717698536750551193660713920970261538317898708091766178211722420351893306823296546449462148629718020261969498234314991436874106895954832780260003707828165112534844109414669973685288145387455663821555320257007335881950675111846786011681465791362331423132662938643063671806969331307853248300 36090182704155969907238494676949488774811494923990457522169738288987973284284546178624816676940709583768003157471147283363970495981668343771735100113465306914061878493640745698393554038196992694060179358002550075382859253090713873849971283189917459890667269372639039510967917931441363616424720017056522246912402003773493374540250351861512925687562215234166462659127570553839450581344186533995874760753595668803893321789783929304906378473005095997311829502114884542136710185394320135820495251383164048976655036061104182879227274595528136000399609806350445910773513804100830978660810921002610606776031281699134731536882529566838993590197757094799154465949887669787327663003760513836619149728380553245084745783228312221020897606423132261708426856044878901864300483483778540646438149352082577138105561096331384682273867864653787265854616634314683283547407557975778399694113050381368728060865993727788510147341109227330271612640827933120557952023153840051852323813830410206517676477083793683719115373838704798477760001335106510350998491943040317573264559896 288311784787102867844645332325759183580040073742866138582990541131894942053739185057749930577090705069122070479724040151047329974669374623936962319227952900212022087756390086456865155784500927486557516049099893804655654418131186864341321491139287831508654535758245267623844182738283805136345661700756015406189653713446568862265147092162161938154790442331992821526884734317835279117093952492839035418271448347542303884723054238552436165939954112693617185225525418229173858395471745147972530298620278524434193848212794781198826565607428152721676262772303009118849066683701305712829663480817771012521504457932660532930239438798891685542403881976059118889667955839921792433508501506429382008934807937246666732570074287103062305128248452770410758813262600815631769978270113389757019202034814532195827658804469388030698222181223016669046672920329848048940551324350421951717398289646056779815018662933634317371827714600529948716832318236164260071458028020477505146764614740195798815799473572624122740615684545239201934627965373089818840427781447125640777025264 2303224299559754353118300218073258824032974977256968012306966112868160635981199242732448559572643870002242450683200520109520327729556956679601893708299100729335877560888666670315045054200447722278490856197558344607841211950407228708669237699324733366439437760887304726812893790320218460607853779076432945991783861424050032799994810962676456207276899378348021303791281493065850700199989195311493012083790682779530661171856620242897443803013696328699269501049874675110438545261756580617862440211923984474045713796853995787496697974744685842567714138765035382271710985233673026048158503562853711124130839297976680133908592139322432849360197332181628086592028093520347870362900213552413887608935212522452650524293289808721509508788756750733286942944757826363655371071667504125821592893577112649998486733703455078014467493837386363749152937939648577763809364971317801454746498528695793116356185906715155344392063847083793838052087229512492371173561216099172327104535291076379297590646542877245152624197295464335972196319088979499998615311182529637066132877332 18399693869384268722182401140194138181251713519038812263627516974451388485027904249208126297004289830145689344705553247743090883965246910461315898374584051590618504286716251151564896575501093901014911169167626027462958958326305665926550708069113163726301087215397478432365063752006531925201166803637782287695437464909904044922650021984946470027666077230967209158650747394330169529259889354894511233869647151214062809388627004181170495110415275803475278611708832061214061727969577793884368576962717891688363955936729633290424311993839979495503349133345449292302783791367956903493493754078717354256692103149800093199195211013036302596057346511702039644982339136903581703636994649463178241522547568835768157965039155787507633311904825790190736597170585854605527197332935063492709483264767322418705812440242208170550149084198490187256232922144902064995196968678026350900724021562813562278929695420948747104271685128836432294860258545330852218022799976186531717243795108912599624549582983660808895942523402911971822587049269959996688180094479108621582065368764 146989219682996965302908245475159042692634222779098770917344343339973301871774647737885055849559786073840119474579663495738463434903443076655127884973295086949527530939432607129416027779764697048717777386467353743496040088702221692080004043075605755955202923645424102861175092062423877280071822739917555887622234320957994378123453793819419064659738985007109483337630785562851388145262889469757849042415335391232675530090580441534149475016428118415025677180598468215916085848183565120419133994637242230378870822124998813621221743309841304301724959091005862335511068538434282782269834684698332407647979322779025732166187848573855972827230466424541592662124232170652534111701834329112936782922277364420103106653268489319904233919511168028478053742846284234643237624082612552906397504894819546357682299309984023413567835930715816845180206164332453888317140794676549663627165957438870067580764782509976192740789316199662896213314534687830876209701347255517373784585389439968313030273309993472289647616377284075775005901333384542411884017596193096938425556747452 1174250879069578629704226392309839772201663193642545573430528584076969019294748071968391590363823214342435773168922067802975068678489170411009583522710415296502763873578331434588781518472837785736997152076237080543580200275206479688444504521040591177297911766687641234864574819588232779743642443359696196841587740554302970525885270842120382217882295374010735344984609378534467577499392488857700557595596561458053461325654450437106068792872405415083708296278162699436728389016611821766470173416858390137953456202673645480879989434497025067453762980075099656049817724849109689170205761013372922880191265555948057440999558558259646888725912905670161013069185081558881249678876561541797213302265660338264405286111174486913554554113298446843374224450784671569935194816382828653734457414168466440150020939886662374742065896319252410397010044999283529559310024452282458629881582986921762309027888753463011935220462895783409341034903231980288733900282066942753255778432988907051798539683577384597447020453014244249494884813590170103824766771284773708206388459329572 9380734085830760101857515556977656312908401327217141781454769118743884194973390225497306646413401168074512333691367143008633902402939586246670551021089006514290596052519174128109440215164397075641192188523215423834146516483714720764524886048316497964521158714743801582249040618950047981636768848220489014994340207556179218228714077555915439542036059861956114415926811725846855098103368700757279433931062044875855932394114965204246644750099840805973636401471666588135885617828814766037405264214335890175588435872276928648184293128026947556028577324931109650385581823231043323345348560413261384051404688556949890076153647196559142004736913594276652611153863251893945036162373139263524535042295803777590142309791348512920958798698906307358720605450134347976968611370078980657043860511554110495420491634739523085950960632010238452172408552571377610951057181385217639559548297084808446026994118437089595028722485049897546644026073218907289974616378183403997037598538486883012599042252043897565428710380382502977099523188661776400711276713447895686286981366288044 74939929008614425852809104117182974913484349232976942848554403394706988180842482309641234043366688140980710918092800228885331228801206756347240814293027864645439810068328390836713275336459716380105061593463589162002444656979096924177206446144775447971956622634391349618589364892236611852098012975343413039263741000086180632391386877044426609046947265549379540991693495668506056772093424053116357290287680462203383809422646264958005222888231565600149907611234610847228680404978571416162482145108381583878690482029289551591658755000125557981316816257853319413989362777877451283753921082129920206948415806493488599521414758280317938341978431903369068882131518725913904943336777400909660110661665048187872971093976414116825063293032063736272421412004984280515430436363731036542590686113685648967749438583542175590293664119714767066029886059652529999764783064413162368368303020427956901577484306344421682277163074726837895625404337734666738244545183086743761848124008902257706949019492547467921194421403727282793527946140095378608722171184693271542487224132578224 598673795853225069864793199701049703325278964618580001905672115153174767636852828347872946706799917779233596845505104345206592984116609987531658712193944807415950389421812653115156608639826159454065931278396027992193138701531536681158222841521456278112725212718179125818708889915132319608105564175307423043112904239745503296337138299759515274680554966481828898684316618432165154547427539921027725653831375940128774386508715758702199671038387752374376304366621706124606567734194613560540472139088172301557905618148734306181084403433331255167830994668470388993022976190267323997806885301036527699703280668102271978818636239904870370866774315059373964533811349682741330614641992506613168398596730880367005079167113419592323346867332004587347601092241974733113563406583825080329088571415537222366496836337379963689820533619722464934816919128875608700421704377973122856625232351809194570235611411540851392386182511206123532138637618671835979652262752983474931140169893010221449211245924774008073244326452163342836718267645438449057992678770639945359386764493398708 4782640535295829725321844056634266532998039824886670526492536001125202909801274010786474499884796573656331398376236484186651807705910731486725948092313561460219507635700619784187313491661812297308300723415422246042256585466654086999774308651355928613686219603074538851895023627039319137287539244599381344722718108391546938359629215878245283559770260490189915467831927410548091128558615592589834577740990380323342978545665370778168371794019711758979507588958972518366163657904608898334315250413148399601286918538677039586080115722796030118121674651746088088330374057237841908747616537905646944114588022337590321143134156112417855078094258114479100951628053572011658940925618023752699729654163803644925089365788112750147623068658245536432280447920340527119069229390824189837566299913558419154285918519971030759777566027700799683379285012768402324882950417394931648460677176832786541263038323263221599562127976147509177445506754661334201576554353695811644782010546330287123592278923173793305077164118432664293313311167863452971514494606064859057465762413160601408 38207247317405779446961566263049462030772089732319872574868186074203775453273803902977559736887178566642884888194995945044051415108557872611961912098860215745981258055609806528598061286547016278998864285399415160112391412996696520129158233436462940140677965612004209674681932844970178427276825241456877779501619093358215168882932436207194515168388142539796006286344696956708649587608035933438906927817156792797772821721087265548015785093507883374753636102189826897278888563627867897704651064983359855017854137490098007192814743678096575461022730076355453691554838190023673726398546939075427083761293129089312827523941525969226686877150884314180659061792009927315919004330874860857001605273974123714148770721811590304913880034967094467460002898317740292628465405366752266547083556606776612978571818588263569052803729056058383793299792772228833590527327186118496468602729472579088770826469502176297229492281213762516443599898242592487216389519549976456268154880868636210896076072439802850603483970178103798446318238717880066598305951067429610795530413588655621388 305227933303434054811819575872449207372466299880071098239532848886846034434475255197624849219336700505903126051479261377768334415970645548570401766258024737008539509299725255544049840612855259124416364065399283250307043332781819740120956505617804930014071176934766752565800032397842303042583635169434055699343881781684925992654262406846543563601271243163677308402540362799989092030366527083218215535191503455018722720925097042269207204814846715837967229024851891407434130566270107065337283901547291578422904380309204960945300010362892031604414383103034753866411894184102733753315995779393264598385585276897158677553972275286095716013646847258519646517026726002976926011418266361351852916940481529382925543314796234314430138194001451783114225622051912610927710926948536413112866421077013923207449613029349871053417423399140616477777707408105475041300245253638124448430672349745096258619173472512755647387888553757722367235989781026569699084978114904441594269490608702201316397907897447467845660657955557760901922129128768841092009390678422542754898412320938396252 2438390844392083300574179538133541657087453953663603136305799658621882276971037745072669685298367182296702102665698383348819753575996370507981683888609827851493382152500345235176899500226718745948678211360391176234963397405666552980027026541267843328702422269265262339714230435263113602217172802346806477032032776141765969959134651033755371629695946213011109891196214528798326038378290132012328613484584074358550655310997769486277766049046557249321658306329814158060428304565391684543070221904248618921972645574519518857568379979833623713150724894913940357935824927462476994551813849508016218757482867995369699699948135776614370596793798925781589745393715161945920542348229313737822792500110458887110362021165708228829622956305979653222582925424424285097572937804225531993941007508832039242714722229683923989424395822982575375951133624685678948162201318369771904983130259740162357974933868972578934257118444648695186557643665002033197953388956297567474842177682773484801251162562237157701779788825529795853466358928192244330764079656855754925508194193933652463936 19479727506259384028675005433459261383547819634115245400169639156253213682004138658103669043026741661019422952578509286016146316415544837574973860545419555820462538534582715370273406194163625292665846361735073010893712025728674233282774637049156100175132895693316087315842138404368327453851697508589465148608025716904471038686990599824337372601131847192755809792441687748170508763070284589038999683649251117230858411130986320839445860511151013979343727030014709097717456608051206567806117430320416974799533637321801269818947133301429295650659111914626150654236997243879351653644562957555840204091000500879604405539203630864068761274835716950007643884633504287292666480883405924042315291468754957701052377525367567972853573133120640264639943674754124124509130649786457960418744342060443108364783186166883616159171587525874193836887474588141750251418424577042924344253541718814319650750904641442681876656180152328736747191634737287158273313236631755012743446837883627857935223382596921769801145882752469928479233183779505469893310466535086014721197244424674559618056 155619118353098917914828823238167621790948820548794734156781627366896323388938996064916516644275887864315856953164525113851310432385564579130937731437897641434654040208245491267309411118988491824290197537514666587626226186100603221386195648903202748157964241770660091113538708477562742426226651176419130983028778737340973474055708432281317913055073816844908687693499434692792165970063965805638120682530990831966480959337856709927745138046684290722712606325150262078901427598472608839196535568943522340816676128412455959258508704768619710818143581936925952472232800942350867654682974904265309128144909224787457916663226144750509472636727543053003753994377225753287647174289095209830256925870431809716551426317813315025863340798552155823254393440688215125024865775279615460902280381444786590313967899314848532126672982268913008816041210240293217180303019702282564844318577332231534941625743567337089838805067864640379089173423447678198117753310972267820960805864564344584190382305697209325977435431247601638997691443233337480118598565327457953151436586903383768958712 1243207259447610857127977285244195933251871687955214045030878153185553405807649548955620803866252061549669465852468188814890072377600791060236899871302505885846059915822890173014690311189695576483148436090645775938701529531704343296665743847427444898965196998449222715768264142721074939829231785767451949396604652713863407879711253823733819678800758655471957147817416547948145307672036111415976916257199857957074780224239705700726525280608709936291636907915178148709752416880048881141878655094989278346670242416991501740536904081066495618000664942790344669109369642445644942564908173677174405409466709535198856949017027982344379168874288369584856529850182564511419004648165519028280827575800874324850015517172369963700532813036660300832327351585200314530841856795007320688474132449493004026784151504062211973825894146844946908026800199152299773250981854234640263211378624238657847537368822666722880929393546406250434542004205597772963058137458449390230572281317459644681675659512714509585309270606732959394592888423991133856862758587828515610388593223129631376124680 9931723889304406716545264612249564358563484534660081629366881648767910374894102348757845786959497307651509268302421212738048556460713106405544625586263839713009221444558247487699734778588860531313101974751597580152706663349026442643421679415476150776986829357649221304234571218837758582625297999636904693222130766043419082212901654527572817702361361678246364560931017296999830832900163893931644329013308274030239178941542006788105250827408835422495468264297045342102777764653971956043870862801721353299161649710475755021692218263831183935613876534759256948125605057193832517127759209885638862419316254957604653119713180140866539869824167000214985140983612921378473391444146281614299820152739180860125830919454634338157247323604478136112874113548913828732618540874301865125868946602119573883592055815245838706674506284195526020045414374699699633775869378950828305711541305061408691536627094710712951438046944551295470133880028369819582284667032947732249431349414553736835002904774468118580999032659346079000652742060142275132429215066246808325205347342910492958562976 79342567354404842882337909007480880390736730552905999392051731627364285775204252369043909771412956452311492562840723461202717839986307504045335034290873525282286453121958685402852191985886129310757333270647787010604578537586400969490680774403802467382534838236066323737131306110925817272085116506237113250406210961776762662182151491751461711342992308919360512820171238241663049851924185713432670399056213721579060938370404640997074901599013129229114716222929973114296322202917828757097293498401844984130964933436421357995726705075108036422566375954049339268359725746992680283605035415359338442656446620928886106165990898793801002821486031928475530047574301096691943621387534159163629959795137885095980721742477102060541297688302370799153094989986173885040728582639110842476098974093761046875203859636635721704802480165697600916815299071205208328599531349730660564485204773933945061463011196136729512803374412426239823377143922470539582671544135767470110860211474289759377671807704710322175422515751594817357179808586523374183752545714585522189065441391553666017426484 633852740446667012199556642489432626937122617535068161473674144294234349227738962462516373053323657996736260586392479047112142973377133552685176493434853512508641600208945753141895820739616394086305628660561038802371595751453981596513733283609467218697057742110194540686012440716820943029374524260885013735456838012115898076573812968608261102041022592677464297489755050565023366300002164931343459705104223369965720115400167784331660297189270943481259707165323047308628563417948328086535692205719617354615979896487012596132782682555792182418529697871813830456954578723380738140545349005129651791056175957825574085780372798521869639189930004530464292184964324755703462923330247378826127035731584650847870094538640039637835772706484986909861776190083686925707275613276807144702635118167268333204835376010205398938817555697195102797661655772962224660890658264070323378438247453326049067400376597138505074627265927421509092238331291268263960874551053767042765932320591771951434003707015398050901113484161157187271663727751705032348483920578229963136220370639023438382011464 5063735420992498395602656772867170003278100225691815630409567187894954909521426791267396799905249427321014795453799381722436028547025099416396258699481890588474882912615148154006142492686895679812359561857222238059773819765690551315991010798701469530491613562151909881966537972363665558870925126061419933854654138660286281803382817282797553820737413024685803127051485675363227238917569629773750542429560323105625403581951429731364189601416658310128015987582840523373177354727215582407371621559672910631726323351175302515286380648050862107421817640035443190833307375209375652245108971693855911182810414123529923387245831204027807064312785917277321107559227658306797860122189993841989122319547144220618509472808884437616917085652168568767358362281336029133535319430349782708776705385076876359194596123838120199279508251286215123713225420478543659740361131310391949234896507728543365849471116542869716539779234605045910379087711780621424783274442931483680739068224407182223825325148997564963055164809106437907916806796128139724901869935798700830812118031826399728459903198 40453318033003587522229687638712512478809768449919196488956726911789430286497768553066288785513340150812722501976072224607126081642617297729008196928421323399645318078500836422188843395862084514143802205656611696981256296047802732457566596812624094468048957386109216657711231501251567379040577146824713489590313725280395919093772072975343181294161079287133999356198818727720924036480545242479700615512844745034199417863929042713121389073328037202226264700678765520761723800232293880090130964056322051521535503273699812438595961726852779674695267698509928270366916848910825793102825485080916522653557345275280916474684001438723986583144254542021863913810205923245911460683632455258335765386700894142960428699685986338327511397463568314608870082158840131984766872423300425361369943225504768921320182632315044857778275882251477697086406130794270076750095629353059901822798864193028949857078827541305479467638830622488975176544322938517849300354303956063264548152606109957846607994607512836751235607854860402751126508111558442594890407526348497155564714015054049709009836820 323175031958337021674789805282732973062180233199369050112927686156287876092133453578904074139661751179892936332689989044564426720255747615235328892037431399487598195061528629094694888374463489175134123968464438171757358886343788151640087897789576074729840040183356523069349495175784079066592946261236027189165326102838055930055593159345505370652514346855954831497120714415433453429474145103186948337356797883663129307498119349799445169738867491219988210385410463561471476637766446655466066044918929362075825071726580122202428446294859674272682248729412885020540569489211848677803767678350776190656427576056697041527296789569257379880403119102337932701124290901828745853002887860348558670793403216897015802819605855992810569469324795236626003146215450218487931849502234386004279715951911211726777225026693790711318106342429232331612799120013100638002174074583925804009882108510662817879311743664798832046727557610912981530469076825163838130633298117565986934727787718057821470502494596068540069265191937834230030189865412026827810818466351970561013116133077897632810047258 2581796215413710914469888286907708518892516218068123414466240313987946037377108043583607122825480738278510022189039492204906279519708983893359163207021283605980531220968953021664667219862881892640357545259554846014860045510402622533876297049928944220684916986624352738466399140251919460295119458072209936788033136343608433583079985775556095069934947602559505919948275249511759609672006655104446849139756711103074172090233906431365705564510851316620207568782155252490459316592762542839198588178369325356301837119989165128117572645043692344999947832963185897764267151539218219871705474798197468357807214420778341557716767366889182190856069264342313772450108443420146995376803520823767785167846876105356757203060474599058887148817368213726182412833414127420435812883916238187333246296043017880589471954769407252763450471540026950042146943329928391505472528018451850535680979577072521251878138101958285201553593715651112405368008960784261618838073872398746539267206475526062924824223489793381176338002638077041483157977934306893042356252847072669153946182654628866110925825820 20625601669217443348299531900474200879703646659720143399287421885805102743164576371869620472353367092322451284885990724297933701652583420808186758674626467708751054996489241529619161910631717627465824261399047161402209686699749091757574702584956014275210216878234956373724320442014721566476199249600539876332780956321123231751004803441564191921479215446307401153907496973755533587255379662185527342618638287172177365671038541616877109425727197762942144044261576604420151683987978526282156064477221162283872441591899211273690735215639555156913933782775915029607312004414411182791439923693583802181386363199982263084227705317746584234129947840834418979764688565979539488339563242393255989743585678985201217298888492969834761066210922214881512284111802569852041815930448619967516447990882791082040825694435284039519641021117263053028057890902717594591242631617635746373668493260062060721383830332209841420995481036386115142821610861843555848269457641883262037850281001576028138206742456797468482663036329721312444792609001797637007616490363271778272580590274239908071180058382 164775181489747698931348638967274183300520724356053441081219863880581525170267410335079404935379807461728437411258732718893557661423181952408622777151359902430451143818354728556050074078557198434495937725675531731785667185872122528277432377519186538419178175707757471444418451326483652670048824316451462209709963831539033667323288652501732090596467851748512732996746683137763232287449143633176527020222564315268833232788311116285201697174312153645002784501686104133143496441489288315231860284445383850439743053624427236240310164169152469098027246164443846159231951454550338940766022542968846885116476676395512157256141276423157201706372385844924228572376595169102893799263794147660080014993957487246805867841744853647025964112801086856227385893334647500578336589404902036825556602236018765346301695232071260361366085720142507225948426993167693264179169997217636085150864076166819329489754485720900999454450920198211613799672176177567484520957461984150449699260251133960066264006024177630680598534142960918184988569108201047405544742004727251441897548568526620752912084742708 1316368485007430228182781274906467578813646219122697205820582586971752767747655652815439120463684996003441515475075634941382090205868441754707333439149856769409204857670490185834264451285813838039085576097254345437896422954368997686703541762874383469911769901603777598254678174808712929946775297716161028822440875837437250268761996799618415564610616465583511387632853630252360541531291185170089620565466285921221934262152374260952916202630737843637403099084246408361398556943858775601496481981559274977975002252351445045308785023342489390957256270293971724232326987161380420622640225605158769632747867027051965370116114667893782718380401433636332446806500043748923008012694539368141879089003461743625518747635134970391873184336841521780011206623302352826210209333310623469254356082441231900229485272179591340584075737989313302524843837607434113481441717416228742642867031739743447754133729531189449835390873348317336341770747494781114987363829562608760816222480308757012352051417269072862946478863829636879810516259026921088493625914544805290321322275726220558797008522194534 10516316748788124365224032124668055643335802600318324865185865437572562380119758210355047104290190738146630874459507837794271505092164354077910470662795441129555082330965752993759283933381644851407014912124069045140906447428588006037097752053940878427348814259801507065525269504307443071185701887091279259133024492393539532611087541190709202467194115738494014348378279820053843773806198585003603688549696542702626285412763332932428517583106855716570833514458459685817789392907672820904221670143826982158561773985269955401534941343285064153311901987180494694587249555356168075695769965118535095792904181080145650814957400323529914961295945223980637632776210146939291815739777800337403694096401996045586034723462900620321285993588371384768139627853158891412758002692905635338675886000968841945417287519212738283874007120621283029452109707667932004578986550319702893117000765357990190951131156060222044249080560230944198082598070297482833673134524483882132873299857515222340523125081075096443497932487797011877277726354018051913271982440656567570098800275448835126530928197940110 84013744975366325944422379205490263050162090836452187391053916007922653951022579763344901641145466673013834582909618511569751698635378564315667107924356241690437596681805092723620447397011494898059849797963376529141253610377259856283227118550540143723018878813208240395489561764646915064601164665499730911074140192224526807505848384613350285635392792018576745892127940315471477897890652441239094177779359339918879606609656051855406331750701785654502028926479213566403824448609498055046485762776435591749639678270024681059423702137081676635178045959456275631143939447752099001616778369026004133911357063459954975195264260494265954676977573167466302106938608645351129938982805191786765486361902906333144861412561988843436764138097489294885398672603642302506372566086840553042211374056163982372976856862216420469524871914014625177624383432539854874657445113895317307692267313669180601968090859694764243128907994281492417472519844781413117526358965904809710105924323415939220636731579074179080092206140014491864706224805701564675172493934834075245557045420757018092026158026423351 671177721615063092370074958686069445281429349599811390421630001390969428425023675446321413332642559313065040373890955449032580064077016758796338310036163683666925306782732559275650350384949256750933823780355952429004011501152253570939643657504601881508967456922873683511187523868249021787633865492727878675911375730895916491629521849528072418558106540571426344999037405688069696851368145188394173178047372643165765591514919029590480091029885408678385664197611779745762172446685522342387062791706014635981065785765713856565994369874167868274339071453521960064561811505206523241825033142105422349267076451894724688954508419660803955291239247923186073451550241068648376277501461456892054227830455942313422439965086799084366004125128079435015430496904810117063025804787980233440062515179686879660310888485231539540101596970062267720685746415361362320429393181057644897471064607069333253300670255064609741119888524585644705160099813240084747255197056649119605275328153555240867705460671644236721032028613144846040314106443272678729304442425385565485087839311516906726214635010918140 5361980408266219140754012767618043845592983749662975204897386433150482782788646032708535482167329041705125867843460289108228088738162713108108614461899737145073703437108086103101633028823444319641978693354030547226466780289907150304231459065423131949814968027039992757664856856367423188965281795825640840403868198533331299251387028050678415695180304766668059960018644213049461086722210349718203898279987218385623708439829670999438665246897386332018812372354384028713664071738041954767181675767234215038165619469174859207684452160049064825951855770008477770156527087874661022270370396935286787235938817201232661478893200266673604303192352922980644633277511690086437816012407860331958236742306085996308630266060709232666336766229732229415789643739757213306388414794549602155979613038573015351988784173658054097905342220196947451094101650960394198799231272209123585373897563316146875574178261333896618658938226374775777772257798754361252303451755548633017039605540178700056727768632263445840790245128673706937960412387412485333783412704134345376074532098407797505266694265601944190 42836444272419229687784858220533045664698112780804407239492608428785010234045580911582228618757138735273463740065859091359959147928251450960484524660928198292613942749882240377027355543065000380353500303549885571429715522190513998634603926237951534227695990220637154053201650056249007708313180870832445031241524835367879828978319152367048019401133798892803752876941215102988558815168446285846795865268965077161332568472484671296041775149796498490614051181960040853646881938778741484547966002511777484267828756875583450309606368015408078145898003620641504311909808389403421252653470927375109227043102543516079037840961860592753135845682768251291561241282979216806922377322884361441240581681039400504211201454817269394314995166607437516394317170678248310725654977494026681485329035356977269192485572148965534139054795033501348506060621220419814968973761057596850876019734175597510661807335248553392957921444903143158796109608090389338170033525637667459837157554164574218054802000988184427548876480039620034496608561822122760556789852081551202975279201632272665839260710978780215178 342217414404239744456473741088265904855904738121836172610451301519974279657655938904901687408514729970594059988699114650818824351434942595963965374003734977603727613648796703297069566610128615671122089620147423628812534354711359330343764716489090201124981957680823380541385877765259792253630092949975142592174881733968686888750593975633499216225144219120793569802826995197023170448194909576263675853171130611288132448361682148495996903268069981526847934875072682412888615361592208016262900370997887757166235465181159409747921551654102101509823538461143767351492733512564242905496433216711070617638169398345767448966749524936508562564913253295377526911510877745801586057076521207305824945467196090703543934711388465939501313566993623912937373065052328268785334089738339584655533870381558464127728639184660309299921274564362366779671362126186764307423201397551409446307695889938661359174331654250982090914584445530111733182698555769939462825808021779872122165675395316259631514277980571380033410635262706995036577440923982150433394129129914581325622212959888865250841234482668208781 2733954588820165994752606161611208227768725053693262189394690163755653475025482546337872210386650791720418134319659167872272979905613567121715097980762643518381325990757311704344851682037432065776360015961549749370389599521085339549027630704360655446269869740395925011306443852483293741931610930527694888315302109424505017320094409096847025998178105533727477459031057288662334448114949789317381274728607704210951230168229711359472768694105361656045973540103919969232521419065789524502077566532758201675961679425222606556127501078173991487798110121646321973524594629620652983484184300018848373151655183820862417184850403387243864396418645993999471449340837107173682963107476673391081461580841973101947980668252606205496819783610692161101810018806329370496700059591286618472229176496483526331588856474684267309135430325182841212100008128063394947168604520253792975867364150800781420182881282076240280120482317091231199180935249018815196815899124385155797245670118932419071889549642810207986726302175637300860750118424377036882691633522792339469537767195861820016703347086368618104818 21841425829466136186717257066774409692489272518001351618544023281837881440006739312287325372639514826426018534955845297843942666230927097730057744410908148008687438012157833671677724878830102249556677701004787034440229000137973591290684053076664096296372823430950524114869837329441853725046619159889744830302119435977732537748713007435289647431076740990027287493073639039178917024054460652445758607525962912691921252504457071527100503101935443480139807238590010491875779655550901836257590768163846759616717347700333495656182417777909911883503353022344325704308495498246017005196735775830758874056378309882005948182527232230662344464889414445774956487991038051360190220663678689134830688271946323458753135811224406233089944984432573277566524506108556526594293204893419060978207627824543653440484847743299483561973623619915800352362070097236451756214191066444165072980195450296442467471134521037932435778169584488026965439744525455774703885102352020091943302357366610246937457344818076476509289105979638512391223189866476828960827448748851333986744973782062666364820557336637254372770 174490253402338572142408608523461475408033352750212283626721383461535917792039053263898630438609399195957783525158114876774424367034131404028312524021914889453842420457235823501616064288057275060062604096318339543536448147105060290897167973937154220429196225851834059353356557940906551876865998490674560238095619426780755894702592137567136074967663736576518717346092957210375291998061031258804514737876069673966457588439566045252354951999748792388847603472133784099672696793188084115096608632540750186307834514655757061819264069568514510221294332487302186368157884086348844747229398924395294191242602841221386199301353068669757408321904477854125005570387386030554406942306362853805448055872735281855275143265294156106679637824444754282428264658591193891920251171546362796401410317448946903149123232214966455102145695175224381316358725546547321193226124688976625080300452129120757063869103291691665680813249465981418516111303785664161778976367608365341243802163722277415289892507353899412494082397077238048736318197949850267968882443257453069396120007325236336435573444143371369502014 1393997058914032085164579044007165690330873081988144176573324784525089630365575583282552116574953793924676158991150474836391989941792743846610902438120710514633094969018796747021086186835641297370228617659426623775061378124831936108939276139303475825007818784523515581689330160831268285646954042784583910568936438136166974685923144671093471441645698983370596379819084600945288212809431523848840861799441948583095414494866502246365265747357386826658723402883348904811892018863876698016575945100739497869875256528818605888797178012294116762943995096024546425584912702062971018051988290175057471620446194142821705673460287078353783888231204565885353354456060312312576048668082427538188928073517005122810844063810904966062020201236708757683770278233072261548660652356729364870792416432894178199420560029912522192429000052752169449646374327625295849495264291291063476436468857701148227839003983006368728063691252615523720905192134013796246153086795942488169566020001121121349838003697815615314687429703357290606065430388028168825221974382646993420118548039759037376074847593202742670056910 11136610682090458247246373839692773587454451995666667841325154936678192918914279991822253419421812387694178310870808916123383912003566780985002855351758686187753735150599116445089958899898647712642927858021645904078185444369921663930399526137717334933501816873979560875497385318507217124317103336802101171345513897209975789125341204197789151365639121313560219697899212206020576956924580493793955115193745720083581768759536084390909185233707560047256481159074463786208208487930673561904188140272873823953794923479349932091622355164916850133432081081343599304520998678812068420846842762552639355358980662186746654548396802330658459090658652898894277393001357075365900732750296849742394492124953124015277551479103512189734907230030265580501251993832383357228021422038513218362169858938648811382657141677808356597142906343245541896239834651820508691459532931457766623668648071633529177077610523339762141889757798109007940744305737536410830480506167545712538614246109375928212105748732190536692658831024975845962633051977280289414284194523896101689308814409473519734907602064652560408691476 88970229977589020938697969915004756068176619308792793121417439450310999849184345608708322115642547927102742765566411390738468322011176684311069010072068140756613502467596419233827892733058704050294664834296177546777085631705954416201303343982486834777348057820905695868478878696193160464621752318420431764285532915696582139961860617735816534932225262411165727110312161278582090165548161811432773044102937143615760984196386830981470408169449883578822424318646022953121219115861146038014618695096081425719571208936600674464632269969779160482042975266584115916216016243218314973162708986695325061010353741337517554585458242203778832402204607764608614931689299809848262717011026427800073051595750553409200037498489292904093951064543165144109482742830602616800982143646108239124196910838518636323752787123930164831257816033694531352590909430728009685063723534896723525837265452757469292513762274069199725825827423607491635866556346733435247959638451129804439293089019481379355898680634900510473154707396570228163790948559797827268714200024698846738276532922950905753365894778276796437105835 710782756105444936634103859127102357155252525096242133604408835009744368927505275987268923656937196165164886680398203198020059441811101891703254358740245744565041523453480697100730804641176956337774720663073347115885156085228017499258330427963827879039293444751834954215351713377685981285142838502070726098184105926236073117590294428826388418051187501747788878956352299109245541391651619566476919962777440435228628170438252045027131196471548674319583225447320129691472235003059670159819683647786794857028288647412284746525611998352590090877790883274793916556530383801649529112587084538423131842368031654339984276305447216091161057889483461531256701725145290375448613163380621280015389387561173768557411816600745619881476654457731352411334144264997695763584533936348471626417753521074943161648576949761905312627079159874983915368637389008031255121412619302587450089073963397847334659374733865059704060481612632432212125721654398736230470191687596965204109058333351529357888062047589028227230263381215333962851775016664168161758598088361745947153357582755559307149670849839143168040644130 5678446607791474433659159719546553285023962576797217092094424151218698893018579704475435035984944023822302201401829862008457017028048672522118835590872328213740992023607128726330898885448138861910111294936963622372496876165151033360353116630870871635137579383804972874935990762030971303580563923686863308754167635534131496372783168017755788594226864048714567235244677246321893279209401383388171409521413022230433564731674557270048856332193407844188715097494024818366555806917449984425832538178172358340372999368967861854430999335687315586262078091719780269308789391935042649091093781682706103171733975532691225042953689235997595356416760684887734931209112242233477543401494963955594503530070629038342321776839235031594850421091392597137310411282932141869835333311198252204127419320441036133971242888364430847292561641059842564690720600772961404469519292234520485291358005795863315483442158309615214568287453972435419580552127707402932884229978615537831694222325519629480548041254924934281858005306608351518151530842054202028409712495245943975382394365699562041262866576019488920582611074 45365186746704872625899377544091438501587934359901564928989570254074878358730829623809048014475430484473177125581168691417941692876555220452970135253837448482467542541285300487780131961326517631041472992929436013411335157852792267505690018652048832718374399205973267974491410312533109123980783569401403975109091146137863250661070509105900523913783075914906315316904958530565317324719723386750427388194693283651199743026666598582354004098174905728846793778154168318772688294220969362303937461612624745095002608865835863397983680090268503067543900572098154470307680154283289233447773859673497156099157740598460547377656605996208998582159293171219217972733796170527007970052510766537757517754783560695203740030285754306387406090701742258982378598175402810712472651281528766990705726768325778178512777270602478787647476594911937562347788632996877705669930379034072169223935031361627225762937540495229731731741141433266858937337848866180669200583909499363999043780196289541215364392295204543380530602605049933777375200602884296048408567977869442683692250694122477195414213729057998730462865964 362423501031186254288193688813876865375544107031865850218063259780798321824463711752356986054213436221925687671188204250702970341801430865258791875196537215659037545227844776788951397386740466417587893328616150763738311039738984692810096429500339988645153551390877431404537124233817854094688605855922989825363639000463571040779398707863556700227706811956507715402016007164605449858190149289014210728270766184208932641326563400914374415921207445375655524247554249677508937792224668785223371993053913243814098403207276927699131111540323545865350766281341452690342928970122886362645468730436866680066814687895468471934935040694245816074196411416897223612098862194409505910444851295919246733529359136483666833354692480843780632929533574075876757658693519040821711829839822450596906010710760911589386095314044752192262276544359569467817675329851783881008381762691611729588736007498146182584786452150020392900962184195647940705588656079091988442357987721422729620436677240927541934687941624964320127771109059760419249678182412803566080554079161949070421632492035463690258846056252856952000016416 2895412806114327558095990388969370060118664374680343565217885496102853746454766753165334523679249736853273963686370972590216425272372195646965462723650393651989060211122910608212598669524932727541224408454426623086623716930658174960771197344227229300135597329040094922843347591963774485230132389247099128546006231662716470566588669119760440426658874748646923716501084733242633125010157438132524269347590866677016227748665189510194857642290772789257915815456535897600374056333109137609443492144133535921461928881955125495686804909226368576331029518411564848147861988437883189622687720169862072164928477314865415372035926186122166257098185945300303266403971622054644258565992837398547624782809064611058171505528154093766703447588696134845790911430563415736448308039545101840993947833130097696639633888540146787678265221703437815161073779498812132551072550976084574179002311792680531024989576288549395467750557210510072146828570318461274667954805470680694265935694762185693907939810143985626008807689531118301117503605205929131488182973697029724999404248639170700074823555866656570580807944488 23131570552232867919345956065736510717082639863274245901585001243347826065594098429109624756128888828828038896605312727700273833236932504116399254805657481645894504156971441901759011796169337957611324853109121070434532630843569540061326872137197540019903336803484929899887908115968292822007910036973647350849789646873673264013840325032373422129791593202830453088001340591491253804309008137179580332474494988342984642872410495434045123700664336879752798697023672914820715123092975750819872031837738809187432791420454497660384977887831855916334388674615066247526202962705154397954518887793479423005700213680560534944365624759469984726680725930515137510790316329634632122950871290588909701686219291294285624346704000947877313486219021894327144266319111413597684299053464003172273901950888125953028008430086755443942395564152045631539152444421143190467446934732687772479963425299211271841339691878554397727969097566551448352841692980401170141430633530303134840172019513316193507570799019846390585049969860958813816412140213801891192609439409841420855200887743202409055715732610737234477040698218 184799265327383688782684624708761541978889162491070570797286454819098164372117572613062481128546586253924335104493269661249041601618594319606804465578265690310152784220581350947018041751527636222627646043574534572923707067739250804417214001961841535301454881121090818810608861261606113258420251900220253154452642524571217296185208922957964926083412536160624307394402726499364439607375194475659472542700783788457198175035724212161981291827579340764579446958032628325170542961879028508136930748562224419513698849569089058057096575005291947397411980145558891944851118982288500159438141433517618861180663363263110023872781081701432111019756048313834794477898258834632045677920788746920123094497343514450966537019369613628058542536302990354088609405207995243451741735443889169336320402912868938322536586490423628927704796329750720963822783267227752119561151978924993021773446985197000051371683603049381162907550220436502519963316229797561337718061048774324119931312397562976602625301315418276548523975920732630312337260074209704124981037069742782849921844233963798603986311472945730145793566967984 1476372165168759238667239829563474057881581877865315240686770453670504351652976561849521145176963865994601675383856387822122678404110644113772072065094159609885916750386365580800234775978138559598728030021348350087891149716345280596391022057183165358086099140318831159106639398334764634017238430352448714250094816333232149403501241396212241348549516387522653047384039883962741596636897359831531970141569344235429977804857903069581361123989545908650325349551802546577067178395733327610302418644505506171295735105874941090103834187586307177399823618807012197208486279988626133843726699055039100674489591373050217439417379752321479184930311214021963507964181872040981281654319037186868865575635600503429789358173483782145315516498943768154341554230261815830508596365907405775166408188234939891298942294628640622060602287804257704621549785968375238971126847265614156514304975709571365102785367055086842914251738977313394956874846628691120583329520554637597037737376839703599114897675274311986620883715324437898402287011916607315587695773573998771314260954642460234966472682967785358618391869801257 11794837037223660035619874299241639457581182728101113133072253501196296173839920667479428846376840601051059942429356585583787243013456149232157864584396584919801939238060217014578765159085944048829896785068365703849894734078502955312404281358946200601888464654272590744711925665491064750544170756041634147635510187919629931235043850248512793366482555339423989880119082812438882123756214141760073034416245850391834419100221891619006132965975062824295756524475644973229810875991234257893749444780170447669795714271253574911749494427876946393952218604456011117463599641110009481884930191382884841173793844465880476372112145888344972262010675472343612274391324886333539385081283880700729321252979251597319997233281792423089393187683138440801398569811027188233960750781355873214018973068649836843291864528386335917986575326999872689810539555968387971981079022700160397114576807075146651644002266258720485549824290062146874247444152777912612894183078790647051208378029328770547204532538913727442636592718988568077638396266728167719874236076758297152692697323887943654502186916151860270836528554246812 94229856178154887590380838993787759369104212901852871870266516003432999424542341970485267943186198308746871800343890204664348963795447247130004027885022941045875852168989962117161771037918837157247130988259934109348902363562480442957101415133779294719594632609139981482743278748326575386965816830624459417491957973302584662548598768128397365847538816407121491774679404934781306383105186400416941305488402670686160105154872225590788186663144212839132872555759711822065270130558931517847570200148487788506894325483816435188614970265826226956370043898740202038932091795078108961868462506666001360166885189865689813482732063574628782729329689485784816988349936055797289634757965179426706429987431296506127164760535430851565800570107445402307934258099129501774855392854333448642190763361914921546435689703594803183531492678663624091325884145232348907047728200180443305540589322412593548893463846494888908923196309569180526709365535258490940792946678256460632774867211952467900441375516907913030374029803144248975023788006092102379326381047663235655894923362481567142791980558555599281625776878082926 752810378917727813442907847340371450775492511281919333465718756578889404959763802961139357340855435958848892051002969026911450714811311028287200127690854753259631534492815161484228969971340232160149540427805982210794143923652320923801254873647533533460464348565325451487631930290228415442592878970141463650010481662638366200233587112147541324847761809287109688105038125160912315893910067727062814798154391076849580076882886450896119616532059642683281169032741947057792557214916089277137348710763963717858718601940125394741908518617885611747731112387600327761195455761391373538779295949936701735927439822061072975473389926388062748933483028185916962944887526210478746978048553114283664859960262564637128826162622870176251016238167396760461559727061326436812669451852804633891800944999980251565028899374952618738453965299297545590953482373675780224861568077525270417944232067551009005981235211952898049165239295613651633000575457279808068980074686123552518778728642766736127528945342882827849079859170120782372475035517704347305904641136879571414233127658233148288335492811767627155964184917582582 6014273216865678747713227914222559778294851672475422425279915929707082230111025029460421645069712104779304026698115633656717630736831815626140091323974175080174735191890866365283610092118116521354712580850941482577201731743946016567924046165902606103444564720909418711817758987682717848743114176285802181243274032088736227489035919067299862607013730086942649894986324427731591394384786941672222785653460470273474561411266285938936739055201629613143662578482248512560699139882534296892076662836454684221588489394645072633389471950821674975194570362667687622951550723116335230007533333545825065575687778181259213838087509890046086402973300087082794323095734690100688918198022300360522206756124128024466832548001351744225568691307530025604867657901741988974279349129703084191342102743690282010320056293503432917561185757968387402675851908867674709903002153251572661428730273494359235139777735357080312424458245625630588169352805453751307723094322178986567306568132000701016961452216321924974282974751263238402627378995036615641225077488254482518533176782848164996932326722508377848627461407056429391 48048650385336044075076366605570611536898141786597117403891990657771259429712795708483548095067493934800009066111629645119530709196253950700092772717810512368334135693292807682484695675245947667754395273901934218411425055233417448775408684931365776995511720875977608683646152827370866977158862690979250925509186846641596111666444222364882470467753174733111929792079397982745177792643254517069586223991109518719306098661244550606938712677312953630445865243501883915709768282055317396323371479067192741860104534725624189320760904115965803752979234326449151647509485143045939041971676956883593671839403866638967420035588829695631071072360968071823154855099365048890397187834316853982465608704196414072763725378420485512607728357697309621673081755680726138653487400160396704975467728699499732720765384098778343273483634771265788991252981237545013780508740196970785364204573796351052723701326480096439104389534864456889072766451507082118089542274463864725292524153451309308630172813435923717848065974592839279604125249828662673809075778558081891382619488348850844571212494083484463649032738685598531944 383866062185245498769996057942370832768797997387119654752944278008069369914610550242407172194526160770246768248175462605364338672192959168497931913714992575344310297537299317405316587158935499853606722537737642690504311692145763570879342989405666925517238879161470803597518694294236984274311774536223168028553533408128267431684910059133038728381178728498198695469774207914553019738490868966083018352357088382653042199667618333062537004321314294735708724462147619936550935624016816084091590979916545132007501873873309307430217224427070497378377103831560059990513655723287924310205412572115461866390093742645558154678940453480977626293477269469834903097762473292200348356902359866371795391941603961517558038996686568353600513899487695910487468188617816462474957433352733952719780969673730090136895699316012845979638513257405346432269262841825137973400578848008742719240634626112617057024236296221625802369651004718133679813963072549228083459978115054282782855083155149201933128369969520937964968601232312770179309191547109129209798986838309093882229800185217610739774365835319429596089739613747601920 3066752478157254809355884775711156006021330911842716012298783645450195357397693373304258497113320291699793541471737380292627337483309181779602401556790033782844552041801900439747670430731059846543035017028618704338697687910498845539087975914945432916136936877992545219317699616912700589703909666467272077722951498390412327907363807713018517812234458422432394726277086328144965354036247463392231532626861709272689603662550992653871338482840301447283776423009771650392485613730997136093220908644798448021139503371153118217629914889776728109717163722472068252608869957539187919047574641949190037135766193404025804379100610161501965184564145497378506704266082091865904722440225318786167316939396675631496931208432733261322727504154151525944258745102341263370404545364398258268556782610894561429259243498341140726015469140633235983505347666356758934105711864731459783650125840136897562995613228710538644543800966132581055613766739367021446653163429923595422651197883326302679025783978418354933235171483916184687448166563985802413771619478591207833797882101052053149157822446341554309518167491725900502640 24500684315616757329635519529568988954537769934446246675556454757961764292234500492653093441521356470967469173446900848886549060871576719987704382501272330548747943650197289940243654151546884823472518906095079347415560020731536998245351968111054363003255124125106568707630886176129591984076898306515547307744673254391942430673268966737415593179124020574501833517094646140153166338226888201403749650822743716188990470102851280091056124462700556091783878303744234077848209147168090135215052496021596961464372517257968897913032960513837780254153113128056733131887314027479473334718261987732290867648112984661298297737025392213200440298239441399128769604764407516073613518656363935944943953658122530667560056511503433823336552725634309803360891827567334855948914043044354132359060649672898048699713556686692182838193716212504828258374217735197389664981850064587845804905349518477602695218623843331632082876078331681930641297026564161276865663715791557329320823082858174596489383535944628568989958481020746032613595930543785296629669336965643867595712956473791766798127475692434506799209306415825484444340 195739369871025789620035012977853781866286601923744413983042831503002108954278678262905354543689512520261848060095990430078359582885281587020396601790764041395619033731686212893776146012134217636304546229688600776561812743543875223641462853232022942781514790505548326796509822105569116435404862756223176430916854454228272721741060648277354047467475905994719909408255515193228419587196893993528577312672641505241046962540336066391872186251485974369763809450128211313905372142449021466192385746714134414301310168296510327410331732592995318053830853141369162129155177297174140745208046866553939047582073368908522342498930016865665396394352749704397048139224547533935582737750676604579709787437051265145935038871232461920512794575271908342379899187717538157361614266779526469967776486490174937913932833045577145223022171165286631980433578023508775564983512865804685935864555355517138499364842793524339965455608398483789995485407359815507361950783613985722774404992513508877925134145486306595976364670480786649798882514644257797736965884476744718235333355030992781847773441351394707625971067634772275730838 1563790743284070468516265814160013040352413498365378122558891005017279460781132657492087723470368193969407601870566968859222341996654948291875139508726369359181144266316996617202324008713517578038291076661375991664014136247401447058793777870525845803842817852148833616252678643021965782020028865277274113806682555203595812803646717717380990761634391818077865007811092094675776706045246087892880613317130725687295280593785471745423694222260107040325057772300975741620418307777971876407077958151872183447900430305791992479406032789883153060476831407791247435244477885651422772494218736221329767287674253612141500443122091734313486400299123172112130361539952591636064328628859477670735570379171878532492581114613797691992617085753234237493606850817553664738905497757254858283868657251284989278767322803587301857571752195797228960101663900983472245799210167628850537296176441973579461132615487045664567523482213847759182483769519884743301715283519106001711783775263047077777395080963780660893701807633130827988176275048444415594538767222053559262347408997270958050281696169961382443499265313760130598731869 12493369082887709727319193644562973283425139546430519116683990208524898543615230656258477371700526082088641456574409203873537249372857139882479494156575496235954438652788713419291381480185999986016906987280182161571879380337794875371035260584506912242973333664951806989674061792140617881037364936901764937117985651712482914202193391511632970681223167264605958904602914757053625119395300872041622024481733617368301000543925516841662007533539176395188528018893403237052589261803018642835223742140119600249530770236220797822442110960993951300064968857404303933696042196839246630532778744050523744072321861007696583428335314501528291007748939218493985010726433597441074915961686389399803250272170599195063567878983459543555067472322229238225969289240354743529390368422796068832823370138511520964015682212012439957078891142386493310793532424086615708412059694467322012498372288259352662941607722225777268982667648223976441544525777014045583957860822513033564593408640139255615962675073288542217793294464375486818687774943971978303899972685437627329325095592551510129497822994701121162873945754420470818851232 99811591773765574478460888351318577647494807791623522932185692410407028781698677190798863099907537470737954716267367779394530700816077174479044294929834669548724781243236616485278837347704445341751341859005478123079027785144632824539241438595141542239930585944305971595152637143188107970897866320970542210917622459037173078140012711507169745815353942139181352116000527694016369208274539973461539810317332830735596262570994626264837713611072511819551540613006581706889440309738324802930205427167095026038102064323689802581784626680801743799283463698091086788773963090671274476050144064748287119515624119034143459979932323334406159586704526532105780559681762075825110380273856035032551962347943592666047033101895549121740472514078259501505056585518302223563293319662509976323466497294033737019230522461576703845255776209017734010207422676886324068931133464441757756584345914440718117849269587762163008990698933502862975753010573119403983683839903374635800569466148941724441268473322181802289091377338222966145087252297290690372741877534840032607379261889092931454918489339149788825494500391608193117832065 797412192212328011709878136930326555276153538969174423254742138004472764585786631370718258702018290574784212579870251623941152579400622649845547738770355122723426344720428291808223257592139228600348103728022405061569960151105801118479647404787631411926367597447181177355943201313691647783287516161742029108585472889998441962471532492702694332734019826165176548229057164163655468485781086422443134681753621813923319359036665668921949144481915498338098255429607757191436041719921847909208544779561257757432252700915056834386987527005145070000038873878357828708265376418910419398351580448194166209160217337173915404924337780882876638330317123699723451883629900716089782804019923287233373242321732786232725972574859312200054574618442038257218903762305060382897310142013575571481637316603533854130242016344384795923165710899536953526702361944804957467942723691157998231219560574861831242590438839682090036814800035949307308795784788550639383438654844553584491093353581520912779249835542506675669285275541597557062766536264948200844575968072312526882592896344859925575914946784045145451094953453143271492123092 6370671907143255634011796385046536874153738739506790431247045926996628920394662636289752346199607737417741850973652165239491343317574594577047433192141864602097699117122327700225301683877524210804499682162853580148291212910866585710187976275009292813029334984971031661511805791748739126179176480334514597851313121492505997457245907383733910872297597424402319294677941281586357930426417749702168666256385924559896789635224237841053405826328948045168824275328679953869429002414039469219433424694520058435093323583549599466374009181111349314037451667575889427349379812978566274602338105604930872558172363055675500506019691244499491318895530762022440195969576674175315165662069549903869813055130448207056550520029023768762019815162579171613609141688693446694390950201936870543785903090873089759348679360367148671584704194795768257594199290080952344143519346548857447505896078766701919496337548031178760001855264888311187540785390671747384699682959096885838951317286177518897251899855459294681979758638103389081990133604201171163278474884933443869233165599429145283834936916675801693395202696504966965246400385 50896519409904360714051415529781514918460817674315164643306122358111728578365817794031267562756136679080433047739938055958802469640774439879062430485397871780009869238407312626726155876582943636153048348717571930278047028282465068159239078207468218981268840280817471372014215825721555255926789015094404999496646254870260098308712574054215615540646591798240897521244315393385210350878823534782920287815539622445877296246904208505096476719791900289808039656914162805593562152318272599796433460830952947051408673888169117356602726916328214739472972326320373030222083016931922025045407477676998810538295914267527475036543109059168759034273729041645203538541739355199319992545526903025368251142441647354391867867693988856360661883523891139780434457678923150077935397635345748468179978999001227627082924950606209567118598204276654732495777652667354854312593807296613592707236421418614817670230620512416579773338405954584138079303653194990117257694245245021513722009786229115233459328594853219396127876238678934356364232748593585335232485065759643332217562994981555985347210961257386895630569781958377269028175916 406622498532893652077554429493978966348924100229588558697345027320595422839578231604142049668317839547565912031780341090475366647805633174803149204711332295839087298125999078949739784828891346548113832361324198484521589496178649481462253949493663981424577028488393294535805612701244034490246773342121193534258472456683447120198234332910399123732765408499977447189540612148411903742168238018299962638155769793218569205902392575550357550900950576941020206739839940992214843095313343748975549553164643377826296363708371387820672425228381222256758981620176792739411883450918637809443635046719393060646963987062281792048195245953930213784092372574498434600455139950059121383591847470201853456588737278379087158911493576243135577821753774818198111163505205234928611729461015117053329960475356658535467103014353495981254970392413142660244841334672565290147010644532603130387975103679097372183882356584187294624267811438655839817384732408773115628542207682736841762571161400189416773796727425554920205391079444652483568119091651770848614786048330413850853621131051329392210863506790533656010701462055712814340460172 3248592226284202637261851685747337224384675586803352891413473941087625063999304380127287416539737295198399563661109476822691646460393223500828532801310885913590611785894037493421609667648835097332596736192281290183869746409688295747593075147246680122188568863506759759506445464979652748241347868161044258333750130490226849540256776752385476156701063405247966822985036433380109851693661821380399596475599465471866540003163074625065751062817509376829192503025613055444630618655307196531584695636793262933759368385795886091835469416253908698816644806990344542424554998857608503097121648820927647675998762130126210523069768921231341570735635759187187433823403973372674858568514834258616861570770943526429694794990377946891440226073290765172974743846015160313816004567350479175810888922271670868940299908856125134712412578546677349469014803578225877168200535116266594570002270939723235027744011453923670834300997040276605443793419711350585477827120735023984428054471966248164092102246707937048799538696767079161560821842110662399344195297267041810320347752864866543630671849072851915539674038427393647633596009442 25953711425142252444591378547376855649636069258316293911802671306989192753968815898451348687111672469917550194261195836250224203574157084307397179716832922039592959109973686528518738603319736207455728810091085446296433968489686666099817835677135107071407343820507725236118643550202980973943946670152305305345949043849420922231249102790943757932001023646678891871641195872259044924249189230645668243906847725752608018382548471158698539819215080442934152264630799819863655237511823749182393510698726112793885496531321306955135293180858225453666709695350907996416802772570104889734417589326813523323376143383089689104388635057858570829650843872377584626876876209558725883485141107360683718717559304354608361070632595715888308015947283172950944700277170216979021205240059153046640913924340958678287747474245098219237196774611064226562920212706946156453113621007699104587516501230321641289629369337329761395120862369703639107125173022079051240985428742607956983930148942166332614916252092629187003400109090525452871973025613576339726537403151381854170210260410935493455286723725154865583935646511996203234637263847 207350084210613519481418894995344774882445416942702431061569077787427925645826033294235661853045068872832173225598144029936190963032486892923224712375421488490721340362769718241139644294759734021798057665036141356024787053265507449862832635429471394146722456028519009502997045830150445273639857307116181246340761981416121447671178146221014097487891510696369613860818506725578659214151961432176359451274635484099639226777164793220579502382824527667622463152531901046810512455920707301996491627208837582920100155840240681547664250249342934963538418421411382242843003857370401564476412734688931978081532077911848623851306750016699442794749198146468416762449217745837127646127773091709234520856443784004650017819772834921657986605766654385192635508065957774094478470472005696419613932152073180041866708823189605823554447725923367473016388623131755680809882572760419857130694908454684295319580861854477997772225846888448756805535938984749700386373480448992456391402003862876257626564451655121808145695605634673949722444550176692719809589569157811242695674907295370553918670143620255321936626268871806771494666377198 1656568632978451904318805223786411910122006781510099132642987511407942443474475771846251534245337927869556316022596517959451817810542944476554466120145620383021501448981558408960514562065185500103144848261919716569273827994971936433648533591996781547528230565308044658764738779436780062299220156722003590322834118659303887978894121943261046858904811517317943985121215072481064567504700296129615472625665214951120849511814882930720284363320744892840385001252535038100920919008589623251778213290084035036295781690370674234659075423894899677903165335394508344768363460219271727667766766662144208563314706091611178143188310052589546194281190554682737348241523132045272755640736227397506365859061799353058711398469140654917199469606026870711309639855911911493672224575763274625522268777746783513222888813697088349612843069711833032677776917638230578269951729755209809398221855135588979388802261280978979212708336340818256045320913202902758587025864304701997983432572386949211986210473866278339692055413180655103155392510013437885299451312576675959664863092949614640061400177170334896306839283036180079381695251837894 13234731158697164832351330557496924802591659711334485846496055644157163110451496190750167409939666991834413548310620325044773431746522657799734710148346376457271763509292190820260172776565362785165026617722631186567208398556192489096393448968091764574472235984705787462054537642465767536082893309202880298740383899459453572066092756789518315392937354821012291638196285538674934064348837289452838541930382696790929542747053949647040416508689619119475649413488064140686666376157138231841298420261718832604198591923581572705721829307121125319002444603821424756972506141069454695406524777262765877459309655759766144223147510372457163781283548923941478117362816318829649755403536041944847351834392646677137168724219748894951728630145091816888542111222742290374261606691390580776381121916249435758643656311654604491293388947118241732807330322897886771990274085273204594504101044032083280812442961869780002216827143925765841419943389179196059908544046038919641459658949928411370928226908608491029664729538867303095361381120749447658887936151539376375247410222203242345982059826010704030084344399474229744480602597298542 105735612483970256869922150035674442684347104123002766873981707287878000171685303486980855063136621368832993500158265265920882998828620405222848888656861520514522581569360763813316533441183918592357545139522839269549335924327397067474842332598918592830591198124857346154586997675520055111081373147734725761855935541436606038036765565506790549171568140414040158410915202849260028320774660460427319521197699225269147676345649282318822837291882194545649400936638772350233189791761124357596166513984304549968192349940649482951183377483840195287616404225201741321287100930934047130278154001231462905798457544837516752863294765245335831236316235755521297942949295393309863217860362082586888671806274361175329072956477715876293504721313316408754125969447896669585422036376387512553211970303954462159522786462768027929651136303051354317610011758922664062523226087220931270784796098568829047633459686162229233057089324836048451732077947960063964146570702540464774400839792865353263750204025773785154186474616428057082813433193219724587612313902754892071997310719684094627508869933532245930697719467193657644801111735644875 844749449987869583798187920077257924949196734018492440629859793575444421949461145938153334302650694660371550212878028064934582021146534000296558113553991786439441368539429737142743730882220412568522477589021798340601309798418471573594498308608119346553628355862608562330133872928649894732702861548858417961946740304622550347882513968931035242610906588701416373149340105151494512798937813857641847158208867366380199828658934023249899358451861745261572157934885192957446648652891750155863192149353899072215905159953152976101347583933246306836718504248711822000007612741645183221631363046180638211732276463593141736528688832556299300283263202568155942252566895572006278906433403127488701196657921638859780069899045549158055449010430486795800717825265695853748949595607268533756519127604387601660382292296064640454160881595462267578053607826145695542659584338596267406817642608667712772727505984319708101978377263324481077893743020305037629700476565501233235135996566064426883592662546785503114411199484522152186628020712568952691011121632319991952269270328782686121389528035581987304436523070661681823812913252871768 6748931498316993907666495859905875233900466105542251823757468937804664642712972143360270101713958621571406198019919425461168837576209621370277744214648764701347578232912073652033023698369684286835112534361015496172387103191124695907752863046741563650855529613942639480629103196347963605630520651011103428688809130296777512859113417156658196045188965824738258756247610947042299737751284227606494589698536295583434894438611842362817718522967043017944923430749105660624243432294024753525749837906206013865689711434176669162228505657679138588809459089392250984477261083050118595700325829229661339061789793251734231350685674608414385383588526733649162554684809307603799032823635365068373422565788274611663734396509125606907858595824589805253531902887923521345627251163374632033772000079885804132606329473907845542798038164587703305901072972387379244651419798235398591138215471072638921090106116046181051618993236896075571596095834267866964867862833519412233086819092159806290890137047629526063880159456880909791241564738803878647273466958351655360627829976827479009193570078863890329512401955718011683581760316738320046 53919094693682974539133539036025940105653440727049815134760708118286633757836573720286715053645231917734320675718623720100077709973257686793024531129237259890981154514910806051314040790440149547966417540640042272117150799838561257270631681859507796152042642795233178090713908696764662922169325385628391314380198073068220858011427330543146780100028083192904073604666942889188650759834925280665414159979631180066411595462648228323860749198314253515289012805389012700348782212031370629404768411887020817773958599067183704564080048727406002260624969183496071969959329168588766685448317159457072290200516523532299966220687649101060335457276450498315576572811789709339694950797956643690918543466446237379750198057117380659558309706253190303332610733434244515624597651441902604777465788966981461970287020200034817724675123323883421471198569183316319557269593697212851580161984708087641240298816264429997402222064124075642446309134471517391838335104712155994803381537489387010339011314875318150977720930850960698040806844761151998477832689951600104614599723126555547355105710055042963424780513292037794178885087557079376966 430775139698749810291482273592555093185248603026820247996983313240417583375777890320615217466154007935873393619159562355470723900292094489305062671789546643088163629222821771247353892576013814295796653556280654593026135819136412093247443811536225895782567722340082440806163616860733433864289360449351474673813258930385938260201180513728649735154547079726594731156035075954980406017074967193315972027377335506823343278348847406736377502181694544583639522917044801941480796965481980119899364425306519445253489370486960271314495942517592401649602594114361345197048811784108385507719665742147227831258840892995920829341210547787281689829333303233459498183395912982212088149391090625852168612853527848719363957145705707928100494499425169341038745717714341957420419617614349943817857479472109090614501560976700652378024150750718602698502472645919132455066652040560934158643676437044972672231027853227634391307006520105024091967703765054030825050297215027990848138826765066790873402009156359790964321771868667223808364912801431042914366909663307508591448878420184590750333805940940042971601614305278878785214220519348892589 3441590069498563113779143570026534741561709417574221212885828468409128321828209037678347399066074375138461704776708303637986684576492058590653747662850735205719844497746153666870441651796437541774032502246721038601649096496066926764125028674876427648030090446958285045839041091020985978077232781612473499230224908003208793253247587823941907135099632280767995700950206547254569508928811688018695999246484177788320648039995221466769366633258505073999804146033130848052224549170862314594289222967803696146564640572420766690891380196429873862575628354530541395688556373450224886971959817131467890524248198365647906756280560453630430378692857634774146481228361602822429055541226185897763027097563706174691976123155591463587636221324641974026333772490469003404539832099321118111647012769589880676020618010731991052886203513933911530172228630878081189332708975387436164535210294698462547085033547710427844315494024563410466694184053105968729165641826682813535487654681309171393319635179941090789224051283424771991731974941166095293668724859816575660014042344078708822698989979487308325591022192308008010841377308055557792736 27495911096065950808852466727212763271107499967673264133588658821207224723446429831793335063396198854300180751746803326732814485403343197960476130232745396700996948523447461379528125929387435125949912576411672642325048901243182729852591981820101253453019503310574484880330294271574599409368255383794576968352965971106859796369910986363178585834901397155446024681849155919871195113152255787762500585857856596655775045024775764436230961387375465286608355270933585111087570120177285879001478185002272173415133941252066386885537455878070596681231914660739910916498371202490048969556663987041880306302928859369982714280051870161071427235729473217191769741638772471221320552056769359373704076551675169565627857347712854779436953911258587219116417736483572671193288870474196762710910977158442898407138984184765768124875754348722360885278545024311513157273512416820903631987184647798574635933147685045221465288787735822397568115612438986636850769581702876502392697707406863879470998168152310417930189144689762535558207471932744290205290036314807215033437570575216660793947675832957238268304944049597657490730832579250402972947 219673442631348776414859775537040225397433137074525812988413002049640152750746818740787181128599409555837154099819797162203550644639265338669708323157776202950295959393856932384090166142459225596443679408917420263659656530112171790811849937720269398666329602516656281292507244558304183564630299212249483514649709729217618924172606351119975351059470606320143795877969567135526023264549174162914444041134099714889880691828153300463636833814577982831067114619482286426991566155154610504889786881378452788291710664413749371766936491188045404559186040490402306596901942376516882062567743034371858649966276346333924204266248321727310704770835000049479432898849914676095167744584065156828335828951339389207042220266129962843392841749554832314218463966137923395459232383191808543620218261693639154928213108299686719081322677784916934462906102569572100686541511812166493443703688355515000078969011592744851238106412047633165335167947912547032566509771754519008938768877899519092008696173410168149638906255409738240851231988446473225942674365542514693725929107800168998236051588575128117685884353964634279241794232165709783459384 1755041793496339999807393632566343532825741396606895688800780596927738240296733460041722249654473643206983795566627922755600986564140612013012561763291942425556347733451136014963405555085485861219288943943348008309070503382190097432756668291465450355083883614766717925458086337061005581102049136508293388690366675709548809289748911637049298289943554010939991667390882847841098062268391827653347370964824954777411953610526036643701459702413177102723395228963351214523132769729604729703591415056369770590466958477563491817661358829659237862144675095520829349645102465747719403216666821170360989581923245701361688254011343323939363859270805483829354655205134527228310302776933931858007293287141665849161754291010453562053981424931316830431722153863862993444366427585280589445339419129987921621984719230617964857395004097757769849301149132530763238021355512065614191001122452560665574546199227850446792548468613060688908892931097483623853853777891741241084358681243631473408020136337938795828519594719110857906170958664928400733742636842489916115388378190161171917703215635217333952682088132914803933611053760035669111314859 14021608421964097044692689405863989765621293681666842700949724227484079343610077297693821452448318899526102433044670589484728528156898592185744665225791357952259090629797756886667195948480725292210565026579308000960351548208308999852107527354908313949319088779426919245154785143114823997786002494762256652009345362253554309925267691887523051277045236321625991596775813954242078777601051132359145537956119979208638387667955198448604097286497809796210981524107831144790363456312508467095714406869628236796405831252847741696535418693862181191135474926142798065380861121877031805116238286676336751221520396482177374622018034768367144750062474303875647435654264597563158573352162746900858875749056672240723127388416479935666581979531215444468104115542410612508052183041654727339885549419299180691485873946421783176465725128602586121045415966370115403485062301925963680049481704336479615199165757512335164132331836747957706539185094293788268787215199578576122674979862245355874778805370778320506021959668767809149138906866481440530986134501293961705882607894801949682637917169335309456217213797562746405475028670766032138275440 112023379463294223524037714906548950493345328489636961880824949573468691760713804842095075140536928944217791289704255407915688468024934778813221628979117108726545408216932690984385808900888073177724958012705308000159423302912482004789594170170781826540346101462130729757010717360206417154273358631479335878744656113337575339408408957504382548002618555100015933211486727393287891388113973795392332497381326276552257987563280961288232269264932794430620871891260362549678710823975612925984660162326262982044627058045347897578694337239090371510914896143192986641938844105034078709678996215919293619310070392713307371549886199342527389327572249668383740104107090102062583789487419530877334793904769648690548555251813635646160236801602335843098670739027702285174607803903055485925028259823710028276312571214916462227216474011220943051420647525987766828502893114296755211415695830736503301658115902092374113972599236891052828477602953260092863783457394213152982253516806589184340993960720057633523120654760303923361181751959101964292819619987758706300487142161476611498510732161449011555447716455478020219602150366140730081608985 894993680881746152833400800466981194722716954292826852272341730444218938837715114272412269297363242926146950837796651990525700611690570094820486235249095873978603649926557804862601660383626873549482185625598353622825883118396387812548982000621923970702604820343547610574008180111936350113776057937168934876023371251202972011706002341624916891565646229388461444949336561879687195177749752703447596779143818167166458964172278151338218945472902022732668136482111659275580595166304648939533465475440289587323902571825383563663450086572329760596014531874592778032064943339381995224183129460567111692516178462362327806152665674991681311600938050733014676359809817095272724922163268994342345208572046477591479859511112338411476757036918992599506878704972212913028243906023190291234124857744037836840097901528708172530136462438094999776873766012143542391087585630500298738994804294289918919465156885456843234336258619917294463197055528718471749622471003306067959577251878663989535264973320733958841400799491422627664743410942440144258067706789785358256835955049654808556608808697785222434806169349503795901058224010538194016177598 7150422936555697963510572142634569746263526957706130013315667055741125757878609900556829869150211741958133871380044799329964044188823033322762723794373442294595058613642279023910547706578230333497099294954488064452624444066288074601223668865254678590683716334100277092924072953257792805850663752410335582993395198933744882360310604086695744325267764614848131259509182300637608789280317387090699776541673678166411941542607495558383361283951639578353730534824128557169544019143663579072907048448471636755727302361566334740389578221815249519374179349364075342822512721848910951131212970948537035666562279983897075012915410367998984499682671480605109148418994681845846402491102891539053298831220753500399113122128250172730626307295434638415930264411230833211430870429828833440392797156401004066009586814347361817282922455041563501580117194729998003389679710783143994537215072439407807237329090792577418843893399963684748904774391274973533482699762331363654993081185848077742470356330959822593727258598175863992606553627432727544468000736753272599552664578996820856939675271713852860311524701293035490432488835492152188573866999 57127333557432086252634868983374114443354868248585765342300174061504471904668438408170475849660829223628626768568710332250508960879450158920040893735173690122064719674355297046972845822928556488977549091377408488702773151604739217629765025234567963759417320368071362999389138208959362468787819253902054081427098410322094161495093201129111835044753979328137079092970870855942098912336253340530373550699960977047400151014732044533271967739618564211710786540653153446641932641298745934365597970784260707758154102211761022054279436212155298938085286889666385772301372716107149879555807672279095494756740877176478214429555167679866624088263467163252988723514400041721495829979642335647453387139700059322286867105472604976059207570938944347904899522232105729579026280235848244004227456662237917526372282433891043397709337398155186117797951964225951902726784960449972995368035199456335188107189528771496403158480234750252853899626371256053539425717811802564543370127924835431472032089423558270490191640565956164837482720230360545333213172903524839530341923048528973322620148356962836273647211500295774313234178861422956756301043450 456411562378766589403073173563198898493761003013967015601590399282392932028064734248325630964873613370619903836285065854471844613102237127586965289438826237621068816105342999376596072632390235394606392078042934210700218179129599624422836891291612107671770410503301896516601694963357628431525128439005187040813196826456511023683840469818875811664924256918236693543063625655841326809963058672691975824596346582679957186715096799806312456136192500487315680050055353716530825544532757804800581300461608752418042972407788520973992288456268836699548631699892496531422409394392632340209905240248765908256120785065328524743028870844259863209539353823113124583836768290574473862043622429021424538869269368780863482688319498000286596937213898207480928222920628833722002662834294223890069832885584260783853164576586310031339073964454079711124038216136818519735702121765658799905041691439835437659172737469696789690747494149174394344898454565039808301255043082856230168067873966264540329725752166036970315700869244729723237350647093004560564014159632540165709968085465492600611264667550170757836170745122051475435444948952032709919922376 3646445967353854180782701311267965617925319509706930120165496170630023744613830574667770115525924809618883178389328456432023270691144868108836552995877067804912449232611155609841745417167134769853493892894054175819890708756636351595842757416550759579042743817525654320982780463608310782086643663018168510365618008598961809118253337483443609125410541219307484087427166337242489168344145289030299402980747370722060117459075245420168699974310979164807364780114087993356532749822401504034226077248393059404120166739057294973153319384525899598235783203817731664426488165128524793838298285720954974194591819519663589172148353414722673697275892467811045350314835527004200562733505555420301904170621153904291535042051930628321900212513334339007203726206929099138585672514198707043474403287817763833426225774851013324299624652586651292869088410652608648928188478925477255315905482963290318835109866218090421283247808063701030965899613392645454480263227134942919767785273179566858740461931513901239211215016809137686033600108361515053621224927432637211781345865051673744105650569327701403963649189714296730956522514966048790911746594268 29132877780264123612994797650452816149984961018880506205741494589736769936369359969507218045562229524567230329788213996596847898979774622473817131526493854094891594421203787987254491187087639920143694399047453618243841095940115288890116832794576595836184888021451885574996550899356380236845507042162372414077694649590557231575763228991440145345290835206763312146344298291458224766860269682122935415788726218718243816769941123137712065797477630648728577446493956184721706589745612587553560401774936616332730579898120624763603571585726665905346181919600879726636841388917770257420027399586792784546546833357919248913913160141944859128394193963945883140176491955914184859906314781678675498607958786958165166779170681048353470530709372423894946927639330692594914885628275336574677062522634018675487509375398960728176833749666804621102210437309091155963926272213513111454810675748927195471545762997193693264372080300811613649040863560443068691654185602535248214313309906260110240999633178814327585284771339439094620690581785129044509540363299055139930378780558404946842458593782437847488101216216166556416068062724481347160444536337 232754159012198790488719919953821247748539151069196653871807120131851152087091102033730246206306607593812241734019750642410597609246775548285179726663037260742491727709344145012924780549537832605372956529756647299635819971747906424105790669984107183818024038203597601630936609189790582246540530086654777117943186430561077693940243288907410162234047441926792983394622529532923749106743252918994514178509479064509934565686129038615555046314316258043425542852135067333177606080027319484201040093007808920249074117414170542879942884066871119588046819339595200042128199560842373851074726832729225637286635884993243167465737741091072589530940909379401927991236573982398938524595075242646417866861181361052301861617274044899473757690663076071823135888441208216687827652201253165655051845424976262379453815057684749975041140462972646965019818071780416655821308787111013469998029610780548093499622551177838197846774206293293223621743098604304493387248304508601419381419274799060329440829444247633555151978681052073001011670650829604424778428725617906297273590603442018160576668908281811292471280433445057068394375985266196786031956586448 1859567602463182934014807717586974046624317043464829245766279369120351262084694205236061112589600391662007604897269705918658130027824866100508568799468864709554493647856742671049027345683382280067320829334351222297791953756105473773539581009973458847647433717733977447996099384103413333022401482574303621913359782612612095741494008935484764262114444089756546663937257859620674117376170825109411429222424097814510795034883783319024281601301285471590693184170873488520054960277161117739587370994654819693758464175001785861855824717254425545750835188891997450083320995752974370325233812047576174086024784256645001384005871717415162511985197629173493951647987152857865289969335555549828434785882172975747417409263853197287547003118239816129689589304279647262533334423318973939102086038416870532313360811306855817863078281477080287857176449344652653564501643051347956611673694260369390646509892954947748569650267580869846923309841003518426574440029186147719663526979333396827906038834217212160580408953133153754146310927428577310465810394502862095363196201140465498485912627180530451139797352915140453794211063458919677176795568554038 14856857230290842606972805599930823157360792395409183920472309545201243618309983575269434163895771726517668759504590310842742521623105234288413671211910580907450381877311580521819867558114842121034269852904163470986657217092912500069571172077288499650620570005871649990809030675592746603114805160576671397068234289702012834463322613188239130682962804454597242076223570381313478832608687876819745935413961568968584946327256777676882877346794007792512304440794546451263306345735265487108139832765986767152763182822863427869472773064195463004292478387597601554621592084036483667552701090585712022578603788687516323612644609296598013564807054194157564864749402363707377862557257949103365283561130513980612413798110882115537278654505830974023153149315492612866846725104810245258213313882390373923264017774215286120893709574055072114369176994155960882350551990986629477174215452917654736213594730171974925584267492445180411752138078469517015565047620506438485909602069907970366091300979814185443290143275943066620343686571373978764788811243609214474264825592521378641632495394405366129590313463996034422556526487885826230278501999101198 118697722296079949116910798604556246453375589727574848418455516696527026037629106646391188078477175891425875250926062085064139276955071235744455068633513822181779904992825109207832017670205406898194800907994612354460465419708819330778954231389689006012551002471359449562860240455279541884199867972174120931124908806109695326954284462785872850192118104785883454377795676952158547254071534293607441538280502895915142125663669820984527278203717705750417954306423941571126010409403080686522216998556153242804459014160757628446723873494621324562346868547455649289643166111958101692826174451367246642436660012285500523938648003084078486317399049990455908410437702678003900952197134769077071092832996061871186994211894241418761326595401094166406164656210811635811559331612426044739689854953271782261481799702880698500409516646623964779393421660635639624756678913725805450705255463643165605698218498850881021804652782070087806947156468850864439368310915263598085873506018062983539178379487197636529641431169898308454454130555574459685820145974876891571254239367788665288457843979789838257231028142667433424158217623299195552112462607203203 948327351602288967126186290542166870383595872923460208972789146347885527191842771159179808181730137394138123355621266894353447581142737316297794185465172495757283079048695834567777779156735191240763497007894173140802300035953373694784072231074622962197836514087424940859400971429986321372908410525692088941904169205244783204463937651983856422851286903334468100382729912986779653985531787358147974715674395482935759479066778601998122185116725574313878398843306496895042979943133428367360357751332103190068350688435441640286521619882077752421449289305302522010079447827498541853120193014800390053968255600774795561378279921862599356354596435993836386692640306027187219234587289222944615706625536023796907649223714015063573811955882787864356286373095449397451312346184030993744668224969773814011233500698532071629547335177097178998078075747391826686572577050534628791429903376610060004367326870532600306358516234928434360580520771852376151556845007295745791393474842362910336972207274238491038831248953749226962927565741290478805422206214229389465566017267904072929000420341725769826388166678625353968904381734035043191243051596110530 7576604597754214970485823969261440070749912919452240063359929918408877059008678347033078312596013827244035215085296771223819209319816552512548705517534158724906393049939573829473770619003435060999390817932267339298631073309177161626012705743061701648919462859150060330749524131005520163221954287952183737804386721223631312039781399570138772128251874545441305149196177934590737868827500485301650531610323014874008626195223070086517203726388590259076085639156730777557055162759807378732329488590064869531904986219809365573749642789318135152116055573741798480935736806261420741007581860219139144840156130987337553504612251761109924476665742460442928180878933300688779555751202394010610078207331545780393708478426306162100652777764048701989545739452799509089876798892155795995885228121510003296720585793982005464695589461058686549184858802018611370534447306170811034711217918204358645662695176762961582170690093397448271382715940173362632365432990008024017244857897373355737627414306579041210305039987124150997593820983871343748806725551733898228810403518970257002325439648702021757295148682879400524714901232833481201492147203051475490 60532892161781893546197587398855891413103462986210702138809156496359045938529546231678473921392381510502183257590897148524112206945555657112456328796085540366088994525183949062211770329631706728251828761860740054064819896943609175756518725314954902113179062000836622042956507884009120816784256041444662317368259628094533272799057644199643176180240797780407929149622226709721687041767111073137463475687343714313695734708752790698223193733405674538496051559305168398645726181026603436074969857504441837198427812785618255605062267135815101374667196164863400966370161897506577036820145467625255984197183638120517402953666411443078827088125951444621465099799126065243620602432650334112841329513975331966425917764778058477687320674057969878396928639043763255946481642850860512294744313453271048973346227314275309808459172861884254440689915044015108499315383208417694518329910087918390409421115808919500210982845694930213992629757544369074564538052144424680893833161700104001953099008106231012200459318281267538054047481579434816015867973221803134185242201225657024916074651170618293455063351047356773515551928709983700709881394565608996618 483624929210685171577491586428290022641780058938833867879810086606501050826641600119203537615837597504031125697536596740727101213570777975670236751374619794219896895916976820023489146224225020823901143528402602094187183982583973161321312849836996416881590655227564700306171461115987087450231761840759325569304236269505955735300264615085422941667743912010245578701684889575531781395371316648520269701868080150591578776010665241948224453274672939468013215076845730065570769188243526399115936068357541839210494059249324552802955497406627818512933114082731922215865408109355586086199473381467497983535371693384248320499659021092634441533296689421993977290985372338022784166081083699613125839385518589971685816108828608469568305232403836613807409861515137049343989008735674429975579610722871321115253090015767825562088777083812495345617629138197292939552258596229754338008368148736951823774245416318807444184415912304864028814994100128220678884115546852476785300034958678528909559546607982251336827420802496171965326595682830647451959312352387610421670478606294177499426356742595926703436580805084336472807094773478092435416014915562743680 3863904528771124341131560461755719253820795396240593831780882855557428925185332297800632060144585568558873137560779663355684914686982909761561457881989725001859022851318244403094793309754949252732580884844850543670385552820973530749213809734174359772698324737171742334648629863922755410148682101850615078561661555766543658755337276901005307952254695480898401428080622855824510392850810648401753526052542402594379636194854024555589164408948441915299118169056008300603098186095990975132635995084451610134513510234546292004347160396521152449668842404395981925333595038413685796614145561696938344905745743206451904335514940796357184019495596119404188429434751407567560779861719631748191918277875678365085407063089892804145873751812567852345345467878244569703227671112158886224233657851255663564013963961042712226241755499292358243537617907984413157993558493078519768059268737366988020457954294496088953590888021591905456617932876035872520205728903677905123270232218854920613275984686393703896735000310004743938817615282490367375708000239593769270969967962297842297900987593201113539762032489088081837068792903269272938287673766780513747148 30870562819623094804856389227869988036687120513497371543377791358858484158798911680164158067502173345753531974824658621621264647757832830946578874668182565011570218700915063298293887141058429053261106460810130106899578984487691044455330946853676960060017259274193607623632444989630380007492785356524204502054886514518859070352847423630428012339672300596572490629849315292608360578416321094952063930011253698174428068372435932258188776262956930763588015279843076102921545351350542173761297375369839027134171219138283662778495242650389243174797373257052533301769650359205642587494174546576232824944953478295662726516803478013520745965628989891317610748837574141633802188155979603645624446728202564126561924017324705828382229848053086370827854329878397635879722112186555217936158309148187129253706905359612808124373145212839032334201196038766303032422061767708578609327358849979912390679198187555450026926971603885940087624350243954200986585608916013173707525356124145625139525196903971429416927561101192160404367311700350043305567413426451508088393660046411000134004739138720952666442236126960952473157018829414517672759625217053056997804 246639799915996233086771098609179660361460966685905194710789317229703000466467962352236603531989471424931539202597720181509274419294227563088252333354156063780066977018482281729922221436571053431903524186145419475191146061187444747464829350225956521669795400180758408796310551305582102873063858089219772547552145403284955574107786874684263209118472264810067484557882524625350422428621238894126930633834959104223479635766930510990899583181727433635373664233649541313081768547599609172183286877510522719448651750153625073414875034980763243086236208482815710040881418018060608309082211437035031712810512256983354838761459335835010569826319762814080108280986254145603250025353014883325554300321163583297069121980032578385950228196354800455151246139737646760887313974340665505771455016696815318805450403831834998893502308807830196770921250882837686020338247874486677401289745851931524021570725913079425228884395328016864550075926217879654218908446044434255987504634201891629947321658061869126283833955916602079010108476526281438904544183724691054445952196812094445606708471027995843541076295805983939784827076907943957303484265102899489534802 1970526239511399471999977764429638735060443310662841300272720592625858725718665285931403821927260819332836856186158367226250635340798403785185059842207258082958346613732825135291194597359933222303202009311434247558132323272946407340287491807752014372380916053502226507415165435807387509261787906984598538800971097307127013106999581223737765928151699735058726075555830087758260142450031191276688516966522626337613751795669821145677973596368313780609431174138603152460420960326951219402596585841925412247922287608427885447769877804958135869242626713580030528753212095894034969559047327665721545806766239765016802004025323667461026077725135383963565468003972735284322224179741581571554695038724751659060818889960946005111495975944459985378693090717412991127852031885331461384152307305573606218415240050359604759267259914829772608495023499683622591233181960338850504393199596892970354989209241143449474355012935785594772931892875054752907772903079142886495014955014625920103451251015363666465235533941669287171114858892976184238952695068558258970883028433387471857678938983462250192216217657371356990750633403979095473553261563003404133149963 15743516201829650723334833427731878874288252218012668082632522905276841114593230375829656180604998774605288354450499081979718578502686778665902136494225211793250952907105980488836969226399432508337973792243985216130021605482529533399801894101834341489024987122177222841844864231649396025548038604741083142761538915552748685227789017216389368073092794552403266133749309104054716689093193356999026487125559499164695683105862266564811945041531690633202691018414893023717526200575100629584442289836684273484617638686713824554614006529953298079878631248144348686930764090018601691735258230300233900481389694851383487439703624828961549869162931903697056259882004624691133773292156225520603208478906748620601071839813874671732670557924833055121377630358583113844994012436477864242798820648578543979444376890030484211376654710289091648788080353148507187080925588923724866861352198325963457137798249779812572549235288532026515184268856570446585598220709425046804496619241588772151949188616499083766757579491227964299779452181524384571692103384570703367400403723874974283122169840910385992005619482715313640088590093891936064687360403452630824613720 125782927408665672198761773264065121392756155772057867851273597309835714606225100047976263626888547267601718391936610114066641823391595346769344369908929109098613327846186728221713576902797223291103927814967354662757611337247575776753672266093707895410691772285749773937378090317799403898071476771984422086532670956393681291616553648788423628343032987671958995584145332132346404857573754007955309078666445852150509670404359112310428595014793785136267255651704569219828835256567548697256621713921822270767513002084002365463826720655086745120676478938506796711316022784771221393970864211829135342269260094199179505478827414070451195409355208055648373651671533060863546177802369368309414752127285947803797720900974193078974560710371209661005622917400345535851966507190677015232657314612479740333764305063964521699533206908942899475949015046042019383694740843448934766905356902698155797366579284649016039349979551936218214571533802055486583967811601166658277564422369389831675334854440415338877040445158883296572115832749076176751433927617679112838224891146152345477350754089580713333731745732042868437433838016560246718732398572047872236045869 1004944573667690105502584860349834866804983091380378904804016357229222609129920785320887792281296435260714546248459442305350796157030361010123866113765034315981683152018283597392499040760204816909319020403990874161970147167890762967801074865396949181729934589694745179188000217415470561682484417522828130908204780341105160594078965859797829462441460432402345767329531183131179214495921293329276664969905014045922685721579159043486727960860440356021036475824857795244871261646550535116826629650601892909249255179999202150149559227463957159353937048199967898694061647236372538713058483205487130531383098183126996498279401744038618169089485527301665494786810338523939615747664044134570297243572228869256489561964449393186810633989824857876996774662147401054065717452297383340255955643376508927326827373877448395237505422888561176485570060503491596826921283966360987806057387544473585973011843444767804851201139570864970508723001331800976984897989295558518431534204708445657941233757114976858034330425995167979207877481527658000850234756770835558692292003517993188416700343490105203482081683149955051314482122774374820574552203798335093849549240 8029027936982235979717189627021288812847766696204887884356476597791190811515597600508396088001657653418480661694598589167614972701396401361797848289862885101958649024134596029256010196396586199733900679300503601578246194732389664139180986122915887859561025303981658599986710150994508955426185146249481391992066863750359772759029483557717817699583458742808225729996986201390620169098654065595742405458692194884765698783494057054755877873024528455682469146868773167654533234718291151863732723014067391767863148299108929094208318978055085813807057152622315948501319798467174292345253815527937330406917215435240258148322651526761293762654914550792842019451855805284567764363800937259049127292112497325503842521358570156290548015040146933987934466997332597538528791076159215557045828770616025391036460280090060111083264502707726815309507658477457454320673767203506757865402566920820536482912988973507023973215355470712564960638479275226582006262125249938267990813857286661816931572869350514329281645895066478304631594646419845933765294976558932341038297436232658973344516914934662043015762424864876832249683125167622882211912479761222619334029821 64148170667165923606343468551810317344368181575266987402393513233465230970391550073886943681109028105364253147062856980653673817739951720224511313168060337375687078118270109499922179128429613849316375424231044050357375824041972668865899323800507030238492275052370628917806077592926551642532190564589193612366432040565091681840899825894107571931484234432184997730885631207797951492283344230820934501891970527537495749614587827721233173117086897209315224691658573647868622095685836177404682998883270956874476906205756416585993001936584329460402814318268956369555973824506842727954709642755242133125991885747462204378310559830844875367680263637146688046049682315823134712749619970140196796947500875552448542307383517608483251728671258720571122924585081669121775142496351408806843746781694025773932198439668978322435181525168816243688450622151273692613529140521348407303003850902086259019922382122645219668484477455362468080871337864182635480337009075153184410929348900227332997419341313470613234702861880079616579897891459643486467939296927245629601324286490598090467659035321073388848067192581875721418907835098989730003815067377246760906902304 512514349768593590124286414962010401207412444636584506610993531968102777420288592967780600354788499712227501841229515153891731997129176794275137932473697560493878420549270652830137241358816399427082855286071206420345356759860389413970173320884826562843015957070955358835090368996171581143160740612670688336100293001269817772911764420851327700846161976926672779590435128650462097707860429214493215633684935962971589852114555479921417433306804416263746577404147205321275231844719580581753495241166753739838583921937715147557053043774178109339819755224440935684489619241945223785298011097663585313376231752684859921252250654260061297619392729194997813978957097852818849192830747475724064927970760672985429079994550070549746297871199151617677536503302870421959627786981286820004647263910157629241319302995719711686090476101054814009572680112334097086616771893644152234876380615434940041511025672992855023668578295636220678988586128553114641692910038139691854657639577400790844430486575879240951656678302361459588956841645287719339737874620332325627258096693415853981771231328854160199083999603392943223165105839190637496152365639801762260536510248 4094757897718933324603603708161680161733853606839388340915798283145080208872230036629516477124790828926767020388102673355409136959204590058075476271644024880769016838039717529496656843994500175907673356876037281507903340666943356686590088927639553771304515500323550814799411851953104855972162974799687299369595674305333511989459241882455087448628167139753502829878049312581018749320431599538926147970752974178609350723236604891844291845049953664954595589418687142148568177226358555184847562950466611997816453882965527961453414023228437106438239689326516500899906336059868481271543548789908945050731240936675875394836005179198277385934921405352276285314369093204472291548619055795338948776027283784187107682144729608718286011920541422432317799130040955707301421053662591210041386758434249905156193882319243287355045984830817679793974905608782796907234685388001989078756401431721184128895950162714902515428322883862213783896154056648072036290732115111520115064336416926150343419271091864758360187425618977986773470227004198163907690136939966622800018237881647233390425737880179585727436953535615785509202844540546767570043247191940451096388259068 32715297513289416672974687341557064678877855566659475696004212874807229856730229562825173835690473730764912355967409852799303489402960565302475413170399487058796733323707865524470667876472024963409044799851698895045138527665333322620767633182140594488415550598202167417757062457610950835431268805494607797193569048232147470087130925534404443310233852103015312460430908853330403073594890022796611556840777073780317681754113256939230910635856384635522002836900190928427133533618427249944743094852641389371135827509285741515768783417627080700240478641558714982078947528378926503180844734726316513510176653244577464570348050603747012363836910548880175888137804621085739454875099998746953048442423487202471583483189894504561082745100913058878018415608695768185640367716053229314410398744336424404825639525893279448846425852035314142678066403386725064179206343578103458549371053857246686828661693473068280324121313677350086377568009224889831589822001726064252580457301972538324303751694740015955029193566414522165000462758448477057351685660400357501183853955630764942890034804459499840608460298891984395121370784217174312559731769395420067008323934878 261380968982100698091154454827159034521644550819365347993154232764985736810508675430492042904076125945965693244026271012892295752453198608174558588228574263840342278355939365045768130066181438462578383971404041667106424860519542758214581572725989109536528330498060005745028959076866683566685412207497262464211884124729643112824481560943013743973051602836166652215648412878319704391963105370892689694342239404270388692465782005947009429047381799965631235116015256367497020781160368424439307064602563361981631452778933388616753909621001657491903626661350254596892073666782771835360530546265149800876900496766120311083195665000496383201383388157917531734630318824265769158751333578735099825314987728040160116280761767365578620011424987457491047499626636979270661289707693351007960621809264127387317764840544377211654323276410302930078591787081504744207218254458816829315600873776752267424527090547067860358888883608231371767416952673709866795189864622308663653956010450962958207344797526293634975322695725214126270985322663095566350241838141136810390386774245059105890445636097560641790698368815090630169775243584797031508803777599094265917868633100 2088322160260368611689622023649676297096466760833823898248488295398507736273778232884132950275082794502607665090266855722198149990693845761965497696282070049695629721705803830535199924874061457824476380098695729452003200902318104679101051793131598189968759404080039504798877420214599133793497308227551204050326192897367347345240010830229919732196646186824120712893165000267333641309676582117874092413745250465759347519805265931597246978196495899638459392545780379394823132512977569351589576873163273531574154014101152932763264190718539855539668724338277864744293615056600945731463193069368274092334313955143650249313128331436108678567492211423311812655749053358077648865318959291993477371944540246833288908486603060502621576593373872613769885947399680732464910398533967187486154574289718210259124272685064810900556686430196167844069177692485175124636648610566284993076166303909253121046253835280761340562939864280103185750135903785888708061272695378142763134864371122417381833020850959403121058604268148189436425530950719021365247848145725298299846270693483197581587945234831324262770444897571432390368863485999923762049056792426840038667549450544 16684817997843502306708473573054863863290905273536973267125756791508075389480891903613462249669469225578594865286908902157689483168035920484740102649782564800590288809588390803863644024372411885550955176533665918031464858801839026596424573806320577700712362354837878219904340635587512806360891498126787906309244755337963903330179312416728899530537934997471609932142429412002190920754236433647812323052651008343977131529729142677063820644199711932076020650794907158185483551905198821314648721032449870149619414298308207657719141673662905895267791336178142854419664624929528345277728102514566824359846790699246005038537024158383599067786443270642656884378485595130910368714739500476756090763401956153734989814852726710653236648340094271551510168903014260981631203636479835031176128924500607486053810731978940588586023936666206002337568109397826021639381170329198085172627360770753956538665919205402668679172123679718326035892968864363413509083441403019263527593856237038696829746751965887087083180681351807013239405252821427058414776201556966605089107214457503261771142527010621385820786141482275731460771346766602187210318741902336481271084205787794 133304832255729565274962746531706855941282609819599182533763753842398430856715557917562348804909669604848415628400497319248470634464697764233385929612893182955434714615552585221122736254979343796467170508529330402232465220752414580940483857235097603996401915118820773662301954106059871882627721603025208401034130011935706870711543754804450404531194882393047875624081581760596186146130715266971425577238121669135146574495005906624602770635663422494615851509639023912747653262431422102257952394882617470178883966780686874542267597898581205379266393353827308990393279757250866623614140527834722851324177772426189677402764986751346221693681941868243155526726871053733554774068885946537480987399843069702096213364755547639323647616929031248785973449356802869254865683183990156807671671415674326306949771025423486985285822998029044058981727598081985284283753367342316462982977441223149104336352159306950568068570544017096688992619129154844763173885929412827362983730178857146671258450479245407974768247931267471510904054134365729268789110684324725796354324699922352098778784213623287969053826969677291737675938698501822883897981537331450531901145243919093 1065051856304338893006602651699198434905546870622871792154546195215987968906636786191034362059830938158195926420055604130412944785197943526243741215054448060072155389528001749362980152119660926225448521672733079669390908142965269810717836294111036623161980868544767905709355221459765719161961041139278254054423383169347685042089676978972575349535658649275047751697102980734451442114275812073121987270974526861970814102023993742948536250360982615604672536677858087199710375652112197626457628241544555673881759838240847940015749555094798545127862319514670585302308077688142510364983953095660855229949924214142965429163052572350560694637571655108121927844566503855932853080872164299743831958327240120437840176217392006503536455146200453939446806746947127191764151492753834072255909707533890330442942259249898457767815545053542402972614477504169170810789521186717906095530385301751367040498152578210580322768294664478110963060058456670055968859925151314797814022352133888240471488247722253385012650797039829430698200146838849384040329841792755139844738322651890662834337083008322636398048123122499822217003274512255416230379630774863769695460693221184760 8509343506937419134843604152030940991635794857791892089856318484072710955436667186901488911200704238166573624032921204778904797476936218828464144963120758054671625449674862323541691838508016850043983233709505589408046159525802172276685384382751737817526318119723324936397229177480319136115727647277900848616598838853029379181781554029328727113268286782319412743161073289212548279159901437269675987895996726685354874016248839095524931762625456993513206770929134275861756840761415451948053201311846693274586676553806663803821948523779876522025046800593712865675927372675110356951962363120323553327265412264839195942946855454052706629786357254317924655944688570632654831365917793636423059653925840827068829209074878076698358716955432462357682694938897367782049924063102887317651136646778920316514553186975361557399435708537752300026728490191765667769078956703716700520382575881180869138853225334133881512609274224024220832979650317138865398530338146806199875221401959553122137988426270040557522735990149477305547691626112064466792111555581547724289367069390892343986815076055679512570539389120647039722367727941944949647119135868449778983217264469080317 67986361343623539096223669962346766124540945530649554604306517179369115737999904905572259850047471100910805249948938286197573462822115386685716950661037908257293517526753026336540285721132682253977051704150130441061307327585674401621579027739453587779463690067982831105508249012462568420983315409371417733521123891394763996389367846318454182771597580201618555624454677287629520819822386932504990892867602817117294492839591924185801256953809064275146188090956918873363448053729617005952454887439197635182108361263630543119173940802507157635928437641524988910197825702901409375052528044049185605654816683999194289749494261764727709350520182664371464618063248152660025481309653104299611054887033293982850300702468568886737904633230366754520204558573409012692858813971499632324438458109546073507149679232262971939613215166987430889718443448149650896142091220196792951671282479562752743134260676256491411529297541069198654572194355729337029445813468227797874084202603509348797556654593751067021551979086891595310307512633471841734266486592832440872861110350885320275071889653118662995131179468152150441658603926390279612734390553676880316611805963633416934 543185265139134868001745295516980047879135964334752329869476176351406465948803432646318036062224683901623362868970198313554892557719469842286287878861297389239984513964007644317418963147987450212497560182942137802154430873510430174433167815065737730827664554700913970105406345991769730130826304936166042821458779914994613386571874037101078762939668747363799791882942780060164879540040962768107509668786515347563060230940802418936460440304802967013999292139639761631674009814559229962232901110327494528262568370767266769902956068477481504262529455557368455361223195731785288100544653363671126660274857876487301815352019744652065415905966218361385051014488698062418638403539276662839602170828751020794048313261073946425678279529820829147118694924838590729493601296523683260116006442154087188621965061898386286253683829404449176364749400333430955289195332907381189627061435116093958818666213383742727345271802442521559644740460900202726419739880223181980705513206202790772850469660741310905746916180594481779638437225870034493341186524876706934019820522950027983218085600198217109673864275002666416129118366168298370161218300563367855287451178113489627212 4339848827408260608252255148349620370267287805381310899597905001009514303852093962912522875412496666330473991229206156785249996699388587508533443066453203419905994106651025290974599330351247634873942098023075281910944728366641954475499656563177315705136086586256707965606551566495242301826189864636390718642753568870901415827088070009450829337549012736456483629458475977214542575035176447116890182128007217766295801633170697526681842299609775790425160380749628202383678695262864593007208095040047494805593939108952819197950470469905578335328759219592967076372155201255097645943459334191491506729682572720086279763874552881784210582588442105709959541800713424851142168307080752044381475990782975534299998452902322329480715136804868303414969706332945463862982996481251380773084356214593065450083051593683602248265106257731917534071596438170734909909962019267571064410873883257535036341928433320983142629683957233721365312259763131334045298719770509050074440182952739962109919969202364098725316827391228213440890404233805642793068608453885575956379373094596426314545912090328046665677124491349891933581915608020550043103027476779597537628579441020180018622 34673817691934556966650764414062808948111671787349081206302753761542721066902120520545747711775059546061438439491147629349220952321038876167730618412994879176868781829715603869630341130173587022696528634732260599228619793457247352893980103851273687087182425677871094748452777287334568300555859098295427407251930922395384910402570403130307893591676918253644138029903793365698233031219354498881086894545879397698666600992265700260266209395521787543156534846865253085450638605032459090160791598742970629420150843199887267543064589797702323115781393387781705288602503225381566769940091567479752548570064953805655412556797724234654181201885992182134019881965006777835416747361915842968879995533545988097027704304156720457395077738656953736182757659826396179525679400694714380006770181199339855896420371057834132689754563679593157679073244285804063517895588127047164198846919967051152015318561063922073113017799549039457564323677067773878285600883998458528386050659017264844135777685739927050318402453497393485038340059163694037289811049611741836503389721538304260747987627544884486760854031291797159817195920321790041125882615808096334140952077768192517097305 277031503366347021647704370478808747474304636118202370570846799713699138962146311908494148822926900900031214223054350904967523894821522159338640128457349717411428736789932772226721219173988813531627073569591359348187786506870042849642425151941368264173708772217171276241766231086862496509025538859242676626521151647803883807312642241563588317770845319658442788857723355714336233301332252539608305974587695481184411262389973288942399572128924894960380056504257668510940952508292561170662682312042981371001491789279649431381834530162680599511645897772571287292862228130148921385938818397405315038606722843196344767391883963104974734875957098130472367330714029914255009881103067976826567245482796305184916430586916580666893142516719962514727120296782862429042511291952562996720574521810190165230989053481896722268034892255071850325579375615024061071118409647237599722779041343363580085084977191846584541171614487164385498457803595638092813344906072211842490957164487715176114729325420648815883302208042743429698793402820822852474857040082806382152618062591014049988284093373826308566198775899466250168862344161738652479946500967221051911895576308977691965054 2213385666604160081308073889623425076910748902768160716869613120752807048781628835136047353019884487973416700698071949778025483832311648696929260385623135586303449619270431889631021491338390594977091572984336538811964233855735916730263565836140428752592118633474355425161831272961427769193022951443302968981593037150909817670438706604280665153197008546212755955094646571181705428659832742194753350935397112195995813427524329613657621205114180535199751318292167980216684520104601202874574160513587309103513468737174304595651711101485491995947844287292238502792732617091544294044247476056629797264517241090587066758956187837299720662303808324509677746105002745494132181012614576750509680627033921896766661973514791703912845661513259831912709167851235730252724451748553519317466866265692236643354176439698343331280559714671875012724004163625536309925401687149099044881720956173755292854344982173089917794282904186374682205100486956312060506658256175328023657267165011551133132228794847840550660922480210878631539759855946152915486308431167652444629329056989598635667453627567903519748347128420983001470240375816022376525885408247924970208509577507827550664328 17684201875165065066457134101007018347320970698260105132583040808586297204469931717694410678088612183206321296681966038759386136263788298577978465229476490341317824241047600614941593142167391459917167171740014654742450743771546044275152321053573592625269029229289272188738766694227683989327978954746124097580093937163972042261257221644067432253892054309543228207743805747166360911532887112476539088451299246355675525700561373118013108989524511393650067587361150789675443096517146579038666532261736531332752407630306253186588784781665534573794429183279044153924172507797483319790107620446365947553453878788623185019641585759834605216741190008143105379749334908714915917271573649553392596752317356108239826421715230228581974692833480499474843891357960113228201252080036473556885957092189249424859486009644455038774620486891881886869480804386981525792943974975695349034845372093375430826374034422216012300274159327747325386350536155607369721064165856137397652379158980558313374500288881131351073430827619759200762300571379454860224685266074027107369358576739730566953999608379331668505459085714240866010102446047846750395746037257571347533919080543573050730764 141290925661313787330842738644226950207695921504227974793714116263850917227071490005186195473140046146671058669411435802796506395717642504654061788655465365808645971219412984914836953266903895531290314836920564767169786573243415272103732486551402666835231477606591883622371120205703380632577630091542185655465943454862766245042457016902551415524789640721433413927345310508820650379962120661399757890263766241601030730200180868070458110627998663121149140567601529829119783163016576611477719535801030832308824681496293191134565359133908943531050287989474756916810833771421843794938959613663118732571282728789550629477755062277120460972198447037083625946263609719538824770315392325056396318850820517111959190227546345188798749328339738811486742068562413007806245061147517891097005373881196325980021833114455220516808338676889223056879399671149301399240337771238547186431375319641948943838827716991080065599645692228010605606974872637099285711992427244716002274860343600862540295844991438063843974756933165930233531880596473676922129591965939215208005865719874488041240792583911792538932454799391585289943922432959152974474693741714374338435615114327983741765838 1128868908546596571390714460537650798338989878961821487543369748834059556357451127371946065781867347362461396856131838190015091133961303585697794840884746638721561254260337429155109484614821706286284419706619374033514322880676895691269738140096808484191292512475300769866094644854577969116285226541844529560430621331247797205181284269759130843608597141601901406875318175564097410345725753827715543740977259744063515120533043809253803743762992470500202583763896316033675685888828549224127207333344366749346779387006196496626530032446682181548762874923855443940458670664258917240656510423838877698171721048975116198307904817077552398193414321951932454045429774465464652804596543333195420285740895213595853049310790858597085269518274332830388369080371421491156609329097488793904310843320987866505023835536103202867430278884263103045489932686510519212023424593287448202654361187102775940054073333301174873337259925680224381044884904579448612696495807945130984637071620995382692503056880218599308260918652071735050353165299461604262037387994709147203777047609186996196037667788684018141446074377018135469607740560356114751631104117437996969847701030321501864167458 9019307369722338879186208403277295913505952882127653822573696737590491438764409313143531886717156220754660635791420811663281404505390391236845409106053849208384922254060232799825086214582422425324706751046790815652221781755822325321249139261882155391343006498686148838514390011856119388937128497013747650858548684053064074468195468193121348014624081930867036852942802611041375025490165117816912964173840791947901666767618105370460418941710087780705221688865009957199983317056427411038647628715636628404139126111479153895039426517031817374758786005686112178776480817607627405747477879239193156459465692834878084641051535933153276525128195086420127663787135037771397713003744139039874338610996293990434874965214587946602683483856651368724107106307986936448453776112779198702971150840733326151617749182169045217682807403237873007933083458729560177283974414631828134782458634038166481898614546051885960633374753334700088055625130515604600107747826510871892348557256211950244695832910449429432878578542247426104922617389626242203342453763306934932269850662374222625595521613832960929571749402248528001897142251449917400845153468609970777544878634425073393696224313 72061499824894218999895792287489852971633175613975740484714290779033788393064899319371922518787350364731075328591691171980060193917332182596910098948399367451751505620398872496197130206276176744635995591836331279169993869906298899491014784181736006074626395505368775228207215226726410372655656970936789665728642180723609850695545898461506337938512210790852967373110177408453769220864422897190839551163508211427741482862991775651337363008154482923994436061081449941005576717795060981260856420718143170640287711039428624457063873692778693828713529063531889711294779146485833233615930538153469549483966653475346970286851618644453181398650029193516288819259358509142004388781467623629934325451955331426969358139698643215105295914388238364966232135383415617935647181375663826508518145743896410897171793316090063782192129575248098047375964197200780767273204269949509699406556405806312364295633793762043361216484640290214159227616458602810333593548323089116040174273928143864140695030415707596428325929691215739231623781520985949613705240992790275803199678667302452240954738180082014246810406156702834618635834612383623954033208903234956028336121230290362995901474694 575749857633679516513322055789420039588730968641457067964838450081116876712546970651758367365761968431225980012766683488773556530684892407469093435533330547707811374889346248343668842384385530153522764087171513806515042487846299416925227361823298977975167956820822908232057354790599718324899504637029200903678409853064284042709084630386338665798507033629784862282161321310400183112872282340599167994914679492590244497375545016142654744479715160179852167413529699606468325811113207268825640867266508762469294672599295014041858359544121404930540827865148634239210417576870923544212922584312847165048627450457608322160255023208640338556450577284776622104192465371903584099914641144763884704243340133957237254009599856124958487702834743225270716079968241192448882606992368890461379267304809332933675067976917388209889921050105636111754409911355533968391074837306318976680182604811083164062311799277846232648626666239083033896329904524793704734118744753297234807491989315801040050287037213780184718035544753842706096039554129193341454160318154886652014845041823763881067853103988683490041700422850750016875384428970745602172689092317733668418506629834078986481328552 4600073955428336466095701378326790812736279586334775276946188853957961124072581716520402964240140267665576891188512124641684561450457676145965804831169800477413409394998004260662355176595634017215546330594939167294162958155402644687021244460643617434882425330149385736125934832990847853224151067208545866650969072367308300665353149876997037363530664724644866350413470825275040238993611781579656350228525574494369044030093578115260124504906760964206884612203742026238634039726252274280105851943588256926688806244190548079277627598277006212327640176375119898550949685693770156427946591484786237022177911506480696286639234233329695196814833787333963735556150881564932245386296639078607085362304217950457681541746228984448284680070317940629687930151928687701129557312186751188920203687529694555222080902543747315598035345071493596614138782617188690805758719133226913147013987535940124497683874761448200407530425332513094227324663383190081483051915175517715969123563329111931289082315125941894048738904909534093395113807168911723078520457888998941099902587708879689516234638652585318183097552392932758479454604400202039509150483110125910896771375003965401872882886430 36753289898373956280178219311909431161825398936891477322333254487823523718435636270995530869771156755981115289070430698156510011691202963093696690156906719000143934434867636659097688573528321290646254872391436436863695143969311247544708828960170602756921035590573450639924807676961710424151268895387428322340304603751215580627619223811035432321687025458321437474012269793997922201293407772103314387434262857817288737738395195447341756234360676751664094891243642166266769102797189487084623658552549865472367583591957829201779379817741073358403564858848525937062072679020630376543820870187986032952107483626444540979652018741720457783186032067838619196629607320920203690549088734985654221618706038197470179370090627539295298908937721817352836471222686506576543024990603612442067766076663133319548840132282698009220721383567366328029846348270974311463884628448366302601118061478353969313216983861025185390829719738665489183301140114587354754799773986686234164576906839017780881930402347839346578866728277467764469060705362622023404421675755965168416029193810083616898848149030339326309346735758464490464382167066149798771953313936618778300576456436216224538327825308 293648683022455098988183201554264191223317404833352460465267637595855940653340329720183554279918467790130570673263331157940151458693320876642321600094873341406845590759474473981295139493913228257030372255824963886136120541526737468033176651174333066526839744359935117253006195021513579678011037404985159831350708024094085693534531662948800055902521863649598178641765788360244968370361943170012141377081023569249848587302401136812136393556800181659789459444203203301972150831628142790522768004744713465917232799435205847448634844330150939844824391667323081458075949112394224106653936686892447290870566441350254414415807363230220085467227839418496425079341652073333524955645772454048704481108777275686546333370193524411159758376435826855791913228746803675863566023264861942192070510157246003521057446159540825313915013740577526702442856980209057560821356466087597138973821758631766165595950771056580633624596933069223185657202837399958098087278678240221589815393628602334911597712754860874728975741497126000815195903596557701738163854681788436703866122219831025201858840043026230278001153535088192070845540916344811583949370804125767504198837487368952502362630466044 2346174579656053882161650450883302432805143598278721467458784051801233990593335460305231432180265055700007963055196464348986319244519988394432278788308583001438329906110837420931443794364719588679278352920184210809311240073251559121064722768674639965861212752704169573862457178897423146866207791415379558244843537944870942669667181210666455798492788717030796473064365436892559028563895538752248069256406809689236436720926617831064630826666394724220185372477139677932110208495108987276207219564027748189953197843924968676316225563177746390916622435436484602895300005095260979130613692862801613140431730401853091062169554263347311422038034287131530447954999178017466042311673041149761992586602958478177138464982750400132184283675538371679736042854185791051293893847796711839830844227631955519180556722673628525998128450204655180659375955267751215769673709760934262850936638672688871216584101729311182063927217115454509761245218212717978443734562442269240605729430328468012388207554697390059761550985923203573372568220715474798760352969567934766174719213609377816463396343010953346510547678476250933388015211895684424751064518260801264433471135219672264614463544535391 18745327059311414800345536943306970359294068347577999917621646656472765316985380673597184187463342492468917064148608853514080239207479014673897538472010061120270523212285476922556635974312256111253128447403693260155873750397236933530282990338094774665472332393571003035527601437859007654862917980098172877608256368605890822280403017376862649568995035417816208886790814446216052902102107423080504786618651951431816853490199247182574728645233501938195563496910284302237519497306550144205996680904056387593764852515513960463249554427957413226247412665505651160859533015731494437714672384674402192448293637144954832799623645583866994069404724629305721024179128893782265912414187874696222764327496821841248990159622574002446165219043792052373531062913242856975372048510433499174583131300983931040840054154133015172928387015881657653703904278799566771716531537944147562805568397937684315733813399881168792939017495285537136048163135837138581726599027867878425434633056408761346040136601433921850081238413782513733741294720303993261016286685567299666756736117727576041962306883748990611848242854181484907921275727697427402056021903948643776899317477668644047605089303341640 149770454720311706864821401148856098480977526793201880570897914751393249108452161075181617964505207655847340017348055551917364187200868069203456353656783153043763999654036452551745669062440162567657072856338321821348103147159463407506631345466220817860438495567586339266969728790443298975872931294817628429566205752883714785581514019545661560086423860983347473795691397729340285807884062475015359095729438461344847025927195130360598608195369195151465937354582971964768461808309264925827002468089862673064519799345121543292141804073573193372537327886785290599725812674776640542187876985339473706373000555328316076085053520447387994228785727993843208786431506655531742210329197555626282809535338484677580922667941979745790397370668754694787900417012479196109385758308059430610599134108799121541565123914718553929443945780060063242309729578455003570673509560254657847424307526044598341183404572537201438244415792626026867582453829240649151938387474709389038196724717239161187937665282476282118265710217159871129268397965877947809777980849334536925645370557433916693304511116472105584801097563717633932881656727865707685186720343390972618958226192696548630366630384609676 1196629493782055876479958213104518025964603537419379132353705250945804346151302936876687171524408718796015175107842667646966294872055744799655781822160067271997593946256198605229862984087560529550864420134534628808185012345276370101609031167931482946358598951895803976773174075294093563757861096494428996949690669583441071240208468110071196124884030270641238623881772241536490723451291567671630181772708776904063441861512676963914238817450371137954062771311861264624129369608678193923587718002041510380325068079872628878141834926260911057160820132924028403990407302285004905139501041324183267317333296940308258523142973532111489021595828449221788906791522433615343259931244567412591123754317117141115832970366975700091984911394932042811063631442679633329234955562782013096838704986799368860550145165948175025899787511746005156014426969318205251417321662405640125290832311132758071470769864916676849497736943514653846476887234209511765173076991805050932868462102546885589045125224985486195617658590076724015022341005615958962025022628045845091285845529270975734794603688492717315932353580328117385574066467467736036553844536233090226533348439807299565988956421905597348 9560787927879895965347844157696813224593505044519592334334731319681108976599879122029376262479152384097304579847027291818002473005859394987746646266243659827225566898648848105577267515491531093918611106236041806265657247797004972189262021858531508110469387275314553431904157470573885769364035022997853747196168211459320342089207554247281482861804597486210884933783545386613314506956991518370423662149307904151947857342646105981458974012140752367571379071815091781136563152750321479008598083759065640599697281290698297341930839539810222656493513854426519089507907526874328742643447009218139706053250392584245790276436349013773705997075933733812606906086967982358801907976903964522447261930342044180067812987006320476473164593485080808883729298311538334552762377464972579282241399513526423139247561387322440352857448364861494875062615968097419536735147607841133007516143181741637863578810855270345050054875947061154185966186102667311466721869880315948236879392748862569549051315582154754047765090116395116696364555762874719234732304538555960762433875276421261683762212744650709706956078611913714825577162726678560168268962359392887172941335912503609669189669716284652578 76388519714138935741069861928870113276154416679061905060857310316364005930583514387604790450011514238949464088330796983214231351042237306834045928582683980676674845538627791381341065729867471700167239301540217327595132911323624693254289551865082398247713003563080146807450785453940347259720309955899660931270484377100254807453608723766593506131348493923008540145730970124979777172857886533084033923791134605878206417976183587210337332573761240085891410035111260330214589533354242202911781696656340406990864134295218524236858385759250705663627120757520354500165073528924201081684434083137592176903124520248858057578639491757633853932080771497363506936079721955537830875083305171741414542391097057779789886166108314679773867728693902084075109525256508322279398304578518859566570071427411019933734380513987213767016291473911609809763369460159899678093424238152679189777085709562519385680624937469833900798471349814200434041218763428426469996639219901920744374132970481309978767609086959233130786896720724066929746778416309341913124943105222852099389577355278061302532341618028817579565958905031980433318296281390261599745981224992939322850837925359261926828050254544864322 610327487294012109592023275098013654284544815076720082150087376136274795253741295452021495536012161312683934494450497451162936291950957221120365498817581842397930484913099865464092840868638662679330230663066013593140659979176231951731536924179360289111551376788825403296943248697376060598221060845472357784690644137448967381665363494736332342777041753026548782959277966650982190064389438789921104065616250734252761931888823378891762234615248367388460330377410402708213210605510398653559778706815029004097939959660757634419561275700119220551661120594471041254054895749837858959684822909740870185922105910093102326813255470239096084293957678465308237028152022721557379275388681708577802745216001094864280169207764393074924349052585342642050226637407018429618205491255686329279236429123925835868849653885004902088635401560856486257884019763682410130340854929567143444532702599409117163673827327804356342131514590751827630858951018448046858949897706124106312812449095414428073779166045596125254454994781648459352610688712740886680595686474553738816757970775461397883205048087823132135584186811807523801324445594837625471325008937846658410959670273969658492890878496128180226 4876387293074740013556976856861416726848662296071035343228739617833561499870365145827029131313587313015093257153569826047597880659220373722552030439396526059031426142919428450302547558452870349932513747916169586773223653677925730888012497922993641870805757745554676538255198837897271758574761057511607055815102025329792338456794950122514742858067089995993627049442285559982925137150612359173650829719259421207312342631896810423483646190658788456675109662262770329085419092702633568257578775131367439386540578993519926662775960122208739584954210937771083612713224169358706582503185876607659539358131150034729256443666710890509890440797742885957774563130583388947568585178312020228892766012985804401535207976068955573357374017076342891612873230183974744151857884510638379913549868050365775764813076722258385650104684331369187089834129149293500209458764414252933304674788480079056560527979818648483920575991191526424215959135513902323970308648390657124820271879173340836261210498537441736274676685964544037039901678600042888848835272347185482587232456035155824145368653467003812127121782565659928678225894027706397829997040404064495758542690674519902074672370257511507693420 38961339280478861970724231467474244564922803622044630830033528783695385962192522732172776588726760657675733035458897234729045881339685703970625287588833050114431664040137860428228979833728794760319890405976666120045684341323772393109683352882123217638204477346432740990863136075363686375530183215154813927367178924494907106645318880427802902073402322374674641925879841460235493180354436810168948967990014518854520873835172727149281762338873926394639265101360050358261025780533623839451655336669856954864421116775488634499810710022410539471126733545753060841352628187727105980805885329490454680820373912957273489807181675777565412918903705842007322143117933951540269313754265867083172250329825818643990051185874069729870231741654805980237779547908360320811612767359849061180179296375059601223720006953176326634083434826941156867338796878527963780649262234502120949497605901548338563356444454967490398470660391403068656156786489294217055000843561136397715478999311333961595260989061143342303596286349552083086261101577785674902381678776571936674829369272153138262170763191154567460046316082766147891603261570578870647136598680793843779535597557722945751385825002709521879428 311293453671830264841260237217802672590506623562217183442583922756859975306402551023705052158579251029370782019695700775536455891958326011582127822136955572694603454063654632598992225353896946583470016688814179768138496683272684163144691272584115857307151916750536099925859471145860457359014366231423399594884541932239473657292806287666143817599974173983433190833114152693084077306639175686054381815022955660844763676725847645633309286805527549423966148650969575060977680158853658157863809342681118229867221481518620320893623113845699235061262564279058467447448592847603227355927459398889665923820013882642328509288143120916987072264171640758805014613560777971332184419302899929295833964151534944589622281324839416761823712963503888510968800890067170430888875467933155371795087609619632961055378273524254801080912167243849632931837463066471722590810078239779992860550770837471976663354353137697465655840630328390979675509608138192642392710171968085490434147339266028682796385219780654057134451918097266121945439528617804285015622011073027430709279380000865331824793320495658936040405073493057708109603953837433466161604108395203463839892283977343119572738103613618669874228 2487176022120660829239560875285510705697643156167004234490857601278615147102681288000208816445735698978526531426602939314749927869000761167809407345793610010734142123373142532015139857897628283437392071938806606043571384014016201723171664766360957755187450329982604229960045357396673783054365773761563177903011349586326127129546854891996716780455184420826809471600899565158862315258500451326874516548462235194122315214029777212358274354697023748121784605322746388418667205845489768301565900823554396605001724886457654006477125358887788130219156678235446992953701749811272094805642488607416396297468097865281689779616182948084695204495765486468658142405932568724564079180115722528704556951579940951858223996646642111846431814209440408566941096240396176462048811649810982566374112004458273312319241790102527209015299319264901147557721834907437009558713131935221914853885578853989754016450709489295975205158282304985225726726162608292490593004704870065073328093299425088366989644808965795310795753449114284909777601487816275384367151849171160101714468048076237785599757920554800668893520254986604346189943628604017160912163779339150463293306357180349925773589699508852910911316 19872086992384092931034847942392477262431260993878858765111461066475680679101585910135153751003590965999281083711611052406396128796256133541336728924324456033942996548800050201153495405588810866787782479740140861428744495063680083128491508488142870608899727414454094988605655435062184368947519639983863809066944545848287322108626335720589958986039077312536439896873211682113340007730860041360986522760118864395586363930066197339538003035261568297025340515984508905367919338000131926814803487490208174197181138246219589839773639963906129049842363945074101417416181155716359519112130101698360467963293747517356087759837308486336599086791986707383796816447353446127493566923807670784681597689398630075098695331595648911177546349809554106117402584338942917844109865952331649124144593853803598001205760204864269420337958801786368699242005311376681870216323371971479468418430931688501841461375582977072383112016739107156435709898608690344324899235707066115244693760663328632858708927009221281329449778062865780239180648385901089981017034375800588156554854595068036816578585068551179760212078050754830195769802790091574635396989610038417509370085585647154070804566712484580888768616 158774538693159763149186297955475036303749070619826686660904383791685931083329208352863702609760876279985925599366024480892816848472856821247778503534704149215768635821249980972454859451028390086649793029599248443575393563663379519476885410218766695016022765546160592393289749543051696468189172637745721674102106005571930151572188633598842869507395531344981120700398942454311506712002526218983861059226633188471720776772808304561215455523458121826460521006303668304501781438483728770160123406394813827181914530347022390800219250033219694776327112371136545786766075429224494019078386193682017828462883128046001761093379334503653082683928408033765586549680188335191197951983474260894168876950397121708186971281428034489763839921862018836185267766316919397017548274949914772445504724326095184311790726176288943456152918171772655248358183924824603615879808655862877893650814621197239749059582365474730900647961248980122019142854127786931738462132205198679937060839711093517540709653120256481601004701294105616125283104344173187229416908035209523819223528707160366609834310326251755097097230949684959862879674201692322694577929513299510197119188228983226138970136850537859924581706 1268582340201859016121734443905207216238109952842223506387744413525982855814073002647674492579922573520422933742151192613242861839814746322923925893989679297414794654435990304341652063759533010350383888524690531857741169301063353453748638251708168346675530361357943551167932494895681565511790842686309979858466787476572017553298830617898915332163543412901297848448753312606406066268869419374907400764666587916981868097518321537565238822543453303361737824062396746820898247414568466881649569813581495209495915414595394394097071891289387483442227438608986832677016622975790564799583060578538173498613223829513533220847413133256368465873128122864446285318708292016724301252696894689062233544510023218366058877219750846577365097966713925491389600601799316065281796876819659975977478089955306035725379222803726177883778981517329290263439475655355011409164243446474943471105553304454208245394451490921429319588669759163004065772194194273973999923894401218788078076732576004853379197816025768538885481334603409490807199506423336134323125265487459315486365715758554605516470042196387833700383407810659337563780319439526108691638887126801836518698155142631979477462204175483941647187918 10135773202344930146920330184617377919898918920233179854430915997590879322115450671854003010060652449879251549505864325753384380664275172960148400497316103571177331585589156749088325101973082556851817057901513073560648458705181103604086623929860444157519464350147616370455175136801199952864425938911456288717275050821024043629096404854561038728707199947998913604423397375398588501941322227323064200008479426013648715639633270828061816570711539184942692668364723686218104532718513866472477798733320967897517037150339756630604950636416162131393632245398420591666435440494282933641599876291569497420876992585676868649292768443281061501747885367379933781315864619003201012955218711530950888885317785087499795996452193514806803746805287758064460616360241952835598237061862750186779021384373800562750799082689774131660354176348540447663682618562431549656705609516720067528623151686532179977747916405443482996134465155180416094716279195978790212063327872043008941087289734639285761214447671256635856224609553746151848582323269636977197878945462842541293630667590558651412075361554137197587569157235557162574277121964048811867583632293205172319443875575713255348142888554666155280136147 80983310762399954145356630536050517901672969724872597854983491288238985620371486567752641682075429954934294673256286332261135911544400611086373216112267889086812856408944929942222934882475292034141686852852523961491664912720493193351010584903351519909387109492109242954015652443365699194511775354474446790485641326698673949755344682462686283142180810472536320021437478506912338073056610533096675359254655373358052070260134711809630621773798377889685591296709406114213318547661030988749547613699643061934420666431063019670541068622927560306632356000854694025386672294447577745123439865606621442796301695114547982174571424923929390425379291710486083127317835378632948831274033461265458036550623866005967914823420186886199480161520215838389170757786037679659152591849942721013796126980577733444639941281793368576542095810619920743671150466818222081320237715476355958637847946067814235729804357962187125011147057762013664197114382905814897207995989150215369928503654496225501093628892352121902266061383330302003625867681890423343463708534257536654087375174604008955870683009333452844505559516265605561281530251333253395168173705409122651153274420751232389429103395953828015679372784 647045156959218933433084211115475504035813626765540074775597438496307636741863994897476923423529711845027794466131597780283379865536124731892353455191313127006413209749834311544966419247880590573316581383900684094146988963255594355125628911737721446836362081387792516706057461733243163618565113967536046936210280588172299383445180081033435625392799650292453320043083603455096735859098291491760767419611400573656251229846518028831800298578828717085191422699285002815117950963074587817799340446928231281533070423406042154332930714674970804190911190520333517894235790136529875813544930269945959897233906483545513923694973235952502172343599756898888119685030167170458029915588898510167759699312875325405676500996518606231717457666095365482547385912515658645010577240713343847709814568251672656000078192102532403332326950266484327231517638721925538173716554972734174775309081717209207389285458951712199767996903587193669523975855001319263219284176602746777089881905595001216923635530920983043621376748658463231587821484442803225389371310955742519178539329946108077422182706516844121566444998675233911910192041722374572797647471045651236672599100433464799548416791958158576142042427000 5169803943001641559832805365702005799647321198803322123783601265557209611517313902642469125071357450369602745313494441390142177655210983761594900050702729119935672187564670844599014415963231413758288434043384306165353922232636615292653745548249351287289247153300224594239676159260448644599402885238419394472406748721495585370067438810652156698653106379268051141229460055123617426999264470977454639890082836222941622952572711742512554691253380409290497789977398387967326190835815926449540803474091775156854910470222640784645933422875272975743859339708311474553145357558175401286449129945565426368739951768840980001141245631233652468711570417610789202539178475810783578427850263708098026887756378591854883221680561536763543137085893031138079300306362022253666365853875766180028898197490170773393957991566691132720028851828695265956424185274917413577172819115325935434698486946402685521584105637494928626857024505810174519472627512875231083773763673227667063670535887954788120370050026372694085487497129116602025051484823609715111580184384430535804201488923103887664398472352180402187676775452445253989359307744092982168692045764519095025650279538533003541519360933254471081417637684 41306079309359088750001723453179611903183311353925724740707492259294405459622274419699000445750703313481136651528280295109339017175580639134342461203736460517391809644711289105258680404094013227231510106354360944866153787031756778656644701216776694308614417057978180300367498372517524374893186243290544633760600863555535007831937079108374941905624267913556189540433970875564179567575504313751382562563201441644094321741102889325185369005310795161360438576675424159243403590937757436821855160895177124520309330027426125301021959308734936447645594047598181692932741699317823520950190198879097743637648481637915134199548318748306751169583045159072409417213722951377661992384287739798167534932016517274736639658751748495774893946830230789081903325481481494776371519622350266221417613450943314792846759098742990677156983956951040263474733017740771550344317997069170101408047237913489565939519105060370401912691026705230567802592771253508118124048364206917369746336561554368605222110494863076977802873819808480643803595171685353144899063116979001071429076423277538870701393531696291216729335749979746556181545685211768262080335947729080981202093515882483102306132771310747779645503768675 330030664364965139636266730179862434407250987712902716664575817710423034522158254977540799640375226945952608813543296524550217500795603482959059767684211304099698443118672040762243513264000878524018431430584193337716977288263598099703520555855304854026087503444451243096194978879330256483946253852850373925445132037273236009902258970228994635529526665887456735544083003009799468081300812505248712756929770409198278414736727728379079489523427101390314991311653977757866571183280877151069341965881261531182281725078576532942860400692357642377093959519272029069171416176353180567208360061055712232965928084828966717611833855704688625886454186548453578754813311305741393826741096017689658715431178028135496450614459305439487286246654894161367212173042657838794125706103939604198197979052827146558454669644963133828684567482959776230993110623036311213532625744911527818574684189921077714006689344720539836025048864411347769329143741476092642489634711282413744027942703975629003638492700846124972507710276833598906120373704357897856892616255934048350225560782969343508748950053314610671155527013935878293084418913629850443310301975077357640847291139058926973687660041749844870819467239114 2636908317314422092729010433242696117237355238192111108167376275223565106978112394070431279412234797525064959146591350023351802719357755005972813660688647622536371553876882091727676582122198997656707166965701718256517809340047126306639964859655639144336002489945508518028506590685536023119011421562654194187932691889874783193074480199330657495286713522007866460364348148379372952508293077072731994082661601792280329245803093633794583311854677801963400744795610355840647607319239437377069931902893732356912440161078178011643321562990919198718832954763795797768471201015456009046780043546648447298076477929899141347000223749246814311207717477761623771560570738421337102158854104196140475157593623345080172815522540850630680345754377543990356530706064302772379992873369568159127262061725666389193385837413115686750237307574908947825677617478891459288485909520270428664456808882034148854670861400122410621035521821236978808575723062007386637613257629383885091090576967650414367404925669221699914008349988034602833156704290297592018128686914370173591606018282436017384312355167262423717684103162441092560831943694508192387291849480736237336897474187006140429681896205019689461760511456108 21068624513481491952205774860070341382604439373475999184034398064858559320074816291721351110090276971410792942068533208199595307214601832340659687864947423605573377218403705850907742197849253504240674882466906687518886471477825397830067217062412434896325995791328290917498754357485843106729872677360842093574073995486826335417791112834697596890685574040679653048169779174878443208539092829317645799031464560329035354906851838188175109039438021864427710177753353380500895588331546225992431958503043590733203650864575215750370980367612310082451494173634505348920484000349690137520644181237020802790108374936401603309609936441002296624160826735823202598028550673612720923349382666120787501373340887752966540259150343405023726587552884813982982203584088711464117753342044372028763271409872872269723087759605044549614473102630646465916770132864633212029257009061379146851216408989966797990265343288270213240118724329174813631300660898269952077207694053544487578372860390907541079081908683112869494725176326895493609724309664668367935221101280475580498151465303618683814278707606295365096021279516293997348427354564608658454361180968135675995873780449689219340043866146629646579112227278900 168336290355236370552841214831933259630402813376519985650405519114396333796250861909605761634826117733776514733260740637047522154008788837714984603752849892352491719675793008659797974957276639231909315046814716701757987629254596042139597581781959142282689722072884969633287958456255581638026422717194054288176880668741045173699252867478399325921685468084722594860745041828484437270567708162515836374764516035441809979511198943062087731121766476224323150916092329668191770184779461327866733498848828244440259929001682530697340797294515363252241701973154715362333070117685709249149398716093386673204252530251425973811835824602619537849718087729351736397993420469399794166295798191124309644253310721605060694435164279808314456557670776050565444727354708262581854863699397084245790037138126061002110834480457779714103910891555409315155718602903691619228108922721280450057644624380353643849845839561698665920791758392940299942615378265759643591894610673526170576613868042729114623271541089626623784207410155564575105775721667041618661573690873469747666997435381401355765229134765034015646475235837393634461549040326274359791382176471314763045899189864789751772294390089719263479032563076035 1344992110845587698943615409770615288199811586361433800081371268983770226824784072930093070880267199648193946062233667110526913567164702548516752437682233804203428696648448270596842791509883009605992479860052312008213732595330289666856083190154123781574257588347227527091610340254928379547892588515335618148496343706105327919987962187680315948661893208851511262227929252060644624168394577128746186894916151839575665990576674335869901344836568273579177065683176009892344378754642748159855615159158414609538470107374798426769534974066786541604964723168145254357373574290797815975202238599969232234569149511706727484327390484177081503651906034752112069902251351545719276221618395643995497511618151485477640971034978954083733455057841636174900764491269055928110571028672834048351950832274111272963175688381092052438855500372812358827932843093478380796170273078536910514932082922486934997019183484770439442175338837425475018328567837533259524103014276056123675040530107167873754037480121945331129284315940392551434171951938150505235032863737015428948060474688255847156307516581749599843838977773699371084840024382206868578624621459166035168800356855020383480424936094559294062137691301745720 10746378586808121132518059610172812375128948053215030921321876799586435151206282379079998083133109388448632396709873025817503892130923698200968013974667213060018534856109563533699708079028147103801529839117861805426518728443269434109220612248460225719712601067837435953713060437346298929948137991513127864514432379192068677050106794852193894518892796533198581891126021522662651401638440642833524367476648732051693277639966972609190602904342501026709105727661088124273706276701004498501674580055668455333410220227165971394322040738306383106938283884520532643286421587850155815551199558390948277718250970619252207780613995972958176149886198194279453632628983047690935381346513476190036529476304149211309080597572221319094759823970967097741136917364112899553752999577807125730538384573767255544980270160887024750212829449476782339319644022450675156243264061983308505528169979301438705139261011429816948699481845659282013901638857454515269143779744312698893911729101156246909284347679409671204255836678524436290357321142022094263365677346784903653585825128729070086166435192456489812280862833653987095156577151476840394027791685815496014561005844545124044289406136863353113605811089222811252 85862780855607716368487810815708084611489448594388479797333760425890760651479069247432001337758614425699721494142916483320511815358136187515274941333726819053102856761989495591906852589356380384971339556730204750464067875109957540718295901553984657564277639695697414896189285047854305283059659226040288331632539144073532395484174912163337884708273316756318759419451171807500362465959193401637583232389320937790212750143139805613192073433557620871225956402692515707376884601291054476840206142462274615608470833759831617817989452723935041982296769216847690675268262438389882722393159016138629945645242808087999174923774209213344982078904048740904795212072076430670865956570405363803259945318078945034102442427914184153675028999636070680918740454113418099764608618397821958344653363060507942129780997232003952129069115314735730392217738926085071152067241337040420391747222721852575431417091259473098130558278256515591029816677819508721939215015137829104877642806578820765119538453745735394660151809914152297061999380086115948476549693059706618344904371540325906172257999372325268963915680611396235604288154963589258659750664462994855384700904006229241151834701007563895153336629418489061630 686038007778967206047033333021304729877751599537779472352016968745640508394529505694939790383802658992267891583149924447431687088942285391373166162776626869363388203953679535177842531754509611066780416393420143846096006521565587618834831481035710123116154697235173919348806681352613516384991522835565464054611499972877767405347064115274088700260835980703677321193290929034163890313982811363571579159910333014681384978959905360057992550624048631023555088168329359829888816858183275510270449473043112347723574690933031882205284872961365825277230438777538993381501649996219288473929587147172472365689244827669754766283029609424295302585999761917674726869786603507127231372182021076735506432258475036548343352978281818736971879177206523294477177782891708736310246149587654605271800179299746141323683054641365880373251140483862418861917450604236245426273035588913327434400170878735760178025895599865333161612421076594858508678388586166611219851211069450209387370028575833013057132805099981517079353112954436509573774353269774624761122499775489036539909548839488001649653176677313208853711022494167447911861369804962800638430291582304846026864876789332085079955241971641488538493245539808407245 5481404060269493428471945893899820129345439742816461288261660983997362355956569292490463343971028080651498711026474812514193914077269554234444024894915409132629685092567720746638192106685387588092597554175536826295682767735894164973738888851056786163665506140556348012397673961726273962825854213032998635314032892279754566959756698004297369969302933896188971003776575403602788360394276936169065340391567409949414460635273559170408401398967653083882998868380364425249087167473160446560386767114169695374926375903660874114095300625840390462332375456015504831224762177701400276023230628699582166397178392356398876453367894539131772216886044659721995293959456462776510456109828118142686858711773125546710237301218654542651584557030490349915943073894594575507219593797730780095863174705760088525247783121760219943600622108487322071452379653143841786680746071327852909955717446554690467875206679668595532090509202330147357006316399918032964710115761431568455890410573157184195075734111703317204382426182504278853337474067639760002327994304030301875574021479086147756485498867600478085643013045839407748810837054545138986621273399090955632721825901213911992216607225968520042460947830048682003526 43796143443305466749471996442765280100009665177978039769918570389278291614218853607218885168858850381385756588107998666601618829716068194814129059602665991799606035457177457503204098711584627110641560941002802626103869503349569001767685270344738600337795516446415296473552914736088322157142021299304475539844369886015863866571830396765259995041706223390790868000541765650764396368692238909750478234526845406682565642753954700785023003777448360452656053208910467617984654370468313316135676655597257704224326040628888148208560219207583118131961790845344758112169615796604492804120073939623401803106888983656962942001475348493549858889057436556290415752783980357046610649828403966972847566751772528486428426668356018081571665349049663930916283181170337623736448771663785921972802778998415317164288553364634514797134934257120015394849060678876809402796974586026211242084890449422090073074882963484939740042977038158221319486091779027766759548830907743892871640765265444823088499732153407514074406029475777088838175225665880966847617046639926625850262107840462308270367974717307478338877379142336546944576072029026316249301676470270939522015818611084795715395416593706996183134046079158901088722 349929320597700334183191833842397922436914540156632445783486216933234082599105892584860376804590400184889475367275143202746137350946305039440614582220471848858340230286498669384569852161737017442547021182166200732099849713914695164493353519210783914081918410476802650088155768513167097427906000691125611573465373098066566163731171811198422499449002721617234412302140357470756743431229789325232585140857153926775651504999614255198554504117494357850716124794032666287386877911673533321963919838811006818590907692043369508707438879744782811173225840644824870438480702213783540008537569510982573340782986431540602617382348317003214920814935577615233683477587179322070511091285010782308965643966554164036149428495581561018674688708641389890485036711807890462883395111388167663167867183401168608927973175236005024476360411404856211740868866542884995073226452668892649872770573738492877355005578171159137419815122448837582731881247587879273135078108682460267212120053473773937825891720325806185495676176398270424371459213134444325004574998197453717787674246552703322624077491195399978853621635220170470018557389765315919819889513232851802723256698447983266832670543597605851885619765567982594344204 2795923012535330813715805806823387457472249981344105829213806506511894466373632886402607122562532503754080783885844849234653626406990528620268686275300312471449174235166351768840527717492453134686634290244038125286984650052066443394542216240523453283697125744825998157502220128239660421983533991285127871893312531785056332301842335879213535461786212297051214150360405857896715631164064535833586570311074068526941335898889884832718986411832810230973192226439176732013620761664764551136206809767158935713117006639465648000989128670596087630287972887427958861566528155541392805602235541001421636078879804524953316638937037113718569106012714299125005267662868012306424940614502885590813819658253825518104057801122583361163609257135404748265911756008466367320574001308886782243963974540960990754029224201826416297107451093352082940771942551623255065853759397294166621951288310906517325820166387755038827805156842366737469653186695748257240001392935835018442795450152930602379254554940447532630650279246377999331768216170469973528282963600669597310418894657123925408186167551907014081819185256631315960729285779735843970950087089375096466101382467367646231497411251344843599325913168507272330949651 22339348033188628615998587764036132139429279176710469278088304870419163850571612323970114150797733092252881866082820594361902986386753894273985083753053784760045522534350824944195288654267908672201508246341584320398293848266513852840058049295688313073069906291766809859601827328843284852296424601653799125506820685593412976422250127606061143837566587212029154128940219972110917987210179851221503620867269129503582838065790807397179469804460581893676504350997522097484083072346205169000978172772363246118515769067688286388595638129604734738284665970816410533825507886645047752474846949095901567635273767378078901445319424793495100602005135961005342642202812808098809185364260159580056115692813016725635363541316929047693583379327161367921438663160268165259608401203117517134035417491365192991048848752205104699119320997129498929493698465711321830554880076991946786114769872494339477573243048859906905094857093907833040497270834883700627854714427763985078026836920415679982731060839919475086843225562787703581069854677287613849218576811146291476586389198919178823061050785416107605013530499396660038302028775464879084802814049432934363875168266105941861146392380294880480652458171472938509407400 178490945293155216384704230928498801370105778026782620550812696993242791262484506120875485191862392073970741005426089582840611897679345975329556878347157388578955706141095492061323016596198349542050814111116987219442490089796983029414509200383560503473505049872191580869548925896454056749525149072740402060811593034623928194805079218087981494327052281428356950989706661505489155374694588798156310696912167599982579246929366485680924298476244396822545021587841386423886026141033354639132339006100259695078877900023025972835171329381036960201455768208704995136147306497007406072271900512101457401500116069012201372954999489904882684566156585527935938203662905786996669530280588352993610286790759832346279750090749503945279228989127319409064066334002829071151322138148357450876904497367544931656236901482044115479407826691834444078469325489914862923354707734831951424694338867173733829798212973148183936104808018196890500383781858358284865623249091662478986403601325577903257037955496172302632074091488220758060946026669748067129586674779956839363673660582690627395943222684053192514567536677403537850469813564422390710831534013478332600410663550551616491647295286911161672661603303791396230161216 1426140437175561786862957594208789689287712221387392207921729566770082450388306505308196580135073693919496626012603386807134346587257205578880445535774513439119234460728846316092861317855106038955824664352326261922082993616443471180415254595464798639684476874207648371545243349613790105668537713319957420794755456202217376536164859573420515826477346159458124963292386153429905854503782473268033943691071551595351574966417445455541102273502949948669743219274252935846246802627429422651802076293630472894536064410848528507382147264718325746714209176040689629950708867486748569091226478227809435670134753029040452202881573895545516151681382196654791216480623791035544538059567660128614688896752359970365739432422074489931388380705304026651392074858825219848623456912092627809384986499727962481172330505939438673767921682814293209990594791170831974338339995527639461897687741226799702579628708261166104589839038981115095292354397883107958707481003550321164255387300099026124406961529919941016390808907153623587867815784974664493699623272241514666341529589696555139096246294946000713560818604224264807451122748830497102785903173929088812254377721069558983292288313359665219423118968595635505785536088 11394855109949594867438086852654378114248428730798635225272108500497835614501944999158313944171832571033260793607595916336964689501185249112496118145059296079550411993081092572853694117700494910320505010966456462376881618653807372815312910373580698669749285380453551117734941786422083944055636851777046854802541361548752538051957980354890327950049409176623279592993158943106299697669645599888320401794191071267527689301739211600649016160498456063083706791399826348373833009778972589733721837780870771075363642359058217676818259512100617556917735928276417207579323448707773963052747102435486080490470599777462199990154100609687830535475454233249443312072441155227949116805381819809621548286696370273000625810016698060490044804349016027375353458458820402336794576973641924724354048617148021496731631840617783954609926603523108656813265101479972767986491500776202092881968544915077353249266572854864008301535457834284721548155215350706069961664261024010638214711093590297594676369055915154080245253227745635105438577430825581455031075969519465675785704085592282657292235421441793989448638247753850617450967924580081874932029945442421144816412798851342095749030483175874769713395352144991595691968984 91044922061624123538885847589191152159091233703054581666504094283262373778596594547006595248017821554498577169369862140329198065215861945132124180891493306338727006695006656299897032228257191034764049708419508523646537855336634541134623469099842976138278080541468388348793659595045844236405788152532369455336400045231864431699981418411083987638319636228781891943090942752001868824394283457354940115874144430362591779046205338470231032824033792193697281992144055992636793934776056676862350636419013172571725727261795038186866597642451872788684557899656589929089051976539223598305978592409521744351565442099856401569844445785567628916167061644389311575024449324164091068873741071871889917992035482688211449057259072956475694274702420335472135977726933170215007149428232648104370173134346464816143064659909171198433002402419756209425985753864096592586105333809253036865686395014120810682821356282672217264029470149932510494225363522394324867721427825936069616641823970799674821071867358057949904962134147361207255826092060350798028459721402809686514166974382698410129318051471637747174882559135762318970483476995812070429021081546389550571126230877685781013767917265391311493570528819003901153413242 727449847183731571519404096227881127341538225676413906700946961415841229465365241621198646515075084691426735621011103719795048821522965150834480589536521810015571430340531658652555365860231438726418848525964819201472484792619380068128926163335759189255851605961468810758276038874795534256377246190618209307797661568247795194930493273342242912585656900823664032278084281325915752754249791232360130725827357030019076359602052060749547331778858326107809778794659291247415517248956272480716390843248220862032379998517555107309486396514027739924962872124218573600480657249738564993383824521423237722613782756996237807755100369132939428646297247513969388935304082302633343839141133015385140013758181690012472457750262545445148561620302245462590475464479709173142774151658880232663360701875205051597937139738551127072358726822796776352931570191553089114141528762286150171548751109928988689473690520972554969992685697873782679082299330579704414964607411795815888485898860707295213966501874694017689269222530273166125114558325479417206919776692781336747472340861556044352354360235603837125722879807708665132171237242147716669471643985227664046518041957244501945135842139983693627741178603771485178893094091 5812337072861756018929636438591967399524486618261415378785088911926730381088696427012136684622627651907021156093373259754185675797366166556103891488641882043793379376330262968044256415933671734293055953576323659990654366607886480036978060845874040473362410566182552906968876723663670593490762183328272463447882212548423935806396580127960322277287086424839334218181868791924028829516395066770906216171513944985635349982289982340976834878008812313856982657801310977033644154227638691666636285208406890031336711132893456084844390284150626296476965245281683500799629572389505288194483983821226928144519311333111722825311446699835756790043904682465073637009545064923135389965360101263571561670624143003696273390874098173703574963665632028880646617266086857133076782249929184826120801782487643910044745889827026247251863757753030025940277253688479520919744123753528698019280912427525314214766509060914006793128012247632203792430028813381460933915596025000299347606943764977498793742458395286211749779050615685849014367926492501500832262729882259188096327928640106124353760854319885860093626843859248203391588440324877616495027688404278903550683421262133064306446692231700042400073905687343193723616616874 46440718865993891263103833869822941040664785591338919364505179778426785065338456388169572445917874465417568431859261686880400473063717397026886298932250950279659518248706556670634380665862366868997268345541303212872901636544706675851648972206755033902458069198108390078036066853034152291001004831247073119935135020640708330560069890498475034079604367564389559102787630765270750805755857831744813423313464359973641191716522333708564118444268414312781306461485571774127337768191756482965801007157832226882100967831997719223251630711782630365971479609429994728915395861625864897602652031049129467213567658875802512279651197488330652635327129806456170925028928189863058066524483879317286137020007945935413853243315540401783414606216738511969847374498285625087425592957603970771786019736176271779960085788808161439765756322395531011470947257483884168545767546072552182218586221292972583393296706803466901225953536246880471910661985264934603332678839333588476124643996370809860267129746784558222385917252590834604719712316593909052691419412576867099415241811452965437642890358910977606749727278824374137768421843806888169736358953979179711343781112126954172290401136878116496273195513668017765316694803927 371062854009665813193963820651550799699925951199977579946254437990119397886910615181612327577304679797382864654931124331060965643505198451051375601339952269446706933355702523740268644169909774145872258621753915671894731737801010072378007092512104907828834132783522170374734819505138591717790859855725090015170091913921131131374666715238311188747155070607002678064464019048202932969471137221167089241950125545150039818805639641486278732369098110263648062742624349183543826027712125645852925776484723596481880666627613595844450768582166808635163014111687448952695604435683032798403511147885995926707615855605777637552752910581721857497538348007902327951766121675334088641767623286002159554108516879633476223540745279944249510602161540379347054925656527859024783535782280721737741377128943464390058660528747377780043261128424384317180915137319825943740058257910794783033476753257417783097432138142778802390581688493064254955172075767407903113380111097215548514499380462034872093274712204028308917143214354472472921509919032412161619520394472372558313527499165553437918748412282692612906120747199901534597757260214980381103756974833426770500865465436347734288489074818299319758289161578226821868883247724 2964807034994907895240798573118878103373282427631049537693494183769586412978670723025249054062774025002645446296721719530193401594445182152462605158207359433922220905568636614845647568665434633301125878809772579570702872662006012204360266014197004471646669179781349374716354682459059058687343413882166871446453221300638990063520501477772280338955093767777691894463053526677318637214299936375618337357613164511584611378224105551158694030863873830711316999311040204010151393108191340754411396780369478802462572708409856084274780841929010373116389121665064196879545076841844749768166226571363252078077126648038654944715194297942539278728670292663709018212836606869046126232608921997910530868938577350995656425523817119755161543673674967472573634391467379588552927690973544890235752708599451023113334474082072467047019956746915938180652070054911672735099615441521361746118283191430394757770722140889734990168129001558875168584853482944230574246988135114861647893686130339468129274502509112125196981588773382913956395439641426944462133570563512684364707554808385785986660001662218571137548557489675174312538158133683019502193091758860235197678704004315396682093779560040669909541518210986581226892943892393 23688948767804269627744360733022254444951410959674579880248656259374919504951304237877296440452303354068594889165212028704710491710790649033443028611812968646765675135472310354535758761326312613859562399193363756271930238661320760727641410037517118410369108243336656731804272357392974438042279910588772762334998164753705151616013998545894846892562948144918085288095841121443095041898664408419134282108455217867677720125903923298407187571275303519984037609317822774325134405993594312579896730785286502956491001213280399232676529201771604471255291715975168891970912451820227601348200401492794644106159689429275309961038295700986674546035630063425764759308283676914618373300295298656113278572209806291081994471471732368845172648061725916905752215148434350507643547505578968760701057387388209845349345844164371100782806383844865724798216307406727292694269900949036517365564900994210015214639486688024733022842934845372793128606812433752676158944036890440962413608112677796948443381264065571625586091386577037543435346991283941246567492169050938054091607531541441036887810571468920244753402914676925308677729667783158634307858680582638151821280672670089682900913468637973571089712554011580035952913895765758 189275999672878704488301156824814173813403263160641589579741390975631853051207368440372240322324596804978126805848167625404205970865155818740866779767318895472099744316640866476215287778701879935269198214529070009115414410833376466096788882297057953860634034997499257103934509425606129865698615285676414471280993768693400346244774946186506900150928756968052621794780312591928969660043624970973073759200212288810141515621262415083535363740571406645422036222122926427738984632728606774066552534358207217919231816113067109679953694213790078934710100511508312730264204371167200078232128261902893712042507074172276427178533678958418023557549133815711064090725917916041700739988690600435353761983130520995565398116165858575601885953385176075477161637235328311321874367815623737548896575736990452549194504522523481654424712381639764272864846987075699550588211133226246459052065464228441406076715928014175507601190747131948441781143700308928397861309821505876633144963512694607256881779037668182692720694636376658332430413273160994640449892366056254388600617682462427011826796418101416757012837193693582040479495277745668510057095285559721786395263579815802762105669953197983809653363783631462426072660283892298 1512327020377123821500119978321950375145900687862510903434595686857080957568563212350285348712196751450964544402752678458955013869988168911328619063096771050692254797132867008939328931462061386453394259472498606651390998481961194392144617952260496801045707113418785057873920406619713129975926809815354718981874352505647250264052844058484115498091996426401477021858909849026203464289317563530105887625476303399292811403500406431205210757010322040993540660755378834036314459605561370418834259909277976613488226716344381510790226024866364990126905032062682540720254077513825977573288500697945991777510460851813626568838890866055977792573691184261711828684039276862453172215844227653494225545720272809218188111055541823119338006754011314918271304545596026109331535691335710870010130041718781539334516635061435785272076835979459257032153340829983224430361878569114690760366007732119987710800294421240777352132867638748875584383662617378042547863200246112681528009804721591803549563718253717297043611013398951582241651624185190890343141684598569484118031967157170236846755390367248978846812199979001706973535640703085294895656638499199407735190475594707278906893111189010487522343749661622738228617457815762928 12083598239092246645651214229649335933436708597259746756422525056455040340069683619768800677466538571033602982055893754687287728237848452517151481777369444374528072984133060607250358731648891529061587595160545368562275381377984737809947273569955848316388255478770374385603002272440274416990848686168678627427579163128940821072337675863866446413724574588147871495398607986003466736146432676958035696134751231866266282977195248475703562112793600653399178723897006448251233056488553142643340043569699862820032631452263843935208708790072527157495372109431298807599266245676460949629400660127640849500401859171234519103359907457302909568899286871177884073098561808570784129202871482006642223221767297437283352277976185102285417137863331483260333301781571074669590967559711721280348683901402180190599963848622968996763513827972555897576099238284461896364663379125288860116915740629065777947254439399104149440794284925558298141438600846801177684278339436700264624938550271480601264417555117682621180556710013560074707213481721746029216756731522078052737010939323488084644313246965509156398724433162935525430578320722470127397404225211557507824874861881675986984724821764279510818247862880533313633586393045378738 96548881005541643029998891483504097066962919326516575211189690839096831728439455744008590804248912149145036036958730946347082864747053574259218934524719074892689099304659785758837088981198697825014752260911846082309360594866851942221006536138765658609393304114572904066998412492511450508506387043772049828836616640370495168504320006322435671860677521481057698197866392639265236811415931672820345317466576572509374569177288621689328939320628966958233520798404430475845228353945296965378510151256763259015002631436691125845410274350691493189163993808035009598786310016895287707432874730712829059317766533174117005742204134537649815687374679282796209788773827247119292643998574586383393573614133533283487208930305473012943047730452559039499740558462552154999697598269176403039656516130557522813916502843036692506895854809700166415821915927704375962385399807802326861840135756069854296343847697261756251619222562514653319083451425925377964157127379388672692799491188220091014057984925480006815956646701721546359914735541492185340132479571062936097389433671328098000124997463745791555332668340602615680606853011285342538075826423846517404920429681986973767910661754777686337818461103703834945002079478356707494 771433711456279504409928848325859184137528802163884608364246772575232660155781219186121510140885523274001563770725678488226038788512321762069777845864667654106295713357280995358149474018971090826692772789088658273870992016623156829464744955396111010814507885187124810333411581160637987324276901235602949153667985210599678498362144159600539960395179654960654468358005126704997262232829478507108177099912477928151192564693863559344521145829803964263012244934622625616480936630006324919712632540888918052046709840306913186698238932592309722404157969841315300510593555438666383855101382552261895137155771735759298052600660513105188685822016707713088670495644751482127159410899874122254403226889122960794059126551302753865841222736663243170412471549495738516169421218292504783313000490689445663538537824104480381123343110340121920159824940205485512895085257658939326834709446262375972414322565103162113151484837577170163118482581559955885702750378247822707682381065584302736972044000032596063036322179778096646715152990864204719247104855484864362685483750343016901192237497410921696875178559456904436038838224642310241022242402289917532414903006157082906896105109485736645567080360179704753257137445569131839495 6163826178813613880374158649504236194308428097284012301457311978656396741406875281803932972739643748028354475209485283673519825329282428641631689041762123726290103299954022342818803442297009669613943226491762639165178742664917634182897181274804270182962363043284302633855883750860128133055687468894688722249397601971087005833877760401643307524001397267825582255314430600298362197282565004666903418926400154915966167154034461203147567777073068736101748509868816353652773216167897780964219020509271798631009529402933159155998541524010313307420202547727359574983947409494459627871568447415252517636212970119482678546759795343515443609201593199800714235684165414885643505361223485703549779221793291866292907114538413876241301839763770510389604515965269238332635907278024568701609327224612448489346391024949137005346928589021076382105044713390777911366986385320393537213271354856397513919667360860247596513780429701989469084784403830991649746607766004150169709176359253272223566456234495920730217521269573623233903075483046385836866674916637863048383121804087944678514990326046973396205811481680529651862600147461610343182977191667741667383170004603160985314767890105703713813132553900142372004754323938685790200 49249582436002402146229426978255430417962823860917453956378053555216637849828106287240240501041138488972902413224333880550135147365005996024677042145283133719984505537152441581861695199472647565072313079150892237484482652859771214797024020873480529501624432798936281722833040232512071210638698180701635726486497296570943179579226688572589301743999132652267802078385954171289558478695328789573022243340323749596384612648132071755397061374147628195213470058953248836854294490593860848735747441895148308149333790525466761945127345494478593311720710535067928389392013222017241056398111572306352164692630522682474706474550926951447204865956778041188315236273891993962489581914743761548039012576366840395142061346705222450548949698701814554375755541125627314444171508826792566992800196616557636426038838071283355215986033749101814501178183879027467881245838883825975530857066384965822255838081124572602151380608237695717202195841110433919771131974129215425062281595726096472904802880793240561259083251809439549022067248424980384268781760750750527317911705550388906299770144243472493103754135689585524561345874568883189472116621383819540434802415727250352417993559078363710271225745574320285539429466753425594140658 393509409760577429318996448028762633504962911435773744841282787497026660725524676684811118597162417110834137177169076602301803139404372672325223287877864360140474552112979059420710083725315637394562447960592257495930130743814836714461343199250208996986442545799661864335816733084600803475906779006256794298216829229564849617651936999149770304331316710623544992607584672437176722685165225199404956848340678515467785434973575531807357234094800733300945854684310081772249086521086173973437501530272961229614180785460065752698218217337920540174127103914245531839433055129533363483406953800120493328434216380168548692776344732921582560508062068619152902674756911721201912838941061885463932274888682750412596311609960707441436724357463274745458998573596672782792610515554162917736184507340845022711496678020426704432846918187529175502304121631416650150905700410890937555326703438737285003374099788819201236063069613539857514214609066672828485643133369973170607678727081750746177042254049575992844804782696043481089149759954310915001548481457413026164253868643525430376907893962094172885421031726025726693415732711223623385061240496810699743054355680625001998957524311381227698290951086550388575776829498701607853918 3144184989071938911374632443806532344429131684470312575187079703940532510788866498615476083794242037231578847115017435530915947808346856186739481313943449048345922074413837336016754589082252403288071521724792461664908969969140932264875494168763726667689256780104467364077586336572029023403344232994925333258869645088108765108168065448675668126839984764241072995565595705591882077692466511995812403682937708035655006537870806256524959733350910328876596091143246930274968349666953145601054772157728693431276324388247650157373236493455507993635300236117700715147173436248252249240326915360287384867807818221450717111073160311292129992898974797247045515732875342432942945041666493849024944930176236468238853545271792293451053329960651137510030414331334047106542490277604221377534444449496308430788908321192574571394193798905705680379970987417233488370807342691276934749049126183185415124215495270970175949402245215673327609315340252843915086082558953761923760054460928545674788654689845309373605102198805408019281321027578261551396190992640561089553812382185581740247339024163567501143938041001986761718886506996119774484669717289488914842791847680626019258990469467926353180873363006093031817938896973956981178412 25122419103334401287395561168255436884728230819720752919784441212264008008226439388237242108858483192159947982717145722787788353741346167478558301569695282011978439429723221362710500296215292182683913853800304924237411167969316992744245402177255829355877194703282574801199151449529704324367309202798657502501058251898849948409850387604013940504782400169977283041598944614859069772465117470273367728275844191538281184441695032072114323871184433341447047482136510973486421965321461979455077332927395324393018367165925877597872069677500225789832706807000704814713057698222041936927688906372492746296483888165798896764673406340441496577589859377140290958350201985183586325305914739608436242076898515509583855734957462589370437887591531838356668896082040011197616981413222028107893237439122685738039517704426247374084196132130226606895937785469371111128394734436058043749779782651374822685824039054668283342786924764224570720641362161822138039707533940504089157448374264911337451216984502044138411872471056588845903245422172019111871269400421967102866843835978262307698571483951618091638542506271818934456168893396709841770757159177436431999097271083083637165232354226995644490492921632775353578178467141032541970556 200731357039507355575343186304764023874104884082211825084294953214920055427234666715457428078521719535001717597878313135175802563543028176307127600395922362969374703303020071203963821120591168480626567398741657160405011818338964990166823462676181851766967404911676708868764662769310996229813490698244638767210978434328187978222065383821894315431869010852548021714197670794892222528192049217625309897856144311904256241017547046886042052275220116884597442399472352966026309456552334326921854217320846412539057123303055648411056384063562448151428969663237339404305358981882233972547075595473758075262448971592307778808129811969622565760077538317581101191217722603789317245162143538371063724380673703824090938521584529323311588936969693896170419343128875455334972410177691470899280148334978972170638647546998100485936616265777410656821222679938129066335166364136844129949825466612838623158472907177036909927461016106471175690925654205370814811561168599614310110129007081398033094688410055034297564766364956165101006211098719017946695926826277581540413667086569631898480981408750001536481149863960953364761287389729758785377516315777906989923636283583103093771309038702112392989923092039948826436179405954968436604366 1603870804860750082135156159176342731572844928833122319304642480903641911155319812988711203836445418168649090575985613133327580029937595930453724970222057226383827512700782012461719262829410641744291124963770598944121381462838087260447162186118982842919064508833399306790974056496846492697371708488993398954274130775274751479770659286488782297257491012230545676475040177330419169636370314798204985604263933753262879497505515368866900356009745431155648501839736076415951818879719003968226030459430416052118864341609653025008901137815684023225576696282896222919844210383171440502158907070368362025819340055716061563564365074588953361853378113288733613016752356189305203657922125709535604626507160567646794931203854957074279596484717400070917521846493837366925524350505079121246189930654723353703322998927296315878922726692295976048294996321854889746695061505644593738084518476438468723406339107329636277528413365202087908458558577461973609621097714681810804381547543703712865385378105454107744582276822572868379166281936455924642144155043182828843983392753074105789664999783423843649669227831703660089629188419627468076622305622670353335095362635489136648289138535522859988737386802308534127265065236618914198270450 12815157261057484708109131546732174561801306732918038678874908122228357363761756211991251919149767833527372302122490464789501419212732737338276554206336009920305401897174982856521163343133613274567059855188280280372658888643308690368413381395492823333603687370186203834256359899313984245128331822698766340049325001623164429713478392138764735848565389545181579376266212388877965986248141551483486744486623323628930338108167947564151692200021726385435042655992832574149255171345256469254903311916937703146222580431728838352081620367366206350474171241633306376899122588112829804401919485245122351501522728503342960788349429802878959699429229035737580862874138242982101408208019622677675899967591451918713832260344826427221363855696987624721935722503938596755720021903314179561787244849829911607226693610802456908170233965909908303319082159869138750736523174253739765825416559199439360088311762606226925192045129076424799747403598062905939090751692556345490352358818351326838854381302089840524715290501912023354751838195089952212561413896266198573280146625327186243008130440987787453185631239772372908431724868622720666705947136242181926780063465295166597578749619774048223666770906194988397676025493078275014542485152 102395033859307897787850946423625563042051098268360311685449974749609075231554470659813327523603741276791917270271064291490132899899590439199815147665460642903790078107229838285364763578747362832154722668122007116405744528707529680435933566492957023548512137225805249543590479374274807471193347194489458872288239668829939729413020194830500137647957962191531482757217010906303190417050264632219903843283603077879817853474327236335018136410193234811161823063898074206851604073054376149673114290000608540911643553893478041576536904204295669096338136838192018615894081302065588833361663755994189383737234277517409220547730582725973659365165027014564677328786706238830259287656585838590454085384955501055979815116944318696844251634852301016012627773151753518960032213072380960261757580650088286419662157619194164829479676437547638329414474839607555658474273222560268655742797504824181297216185791444018040611232245377419107553256811959845251156200002894094216146097767808874654509399053400968316854156066103256764281844335175841893811081140744280361435902520658258240637444553466219185158459225758369009645544504749250293873097632516502403630922325788455733126381758661648328823533272325243132641504769188522249725118524 818152465191438691051508186114663662908686453687175994686694428812434534617739604078307744330638715284862572329049614870202493408577417479348550982948512402151762211150711803912110212220900100287079170152677306675949988422637112437752357644950666471889343121062796852529099676978679178203550517752941381560029681405078313078595609889672923969661767486831950818312727834436127449039115648102836281980586010909858146874715465036930611279676395210140762874884329300182183451869723442600120489035721261321625829484839585819567762604258461785488078210130651819915624118114837616000296600903473230441460637350195287217219082907707079940295835638031559688826169719132097637718349603676986777050757831931300987784934178626622676578026994911538310068572697921809315806485700108501138131191710478922612227359067564471200410738715420961432722356680591096945209829263327947214565809016809203774954915920299359637323855990675957324563996609036103053996206425010011251174692908174888994011905119621021233136092348911912634298650219491009225643867155564646187535797547206240285639171491099007864904660426266449162833553283602516632808081756598322470378944980369207491331888130304361125881273049705527284936596024179783885859303802 6537173138236605620496067085089063259716503567563973022943582442551829613963801942785587700600924027870281217634944296058142381869823752438135513525623017327423831474323820194644072198650435384121115425156847215283007006985326433298976479957897970558632565828721940017435303864208438207981118586298039494339920476211561769629415800253886052550847525520555008573166860747660108509754704304401923742278111763574235298008217463235273270623848710907012349888446024208514229441378111887764051429981066136815167911618989264259097223723098387351634822788817609204062355671676463876587180679212370458088103888810970553599585620961407068942126362134142786479853188699541910905129322721012182685047709076503034353313161621314497095456874786537095236252752360159523042328861675517624248262055022467393009350072975917490934905522136069262663226500136819283057766758079572982033923027708263428828263560196076580563275478339960802828678039136859781274283540318543306536666606820164958962772063676226031782476520045580633687742776458036986713732961900504148373019973385900290622546670970645310950691686500023446673248737415624200718148084559161779770370442157804225014397935793281397805555828354462345975187773261844710205989525176 52233138993814699747203928926959243400555957379092158597956449882901912367242436123383298719655392575323733578084239527214377123375913999816503304183893919962937357660963078848439673323122522447384803349172189526158744899266184070635284540800295944026340826188760541051028871682335095979832989688170817864152272112177899026902270784334580804700073766945488681512937052992273908043113486468920511098308652948047535006432950285764545611212048485785075583129652656211447172142373464762809371741495907192422153594877828402276158962990305514237515695221016392929951740305928477192351667952660447941160968473295984248679067890049264042401865091759204813530689642297212375503085202716267660612608094934105649129447060001058771430032387506744722237199054719602186175582140786040828397337304065789344382348065346579829282543753152269128533760312017369456725068111987350801406355256396777541896334970313595948377800775731759812823074366734327437394374102875170203589248123995952706109340080802739758009375736318561938873735158369927336146571748303109261752355056007889237507773409148604498444359301731731045011592737543331746299716619953786347102365515858634875650900502339165218508416743112060323342938360027027316262628660406 417352152752992827825726319515923283258824896339432495642343022009766498286189469941624673075525330532553418255275588288182284770950323874865058890865652041202697775439743676915086540155989559787435757721139881608879166322526909651156653185870549175220980047647188995097115079805523382671408908947959262421471585545015013949266776346346435959821127192967768905349453945833304347254809957791853106595582722570901627591241417147406669716413616234930619883975277002530655007148861717315151263287602613314179382256900367283186414749488200363491534614193347994530433796394490793375932512145362719105975165702614581410664659600385963475998925762948375452402576293736764412411455943031685282179105583157313200123055641513106578087357959712395390873201048409252223107659977948324625586181768802736086328084110169215876306025871747850277755414385934090346351286920863605656592793328671495114809511513155414528328900253864321570017637415653914825703612849486088520605416452627613869629780005096779541811451826015465725644353980445606662546737175862649764468262205179767207921063365253082832298553351313300559913678639432649386794355300107870181936168245975540662470208768255311491949664653460967727035135668339510392203124204170 3334721604230547805268569242556896980369146257436058907051759942176010202162614093372690153606332845168045179228368028033174933009888931049654419798539673182827028356736416205012116120783244537339946976691362803805923305448824552554768402725651437480509987955825188339148637938264931397090278606930097704080721898772772353043364224896293475848419250168551221538517204642388017352337275858478940485908648907174636092802682043505968227935737992597264288765049881721125295041054104516022832572690165294635302226216025176541946971469787852944876760238771802132143186846016097910613838997101576723783798396292044278421315270685617684728105306773572142572361424014095073787221562141593203626450871995796317268335082726835783599505508687305695294400796372869068120680688849348984010894666399528649979301409042145225799625097183422483396650128468392650976073646958715415544925385222056984068266041111065681906604153085272592612867900835754557548322391427888105899446649096414894929051971506367368002079940944324262250326078315730098837678213046854183780122355050547284142409386795187309570377454457682955884545509837593805017606297434654852027757783302249163031800840830934887501967239392397405502734908397097488942632588175899 26645072163942637005271254731876615127674268026293279791690634093636531814558525568059126418320411569235042617068155961374237571934397189587858402532026111192980352280198155227253233259867879952081297883926964580721922791467525260440581638684167002396812105187449612569257623684374616473385627068840992968105774988322227738755484678207902380378022530422605195578851065225191718226349426402049552637692865667846376026418971634056566730688563225969679683159667431484444742146628569365923308482516536071332016222682701505217012608504453465243679763633637137420945729131232564504185932678419810652912648667917563921147314776422782031359017203385482514914117836084054487862785162461804251783175778977510087756053038215669019377146896407033012303496099319267225163826818169339753803236489997297379917632539962736595640330000531862429828997629768356269515708751069608897160998051253901456475477037768180083835388393050466118123101467482835111023582412043403433210483311191337036945178205163316145357684887511379325811368923706195320872701747157280103175219196468142652929225706449106842462763784025016456823144923135661825638169259488772466113921774339859511938794396891684239934956566857794838130309818600517399275051963766298 212899484745870239627692697862598168986407486663563837244750788826234744473716995148829740573852603702172801782844418298310364843894643868953457838013088431889992119853116365205661422325674395516629072799076495355082389089530021534567244257194711225272678994415518645514659608330046635610825925426742793355185431195229669213719573741164171517527338230759903886935051908725718635122750244275970130621276088583209057727809006280819184541878286848489291016335371707851943166258749269941427863344161876444363514715501750253221226090806701032992334839454282360527165321869190618738460092671242759463754070735391972825267439458816574266870761579004947401918054047464718395715555643047850209120278249734558843014084509439970728529613944492842980835229155479277320923425747128972758447499209508295939921349614997014918960140036697067214208090246908573855188177449053920274048926854261841915515884428794976878386234470132200943097687104519709468579271826555617843125473876712519373781144500211366368142423937279245693257121084783973680200817454560711042114438495452750218825190303705451294334775241728705235632209774428547345755614106352446431600302723586784543751847845361871194061544091358146400920003623959579354287927453450505 1701111228739794687954744959671086155336632424113789817939167845435778130409055732673928823329066561533887009233349396934749365055213991868531351715649298693764334802148485222189565269544102155284157936587542494996130732284518697548062952937821117566078945792130453150001162106948670562153729174731154449218166423877263425049738260287299456701374163005121884996215670682334461090848212786979449934824710030100690732921347366389060786038666870203248727601973968196106984375513444865062362170397650166256748707624370878823587010546652152064519969684433472485423750905771040251648013085163111341923414438245125281469130003712243070497908024758021530093433079651718408481408265984060968094180642902185803190448505311589816164929909838532691933893673962911676162018493745368397090412659037874896985191788445805463828813939616884244423793383950135087204868539382796399967334127192609642355443602883857339866918987126795539267657383466815528450998251923099314510813167343882404833496293477451431331759635425972542490255843151020982995532938625471954487401936384700123848466325813697311766625023206146581009496122827902976880104890291605443030736689210027558227187981069145417585189407921807103354055335196531969271987355012527456 13592245278388320224347068878823897882753845696809272273802152753391372215557799477220985285467883914707249571726374992431048857365363799999383086605745296618382988694623489051158928323338510369495138722937564827103495001851022344729419782876524305898460894510067971503073313334290299858333585635675345275433947079901502424214459651706592238984081133857764891634612957045577430208304433720991191795495895702643226546037274068736754132855162287976370906476714886749448472011556905801142566814197043605227477475057954789645083642813267784181081031431461708532605950059562655820172398537056830241956378210819818547746376578807191974293483659255642395771278145308107937360248230334223273294069450057155035515468245823702601208425424788624051173974147943892661759780133653816863126226853484065219142081039943442671167626397798773201043059888226677060053881728365853827871021229457569504681047864570499546925410412823753846866838447289194300174871616783205349534566360426640750938613006110518230748854978907875595844345936469421779085544102181398266640980710178063125757787184236709965788344491876494891619415682906186118325980462841856503321017960528393730645937481930369368238824322583827702756534973109501194951547966861960899 108605066250791147069987262294486562743811922017486947860775241845932383024311521762561393918723191877694249893790002639750410165248872379545490938382386396400363146303042735100510305837195900306641918341590417343031478914559074215188845168626424365596000745999133443567454916027570260683214349040549421951994733306357265236783647671846054673995593964245212360539990606055425465362714856389508555351893540819924801854190504579934081034129253206503165820521016366308999535380250306112254323670498512749581608246022299214572830261922373482391869557873606024817819541663631645713129015628928550783018152389461067778201035831598690367523269923411492044694258952112031265544238051417335252126947420516333904808938952511341648193612156864534177539616146163984156512032879053983824699137788802723538941034406397474108965695928308321582285873884796273134310465730728604716536785934260103217137468016360346543739037597192187114148132913490477980467354589356845027629688277471032086844803121548729613945859531731855134813485689114905205994155991219986043232194215951831854863279279944492329863564861598511476830508697754667109560781235594441379729836645606618805278503062613429350024016999023993062091704409554522874842103855443235630 867779440083439372266637156651489789614591639689892014652312512135815769906226652684980707066631630237738899422169745896183441972430069350135698783621420717938827470054303862952693666492362080044067375126907859477364016974422011949768685641491091843461816635322956740738830925835345265037949318682434709311765348499841110618406454014206353566238038411921642582435430260098315610080535778793658808878588903062549443386488446699524436274283871764346357493548238973950593563503070827026717963191938415083693986613631765776892967886970127135715377251780146209834719712490067852147294343819585185064672697119121413272556533168688541459716553492633118678229830154445536269178577626374933122578553318922921041224306660890069605246619182060667239647772357142639401024246393699163619547212348181569484508059130864802127497386121812592358365502466172517264028513538524506680825889407369709931610596102444214023664892449163495986065082512384524531219869833079925734269354378409494841348089654047895735773849440044335452023197975430841678270058175021126906052943557676230564839183743011123494529915406093594583835276165181778893138515921773096783198738057947152102424405567056001158001282927789508038855737567400457558277790906986931793 6933763379740482721947046433510217450640902907906905898201531084096326097715148399053744739532962185333511024925891243493972097509754498349751279495975334702949665301958199176960872510794326479497012847615270177966723600419730311921106445218315870976203688326129451845155553805156698865429999881972249504179973987098453637814244995327979505662145377242246447874031883756210581595184462758354597555446086893014925227340912562304452305826317016915945873003805857804392209923835986398979920889976855044061136841618718176794890378377428875584868457263598623235269350513696117872021855179637702347442256023459477528719496211635123950447904834770731099397125159753153258979486032420845701015387093884392315033304808071489159665980647494732196680030750447032804586330122477630769408516942081954700204198429121059299005977831802177253443077384863284494044264760748685753594210661510499572313561454139524280782992789816495442523503897199910029078043884565240525509888752876066829745582401333139999143890292693603235513799696703796312381532732991953015334924594611798681399750207258022140223788741888913805693410113698084120422990094538792672496899790491480475292932797120258003959076848475955495584970323396252897256609225496259583522 55402462182216495528819273944113915314473977386160601291548625562360203420126548454084705867633518583589206355752562748717809086588351695602408079447591965226463884474123883825883915739640283518343106423513693683019374892979356397078840551770216514105346011939721161975477599166298648285867559065658733157581131120544755548488350417541830110612888292036696121603080279681099809397901310176443071318840051541251852925089036297758476536787082277344716802228080783164200404493183015025361870618179962168414908916771785863484362385972158391617435566310158428717769394512180674149635953153778735739736529024806509568794510816763460077055125807053299888286269520927840522635813124688073364968704055184734767974673439459376384056575524730267560732123026060872846598732225074136325667900248208983677902798597510972784187509338178575435535539982831851022579020247959301964903404088548209813003670823515885450643164930079131447651051586508838593903175928340589706010359662178245567452838007143618852335992369928812433544639416571122049458107156043191788745674378769104572870189378581910732201891884888756563050467375304151051886028066706828829519434118870863903397346538126308290131183635427229906304497911277873305533002030652770013690 442679593947945790624090691749560914208440924807225692809325264644808291740539126754666699229083372612077410436656521541615641473227513754821588525923865032724356420485680216971720019055534029260456387918093874609717517824532763422626683712349852486512515809719235058971750451411855237798787309947182107514262516898883324081111620877799002300087471124734806572130103571794596236926485247190283676440055100004515221136725102362820927157271566745475757737997229945337811537252173854348805399405065119593316557076965113754792090085700603914568887619200726780788601243941772992032867687537885049600586122972820197215353372406895136507642113810825777854081971132715211088496443023842713324254733315641531569206593624653879988672480586674130265583503500600726746894539179738957159600177058850215949602774435208557242775205191474568345130297319315657472519692861235141165666051833853270423148247538798602409174395859266663993747368692544532194767206372735926471149830601386542180371654638830572806700636581228099831892851259128225748976870863981755899223591047226556423824009618712270140494977625238297431550479883120004117083874815723571067866074876673012192328485217415111686657455514495566671746270667823658619013243259220655247456 3537124343567309886642183999192897828780521884674514337097250573435910281160069344968275674700575422126022413039661207984394539187977281869761021372515198175131170678584212360625925418846148840066857897401894947421023111790848025689995030110511496595795643576464097192675272721517383993374667472746896875515103082095788803310897653022298988206603624387768416859899586739933311095486348793202301357831529102232583485439579502204533824311353663905308683021988369915697999187386184389314311480731167352552002240115393188105705552397174335071472465375312294078240865989774290546508234702507581083210495540574134334533367444280336761642926939908412701343772895857187863153846969892533329587985223241308710683920104168296357558454294232033191941693363214596864163046689598475433140323477465541520162366860120598999776825082780495202126375208717736826833366055699336882932654458177164763447251146897770788287056472419425763754981940338683272669056652786464684618366788660122442625349856417490830243439283676657550660320410799897906460962093424077200355743440860148949404868451479218103511309871696484283435379118033984622709539677773506495396123338512811596182644524059158608131437018831951929401054117428309392451947659617440970825780 28262562664522037532243115292075497988575678939621724976291770751418569183353832026465474172548970367139444154236134627487529044351783211722790460797803936104303455175348335672842333950368507737797388713089480112740658944010967644393384421773239847055008389020881645487886542060800207876558572392303985658362874484515103318312838598098309857662723516561961951193453523153412233272114314617863174598928603809530339017490093536319859148025427070236158804817905831711738137409505725641016742778897054163452252275062858525289716292171339637002630759473895714126012787267737954605092144625165175808411713737016036561370719870395912987840626904077191021129219103341517164733226149820898401321131875180473901200527197530267131358818801348803580930680779001067234298308866902560159524131818178664557289257025717924538312579412024785952618785774873393570718667551633817895378407932114298854063880741641176945494894195768529892039042550736905818410700446424444982754669399443032595317039655309939392058440426041081518875812570254515254609788691743210470055527578246571951264556931908072628336392058164320293247211401801618407848681136170230495004220159991748956427070081677647182715036132430947214461984067015659405630376899776693655513642 225825580646807517092689738947193521206202650767054489979672340067380376996398044534644435324794370958650939510659630660967882730461452851284391043858594695057198457348953230270024695360976345293987482943781613464493399015241883792409740585096926175925959672587445888496625673028437046040438430964157039605382351302897254901383619419948488571698585386263320391998647599700797685356455789202231598910545286692702984435845148494601258055146025020193251759488560991193421462187316319242358813679442793198473337335363506666163292428758348888503469874144029959202723451015567341905055358504448379856304745875438940727809778035210737023047471154895778060207765271584364206155480943808370552473889148400141492098204719865654773988293390733944109950540349547996085684055330056078570745750334635066562834133107083700518673255201336671697718740669693661392998629090671029679517730732897801329452450555539881633461205059322939762683282554890314893875470368372016172671020178637237848193075741122497413543341419646749411242176296423466305289272759041741270742096893796340150335942713349549827397593812895673322423551523528023050591177122782054899188234730023249497947356759903000938424106656083819206962735368156533852455251204649666169576138 1804409556375601097196326592444965483812871828371988592256418684301407150606169813890582933516548392014990536763373482699207304540303341913038245926309507125110590675278103808988257440402777213997994780722600215883504458082993951111869577753067794556157994504365571479787860043658691399189000935541365073248904451524345111233935701153209572086502304166673236962469973658265228343856818049441447071066707823178768972545384271390341018617505618710146733487422516466735432555490313358673284480261358061144234202111316450446957783346302864784622927854674543924653520377996092509985725784682847749436739903953387370691719684167497723477975580433363588039339502169433519226152322658469652131073635940867984961810962768931099839920440157173226824091795305013139002197219190632196375666871659237038634013748964505948717924977654217007807715736850897701442363144321441671703504480089154930183754329623038172014063132931332940475632942998628380317318152490833984252535033165009644630610339313542068657561019224863672546989839442407686661799804718155839262501711179166055216549168274081794512298193072527280734356263261671520389336713803146155258029514036889605378436813330704222359144841874092904464027100879551112357649381231474458561802348 14417749861646552468211002084103184597377707662101999155700830692274182284224257300746398298598314982572543177613272306502995761201466391663658273712978072151270115374350611757600209263023599712901155688629763116979308246028036244946097469846207538881788800581727342729339093363836095523912873526993066816014217844402049664498250838584428963328300624131172272853124533825873987003843359817762032685673707006297303903941183922746005152667623541864271319319354605534155303236589154957192552742276338465353610084397403987627346888309010182512412594707178883524030589609800092205602886793225893428217464693004895098118957404978812187968842309999250795746525015901097710182050446557154563106169727564055574643632951006160326247959375856578751019711398080335704227906205762938671314691151879171397463191204048575708284041219545397510869593327050576590624275780304443105086985190054043505097934486485126177198490743840941113952171127517025901725045440127118514169938073660793379796220869951204099734959184254295835113400858269180133912387468746092110552334703311991514276163482974655598774363182706008743365307741123499086686768369052037803079449696340412070171407470181623283537434042761994101620537239014344485841037943692410385843712777 115202058417723865329370958608180396043480068005329446523919097418644190267339563754903095676852779614866368941008866463324716368291612639987478501475690885162354823348307550278206161873094278579902114740243083506179700544892352830401431328074838375133039403751434111383658188993013232034583290078221332815838277375635725048353601892760397730795637798530942368299936623896594989740464055624127739229277700094425458537587623501724678445608866029527808665293174501566346138263041149333059268588841133696990938796209556660276330736169333916208496525356391173823789601701606848085143287648411070847106675593516763797702805327486504176853698962504553252185220172573707194671337149966288296474975055815770012969492727810059665295265437894618826257664706327297638562850678502183071450970481381067203715039694945851395947737904917728364530752873428394597303666514502226290716049941359643720838891194108794458493128288714424431067729189507066256029557684381146855535710439323476503093796913566716292473036858484443634642963088824989080329074023092693789644148444755111440773986372932714677589569545561921728907135349510148414299842519783966019229137670318348286657856493602861335613209480806203838319660424951538256403779325242420584776034514 920499115642596823494424360810992003278774703794031230212734965392021096117561659997739484333503656176154092064955320694927844947367393803853495632640903197449878907254277639024106866315068974270383811319285406117085992600580850773601959347454925651314218307160040349605990316875535267108853329140832589508502905612358660782662167917681855326356009001263270377134076735041899652372817137007763335043976328961903386425063009180636756023256670205230231320439248284673226113346458439763854723286875604148104899735918788209958777829380318872236966726013785563919815752042763673665907857763721278834145580717980569499452647571484321957400206723442598722363587361290064046012529054389690258009819943590454822623427383928563523673370435860520375044276584890799384398723330127540736197004922413798372318823929342374522433191852363195167805827656558144224517210402102387548888490757516522990251348417359643254239640728015446269123633656749568404924955522395167422464189887744871104837450945885171085721564661012871904985913656424182278686524580274119920993852484750574501015587129864646757844897399672011393300026201947146507752337821214107810234071638557968174242688702362707467518387516017616019276274465311650988444107695529488975329121653 7355071442052573168835849619033570475525035140575872686383566601253661160441576099598003489226892199671380071142613226469043365629161732262306211203502634817241082525867298528521711230540542996426423617464610172778517797547183328136079739491416717792208677107160438206353121340132232458476225188435127984810774201272924222550262790327158748927544896538186928040106309026959933570333008852350730143918702792365912055148046242035373650291759872830761723877588089779303330577607439505210860029805818193300494711503600537154318788496385290563880975659853899621561060095543266927396675750254384021446210347771471893788492503064111255273859837861789204269306134102767868010329846945784182996769466388666284414242973492844054760956574125984270014421657164266908965174970686148410305033458941439365002131899749402339887673909667274097894617341583227015022734249539251234812242502069136698208337887327383603440150573847762738387533826358409972141690015827853664640355122499551162313066763090709907663113506015939921030650783823552123391602206933238769459872224612330257451483393274729505521709269457037183601272824400568926114237680782982621099550536046216900811734361746136447240790868466313577282353184553387490035545714785037456566730047122 58769337946376254937215871497774796905039963152712486554365431347180968927838716285907789513502312479699761513684214237730573800080651559232995641610108147300847486308701242039398492361890224368370484076311795089177385959265962309896797720859913127282428360741419119948947941886270425121880557757954335476008309113267227543368910621891407255885685102098072730748932087424608871806079475076287058950196650251528665075849287687040600356369728157546092190998351091498107075871871909542458580276446870951276937483812040591726992798581309165183811553735725976099249508479608826517237699353415315111992980790878909136591443526789316031379918069682083506430051263369472964465596856764243821821119593174713385502691246876183427224813060945093182992796258175594863835781024232244505960665077336870895587359834703118880266727078120365872895346317719003891774350950894397928612577439552537626684705840898304929625618811884649173076518589932856908205328220395147942049635933575352178877764782820996852778923125232700896317098221686441737207307599249819764732123358196721127586623033399116485586885904261134049648758478136204225763902237985412550925688460541326685752746358558501398965010098170942441711780213998714784220286582506671844264490442949 469585938102907196609992701663889033209337664699589959143248840238373626569017784227155861734921067716124928820482940858563066307577771204007380263698156852589992599580042546723680243025741638246149971131579531217152724990723142481281488890745767865866020119952007051777883927076065418398872221266549487456821265495795519613563457163966388289358667286154951600001381193319895163531184939153010028497223273777690337427054867101306240330769525716522331407391841576907667309219376704616813555158416781519653149230049139817864855357335682306824752957188371658800964332078117768333133731986246200116558026192072291865627342026808525740238621370740737579156579704486014695239660078539689090014233107855753307211907395991081490889602770637076982996350189038735879516923716055328420901670611508979009351955447851395168359989532194970559732805692470336767007356870981068155246142696417532329466493925584645385191793205903375296806542918713967496522427575230892715855108582927867377790680782651795976691099860410457084741119212824069717721967290863945803543051187386670696571560107862379045557324687069626377683715700063229407629176877073058404666868559237489556788671903840587676724916824530219472388582659982197611498979865365955938461616680768 3752146183615922576928164346171904096044054949785909995216134496600350012649172316980750256093714300688266854237660828526130568686612684540741625756283725640297058129682416174805014289734383632764570534819355183845401261952601026695196361821463815658671138235566473081692159996856744832546544121361509303904896813627611369011201110582784906980338662920536314484924428169557817114103884790094969903166537640936373425714064043949920346213899096442775767439339967303354219018333099528305075818179343976456684084448020425781652681077593165552845824802450694280231977505993515110681562555547724654733386454593887035016693104775364833378495014048760083283968507035666664012469129838953445378842476589591015095434439071025620586962084840712082447865352950421602545110637212994706496322280753311737503425946410095991723004935010352330897250785881148713654641183358202726325484409687282513230590354700115594260024629089087453168701651983119048750705593987647945825949021055581701306685958939613978837361945671125498704815668909996577298030538808755883786471421187877876783012138627368174194788672759616032771022289552063372590470649858227822920650401402843033817781350531158802809237242856993532942687601484388563581891677632511778918988863582716 29980909132360014072577485726210448893548300247329494733259467720251076069053096761325258610116504550738308561255337385878124091198903439430404985700829458164179945891368641312482955736421478806976016034149031482272664706384481817699749473365264183907117269392080534613413854908000280112432211177705806479335842923415387828701120590908064098258125778001483027354905336173477641118106973944091174832710316866681848378017718594872266778708271727752485086859204109746827935236587361843614136816925619562478005175437469570821376935274900038808747116481874161790313550420404947473614086284189813645530489888732634386233379351638191512017930594608280986337114998476535970783730669675133746311098474904993400661071370819360887860778364656521738030612858659905055179399973182959810395066894879652599540427651920850245808178920494332252325347434454638085788370441535845718754101338598782503870958280367132486403305553920122690609640084226734941004484239429506516948168150034162635312147802116557455638754514300848446552500008743012191779169009148943192699349220676308379968606641665639512373821641188251435681190175326238317243889365430616385129499947980103559017044431804585952826286723052551317659207676417210803272238667936046025898908183005326 239557750738467096819410841408251569028225662169878940479288239210448652225410280500587117481697784591502808669750596661741132852749011038333498764531318078669921432722931815696736135037848673157936543646772725257218795934653061128209628615259786329564339725372800590340574551955726975370423553846370821022378136773453861684198531741533759576988746774248444651306193210845246396616684227367347307920724687219261761952745743271258423077505083079509551751202700817157357797745674770415401444303517985446165775904975793173390314193714960228439059808673833587611909486671090560479081361135285374357143442046481799989127906723561131344124841242596360419679757705258656303708637754687913966538845654346726712114435439625925246159557757711024233320016813022377595679363873943147465533486063988349537644491231759392720981301180268768327982206838906887199788917235090345731658803939735348374217975295121805241309629699224000111585235504602786738381042306230245471333019590507445618061205661685225706559785200036066578069282230670257913601126100910261556539220485254458651655686070885386207359116074419075967857346398569057714261767639360180430081743306597133306665830892438097914048063385915075575309110563701081707961158803645975679481781411424027 1914150298420949962007243125410692855118920014993789014417500893028102855377774015817723440853533337794169623806375098003968720504343531363088854573313772686542116058678461929438353043699517875320745415919508349371319641710304614898146877611443821936956763303180509785255033155210934984254514182360843706501624108404325489550096880052860156811765129223230094499996084145794236880494138499537263721330932197120742318586129844709589964884025954411400707396115569102322676008709252447223293958096117058283784953350549871143089888706926733070893943026648404802458233613108045106141236559363933992353597729448346986945146961907768114173214680902227200607892307167697459330271920208522711772515874770712317541274540511477681228238647587243589840348185194468441224608468833193883081394655550096510623160485633248964739263407885119195255007127982555777769189730945522253836726396958430446982063809992210330407195896801997218603598686674223262262175654997813988898386590384835551451423782118393642069481928260984932853717766935913564862359050929811679625339106198371687632516436202717616668626292372277969991117777029859026416000269243373800452897589866815491740625864226218222651750663394473270574258642328130627238033913405168849840946763218749150 15294744401202973758674298745492475867563471889662409141883886037389909785741309343126087460471219081083082443474053927051987243641113557981822830060499411139679832549067247007242872890487813313201890870462717673593455750279819827053879828644702692927093068493775671895035863591752346415430414203984197740027673481679352670541482048597330915102332244859158892106822480121337175937975881201529396825248385908852791562018136386453770646426325508341913255681525238447841279510813709321847804096422890058047559086275282093638300789895977403152006335342434186075112800178013044358319018657735754159264442833194006344532825950339414746527896105053539957641528369628954193824311842085861362795429803768951550272021834898498517531082526835594773315516875237711882122333417695416488009373688828737023174643676339094860636666542654253564201652592929851855306915575828394127046032568266372422692476185058151347680970343901322325376862603065634351946180297548937952144943239076429871241383187825192934520069966103530295226913400774594012187170995232906160250077616898102508601649317716583775807635866440566998544789883133390705420270547129413230045354634853508208156379093748402780429406888963468464390708134773688400756074838477843134025059310744450964 122210575953645436596233527113426099336736966028574516676225797195175707579030150634647621262393649219095525676885993430633506714797614268701079850456601608764080261888203165666166896915767880213282621719829740678227140569948113099021815295304676393493596706252485639901438017894228526229638538552560696747064212918762973710900113851298593428173285597037795309704443972499230038200864628536317352193097818345679362479562204724361565842699191879863729432047539789863835833752632382455940373801100746867094034504557942905789127461121760688948335533027836922744041945252384165854392017726274290202970279257400755524935142694649481890383408782834666164924385750366706958824322415906867851535778763068213509289853536543530761682998318064552333978881451821588881774440043754011676882282936615906254036161962940621961390838528688522702665690348519223334784767149831104729376230224798612148446410664226761292598630460191730148768233840151375162626616195110258384430918921496468526865224234427309526442662796087867923134938499224286149812894386382325628762334664189901828987748737248478547662025637718807356940398379383719503643687279837670567781197271945832283116599657265830649847564053900304701138024973836579507063482112616857387705617867004359730 976507844616460975483713689239525661740068123900142294700831829415729882867932513752892034357554200255074570102345661802738798235638886912230273771047899662191616661298293963176349776390092345749734834613179249102094860477501430724443747222518643393290614601220575722268554479812865116720448370377679006738673071951304004919467984171457344623639796498800806500751127857355337661701565428932026237636138112480430621626744971955830758800432903224510568122790522881408050227307734011773313297268993157598905398758381451898440254640992587248029776896589146761815184505406351315633828914830064953406648373297059069371235285479152754892023096776035242123997061262455006544152240690473999669031094916774989155307198111678448264314875967927289698674083924407005165558385771506399696219127474756350640001140928064131349465187938544324358065213648120098998534312931503445714132181141928326560637408868977260663228684950013745750768721882305810934923738677867928966273003475330511776299559452939792414880498020975404418000039427628214591554356545737977761176594258047944094383731956960646531632608011011381108941721571172123152692424668704685303598479767688374222471168163424219781163179810924434600920950818140004674778808271542965952022522107856654999 7802666773020951986757685997567030382073098997496017401098421820903450060986960791176724461946280915373104527019632118667556004337256903592877385591813919548398443680271589483584458666570716924280319009088480357226572024977267065170183379747211473069747840251050396434731753163532771830640860055343389081018748896650349178986477157763577790382826047854905020852338411931738392380372252230730722624339239809909829152738955350170372685436403328669792343156768538021216368216106564074960665168317051920424753202170269655976353940859769080587315750539370745081692472595730359091828165547699530835852832692418579583141416878338792259764042822075726663312414826573818812281709380018011255781190958156556599566768217041969070212739036368366936157983173798521228949161292205031339503191132715512225669797290841572544851224457086599891119332377265424275868264903122382184791460971793310611564548036828779612813893511977188451975530154910817398482806129175435599152300490958801203818813364567923896557561162112978493172329129162643670167101092334367454976597245810743458473824898569082466429362694417517844968343304948701924136102891293826521215801090820512039570767901200918752783552225766231926783476055301887269488801282457253349474917799150700663754 62346310890983159114374525363875545486028462607797149087990337044502760744116959884160481389957226113881251227483164333239179111970044118168511548250332645211243505708803290771966790279036560487794816426763746601077763283475542130583612163295034160944265963123648362408264204213553994678729153212939745808395061471289565537132174263628868841975704756174215865391033670181750525189360828902198035297844602015126155560043054348129504200756619925755319003986902119810125484024094189406412960222084505556168403486854514483968387161268439750700181890804566170666543795370236675667918505614377693311246674582247807287059591893861156577611878796758892517949541015535117813966536689568448239642980276898692114835373354359835517657055747930166848876503352619925468482248953249667511244262103321982197862253754157851600979019617701298613220986790784583114747332806837497398352926518565230333693628760711332099816766187501594492562281367451107417145474391795878449345546912135408778603655477664628726900191898923816714929273679435124263688717387534669719612004012487816601200663844202693488458371003450670326368579688607167324277723558383747178599087283895984496312919340074468854500835670112454504647143587841104198221638177065592417927833794588189098035 498171454350115457053260922145689811418406555751773884801668423668274174813079436288630165886713800309511350490273172360491802173769805967579975654136677053189990691568316277697307460426777570286764833854838670230095865729300041418987755259872947938508511969066812296846615069602793580543650365544629465351378906771225704864477176587985869886732230771530740607336484036540208370427938819655068964395555990636907509917195369392170380602805109093846589657449952166680804987924787132880686159685180206775335305640089615866943802458853653880118080151222725860744178309146679112480797840706144383098887386824847806149808008019919256295401265972645688770043072631909319132239528598896404135171237677605489756191411708501443251862398444760860361995050942085802555686886167104799625549753870948207866673541673940830616548849537534008213032377285268713493305597670734286279342305204087273037178536334250503526342021135192936259942799288838547868481986539168525609239506865948327288361155436207096811609205471730055761936468854601498640531922784721015513524914031537124185891578649384443554422113124574856347537280849121159790230262996299032928516989168016063944062455415096491790419737638680520008723225038703047423401122083033209557292088040502092022936 3980588576746266471439117852946490737198971801710770047559330734171349273409988595596308705342432525871797943034943284583792581872286007101314594000660658042193566314505521183278593193746197884416594023431872609273299601337315566065929421186555073415689570073868155921629502783946310683009561905798320084329746987484778524991648125200066372804963884357053510191168823048467341555841011222078971308151200395848005554223850617259215160496891293496429972918709830689276869333754136552065211090860766439562122106355143169405662574146576354857783811640348618849962559509530828630856260207876497094651360484415557431841750309919751885109480249405752693412449685145153899722822366108819501172925451552851828101059113208413183930782203343256339672345349191188537088429903086015150444314451030080714364967695035776387885975317857730226444224938151485016156362702109716975738495746618457878548554206126298084368896469840942886049893199034453951027600411632861642369955251075691891502061139465084684439387407772441665723450006981831202000126454165106212438220667878888143407242260185505996910105378162348910978931791676563626759991066720804231311980045103921514499265027748973744430029563910627202674077502030102346877066553821054085392161342864238604847328 31806517588530954201210301930171410188024972685626417720385044447863592507112381976790195378985063974331759145901613466779667137079845220659627605823711777722047442966551204781557581107425482730376364244597411760743454208580082869490116747518877046517599436468239782453573897903622443708311255008250981172608486002688342604882436277899192587485633698131791297558638962989716905932501110177378170943547974567787115129798368320970992945850300455478846866326290267596489863018226907809567846983853082060214081248614634648202696119622794509217227396092726354497551915510643792359029952311464283040156876556867330660476805941273215541708021838333141516062434134958734923559417701827804632532949556670185818859337494397129813434746241139258377093447110086082606920865542655926324104596526359896351971855940271738420705630085494754744332154608759575241708870980128800882100911979973684188964459608972981110013062792751447199403727052475869238813337417133903536998368447148479222351643114490021938992199438634668546570979500121227107360325590718464538776781413991339411323171188168069754779632100984917237287496441341775902405255109352791701007718157852797794882041308327972466989328117983945139226899202098777805212983817884580329789205262697961078507392 254147198467212858532054888073522098299823943082991504877823459909639009150440426834434751552063053142815875109262669218917512330099508766785520334592324539378439970806655683567059159507909690640352357851084519500486639295080021318587887282902875635923742727036201674620160202749000820998473321396075420425341137371383129041279471448398423175713737793367607992641200737303896404245126952289187072599306835749002838449914746779010888607360254430577501535703410933482949529396186296559721146600871364758720152646176151955091496530350199580106475914526765686945656012223266155218890741426955507632947271073503175301281226386880596846310656886148379667037532044261855629528588202510245517622792816344876788740188488273323101258865512795630379456712050659054174852712903835162543485569369461951192599752233357326272891784124374382312208144048833955642388987826160744909432282923812659640430076997932191294918256503774576029410847306737034052214454245714200404514834479838599590883793860414982457438161723256487003334938873244275595079105593578775485666655926285662620492435357541214221394275291347013185195055295444200532180916101423465895626809964485242718403545205449932708639913901718739928634759879374093628414322086804562917804719502243325363270023 2030742725154789491259368055946924520043735101687671458935033499616140143678965344064877463626916713674774039088197822281210742501316133959818552819601285543839804183589914382344310990572534547595948222064329608464858619481754719743042844825148361595556643856429739089183826616473503169877960045167320028504942511120701067429173677025860106736816905155298344294649372754773278089607854191487465728390428303525048551032261746279007926822258161392883495596445082457619426921938334497827725700101050822077899907826403010737885074653243950720154822847414015115287863842661329812963465591937434394175380594513330564532725620632837336816279302380389485029838721791226175295702115475690818863250008349748061610027944145392031594758904983992875018919676565480486903811801434394003698614797115150806846062711762300260643255388667897461843664079009266683372515421487612824162930786267250649137724382628659634859542593697010105846051373015627302844927682674129897432270760967531883269534954989123421824458955745274493875221704806627183752099099344961647884960404020010133784965726905110664207722831246633169348658998090835606306241691279095908217026244247080838399495030745429965834505353088343599952112606100602404273104284823533521891742304045436558107492956 16226500204833527439452681919823308219278226099089469277683706966522476607957659595723177839193596412277990886824542677623156011582490270540802742131475481308556018312237400058885643706032681129719655222837286684270859615801704294326113644757671510073152538245180003776567000813861941387104801598497858693442753814708753317416138284350113506857312507042467474986537561746715925520179635956917818872486490560664438434044976688268479121100954212760960859355256613309454514798009719771889351264569373403821036804201425913578189870063705594485935245099852556345008992636012639108223964870494842454150165802406589596120527493779401186819157362961973040612646467221948689567263198391813709525862079447306712658868189822158150000118943344051856574900512246040021612590476207358494266691339669974355706061818051364416300950299738609042389918805373584058301788689019291351598007769719975526904886315277540322642607713092483371453184713613132070998078474507954899264566890147025754756306575168941611937412643593812065959088114117281191654425896294110607302205668747674475496148107211882236465419349355617164686319264931247939768311483353086526085445871107402111429010021979026947439284606458695066428653654099093846498930617391603658554109353755756449764066193 129656766516102594623800041401747711046665687158044160074722292470218779356468954076176296188859114972261819406790511257381693987202411164297966147099051607649473975407132857881376330065431602001912657117784202714835013179081155590215286805006263512928451205751959394481796897475321507245724476817370741339056039039719940112097978994591268018726427531328273804282163977943247372938553143650321298864896030176046267420315553451537977316468110127047689935394214970502522022609644366570469577752683850835437780157721163033660644003218223459482418969203860845257390186680707891526033804814453493222849787622020631977620864181868415900760752436017843640294777863659840257761941627170408111560288143825840757109490770916983134927156644592942600481226744122716746947885993022272543150349470372436901869896475768708094301978873395024187647273960570289324202428380314535379145475435088693783732472642063198368281060483664962929861222831985884235265687379454201586382972065958339402532070534706365208824230027740681765115825305213516278183078610001245460347616922580709860527215824974272046722919475321855672089723006600183314352527431280711377766366856470761991600377379283573689767786604474547743531576302472903885569837272240428127647541538522509762867345088 1036014626075545540577449208802880333580854013485121232051819599585389474986433062824318289254985354567198600479310075064429028177866638537113919126875856840267423126387919855737514136154763814617958900374838409421011205835911743463443920883161298506516356739494929979422807080484556549575951277958716513541612273789842049227247159573018906660014827489062221474612139269941420105558554873927215462050828291387042718738587752634521425592380180416411860463521770242532393333785826549722849709246278415924677133162515428850101037442485361743004023361734289337829788863165343344658578116503414178898933668026954483740154950184723477385994733630293902393698591120943552752813815558596728272470313430693263556164173917084175184220075044592234890019397240182261382328804929471412221167015831053810086205336716574981941803588118315434748979743323407669098418537935857208159552334645434120652735105569638004459763696775691432814997795230347077477142920201945838324720358793129676892911106095000192865711796109498661373010871247300851517844305221669559269673594107358926831810890116486742672978738875341979137098515870139970420784856881624253431580266745634342018138922315953391180739509813743712898972529308136013561951655699975108220464186892172454521893304874 8278219909666680260063318218264577484910581515592577392788378556646401733158104527883945125898069047728240706675233237164147530356253170724186396207064351569172518864482838750296327916358148592232959565543179836850422376243876923595254592573844239920415404587173559129048471205919976216608103056187325800270638117263911889664378685992286170298582133078580559843715632057938831927370109163192150290507304832317175882354816692882245789059849788089719380552059816672439839675209010029594133008442513842715033521531974688160779499120798464682003454452566062317250922376590689289459429440415307474101090689957524885992691410915668581537152279686804706667005086554761371218232500497398913915899234474012870459120213184339894749301882296517234018265461043578038556562260598829419499274142809201295602578196076692030860633231924048748286040426752043976991504733462626737487426630871055575596118395009123208614423556814656782670640243854305853879143058974086788951191973568361855489213691664851706313265469772566586751997331248189956812491727233378162976602262419949276437253925981209380308191669959002102269612337268575932481250959308978409040601974104845582065630165756993101465711216580055129886496490130450814286959404700775271416139988180532222653047467492 66146733683639407418921513348372461501477725099656159957415626187574656899936967218387743252263196466505593600827184700357210924686560325014844070233890874833009061079567364956902253596857260604330032108962990989628227323248391029891634017188517251920344270142664782278780029238780628349890037486369911160743056490328978599298008379712221622535082663745300056051407263431271529904504210169871169002852976731772174925046351247572578179300810326188051733017538862194463622775599289163203757814522519459864412913930704711124495504231810597543381083574166494636842465678634913272900762416161744087749124913039163795989685906934073397385772138286625988852479876778943912376406062635483366839489473127476161134837251008117508908219788847063960542123391020107266924030829434464240238074066107994274375203470138545299701700874288648823161816414609892370624019965955767042525177422307374551632385912785358661233596797017961993194230667949722619787590682628181354812697661241869152572797252647244898686057490468823057815827700481185062799532621732196090349057396862219464027042055351961799261997046331177189088000201053447630463371263090678515767328464003733196561483183520882018787779441518272057683981402794132066944443510798115437092428187489408325478920438881 528542871127854662442964474041279217355762502623292644490436460216543803551713901888235863408962449016266083188719489304144815775611746588858915174078085705177490557806882408158441992052891336364338430691257055999936908648551371327122023760577365142272402070230479216447315714635143454245739989168909729115600881410281152706604666040541043500566873076176708272593151931516008093517901503755876733558815078674363753179532927609651842189417754641785873375441332832194312913521012125456136332187500479817914644654313703505253862007020034517754878566706841525896214244025183642880044387511327355205693409881852361049068994853857638944458626266183481124310081254993583675359802914935644286131736684157770969802302336170274529678146169997664652985432557068692584428158210192451751755151644211435159036953235208939979118861903005979971180175651092790828153031143604421444206885966705700615211139878886479418998070622072404478255933048570369922844241654609036638913911955080674940141885370288518958200477349208499976041934492071721938228296108856105789516383915524778050612961534737779468969396238691159093052671131553402836545918613652349667276095959944092901910104891904375042827199134597007698257442464903562271338844482021863072107920789444757578782759939976 4223304608250500884656584526190627335296427690399933723738162955852278585196594015158977847953688729018932946388540890982586969362628107299430263408213655523693152375545199961767331682416703365169350613831791296382897148597286218603281461799781809756174077532978894051595948170845887790387120511460945723635836022700849096683337132344852263293215241984360400261286055292216531691177828556841415209544913690702110999094575754829658524847650370453031730673086658489287958503765061351082282387968943792966619847423150160125713841821972849676818726611926247914193049029613748301692880997028165356868767232305592628601950427223750403643166096578405337114448742510163910412672525921048206329631938162556447720738960506620760966711660125129713203629578468074374753279192318427060257834583901601895579422215684018547887337261564275458645603427290909558350766594189722816785327337332494082907036441930970716396595813005374792889634532236442807798274219585195798503292416211383443151928545769585754089163866662069395880834471723282004302936714623723606756371015675745907526507957683136767896338952938659844910443719901711695938880395000632131282070850861552332780814437564792525707414302733868440468262927105076153854939157523195829564594444333659888529842772244739 33746206785693935537103580892425102062001225131857421523530093990859653789858140840409465859435967425957600526042803904340334589473474133720857324928302999322225129108401006721868824346778539192394444492675481338013865784821688286659862123857561372703363549069006274255823345825743870597853770896683860600596958674278957503129596877790967637954015375445754993236898959371811984713841154444963171310028649096868088225767493085430280938235170142935924079526301360320972102961038839360461534573852690359564142058073556478509834811144418854789610718912882886842888627756611233961339033413731164948058178939019966551196673294592905377444840254428313220176799437049419267027164682573088029507175911402726447711271662267753536401047163012364479614215499711304311470625403828509459047400304767236074554887834360064651604779092130238538508028581313106874425926218181858781592117513440518071811129273957438067888463672911301081967212762296822463736882347783526195697198834279788163538244000816636573062789762815960232477026818835815116902517509907237740401414406336860628065598498888186410918009606407474509700605291984586965067429385948974814331753548004027323428379919315732808587681003620798189251880915261787403680423506335280447262702195426442074896623214190510 269648426481053575117921384639171281452185822683151985790982667215825267955187896096635585463956862116409725198578418520693820367025954227372101529597230304192109155456389426214924751277178809207234332162978460745491242349586492941934065029603899949787325228103552835685857896465890081933354756961483665802328095139863922798844987774209940950307396750121521043989369917006998255750195410354643194843009954878421781137504533153251216554217117936981770257963462300215354033770167378671917592760541284812338289453124517245894267481436714067338429250875412998628375602089860376924191857189520756786153908145360021175447452993301176563126452091891863347658282505550722813916217083758503734724491139946297051484459384920108377291660695085464501078396006009703667779862314812850773630989620378474758905266113938061692929784417087104511074173927595449692426141082325334379275025524859078551797445787510807196692449700146573189997395168145981056478195764607054351112621796215984285472687577554588433799466241670775741624090365298261568213261029856685948275990443770524659026090207318533841078456595407937343451585112024672917984967121419648630350999816726606228346536647636081806292960490440761722637596242750462697523306999158160682556444907544113832397374074079000 2154622479287447304600634533937001996037098183295904734420671558694160445504305590744204514342692103053784886380168432666639397089894590995451956951574169831279730974439574983865459443675698154418292060350631179259692194351064841342557433460686456541504004457625703392536442229200563624468059117014876972731428200216150635821321791692646161448342578449263683672965853173402310198957322517589317806164541916142394438448809917810298938630631915728410358500298919296130190135395150625094984933356154169148481656133964236736213295695303137637958405831608786069824121747340844449043148784601832433767300607805157430580338867556052583587042983878449162791086712086776785173822697897160784350328672288420079051098262361720651928405444136258362967243377870957959592567261600410552502648606034768406734682903689945587022238757311343436865957868843050414665223264792067715647781517758508420252054280269216918982968338865811027903625532730334538403419601554224872473474649419345561742602564202002949497852112289306281373933810338967787848503779300913031353362162898659464397841983011263579583004034362830450671145109011269143973294461307053023613838925514465276407201050649438385081701784448711345065725062119572532896094576956917631759984112898835535511215940623805972 17216499390522451332581878349834230366692945586898525962170516121436849320945302586025951785822712494385582182517109174546507503769660216146215699992692156277891690052508178772168278537476805503539534245522620538373656776713525929951034349432489782840053824381187215372732359550688413860067538098166549397725627800152227974180091676080880377471498830869849030683855089162168747643342161807518380437660035079513791137944281571111203397820043584310227191639268082006822494644161359454864640146109359846667195650008680611974009363744108557788406450233490813522463998626575709980383391324730077301951889655898341916424322063698073550229856473850041570425456460309709017705440884730621092718773179256344943673619521234782491603625674950779853594979496642383011755094474816425079148862263222542426463642947423448550820692494280392003448737715852573583199767088750405486589845128268519396215432817463762285857734479625906338904977171442214813749109828021563168922461700647923704146722612183438852432354113432472467119809316254467943861680758472448193192523352301999733361824231623872012163616682566785203923586483167273910757485980998090038304597137754341486319927757467820088623558070432243869900355996782684638651930032123870795537529093241466246582828594652517379 137568462892055659349989043793415248145143557221521565134361900350466801263897927195315239725979244258430084835680139171999764361178716140313071529262828772143699381643476486136630681028076793533134965156567366744974582623552209673346369128738710786022020100288614256908532905335969770647506122178868815634682023281256147629570194823766174583241077617032715675428856823795082176511276959629324068722183145086577103155843436154222199008092852146650325961102835458448119864866245771963279516248500136886374508595649946466987388315358433693249086173798183768405613752777918652782122847495209907843682113335380854870310590410866403284627733541977188888720214939820442912759447422172113594354313325911274024548951685617415890391733983425206006118436301345879551427844775511190370585429914906204820547511336168746528706321877412930872464429483097248363580713488168601631594683137189016508108427342730628101547412790660254971927252767772635061535395365609869758116146478841597349249542854390754087184344463729297552959847995949908167503303686370226841371734978218341929707351486349078797857179652721875349741590301472483204055487310516898430652082123945847374666516165817147675133753873472306381854073935876953862305280474460966911319066010672777026965710704807728920 1099241929321141506821029794916208250657122608491407365151256008683013014580573672234270623799580890999862498516303585601950723562015316685753374270036809794768347625577276201647533273819556183026297931801148214284314974187595902025444521880170839488070255987004120180673614234114811687394122966045771745944004204931214207507812392138244941341984825801121536976858908779080705507714382669280634140343729153423316063355061068204823212109971710607664483685705135755135193334769729479203182855608803692777591944825134085806900810184169257632043274563533244993509165934920201861636096163851972650357028835944713886266154358227729196124311590370349197472125793969568235222750993401033467155502019989799064208719719485281719688305165859328949091875149681614458580821989649587132910061986990236577877717045738775765640946351289229541753069647412090166205324687539070113698150467925470309391195453274255343591521853733993673092158260437849019958046191800899876956793610202744051948408011046279482374519724131403883408924417375230088346850088739866074088880864214823982380267717982977980167237606524465380994429384571444114794163300330959582018691409953988014543868051889332639246149530285848205141224567269880045948037019500381226076838234282838682443050793094577684585 8783509064528532197543956608068964464294791275165269977036610398579312131811888679380744981924590921658038632505405336907469394891903986653049100136069512661621479653684797378238624464394054422657732516787528831173333267826714786133164315888230288500538250335795536753239213987081575652891676629962737959686131256167162832062320558214108272529165030251380672569278876510136735522062285697670584700063417177031610787126275540591596981785961515012526999129108156775367427041406565346064470492691628151792377037150119088499182584071331756884595319797215458097983980585591361073415010455348889490287167279080051776944635470635657771319169483424727055343072893987026499050898864772528103330136840446436211207307245669934125669809757834078469238741921646074691302840604648501206450924499670223054271245101720916563428860831778856486677667814895316750807450834894023559443300735248035145367543845365441993311807322561261298228217126983717686221686481702261144324284738783707140843713185469969436390587312790490668132476264680597548670808517080007149267689333559684114569507796657362912273389137263189311512296840331431062005112084872859327999262157879326630267794252639345045253639576764553953595542451035637363305023450997624954565714360555393897702902503367318808464 70184819706321398612082858976480999890177955627493685531389183638787731338524326077492102293849007905112920043868921481688433621628212742180111670580777467173422813129160604850888666435995965759669503597673733800325052778556650043089819918621470494271383288153522633144007254159855123624194903188840830616685287794004028468398481508196271098098883863842071684749048772804876691202036183558762279113888920806318936621246317054974333169112612245200111460345791418727651437435974469951534461457366836055760142711736913600774371322304811575417683391631157733945052163691539042169439794332380294588186647732367713411900129467153778283918224748526689147838995727873585410557295029869477008737334481111634996344015802008559715144167861149093110063176925312004455894487170897150164512652684820337422978551604179221148378891842831405077081450831107581978571181888066684414692611005261924330523048127776386715673052563494857156563465857378890040083623420398544212145058589778920966968304584539282243616683996095247173821451227754279061839818081679690434978190209388555852389206867789187511706107338044076788441052497949387021103788540353711630537988386183262977276802811684032254833937667849012161105225145635413672563222484864122121315284344988352064252163465878007228907 560813797078135279670944836708748913527446688952759778599023281473059625868801450695716085377909678319371510794383726525755977549558159155238704073836868334144401633897001027138245199830223534330818604119021881697289342035384222140596942491525306196614465939805247190736677077499738823147483930497300007243274371037547110890114576217092002715674091174910737005708426144098447822199980333475682848201347924470779129877708773324822960538311478860230599194813907818735986320383658238926522253509783068224302914934777870010058856299913364084101759993040915460982733246853808097052524672173768414423331771122452177033498156685433146078889886565478167960995387774859241847828619233632563819966981795484362988453270393024393518441143209684797733959308236290300212725346173296507914977429146914974726866477251249708317927424682515017269882931175407248882701573009244131045454102229926322315271910531570015703173708919846466231427953900489693394745303340278507237028632634915597357987811040358327622193418445022409610724341891268534073756528289363989102171127886426888397737689360977043557440118617657603143464389943234577807366594173759956583356165706333407688274982048594837387404378405769729724985628353988626510291906351925578266684902205548708260808774831088033682836 4481202361015349551887741559064138202703529377332741589994783569002992226800813912944259208646941796040410247529771041845873726127397587350432920088781055347695894572716114375114768378916809531814583543657019888247152384988838039623168678688809214408863705660113450909504776871739038995033493807112814642175082263310592792450245569543255090441144207995347891055021757312668731030875713732241657724257563524637833789359137913013998576442166962103135908416876441593745753968601408238108009497651309858788529854757697068215333825585072448367945923826382090178325415451980514022757617603551629403704856494158192835220493196020053641292250161956743017857493811229736300764193863376422085632251777727845032268003844065816194185788219462873093320815475185266451702755273905888455596740854039737154213916492762310478564539636284199053651623957413588357430603292109139573263083287061808345229799127632855431601374406740465147948630974448902931653199025960949980483649755733460879835489775885451487449841824201393579641192200338677467028157938957446070292950612554053757749528893942014415133822187791682195035713076090563473868866399381314336730808249498207047832795825903931567347342603303518878286279214219698141280068521714053154332854469063170946663675576639653871169161 35807235105420977553708365778224359831165445806995955085329773864320603097427632742549446031593430254881902689002464051647909107474633461223101806029817576220153910285215358783415495104037058811741974321302953925822365456185001086990336924275691571514584113293375496005625230539248827432817756618218044345808324766238767309359183338835057509336390392959455019348656141803327972315999800452557152459869190498196565322401115775584787977282991703352633488982260562404756689421454384946447053200430179445639085177760132745976881782206574614660587189487235447630763665173452361614136074239661565662921873322467559226442497849454537758363103706275047040388229069374181130703760666074390052693626794735803483053150043624579366100642047760405521129126095877956568276214936164350971279645660921694260936702966516608674981956386812936872325319943268326176684637551925045868506975695345013963328508540162945302611585656763236331774177694250463011614770773141188221310384094195078534282072128936695507227412823184981092330924292857284363946419668454273475999337670543302618269118465934158652328986592473623830434078217953068261832965027399674132033487298960022548528025927366541754289497770527903064667887365683906500406986988021640497707472637812677090807292282194424411290712 286119451648054331364168086438580069446720256853982762160305987472500845966728482849974121853257396791079592781215599836105483485682982096438407772768410415018305680583356880448809109328290309540721708550741959330552229008063676158164233462191982280319190823234083173600390905447333163120908630162826197121320697949496967714482547731519875763177607125148395373148293168460890426058884628757555606961347534467008386133518866371374929997668199152805492495511098612749893557318030732485728286419311635440440385648906698148532969921366845039267812226513365777266963292968067521625265527462957435258542995804868672804259758100502423969326471303909059330881540747875788135096529195141520163884109559841037435235722354466267684665006000412263403440536830010042755331484049697887902063151909622886617504879255621096542212845979823299918579014318767857406862000758765841745655442553447822120550405503586896964617269277010238150374313359280692188362630135160444910328006583575368998156786380556744690869772341498013411953991836800477805517263257827907905347278745643185642966576962703207648782053952210221310714203086742023729948196500057540173482574452237403093048670721148283365035404440895679307959114028797985329044198244594184296018338998573422287560746136813937699842769 2286253294827688122484651558900130939687392027812127739860034467330781820040646319381841136294870315175206052813827993061541066728105429197363770178317046408306159369211360721501027999321311273724493550048376063774263808392358019745607110266580686252773132902754077672297658460102543514800377527090579974274681673919945247606160956945999475908475580484984278057835179380972784010962892847730753074500473215328432442508131225086560295878462431150944965912836297356198837866571133499519279202205416646834283419322226515498704187417467213511528544673894860435912783671886320229897381400288559840980062829905317886244705637870507698045280996309032520519547921662121067169885760884534898929578783864807090264455361213824647398392179420781277543417569896913104161768225748269063423432008689963223615301257821045615438907500719877869324608029227729841618918369701018283944403471155811826648700834571253883192341069325249272595250126625336920937717503540293906728878733661869574562115111972602858853558450133921100216014166291323879642646394260991577676189923660796406237519287186126165334147041793870927311499779219688729931537302224364589521093901308633624433554981120954027247155121261327145319753673159240603375761298816648332962146512678552175013812999353116785074774658 18268448627168716532953667485676590184191513981763307165141181066701730906622484480244743783594425287254750916956934468125130581228188137721260009195553084134989843127605361607116643379780936215193590700840396197150663160230701441936022064330239649591998633341977304967519064241464012999647446195410430715436523109237390998684003326391561303757779140478780650320485377333434805499180132565223662167780188367292245799137217773366342189326874606704479886915575901747195688943130413752522377756468302093915381558367274136801045350130982517162775065135361455865583210483947138983406342106934912888543840261355934204422016396003000445454783425727933499672183294773447837560576772862517118862311935882738599459197799599512663301715067502167327684417737416935051347255711116011283916604618498994748676492011608167176750793020309598796170376257025951649963404125460334297117229650988138596000861177833950407897175379300732185845937332487997433187538620560710749524132269711165294125854986579376527317773459721275290463610919868426605459801198239621024665451380716229703114460566989315917609454783508893743481260778251346328855141870601091023394055637277608760252971882279082369253254972307437999553822037597378536265339747850500511833136202644306685945926463563503871039206946 145975292841784491785108944854238321107901591032522324553193913784204427402525095339150240935646276163392245490247692458911109288785347183850473142376196351889148923723420886184387890065483473595248368969327476606911797276871848109625856128680894293496392732963153875875272410016923964481153103912798812608582752532638904400988159611909917521852561980217995949565754679680016092145550338546437316778438059216661961078483583367109218829242149547814888179358964541471441814394707773358044972190770588075747553047418007509212269298019170615600916990376844307593243183427016520935252005830364572801911589449180520712775338609769150125453109926696553690025375371050235575225465205686341279183070205155546748727370030686385482277801608424596785081320280656944912927612481045542884311268486255642426634460480988791643045553452272527803443458096410224721373453214275663200227690588731181143556176695999577215559178418282279883999822459878186369810707633899762803721895509299616246173777328574588850437653959559209728476551582281130233131055712630522184086612476357684944198450562141203246614864010066426301674433668241649526680218290113986516684561972697364080258288452803307737178490686441454171417875749528765279773274975066081725119365475513724039940264515965425525722794590 1166426571983356177510423615755368510208680413613515832108700329704099764277824502497642725238210173395643592934629948406022096806284885498545594465123643045414702339045356454724604210975244613041695392386561387808476243218028475196270463432030443887590263163560770713279153650442665080437114497001069044706165732547842788771142508449816247174035613122061251681932633735806611772409186870224052026826159429937709952985818694194944478534336655283778201897486683031691690896181084900732962496416064575013471306588160537224169201577266618032151648169684143819299683970151530401725772314904479380281121657840189740585278703885495591239520776694600202707053518039410388880908402847450873610824335764927351289941102376002516159570553603715507573246307925385256818890608570690242413365694594229932488565741054979305228543789594001148180262715098712994780205428423122534468382815977706459173208607393069004413134588009559665126032029601134579995293438653175396638228601150850238159089782839283628988582395205063845895921481259749126669799267573462824220453024096727349575852041602307534043202262866059568610482968746196936847159009156816646580082230304690154705200439150478418215218490298593756800216007130572946674907493264421858042511482967517458720663144057398198916947526273 9320427145227676091576255773883157419519798068027272584466102679250631209577286195271208733424758236057487509576676373220388848835406668108698397129598059155955850498331170155714105598107658275581710538619004897779950220600439643436602626272246366502155995861513533034111159679713849864280231329282722167949286146607523064355509821510572653697527602597671184732645234902298734186965590345699220625166025709313421448037843462259318996099345209247134238346405767354611711524485131102589867576335512351703562914456288292764961824615638265336348970861700789342506001306002606385244455564335947010996349089040213547214109259479274899204016049242773955940060612761326413003220932391129331115527900631084519900719207047183973857391616862776651918795706689450343260733452606373711107722011777836383918872480010384521096303934229106527024835305372096172096305058363540114379592859768103027389181078525718518327439130255253265735563494986418876708732242951252612618261242942730405667887983032615252117801092703547424440601099173397930393675825150673439509653439048242888308484539427577131443452405140007628254355778465544832593036333093118569962396456135158707847720459573307165172615000073187979460887471483646475812391070110857158676468374212929256396295118198054576189692348888 74475699170188352812185347978582177523167311048100024265636731479645727604905111482254714723484815837122629498378073162947293857116489824061446561696830732279554355716552062259426120798705844026553075625980141752324863420987076600521245448437312574956130500218385986008895821160428634083415705649056314454531534883086747158715873275286729442526551870550498497725846047125833466237498002254329267564228179417102915278949796724891302699481000383983684797268022580420297505913241339293910372199761265910970172673506172197299868264321035797369799327891129592254838599271166386940205345489933456178859492740895806604219128352669684790120244091783057746276693058097196236776064607730565961734877008831395964885558674998853639980555858931172310041165292611669678158291550468532661527774790639249616152626998877077344289393604759622282664110593489301949935984659498277309382762058260609253215755054216058087489732149891756756575030935083598344848082543686774555588409391942269227305589285046888819821604012419718681642378668742227683830742203281770449148162621611286146071341304810175365137335576444774042451972904471539681380225842785837318293248583651731502904353163919411283346238624242580522970079094919539177254576248210063259134887806561620445421128092387376866275254281382 595105169631877729162318176099393719157088585315069329098039832151020131519416159990361219645360700627468419420033433007756936667580012733317078324183339736874031844443753343737353292259645493483392780584357767044363507670524327738298031216962227957214340981633944516042515769460095130339976593158813851201558455812770967063546743027462742707582775503908797828793827475864010954852761215498294631041911820082022737369775560547562330405833545969975551810072519809825497757028986906847104306056490097590021378254823293306587413171902489536668132508551304070373274913431955561838689718746149514171066924063358490156702021938109288722111460023301936510115541722056604654826562564129453593196771768001180987374830897459368541454769485103434454196503561289323361650761334627597487359000513896694080088573822166843579456677392114180121903670153201407403286187762242156288179525051794825885584646688450704150835024182518366661576269653537072953601889103926704824267934122338558616466071172730519733779699715864001038833469172745372499941634272395124288986954729963971161402267594425439881801437742854082574408883312845760823804856183540649469601746326642999516431010934486758823053480848824281871029265253515307767987390535927163173139081142557742061254786992265215523554948080652 4755248501540362974222545653642807405025377449934901868275770515233753130451901988879475298094900866123001025672958609211777596377210966926174800317591245650617095318750012788586486736278326686212774988078693290558405583618277427059046995455511085488880757734252631170423853534519532144993476384216295068705514739815617387956598121217038774863648194955609044326922883141772057769010187602825366984522133148337262884609066088223914898041701793976118124598808890933411774787859226939198300019197291865463273082372819356748645566600279929349397288691807283918071505488966638718170234750689867247109171982675429686883437840673848112483818144224000152680154991337632403425037912349411683364800308995852451871223404659808753317290137903120991555491240278665788213180913827411241612010890707554246161233900535979434650556551657522161598069152189078191113657488630356730053307909861761631581162567171476451671884214120215082833156202239033136454039165320400717008350160275159334738539516050081272471679824510886164952413083880148235345708489736456491359839911979529303413782442003403601504804775703985066880117016718725827086797354400409088758406204587109589069198289112297304029033159223242915453179553950118162967193670632604032321759323218193274790801120452837214812241132468760 37997329225062067625242863127000261262925692245470574819550130079532451338870563067341207989003771234477784512315955320052483290489644089241774943637285218642716898267207143377925573034798225717310305266027133317262635192626456215896591349952146062046300378533590298845383437874049998910262151932412193254627888953385878382305580979804220882385983578388655066318144558905386429748004036294292267890481935820153343201534657084532036267856673819824196818958259141857596623043001965883229338015444719644598733607421580319337898685228128911354004422800530326293989293229921867807049282651444796294802321737340969150023700481689979360928449760619440118602108306918750586768766561769288702223851794173785069486347802296998945610659080993933648330416311397457782826854544889084180978790871779896000132598178630427366004643051545475640378897919307976729387919189114286885875540591204567070892266230909920042334079102883591490081742272253471874628355599474516041326074525197094205070413394022511951200472290339317550690649423544203691908048784987310572720867352962385099550900709473338604197057208004079986478283524488257515385451987450506224110451891033271783748823634155284376661764425488467094847328480948544815627403544929171904522541323014061992873418939945133535220685838518498 303622034221204467984387435150625738460191379580795276392087342137788691179074980489160555910683021501699351296235742457515937942581052197142108698541170373655412849318583774057137504475194030498931901272477749293598964822401110094656475784735923788410536364775699589016558594618675349500542225428051866739608601818029948653501298031130651911940011469884652592575615292415435275476509488742611615278017302895506719447644704218031923658798702317021328588418071865812972537090731620524482569648040004519320493049272142811761426729732803331883729882052443212953090237836943162785475910812584564315505484667708437869585142070750362627766829881089930308709985577135464630653109656802218536144566347900696348695134234833035515993768103975290856950700570514823862267404974545561920697657118862772251837932676607999937675942658041736233518708352697304830607907519818943579721767024676947775288795789827596909309002541708925452700429071603219423321714191342594409355583644866254476281720063766041812631081338653333785342012327304795586165193921532424768911779666642896518139852621157415701294853027869504311697393396708152251748936456625361972833395350431468441620946215820361926582805657978749107311716664514511010397013914978515735684863572929094184795812388099261113562349003586001 2426128829042807328358885649031628378226610858514619904255071541995211837251904966520587158891101362330365695234949825579144683865781591990846901991665814231183537848139262288721403722069642441562593165606492934413366388156773093782721521943352283646253103953766066015497885505690364505653869562702528195971630916370270840079323698857996760045644510165019611132632477493733703988606566296415438711448752491948857674378302858634925654971539642570764845334572031919717239903148877285013928272917702609644284006151571237769198703342018651805571739584906367436931463636308880950310302576679181433687650755208011666606208555220938126830241797401418554445233903612586258968157865489823743116680530903009197104344802177786374523483995592155742936460113901706132423147210231078699893614481200535709351223693790137462098928847841570127821073971740619613540352620524786215233130381900670123432087506570808007442159216300695356908430762573962188758459872738649370559059184746936331291490819214656678175898019975835134369182718422619724205245454796590253697202483692196314121946531198510745897514815554996620742978538287739453877314503197085974143841240863478858794254605683533793412454035573067760160724721583438144936946279255294256628021485381289825226316572161607803163033501051387448 19386293779408501706389771979847824702820535765175296972575566683607049155898988047286671907372400051172687994540212096817814109952416454918339672389399092841698635971775653265999052932184058396806079178634336599640395607975771487365263622916086649848525089466901066975518089439393458531870788997717226526901089522111695293106976023898714521463172055513622084132790654461460282061871911132656562151068216665722802978543435091024811704555214247092887826591309316448279681011160731024517656675116572284854829223779563668403712987649292550199794691136703950526686882919974732476928213853416572525826421537790610785627913351336382562827276270276702916909944093561006793062708531080949583568960896668323168644445479599517050715345840257945246003990864096174470373607633152946922005842205010429854932912576322160455982837171867327698344259910992676030190305738946026590660617860314318828338614906348139069405913417924678722754394205292149472696618696297315185460680701255927186872085021949666217168301965428519753534245906067402782033202500267880492992438281999104359498300169290229505728596240350118219634650513586472034345959870851746567874146653543479254770854711579904654420694959698926400680070987178354092493938383905746448929974126282566672597497018511540668433003944186289427 154908796170702146641601057252032218790451463819953561632073016539370048934685922324270639106821350418103050812899490684191054742807832777785696413266639245422177604835739705229717411488264107717249681770115467321076536000982708846309844286088453503847524927977822115897944297732803484104744138137704258220897347285068292106773649748419901785055704086196241303066055151319134414933372174706291539183156369160702147596843910147023800094706722196595565862261130387834319544817889496803662246784248572987407663708068492146672965546665672970854239519066193555857662562747669114267594946406909569080569400768649379606652162733306748717340478296045009058963389338245325009418215859453433506905085767303213134458580199231568117087222505391002932004803223224513805336476110865218478208319052283527965611940516240389267206976501590870425719809047263229778640446966269965983658809228447211953838725965681455074438351194294043571871561103426754111897988286653807601052071098825806980197629629391609689013746395541516500687320836163398907037446132951956944831095638549898608424182200177021329240053597355137988554522429825769086239931031781198946961750503001254716377708297836735060963574273999408844034825395540734939360291965795569595817948497646635542493117668972040575448910582549364898 1237820655902292443833240141459318324075850447701189682974907120006944694370501510716524363260175201348645883047397608661844649976733306426955823790774787621897380151229549721966556142086762655315538678908088645272108433169751755937909107286881920362698832669017393012750845083376477068701065201761110702316401016183638504387936500184403533000249181293227329518207998128398127153270721365508380504249390564101353588092458893556129975646441619573963273519596958534355483837957069047426325845426499799893886190234730997540572187052902564215553541324132048396482423805674734291252667397597560955932875805105927306427092989405458655054544589558906288620462963628043471837992791246955663596443027774542642138427917517293153594368572745159667076100935172820862324770004508654630162857292075941998328608914126611865597542577558107246403109628825796658891297693253818939371947405725862767670107658684192978991367101163995773433107999883552446815438261955702129314422214161625286741081857617364754189957846675595779584910400501862487268795794231907740187433133279312470229968944308182244374773750138369579387058539199850532581878775314167815738686518126960594650740591542698075811539290968448373765762600449752454567024851065671314266064753924138546752640426176415381966016075839699195478 9890989235976852583076902422021566189387040501124552898883383339134395414911265738948706991884671340402249487072597760150913993240158021646498925461131323453013152239813760604506532123943541575740530972315276387961606305768665541119259599694651829841193143538421114393181904135488513619506639435049898385218597899086461643260918000131960862736145284824765844274795705822643615610890474187881916591241034497305404463671911559587525672816311066908366477699902103848170071749041323326531847972271053755094477018051305526217076523540069484816718747112545869585999983535805977083062402181792231134950711205691154967071721604123359492020133289565415164981510933284591478419352888946700053557296374738481327700775598137052315872544933866703710426761893720370989777083723797673012778852873448674647356577392350424211886416713050702483937357554886756735718057812735963779002338938011473693548859310395703368157474543057796972456188580128842924586364947412713043696188080993378108021468272095986593766589999010611691038318294563165082765795220510050292294087780470892689725672839994809464796810639269230385074264451862278487399889799359063740087006092446293754904463938442792315605497200705721187981654262553869130594105003346850460594648085071803149395593687081308769111292145360593988856 79035478923384681287748280851085630222666527555884617475050141075161779818782183248327639024465030182853069744660295791575574126820813740062272534931233580428855304054176836971486892781413420659206728818335722438705212267914675412097832254187831730217360509571070908446325553099799677878929078744323412650540595805357914595769788113121932614710187051170159689110726185879136916806261719696523630078122277643124165581210023573344933936687308249214179235287161095758538230938363844831063916868977456658127782203061752333337957496831411164393081446605815097810724725191990316230777633351779072539199228874435962148688770253391068418302142278385014262933366716356523943660955945761354252957091786748995234071547474281321484707928610589133943440549878526373555943082982907902968448538868622538533191284989818089588484878555643126070128349402806779460996740544498912596661139048983010694371837734081576518355228538549213678554863284666663505689534783066182846531774165222049418893259397029927483648904040575925452693949913185163493376591235654216165600273569738502127355907741500572149063013964296909967793205927278608124105615604652360517068692793340484763356733577407050904914022686156691659917704704848244478804287042298192158496956368505519861983968974408732946863671283767838303276 631545733117570194890098608584027073822184975229199046025143154480143811777578765846783081019115871448400525337281472691773528391812525245438795991868325192643563841757864630099639328176440970046124263290793544480310934810356701875336591470501321446431902365931860948919117858582223528338989897376698451886429057172465668321104564574897880348964186187492334893140219398445955433594407742250112892783438403531341370908088299428216285554482700503279718920716017223575556734693026160599942122076564462572866400965085747775957218798981067710752532244733316927047093890869587961341687557368327116199037466513816429719704788891346885339448677740027593206278698484632496565069343189758112837348730588194919644466208734728721628200553847766011901778320136913693775641809885974280114335496749048026206683341738565840091859244050183428884027486030857959171741303283518245712041750818993766096761245955483234271518198510988458099862285186498764948958195409107893336239820517215898403267092085838156093269474807529253526400380097735440230490157759870959426638683772755724704797379943595604623655250179072415535596847858490771573856258893280993052285193162777819921660054324789685908632353863562873393463190363834427057405981450199500146249706382312691972589014665569047661822151932978711772528 5046472101980345133769361158930812297157378895242106790798827963553815575119675790184817278423125776981514912844793049447628868753276649619853812565174152036364847290676139393243134891623239540271222888695291190134974897470211679682547566683374604775847995235540017314859762493507817690555736237433484350650629871072856792776654430280163058745871667173748918238188032823147354717408609739496680731531190534244565208114833161872173915507577621178251715699068424719471644437736590650055001532007290170987143048091622294793335593292415696761802911174276594264199485542018782158524980356036683015459633780398602746619777714878828116812498097972509043177084497619968243989902236685462689095684553970629589644887448354100786172917817902180771715795529985283521281916768832734254437616349227418283444408969490477954454262661290107563485749038565839619327818277048244064343264302746081104621916757272089993715012243660133443954772365750259439798343034406221697235437480038485857227130756497600714054074928044479131466321733948468923890682674615742490108349975829352212357720614389515259295776114078170959184499468945363361486699446140479331212463003878967382895814770044002200193791940693375177023207292796928591166614641105645597784627594823703276964407630855963064624084466954809287649304 40324714671495876106858798190724709574222231072236650534122067117641407560724457956875845259363451712389822721731342341559564996008883792548317536587860082213664848496259922197051104895103874676444593217800768358011679358065907005341073350191749449963127891301190412764956471897134956642646512925732323299675066721441097560072500259435408846048656786625019382273710072268919219990215859904122123411690604462646123321863456358374608007276349198613476617373023934604489552417448169805789426457211852345498212728490841283753400094859758089356919354765413023797190859069844068743949910938644804408028448572905584718602323129879297990282629208590652682446953432020062327718813377301005883368626779481507664736039829104378713671573094463583678953381364369457781326538885148599952037931259023569555335305909954605969168464831531189168222511483563711123910592701610598635880364069496077595997897035136361242341213316547301600820588220254859233051139622146388672616948869715288628566953278544134861540685363573056930291421656507328180358676867334437663305587984550750839490504825473195127477050249710303839524759262959846164569388701960899739756346625096402981674973038359697802427257854183134117204374859049071978642682646888651970174390942807492254191376810252814697033564966213396928262504 322221922087921294371546685463366849392253428246702809434732106701482535558515113393989600485330144741601089502042455450516553868727669155883095191233357727765461771584706338922642543226398904389061358068739860359787179552741214516164692735582721691656821205022704565187932731619408812172813106875398300411689863260708728260214326415944537871886593460657562573971118317036260062263907378897201973248302991986076754489111258248741601978756656525788652438901947072329604761246414371669855987603975833527425410232764473526324536637449280657566712396533671085095210916309819391189080936050464378196497840134646648923613049462084179687962084797522711892935010181902249032807930674651522630845678164152521338653377341712282546990295425704460900473503836319333489444532752612420355337059872424359966352567367416556433515998233695712734372264419269339954785223053990512917666939603376411827241910221296157718809029457048645187127949753406711387694174818922864191747231788592874303866249399885228173668123860686790043380649185552956905391291691509964449244431880355365101175118350028146660763083309604969351700251537075080973712138748863725138640254188125642829481167688922949194258020445642778388040742810905788102413032243978048786534576420619669374758837737214781228779472697012125148927080 2574774615012302713752414157356000509728371165824827747193489127607231698511306487573922817641033039687372274760314664151146046438335337878779315896865789393769160691416629300504334767317986073301592211604780165224931039107690178211709181370466820354329060479829411974969570101663820272173817708953352712068762835676613767646759552339900426783210136451267857576650692353223213454311272135266706151216546746297906048427849101985140308520382704521001646626982814076970897041146637052331734219330903099998160911097289994621655302934138525559812710196923336468416438651355366624143567631757138286751705367978568526787910669479386781192339278788521737220439501732533106153048638567985468387169888351949309362222665543344517114893343293946628915852778253398131280643230400427666232935120943859498197110479300875867707411450904869293616999911665632611279449750963445246668791685170388909916481650894730106201561245705373484138497395709882385452497512239693254078249538493861178587981456644824338588185791279072565174089756877557162240894041085488145205680688646054964270934193171520253003537522868106637397254239633790787586859415967794447046328870241649591236332015342111419742921918384446594236055450021142208604767625105695221598845344894008682851497776313764813825405016803049957886253564 20574235516518947932172961306152471970250956329388873851091386704877398988659022085765442689324341207077793960690529527155798794153785170247932715960564461716756315654214239610739594890534373550826596622001607584377789810036223502281769025055662232103431128087337237199385353313605321667586390966039760312707385714851283930366541871584776658058611714049866117654780511376319953963892109378256612775434286673547580543246067861691974677962341707775343180975279447873065375046206232009349895320653165806260609762183354733947475243271002873087768132710393597334206769568400156507632804427786278196518550995905859705225575007519111798147885838666422508732663446029411770064350846665958290487413393478547837292318404407227856729745521250392898272180632781712613603037144410253152851117687961983843971370381188573333465673742781278095163134737479584567748134029850511512858905971232184261886586794908172885397852448114095713579754622223932253169402669677287283637744452854763290400762648474457574156224115222621011201398978929228435649971224085601779734646905352713491759143440903953372170266916133985070096045247476987617473290526432921065234341682095708300685429674444005006085824664837494418090503192196768961777295488241146316095934254527346407105646371741092825577718663347892821044819417 164402549508485752236549778199869990885071228652049722945554244558127724742335938733284252485036444334260593924929461915118626046032515787138594506895785863838853265199445806936595118430595898784630468423481704985763145755014231380633334937711162920964495800940708473486419633654847643086691838241789241064224897642178081771113057916116453051501302712998106642112902491889502475409762937892423249223944417915621930873240680283589883340854540864025195942825054452930649962627073601428433725563984239385993414473271031720128636102476317130631990088157498299926541476867452081308892738326671503174609527648208584255153242536181545514212386289043004351023606428471450371546744537418088915919308714344972488756529531487064632211386069516853563296523667076270462029031974287592246720514162087014252697912777854767535613089110028667644426634254807140334670981603463910426270739634831102565778535718478451313977150014695006874346651530450742038576079112616434108773373912818268947371201070663291750049834768741405464320129686936470903211874859402252727006130908756659910385307488860253698673656265077707271933901632198309541082427156518060677110677073038954260238726350545890880262452688057522920195060429933847530347799662362618766909227597192907078456575890767128287257428060969971321197083898 1313692564625147611159941417571125938834709268867998015868230603934962655356788419179393468416024664648331279443956009244313782830217788062394984982976845019216385007621283513986803090764811604334684028210621783015799312612638054102117968518531425979225365540606734739117227551532879555041403020792379501910988280189385323177035078812194261528221262941604934228915332410767576534232170138187861170037634160636233375771962213448335345618635987323121303221591945315030267310855591709260554709604575842561725969081295288380996811384089394048817000102429086539800081512983298890786547066335764946996229714595005960609126408968313348637809525781865510384711944237205989809457037849855797059678854254469744515365509187398073207038758942639789297511429551593880464552391848514095545214035404704901051844186915358099458371390970178695516362445200557377918285734860091628767687544516048785851441386028375331513805122901474885743206996287453340305944968835490142944000095118182151973151767511057492914256060847344663296289418822903674831556254209707516261950507658291671605607178901642015644409535619148687584339338616430992527707166784266290256747174282725055589859762262636174177454827419690428357893028300962318176389165741455497459007623355357214576195395804340394856405431087142073302159754324 10497340571676329689352931025528331577943619491470304675603829622859186248474649394809711988712870628465880590791358983229323659116410876689186715505036721395604208743466354313965989718467106697857226017358031317990372423921465807184783292807212776386542606790878795188813504415647923152269170110854870602095630726015289893877989893202954940847414839457626456737463462421896692626192872361607469507585851385742525549790546326718707717120631648604533540699994576107930040600758731974929044907264281967297897859542333925910794449396692211117066898134141933446469230433162531016949897255424002360062303632898178513117239165192198037664206017773036497881230936513952457944357233429049619154292602959054655835318433434052548625607785332551383528859018823469334669928700584224355973607589141788152580034415853093906961452360637902762842262983159090656175089525245908505354477779382514503683363845534982969353776321715744397408119365712871521174085520710843515183460634231328807656007231175604274590328779332745250263869381118786613106854046281787970485770148607799952994975100743943155412337936896627404642129657532575000324161667163625842951644011605123619716546809542856294917687230045600016516901504345535111450455898986316173089422675982582865685749171392089616418500772337625229865704008974 83881306196814860413636043566779856006117573222520360645416704467556499415642569542116415417475431261530404602033828352512027850439507730328023641949356359332572047439874779977940959346931958957703654604491091974108639447696237710539722182541846594203533537749004777449252529431354856844512009983512156159383287827584839125310269408674274344309578890255877409009829063840197396272596050557117837701284168058867419365675318596879067809391207068839760354854335209963701991128461996319844585785095287750001961026572739297856388849192565344082841190577586755471122770112229047252165015468371606321221844352613345387162360339551730258228356111372201118512993269653230162875401996872399782321655307614343050818345635751674719447604361186441331328625696112809095566775909612135697267671433471904084229876918885505913120902186499796274652184682879453234628859318633339530401096555784985199188079250427559183431634323634949873279077012310390337702661904047251784633412259022757485416677543357930096546265026961781183103064584088126328366697792809500875592328420290907217952709007284433864617301990160219793228839143379218076089266701228643554405047272279354222002242007360865608929478067987887206777349555871016410266848892348656253164280071897494610208094823236997455363856324440162620187772050504 670272548351956173682073293964952127436137047007109656579348253684369635081063115767358668416708789949135970813366620609511409850868624737159481543674521742449548436456926559194730129455546050246560794172639197663590398291485756959150494655735289618520076471114041927228818837353636291802287898373098364366584791856078859366479019558476302451726681564947354942563502063368699207105162206554693862133318495183681423823805198008731402332189043445480881087479929592905763958149866732064127711990876200811870192949142648689224478013716964677205369780674414091727579210303704264459743731231032209057204997144770893163694669911785358857502651706819790334477934156190383064880833770023600803517247578763924954594536950233991276011200151089837638006349966906762530142499681926573479249939720853110144451912810113807975697437605359655789558477724677076534800901518977593083438783490967950108174029106467350390020922628174018303367555793256437518344464526461076057147141419985411170189392957857078153209879776495763061050160685227265420173696941318315666150333444478553785894834797922284249365694384319848046971461971279476210691441878437620812797986259913674130547192525587276106717862002358830364024524908446733617242188086248184399092630845371948179933721389241121288915557307815550018551617270418 5355968713870202586766002307501757370181549048483023947447322459437645212993308757573363279081931214700993612191328654582427354538368897446334622183599395818487445759069198291235867069398540781677925050851289997563742986604221955434225904581843521431222086129303472692292124236160977539485875619728993602034082486778549414367346797613974852291707301678445243502035190182483452348983185365625148365882129515120138926236486980398205789794851927837827646310978526317745760229148432760480729127953844689670705485860465456044871902856739596369498972777219951852550929582342484576734688802227547408871696909496446471410351982511224817071208908943726308014812645879753989307514872847795648816080383281037527047833078917892824698287059662980671195139832079480032227552097842300038191966875860021167240374353336744202107744254705001618090355725077846429717547977151954840459812497093078290209728344485997295216585948995049781688546319271402975543606794263315824158384520542695171707939721873969414609383097718549553995941470566599678029043592087590620871988237951917023480320744040207482855565774843611806430159410361946887102577436550060000596808401951774048272169196320042398858974557203808337728174425508384797642785381505258356121779014830604013316308463438494199869995935092172594508498339555154 42798148386950818527549483451820534519016440016547966221547136934815487297737247588590197300567772399748931804493338207723854283597956625622519570892453232103239290482057266345539212311572966773356939512914810872996634590238951106860054707019227733334245189867663699088994084648996829170665958371100282077805794799033657405055093766441414433161236912620318434930803533451901716639480540150236292921852258706516735364511567677368636642840859388476518685469044721277301417979267514921879151984215727911516880641780399918741282689541851001811309975230998458321142888814154474424899524776724230254729526116032323668949878394970281102226357818340518590807694927265376593202047638981965803141357440985815330132718118853861818235852831294044032269490858450205681550571944664671655042720516073092105556321845899645239139844441826419450231841795381755071788716617550711947190792582669527476510276470235226977454023414731334344409841822924717038656544695191906437049323859638165367127281686865397844901831761706148332093840010097227193429583162854063715606663815835348544585520817650014203554090090747765300513729205371332389196074547932958785788164932371670936608112722096983346775758415300052134061160321636958362820668609763135542501727278816926018580921946390950580260120225888315651802663205194016 341989111105016244903676141982982359490967151004319567569249767244276684854505190239991535161384953101509198570029478535349017757975218708100531791553793526916747574150824006426527538599970871367087525515983614071805811231904806938116423885466559115695334632417630981591416216818559466748680806892121315667409416145105350948541870155929655977780433420284579803440465438590308944201821459545379205217843937773747887306673995970564066167502924333187690389800172011948664198749004455015074258305495324984998784516492776747457204140055670115910182427423293008813273339812527509742806564954325726250262615352425202987820328149065734303485149562580788448904570919684938259560914508763637612825119259469406342442703298045960357804291293422417012662354948658278936557594366235570081266290942908560465849155644960743885368463327193723473210216864248516887066900710008664680128473355776636420614612889910649189067973253418376482634578820182044068311785746675625102816696127822245931462662915731631995276988019707588029822966395155494720290377317057263742278200384178600162314067474182278581478067050093882833355091026625653979584680207836505113989613560041043335283858370379731503734778379864422090732176988762785782616155033775413929154100297447226420635717406096652752549754071867725902982431497662295 2732750142776538343750356418567560894632966303230271533692417971916025555447031478672839627685375407534748021722982815667053004791428192955677304075510079791962325422676482762124089474494990186071353832652682289793735459618511739289954615987255436136332204832514507272369420707981547295993212197940183078827657408487789197373779990607807604761969210565473473146968574681482097525548884575792666585785707716054165501860596203125529217395497924467610685751519796595548681055258023112156464652669578622884862317560787489421656299961107802230880516679512080223537042280076137161402892869072529619984347509963193439914669015571342723616903115051843160084153259403714814875977037936651772879506529342309894232272902048808885162243388659570687991632075645008502460901820209560156262153426062101209776234301456057271996650164162221699198482526799443125277648043218332675826657232337697484039346562131067659136649589311460189934741027062919860202226585649404590552252128436030851703950714268920437477673618482491774561442532711116277685776867642145840134375491509407792915813059656434936192518095649163541274302722698954422477263203245021749259084189341449053208593474842543044235440846427113149801294841041355393211735916877002716849949573658578635668822196057188375561115049184032877540928916684770888 21836745949372951902759851030603707636101325613388096521654151212048413540106689654374045203111089832275318296227638528601560554047750500551595098395120112105379608042331870904571931814933610386521499836266253207964932567664139876517675487412458450876026349146765990556486778238304950973688989117660918653116779376931857161047769028098571587845829720898426023750863300636913355450241704893582205450109498893598214708034703101923048070959356492268475313161826771586643029428047524606804053784599102059846550244062786997599459814526032625249324321053736965831375256487905281897970800033511778685491885945714417086153881882057031641062025735243050115491705555590956240518485299823576675002458873019988008713516767271483396213113384700754364914580968718479336474527242821085693875528488383239492598323953604787482888966495474743482914151150021394072019463066045156192831901880859425047388385076014193093032867598589593718967837096868678576852278908085630150768923910358004914038144477753051546203413301399496481885769395077008136095610045275921833521144268806140423882590086375987395987046078137615043673757958216105641288020319992663111091461732669420184037018537414000218869085346049357191688177947320130549927202166423769869669868746936253361081901124096134064092099013031886267077582339341075291 174492299306950586233294686813662394562445106727194773620244560179662564769580123192570399320332419813960754167016909501023679755825998423396507996989314498982387125934489572704759839390747192123861004734576249191323443543084732794776538612496057426205349151743968389986245264053269938366439499912528657819869396239751814887433380028020185901538847187244941869374617377964843005999473529366109650167315087123606920825506664670800079153965866310904312645285692757216084797013750755792732930552080808601951837916720532468270221253820177843602870256781550178806051505593988223538269340406285209895070494998657733253553514840408496875587193848203422660191024884151378203401969716973683995516023852294800073090483533490455250202361808336978820581222651906977007119796952892088942610935450373347014361865200031994651766275170570871793610506588332006406558502827736801735254162792657547648048987098714514081100862385323460266430668380477058306641871462673520497922437598608651724026983946734420479635439576752214409693722721478341238510026566182020504974242575334329926657920500469214841118006133050900554826563897750464715868549086903508155610226752556916727519782850785546423516922892050089017341110876511838729202066676388284145595907211858747186426920883766711826108820329080451795665341009356429108 1394328026607985456912405495116743442181267333316889689765370200849929238377254569594266276797364047041882650801734346568627524246947201343728071230124208912812647432803280237147465380356449940563620290694964171864739128973090712472361325818537808048126115802785693355571967284460188845028004492688256103011487030933112486277562667983943227878347041993609440860473376184357799906419984765998597745952271402467808578131205017714763367173704087097783467852587359862473249399191937148157835868966317346901288107882592381280815463615602924585385517439173557848982055163299133485013152242891189545973718620135680090709648870460004669507970398075966500250500331305075907991628490431896032008098467908027712403509747603280376110325425472831216075234167980904402901500652449989989621694741888808098412497796329458089200469667730439971320761252686833967110365608664950909979991509587875400489846115713414819325238706205673289738469404328226483397304390736149243019492565955603923361888774751978500077031710796130719933765654276974051773551228540388823587279564133894772525641176038957386984614285865362994219133186965212757716951379323635344446218314863002234426440919350490359117400847826205507292512580146470016222322167976287711195266052073674657761658844490697250232421638043269715903398856740259231335 11141765037285452871606325277593111378933067181849099164789969755562434681075305317625760095577738518392260563296360037387204373612820715300920095992801525261961407899794171114852602783363489392935140888570193842007565506653739916667083686365500678240798473819201329676596161941408048628900792141632882125040537045435318931327399168195411741138098409195547513727315208257165301691108443634277327754093514591318220356927402253993928223483392302091120679528445946586268972070671484729087911895289944742442355765528975679200783483927126730826963681140877757832867409827974377711797586226079432841194402567144629265505446037891309583687213737499398746730836722381319023364616269234462019302154982318149606537907791333837117360417699544207834119899752664811241814095705622321683123930018809769557392091978909697907483018341536869904534042197475679377422336602522563907072507976393403764226770231280828284441166134506745107483657727427364978891112893392974698042723298434886497644267449957899095256767105676644132478036528554065757217838634093513615703364547383164337169298433623729147723829984885585819689344051433991996452954294458391171617296512559855503718346433451531054545614143860130341069873904159700520270223582559513302246523250608597626586490874968041630176390874833305957953333399435434439236 89031436549231837945810957398163988116733795900700019657677149067420887032396151470375254041987493647890749706461224209610585739223364565999733287750516982494383802768596572416656925136746858189502301489379033411482360219712198054906499432488287669816230143994644355235971235414041808332968863101486661104736450084322346280318966138553103831851465184906372551527063641631630115907893444661089822941366975648059561652134897241521071332568177626916094956773794363503244966097482616546341251080129686639432101477985144142056529936898675104542418176236568816306627521642020800274822739885911250413820731971207732358368156910456244431778243822324996894171056152769726258849080835646807951069881455677906452306165164386242234844290858480877214176164746417901548722273061254780654217902721635853543081295767524711472674839623339214432059282380482148990278198725662741824796704210076242945025677843130212967198644040419249229682530396676323972007696058870889947142820415585339700358563872619708044021077275743357237517312598263399582971316160759126341588384604475733445990441108142940153835437761681527549328261012633527489397514944959550001680810851739880312574204529111425926796554458895893467737419632639441544661690006477821570033353566444024832896804931763754280723517625683847169320919310765947666965 711431535802125211672174942826539407554866425029005802405350451377819715465535632067437711983582662028311239660330806042799068353770071138234342036242432128136419550250256444609124832594696693221317401720901624901302628627792067220744007274223600632631177918893677545803786820359110381536832382720745224517551442487397751104579902643790718900118073792312038685249608590095431329496091325436591775932075446828428022574310079247927522558241539305796625705719428180477688380856512306093222348548604454986313517558610450731119343092058970984920250624263396780245384523607452716859125208929704217666273818092546540057155190434234988401292507457165995659638433066630006464127997515513362220171836100980377400846290880288990976140055900976420067877374892653606896323159332142179805306973808242025944815980871041658720249833442424408009766532396029370986526001799232102073122490889886516841306143212542811311128792080081774064798106854316257702033335273599274787056895997512705589221043707560672791301219156451582897629019804267657417760835418798062761233647645632009913809871015405643214174684890669776054717555784790693662120979993366590000324883241860920671559026571457297795792750262529183847171514419407002407040312036033346921398686299140319241234696287919906041676840512650247634879543649820769486100 5684904710236376220146867339606118962208112919092493118482136444616146359823589244563427231455025328278036930586250403355152661644491082067845156249087867694100198139669410772019337361774657235394545073774790341828678077162435864376749045426395235839955742069038105837139126727773584062404771748113889527343506838163959643045502230022317261565555958240916029036712442725477778987250679638413043109565225589498272769481618693678123991965331475250167814214370072179867178018746015699985675458092017306334634257657871390758253094171505564004491958436284812991369135664754063521772353489474440216045178964270508062599017927251581293583538937787908145399289651707068790528092763624643019357618217574395811708021990978528091867160863089561762323215233231289987585541705071279506584486984490838326511133634688680992691665190992833250535584107603775413809945042753171722043019204765982882241534839784441684279770214064242225584133302720430119591067078426965644326216403220067431639811415793550369148817176674350674280919025021998637647263093903204164364586487467623842393292640558693237193056271324141008476685911078009282199523038574324595395281698245807614540456367893981775014351460971645767140819321890601601810248017892706455155508176585207103648146734878778414959689764994558483684767173708769524601826 45426953440443216060254864809066261221201440843312216593306700344082470870358687397977172258415875732871556310476962570508985185642331022156236676482065303730969540805177449243057567055895783702793627773528692325157585211577477927953961964133522309476388239792983922659390991911101638196960440492777654272246177325673389902321256021125941874018230779125300652158878846364290379946317145703621833666726483041077057738681894176233253823029069689768585414596445680252843631968486213068200958278239045887085121042193951400630329625149389542279902089154294012858853238594551303466821423402116819554578777413206003683752539294699874428322996242061564011205925587994014164724159233672954796596613001265749649068459110565964752549499284756162613708037582711664599742099849645702387261801569555026206759472953376393109125463092653665861213168082768317462005177036019172803219038541493378919605125196475652497320891571660932703421610024080855562256152039098655234122777465981830127027625690161757622053442208187770952925464158480015749427535285626264768466955210341507053492133599759182209175794304448439259453801011335584862082845653861058510500991384975132762568212941629878340164226615664952911947155428759690977079971163036840838450010085460795902271077863318061049809965751269799410792076661163079803824558 362998122586805936279753101324636728253872406228686852398249846827750426240005258533222780447748541228853490771766101445367919204150412526325566336037288437379313052624375856529020906169313939447422294303570983026502700426374740258042900306593134085062183206825357214203913738727793869233822425190440362306675066495432180689246561606788449793716202925994857657192735686738952733594792997435960776602767772820119816680377878745573155549522579666813768359274483727141937830895428958420769811612640896171741851629823026613738259746972334792021633652244857969951078234207643186734702272384200620150356953698683659100169236677182558133179593287868346631627447708576351769061859857356136188449740276802049348865983850690847378378803060906658930693074109198326478143955056733074946196833045456716815177111948827714196272800844167644464283143486197977905822379441477498558496843819044445960338132727594220340110986251177410094983656088236677829496539054936236878942715176302098482588442083228688152791697259002749113061660591063365482883898397074998914114454030693743250409661229756037962693424767526532698836329884077269755422533003544604433341021230839397183632912233511870352920710613793250650455483366129428066212847196659919251785253354561308118957466308477997089181138224186798299733851234560553466814099 2900651077616333357461292139719054191192938871971478535241343502632868691785967411018849957521931484849254309350754943571437660260912516040611963272876342396409799652616946160109221850931629296068706854545638101619255254747115864291405197962450736074722548003928812272225100080053523461097359330333500747501695154121552266619792848216564971796440144029997653659049101795924253360534482267089699382647257648236844843503074055334601788557868718155483606621896969982982530970836937070495816918170735763600712970926705578987487068170192082544931807487040307809004410918655690245892696718769292531047949682114226534035504955940336369342230150403069669249422977985669599654013357171248575791178032315787267483207431906239958319817932994624477231209245053839209579809729790681603646050634692928475722918767699183079682819872035995071068731256530368254414235996451944805692709574636103557586204495880310556526429465783698795084959310184512903560544390877660382979236904205347250096511223698502379489508324843884584324264319991868374590651821058086510529447774131926495717539478363453064271765208584553862460895778183552355003355037089608851551177898007210450059252381372683946724365089814416806290369902149943799291257385677081106454626796971673656850606649236518848258402938557302980527874378344589559184691794 23178586363688289731902187237143308679106244822264824239126946531521488060222745202335674289499726412568755086452274443948624721994146970054533619757266052310459121386414751185596943574072772660345730294186732364155581986169643235842999190838467793118111587305600065374697343922606269931975471020796708053876101538617692708985900922959448034377273404943372625872887009364469620412876894658029338611937224691770427791532902887179933526502784126470888663165553175624255018168945342176243131398827369253672023995362905761016920968934955550108996980318210930991862593764726803388399684161981145131463426420876144688732817329318441088949517198896330355473242988941165719787047182592834550924932833390831185747599195612202398665688777431515643375873392491558439447434346495738682291125942474404068206492080241580754483145889721374522203293383360066517187976147759835402438770641746842277728465233687702855439545406980731920501816865697805334174672631099946172705771676803483001059711700633414544660946246523199717270751091907811947877570618604492350422120287116433505487415216306547450951798788015286005193996039297867759675754943504461485864940718500002803536288615816282476855822131040032487407491245657375942511024607295022268815734879709537541761280321643039825338842939448434138395627885570284454913264485 185216103602260678597572171869253141904657196311010265931820760569279240247908116436200633632034197114413353733309557342529987767121127775320460524522433133108852275962265700306725691839535055949722845983816516126296507123955466981814517420110138011582615734355135638769468550947890194887289498485809388086823820112186052082855302094235889838946308330026471073584966889743268997214785371501380867938357845718599596544386590196706244000403045546681378716988394563367302497589891601011859014157273007980280315311018034835082441257456868391496193745024105157755663029341982876107252509769931093165390954318999215048720173117420182049703925901062114474235794911293242959885069463801562792201429468935233103404582843759783612717292299179060295452782797221971269413696395757145458399375466600584482043910665874184092968008390280714207623703744048633465659202019742424215856316631665742650048472836024089264325240749623786657397329826586650733848836607951986997160192462732765962990518989297012763402038754201400154609150978962559034104956868679637872172862758827625437135311824161974372390033741371999952760717931640703978965413473803873974152672136135608384179378098681394641036709006988919590504186029095153335852631967793373656036916305375982856840214823140881848841529821265962313791357113853899163662719864 1480031248484106958044837253814903201568362560020184326289898611953091931880083550539747413458606263740690782983754500978756777970950444398446533302015484964671347166808878744544157371498490279002039104330457060994288749440817203392427110871177728125071062295285005901239702010754559581876928713066500905357228734348436667748668679620209990525490681064828825460865401505393394672687330660424792825358586666121616047144022961162295404010586658549568969404224278539945968094095943093663625367820640530051724389041193814760718698670336571934830597671080939532253436340944908296377839923468022448222418660489778533456252786320536670293531230598362267261234688320373186943619882168600214504951028376628274518701396545224129973551932337725236034331835571724391619243262691691451270474080389006872322088412453027659673444782474697856362925392771984260537838664356108461497559769240403487308258680955234938915299433532107219133320680248325910013365991934520496689979787159696992256252053736157261732703270137854715840556699338362425612224296110689574884354801826709691667062920150197145025985941156978849264062451239526176253329745702758213278353558082933681299885884891713544606414642813729540263133083673782964888464281469638650611628273946120324587761355199122036259242552352815221312060615544814053046978277394 11826694227342646632983896000772432148829853845209766336078605555950959787828795146535887139963073948212330085923451202381157286667144618375955783031331778344269367325239552057041798636044557263296339962627158500340398506540577128634456264864707292569332538166323432975567549823646011691910086076005744445028923117968640675916648706445487137102755395111866135455215656172694410777822479541996953458907038874876455024781815580416401624587864782115619660631718939068899644475830014163873723954146801720744537657713198198300230075279057844977865021977278507304893780966994635786665313840261968943761930096418959008911308846684754460541028691851959266129640512168806952251684993381007068449983949887678055122054075575154864780023096788563812703557510793196906115677044994221380805015080683720505649035704375840130167509529816257800150099099657083875519305010366811278924176401236484473272279970984832748000912675802904266741850835662141782446845253874488046400504549537713963380368973468837216061083077704859686148011621832900971112675945240965084880354252024368411290128543156025335273537999193404869667345100934251250013903164344650712980480826084671300053870684742160315798284319674741207593257099528100134681994590223187377914968233984044276679871955417024103762787065427276949228887756535336940805152667136 94505306290441628714012628281565186230926801763894888794683697587827262246737380037489386379180398182709170234733721737802071390914800693579033858329954812893034017850726712025108326901654193813914550636699646300393773698820101105857240880546200976071340873472751621603913305573308771640393504499035731187436788042158893184464253462374026486767758761872399972020509271764444644696103157255234728283372890501494326851276644025750687027311861619596480127284029213229519671733585950249635821500088202511044379378194435049082407874307485917421899317545326908872307478563455588375909346549434633034937644216517968973622423973124734623070913262478708570420238437984806982416923774775252780549058086903908648955814038575009998640822410078157606209435191962058455674113478961607220416152381994233100288249370073473409848598897929734441673976068962016210780378616451012811822279165713227831382873358094616981778776915610041091527914876388396436385818794526923691821864260983068006993398044216861796576831946916825314046191385884699367155957207038465093686866040724823294350297353450354106807607530502029501697670541995019705813153138456973230779103648048540393495631058935395091712019921283158430667135405804891423328606605989969416246702580946293992362969698518957713675596831964466039021038512886412281696947560586 755178054547987974357778066181652928342132681434671138884875619050348089529268853852271850247421027679397021868626489979023930709979521704789196582022215937558356513400863014524457622185051847518413338726755401331530049608016549609936342431848792181383821957394198086209559108175153911614125581042318777974476979519209067467777902218173451757201192163975795402919466820112897835057956759803379161613828508909295053852058496962122568775440900146164030037468042782962722810710573827808207665672608260084242903810944700069105418314424613491972374985107930246511278947896331745719815004061303788823639172832561924293990986156629927283346998766210939846480986343613353237439595852422620083193864130304158620676350976682660548513342095476163032506759643596797422800795825895531017025080893641502653414138909513680209093576464290634889094418235408834199789219742006649871016290170326501402624141974885168736559663600413380196987871851618505546936862909057917106975192116974905181195452480114403137498654390758335298746740931395496972687804199104982439525557872798073103609793808460130763751795125522855993327015358340490525593912548939638106889187479354386619117589959619770664532919888494580185664441283475647177265638351231575212490881141227719353700783896533342926159114918185733946358098869406003918923959425056 6034521913915195531369570958213897145808298169204721021698842498031744653466927249954345905706062410005266587074187331816975614718349450670302699739492780855273862725903323501989832393531627131918781531068235655892672644973834634992974957330962685661999967941388364669991683440236699138076311726131094038399168532001432171944050003743481280952678732889143533487107554856799526477898593321677309600834106576830242963422822219697130118857536535703129165698514613443240630173659000223434075642269789078577686971545681887186371113023228992880387729601258426780128586536982669040892223090508107441764399771074992213213708636401873032384294177781887292329578114824470842147655624053947656853634755013290830475629730968334460856430207543305472064559120949135079218702101690371911340864073041994281380189019852665812699136946963964379250864115119394673136910332903893640127403836324004150680759149716239896605374537858523859870876811878965646007584833523994264225604809826947570096716217472396345941374032306197739921118604995696040693057603875869796084691717937791812637108588534161076196913842708284242557475593284043356095721327002906793024461049198715648692805829075995102759703659110216578679723804484641618931069698563520515175582910246916613735570370928852145851194598072383738726753895615827655502959491244976 48221056027303291094620057472472724594900378658199507730796391756156913108312525458992612682879333670182485220466600086497747246383102219736007346374916706290923791809899087051803117771136373393134750134874034572421768096544530101130301097588517469907809696523757896894260997778064645467309694393208912027186405820825207279258616903261428060595969345411485468207109012196462924596708147652870933793179488376747101869513993809183780450055185288767571981537568329873720412496106831388560722213041507491938390308943084147552890665399026799911652145784009132304868292120807706265673162379692231593545594438716004670828410532444153150608905284544766640185948045808086341260374613618845925249592850478649844954486666599420824320211651557947325478778605220125517363388503908426699482222968707125094903879533426380495793620081887559005487605117583308250087214290451013039074963241921356443457426080853257847265328815962340203390040470072755077961299666563671779851263719312763952256649016412653684660438718596265817846221458763386112789075496069399031504642887280488623527898172351554721030180288495057668354221498830572306839148292362032083550700882991262308497608904487891885182577416142919684612331315937631480405945743031695505236380808537316145698113998736754250209181947812149370387527686712883447383764585767376 385328299085398902611676613455553785102970884880652059306388593320230142775409077267218882074518141322653168221149006130485641546977716643689420705908888866596493132951264711313581389588316093073773622107498262912444627932737043261172693782475427051225608797784695964750510710962710746363756065769969085475283521504589838496901707316477683601532315741414243605025101763467720719900347252080956995570536691790956780606121575223093801448794417149982420705099234216442191483607605886373502404977651641575828589050854879707665614212335900271271069684409999840521401300453321953913533698624445050773616322923985575498493485704283750227419902810986795089555897935662369067203001570861809008227696489505790859058446921860327954444619423285405752825540870455533309040666951075167164990150519819316958370246104242228473381955024824362556031094168974529768646245774582273286043060610243018110344543705428322847901911511801753455615330928184512718370566644659311120903136603605094198704523900043017923480412653245128698651589036817304391977708003097335580174034250331073076010557673013975315501690987346067890361184636560228899504919533596116232115191915112910346225680871653599622813615525465724272395173018598771408895457147304490584303331094683896860967894826369456319326484729083539205291494684364041515957273595992407 3079111624569846874715431064742732580625410842330668537753438124244697357624575563891851943886565461706455507347014177461625829288095829059549078978476995556033528444879792421445366996217414183796385188725513317496287403021753476476437887603297617741694772027463847597062520186333954702859207490671038978175465472456680706909392680526239444813258600102227382184442329789567404222397157998220628939857036356489118634440071423097037761779242833130096421191080042461697672558118507056129196840804623098713671831010139777035198827161069331355147214757385788402514973560651279229461527121672640148401524922176927408017920058207144476209170816426552760314559036425923471393845864415450185742652701148890599944633290065289808998743286444299619594556306299960774362099968461600778741752034344742209580937062046248865057657417243548020692659987286460364886340746588017072072670925475457087169302030549045280724186460510560568512091875699461488295063623221888857153750584252705817109604193331846358064411323871485469539772225684526152123965294448210807256145896711795195999531436950246718378668219512863300915968615237777232709496048466937530931905812267123092612864056751487404287936473390387093846244388174545414762528703157067688679970704509306878045130747161631397116116784754317443833206568201563922783739422991316896 24604826122375087540925706491805769010411192873957358210782873899690381310619268041193199808736837654397935850056818558158803560722717940339142175229453250103372521385464561068970437903498691197153321878587846963112716527085549460401129634839607650111337240895676095385102432990724035556832080995221014402910874326543908643535824026023013332174689058944785037762182324518493070164568797245860611943364292719718417362334351603994430619527450052236318924343038261464979733172523355885400698193285769237798009693045403413021410455876444702321343393526357947966456668730424937938893608076692382409379101760596267407251574181902997569027434876480098464030355603585043202142971313287101905035643639998465510857554947182849475609424925171828032166188549866279818457450043365317512774038549390742411021688355394686741164968405940019086807044845457023501603391491128922200011032926690791313288054284157300029843133720523960646727004734636831791326801810072143669767122191008194738129203045900369105988681556308389118963687296580816126583679347968982267555013793593748918490731765346477668870463681053277209398648559657269757400014042681686972430774799310113993565750673556357726336395527204227813147229373357637012205445238891893418110329858658146873680152825106989376619616752410533212697930664871235805932425098033951251 196614483123532822143251320842147066369035186677167148701614314086665960785767813247494890108103874588191809105026575202466587043158047583082859264416825198645075076946074215028820837143839018428711817982288476716284117344095641359445383758709185654132614597122277488140563092021237375670066437985599228123689511068777214727925892761840296064679286176390350870169465306000522958395193211805451772197790279734132737286903848202643244429550425163487712647321312502697241255600041317733168511663085593005978723466075081721507519833597897593269087952946227847901433455859880304725059130518115187077487041991239887302504760102724380175268477965363683283872945710454699543629823438268086496120213508761998718564247757357886263782190689436580231263610541753638571159607363768557222970114141830193261731997581473136720954325304393827158185521851033193039352738328302799880196804823577058094514812113576756824676325506360918139537542099269650592198092846850487332632975851945982071435045574716088629369551567216254725057272949371568052161260648933301783648360841721365211447082123384229453667383625821748105423503403088552637004966104997949942651447353422294295883676694003797226599029908672385651558688945460148536598256144288538077697006235142145149556009353209202401026213714909983522851413675445580438409864563960290776 1571126123052475748187764549827385398989926854480846601328640315929911724812790314754821080178715511848834435158126065676822012293447145752170576922524850838862096897898304327450782910841147028584422994619579960245904679678689028921662404056721256418760938300215441014536600365800176689890912353764393220516130752237614224466607184559029809715088077803706070518795149237825951224840060246716537323106466686052593115127457952072956200809183841152572384502728672509482023007255328415948839209623109909410281077612286305538728540762295468692335045717486034160593457636746932623663436951908914729454138286342590113840833904096888993447132497312361369193435341401501571857908991356684888357253774491658240846345398553384030717430473281261903786766797202005863316439956262080280450667983922099489215330310394045984901800925456410728534770361011344974221013826716623816530334805388038671457945280402703139136785121586888176704950466782967639080904346272312291850961637233831466078407477655686752837406834123403654417752371847813022676145296406730598638360288522787713992858128622906228874828940572932041585248127126148202264164343493582392058942043253985481176381305076963497550843685296724205930460301098687414493167165715247736843628344435068933152526632443306093484971819910704138790184199500727747713450532071424674767 12554717102837548303080492938184269327857755347336738603902492065352599405143857392707467545861396942362944303571859040480735651591793447815551260100401398787445609125369024784390294335525412330532110102820401544321401504807795457283064799687780343804105677453765188170948472108234295069166069990615417914159711696875735091918768547367811067841828709409703145101301129859229711816183056861329646584848782998406114841970820537645657790171283438307444134497684350913634328680201515710487630668963860541697376338305513940427454675392156324295934468541867684897392301108444554844983291175546239863682184833747252072556718084505979425093413523551935663643040864122727325607437126136562295573963471590514171935476532925986065639735174962598146738822385575468253393797373520536359642472255138184208837593454983227016563707551997366362720816428528242722169854148771518688152209402162198543745042530506277286480394367007232175601057392676343604432989105638012942325877309499914927791185028114631374161346504595984468770727814201708760437094178910316384134645287959597912475843354143458927841626375128073016897092128580853382356223133706794249408977512247978021308851301828897656399796583788253310807010230797710179324376778700549701082920096792524139616550737781367853973670833874459751748600554530236970056584176902720015800 100323609680061994439202131893210068929505792784790198923155332086393859872280360039843399096470404585198025477366269902024474548045999250964235145456370341512081936163222467047150902066187297739952997810132581568519619071736268665414480494911405033690216950577506326162187010289324909453556115771067571691912039866641970538894413386135980881671079581471869621805141482801129326714012137042503654631817256849924320107564680170738515207468622122916716768911031917138251419840364371392012128786128164073838040712150778943145830562181226012886288276127054497952963722066455301670845026688736118718185753079009795501710598533964307658345527685359894470026291964081660015654477934504229830372324587699497710768508006871056620815350455357482463369606252846948654035781897524277396296311751729358051510368127360907161019014381336406131643433488869584681087140284944951732958647265429689036394462781852280063289867312499330509894631378742892283437980986600469654185147494694861051008793640020528759802658113944200649318160518769611183457369576265084347975677741075421840972339701141752606124925758001064064361025224417188402300903022273205808964184145072641701723095621602939795530877158286835350847185312085877961132355737566759095203103632229939978838715070151779181714926029801466272990316221892230740343695819608564940963 801677519423107937984080084358680435638945378331397617631467131869617441116488191611911178470597206321795050082233063285758869026491938573965045481381446490194712591373382020443832590715491688449971188892744211759092756605908505649156116134339214695261874886130671310196766324965334809542276230385098843586030136585076453713433181198313612211288056340190241642629703118914811239412708559314276848361021138726426071685573926018875933225815867997586570794695767429482188772402625212905603370728666281034265082219510447637559112970346810092485459095546251299328846091818038212165120981662636970941702186521488277884536646809527718416357888788092470526071540705089614164265932583879235050292405175265730933334025607667892728283188424604546074746629729059684091723070842498788179941500192038360027439732399059511434543312594444863674758072252120854925444864741466311822963618578145510241791771609718870466081499458862372765854764461993347546273827185402168561468045181854748351302389880370418971974790016213590680305665283983355940332791276060160069587267365381838663155230987742305578077354110250846143491724093618734358153235160063688134503094837648750138978354640288696125599554944987628364628029052726189162426665276230964050196021895352971013388833755039814549811042749191526462467584944214504282913541912643809239012 6406142531089699032511196677773930951283530693616205722885981175292177488360080755628007543386494498561984309176180553109083396520553833466409741889013026099360117071506214371590184601170790624711903875802833275023272251807309963636983051143359179981347088418577617691523389921825606797697623517368276931327263895959495080117747127222748216505482666879197476873664030321522077520511509600235065921540934990487401840048897674096379073551355283591130213758189200648837746776490203712479608607453164859054132807186603169735684219906244031603464929756485403944761168667611312717949210398060434006051170401153434139685922323468826951573282894383068672853628675623974660190234483079406760970594120675345409267207745354891481475062972986684117242937500420062300288043698323967006172699872363516140071594922861247295838860469472545772849232752849019175548929763923904428116079065594063184490077656533266445524289005048754715192616777876987691074272351042696439568858956217967446194818933013718229542862361779404150051514264336096548082330279977052200026971985411919269222816284930607005777809353447776874067732620139057375127671252316914093488656126055117508046452319222527723484272384983962481405662328409924986992657435069612224837052847431754724142299434929086441655964187263827602311567069990199650075064910534485982683465 51191024908783567053026563456497860288722377121284291709432506114183551824450645086109660731047546254289097885946643755385582923282439126361786206138449588386287290037073490319116693967760807016240648304202750605072576221353192348458926857532027395971619997125650247121395774667804886967848603844664222199920752228463964840221829778279869238042629826441002798426988917878357197677167448350276616154885264506238196176224785843465578822032428145299632355133752547446860830002426125228799817999522755537002987568747085869209102259165975959906983563426479080965348876816406323285803609524834267719662116558587583486714982030866997461621927700552600604130685857332182106654266278192537848882298337895547044504588448707549467070765221330882879716705201104643322334490978465407139304359801331114332673825139654716073841146092092546933205201221164457418055210635214402608103929580345091759889021952526676996346526190071485650584812823086527401669048477135073755263975623879003040116700365832969235281395664150557348589937308644754839591595477933632513122802708074438282511692375814395009082451305119499977384786102544879700232352523812642083489554976554107876593889196933411854863132070856609804316548335820884079301016173614614652284750878807676916136876357247602430313757898350076362068877729360332127226976503173480404450200 409064119678333106519710750905127465641692498396595233056202650472251801935457737356368325931880472378454928338278896394535055194929101883033547600184132154498309510679784348630294617126667872980478948189361737479766955318654312328528653891243401710509908232784448843139508252867698652620305642759817688670373205451530641946413654961226986706677469781242046801784049268749234712258390977278894103127373828024359422191933524787576166747016244466074396518960156711283263099560851438965047263088247176149021697939919335412466213681023782238544936897794032541207168013385510597864048073250605866806994283126259398122422974735654515032489621074150765294227276926339600596560463353571150873585641390960189289667213834741479185137240829208634215390653991549649737749152295864029478171716181705301054883748734556709581600640858141807535196815862465992051002359621440370243332567639490581703419346074432863170128672562680232534259944962907894293510538357671132773570563679850864699051262111146938678046728292996448372026440236388490870257884727301595120473309983315367018625723227018113010719588012496121952004698854304687103028442382238267070518834943757237078475333479181491257791448918575384069470419059574027554323095171332583887795575604266183894387047638982967603025379821860076087612947232832214566477295655450744242977245 3268807048901914407288454361586717372468281002417106868501605503605436610959320727662544017927829395372363393072746612762418036650147811510625805036312131140794160652112216106957025550754489865995410122254446250124083468176359762226980875291902517089700157246958621229049823781140684780396571597408903121531825932317845523484470282177034920071896083794464763444279414192749639090262853837196828557841211210956936075569152084109407414981002043682269878124150733886888730389948849236487585700696612862517044065668306263736584569098579804572981026256561743244989519943425296172060952963255396211093537384326940917826756424950223035503052045730426076967011479732102792476083675295169732829010234250033982287171296723485805145271182699019891625697222919870837940335744894834662815649041255422203790525395880739222456493962554269549377814968297303492643827307784714907163564733476800986014366323085704027889159688186602097536091066237651170750735906114685344714552761693730018024295353788317372913825533148593360104071051241056427224739207404314005850222222393245298798318229956719969937279595963840745210220617738787960029996794341599206081206600830392191151814931168364610958876040092784619534771208637144338436380119753993007699014006435799054153178979221515797356344095057777482379395324876579662085056560707200821688953962 26120862814652968851971444344833400184896822685024015471868947670026783435452435935314700078253174015653564411908600295684256309006873660188700409553150919811139968274086335109822782678551760812323454866028974428392367730431498942365402465676499798862666151268221712460411467371307540784459145587501575248258429729934962409547326551086596284439140158509370299357215909130073205882763875124353331442542789888128689830764529096120427070380333713438884442543411536954780390633055327580518673956914675573152096806425358257045709323313909853765657643530412230030868215405193129437172003090475013606204422735481761674001380992397083762119306770729075281446972446326457432434835042449475302948028622701664736407801962207009565512219571418736888978714730640274651717844557342675548713942448745386894547361475225737852364981575165196531434172657522540769231323480024953601749733038359799935595122412682436381073872754210927279267264081300398921793422409912609797093542148318474288019981666855261539137351375023762376495523735284756227694871818685917101466394456317578678844235174222861951757914355138478750062439346491724303209090565125532245865103231224085462409495084617275297011457365296832124623030738237052773946446968827429665985402795248867105455663659508046079641066536484558643162220595566014229739347743556330709524193228 208730582368805724655700648015737361512939851216060049739511485305616132407730318248625660959520311889964498971640198474509572576514004193359637434606830705348837788245697380347855309847013671220221200867323061045243650911331878551519869567299601273426939873289331574732747915062635274865243358751631036399096715641356826941397862002544165303348377923983155337228950435488220476692928465113226910721044203150110013994401680597211938920736925182921057567303772573054253033806490636635433973791480244546823335811514323131343325404871591431453485618004277125951596433534668815607206967853414342210954562499054948471510698112713553594353737627122043538832011410023815645075236751564221107668688069582499133322755848567541515948140121180080498965447736226569548515630711715293921409266444996556917678979802905979351432321908015724236522836076296566338697917333247719698538127254164978135954291103048551577334148488130407144010761320242241943518922049001644967120636493686395386098590232021196055266373400411608520260726129015723970265025558754196800149938123973888556724631227448201362009190685727368109401557279586757071738445241969668661683593168479433762603521498978069687629085377526068858038411895641095743213958047912277324447473599521286110035563942069598952320847881958681721570292263725462153656297891833932326901015024 1667957516950784114304958341660023157371280154644182843409280955208633102169824907620112383032807475528247885251505573921333212457546412417593761965290468723298955452746338770454434813641260717358670354578729428407217049229243581279103231447865663127632225630769388042546373020390159464433403058342777126347778363300946284585265837682196950994741438331990369285446041848130410317105885249594974803075775957928654504837039802759782694171443712246453070497081017428333102548367962245076794811913319407233049047993576048261238366166170394708237120234767091396028776710373547781441549572562259052833232793709000407195030656689307545227902219018214209132961986925200223485787356028389550007863043856568351460257280654337822248020212313593681319071466518047302271348748400186218069746836225743753802568279768440790222490031067317366580055294591025496319971478039837642636424527341273841481137671388542351098116590780144419578283459475260439824686576337698739818005987430045471008443907447974121780349122025451466439575150883294039085107743282569727075768856780148961073234702397608755120937459743794907048471802149471415436814655421005500700462197180841431078391702220423661964208130033888513234382560644863548578089970848186726999302140406567672078025032115993696576984439324403754157819245513410798462356363552832365057936237549 13328590285126481460316633595183560413227625430280308540710457486489013439482863644452339814096681808177927150530774407329384939733064525351063045823970975151694846653199049938049236891055426394684454284573448015126672590678039534442537764330129145447415769308349735147316958585654750196125964058727786689364518006927071573721985398721355013955700489509632681755059303050293945132828330210939169894580149891284119993390552224697196326619643013735467611260460779416418008742817020590671112401815482849251851784596520170699436863131876220369277915968925725846700899856236065619342617945383135894110675662918931315161534764198489108767916604675648677358431212120283212213344802611030350635270019402094053124871095498491390308414587042342636031691859861291915186924671136775521336460829337799828173978762219160786061197363459706387851196654235639818246742202141455800659652286122308362380428231519685677751341400727978870831718591567806362973572995894507886170647689780527386596696354466079420502848549402238687410768376398420658802921082740161641231410707320742114763440849765221180204267737320412933613875557634765183067144882351287863147153301023920516082749215732781344761205681781241005168447012843323406118686927642576131159480170795292905758215726530167035370729761880151189476375905790984498237386253487740796343449075870 106508381219161238548868222599102255190907231322114137978565565342736250657446433596086303633134903153857371993441694628194015863770101425663471194739273556848671860616857698603677701059922229211242822231476428180957388128217292024187650456943392930616429469416648389359261485076413950735812386820261952602619967503311086927489983725232453932865424340361529906467011348193086850276212120734867859415907583196222104169220072016801747163672614158101352895191327762889308932799338440412371811026920117689144912590406167072893497453581842634449029452735304666689513577086770846560969163054050665322332781812257373605573117258485876198734160833141266908933558902505992435971963267493674022649590930745663118968847044708756918761917095476294850028739200002830102726542460121345004877515691315001819716162967537944835107019657354998183162831583212208415889777157450642854348124036439061076756745497389860378181337064891622021580402652754405735993161725150912924173312001658534149402309616482962729669515447095306685841780627658502523141539511146661144928004874448023237993366649133073561879812242256294461753547607698867697529218583960184643574960998593703072748294308470144641348812914855648563889506331055884246174409355922858399287702532955192791690612907630161297995594045155387235158030394015753683955612960953813024347250580146 851106058870870545010017814030739000715339061750746083739767735453717585361895480128962600663371964888836262513285672428809132239395692360717862445875036238524589945514166889176950251584396543089621897696334695607399598446965809896930647079645408917049969744545546806039985888785882603602333269461232809089197316109270324966372719893854350469819760763704847952258953095647330391287863386668579239184068864475173632222261063389480823299787515439866515407831587903068275806070496596810273996684475563885140344797072297363784194033917201868717498551905053020892885417677729997332438298751390681100722103422718030561817617626631968097010916700417941939722255873034318735850613550114981083156938994276739285706675967402560684194266947184774091355090483287247774056204115950450127420427424312638337785084295826782331338809897501819476810051597564043989805990611086625657617110218186676120422609637657629643194829512557657178045008166841665177273668065746721921576845349898420792974027260847082604147548364321380688095945567400013129351660170289674542472577173026275447923071485567017393674074074059928315842914356938175061579850744947284033371289934244038552350365610657662303655875845168830679978628530103944027663932651794819970063136221148541407288291313118736207196412085570449503245497341423417532227914926844761681099013668190 6801174410327761274901169048576949734132354904279199806354705801981520985588019320793645603605220404343710528818286942297681297579566271743833008419461171483633459942201248455462855334738761957063323168938958943145697424781362244536847083047131120583296879467784628012095380131290464582073023654123425978376461251343515825290525904555250544912090088106788744190819025404014395648014337009638393791630608654756485718160812811684628778644809398096594791936430092700560497148438681420201521891472063855437722692349891436190481045584932064942478242632504366016096618068339107445551556154301455088070778857660422001619416022005281110304013602638188132582391783547685493473027768333842234594302581212028655870541743954700709171314847085251514788711231676038255993973850810289421115872698119013823185566029713027340660343781634514981042052713108845958764275368775552610479398800918733394027662851061915462870718027112056111857296294540944440334953243111136025797820963352254332532075132949116220498729707406796217613492594782831848003204151856963244341077216621323832147394014143433899491053292099704523863052560604886928378929435762021006885929748321255237696052871830695313503451934388363524413420809175212905768949873083517118082833695269576897567086883766654881842292423363292237867945673115173188674877130833980549283586854907001 54348113453908450220040746601535080412216999853199611206325625036701871731873627599778110713156406621024798115696840968333864458553929185988221061176219600511059838617822989877864510332601999656036878042746081221046342732231215140094276625389292466142012822792447995794498018924756335692559255919787830389356182395748304044945609472487523595987457138058281226883157995006766589939963187257520392871101549937659763950242470748857955469028348680483119844657297047667214224310837243740250301402119701806941133111126449362879150279280943601196542963162506975347861391250069482875609973346267572099058444187763747516418835698224395706900571681605921282531184895954746261653031115558601058505992269909420923889612911869248573901441953851231152524596943860823212883331618326765488974709853322657474735348629816135531509776705798385196972867396740797931980470159816828400589786054763960010916008079377439208391230009072922711279727209124959876068614455090688605274096932196724289055638732286689784742950621396919645066996320483377523490647954807697811757720123379639722307661694438789470946587919962306653004925328651609921216864026840101273029567913846076598561198445231473499974951049737941736338868497903404660563639622337578044203032626079991926887264545264850695532853870317537040980418462502260778601623515214262990055797209230448 434295536060003707816218341784362040609255938383876477468077410620307482164414028749926511390293079848037305104844436774653976328073470032282626400069864449677824770819321128828102338393664737873487789875687310339450485261087893417917204425950119091264180510406012233512567714850808862398261560581976155611712906152956884804761752321535713535122748778191025966949643183769934882210568600705962702566754885170682849154814372800310062064726403602981365236335992018367867815427451920642028076177929264539061013830467488779244088572580631684475793782437323840602958783143613446312348641448284317873418527248762234798019913700255639325374230303912388391801624834723743991199832901758856490233164056314331851967064750436849766690721382861217016894204120193071387198392553929349338970312644469777743156210655165452719156401719952369507810845106213234475629057347003094621063465943924852592982823734081397620005633864046273542718909741753819978268351653337362619538871872782403136026792076807769527024182132474476938215761878212838170752640736031781794445843687018153475171219564583208549022011196238759101002395986519317335485882538677293781035495756267983484289087058637811857803127989242652597608763177670134011174876834842803204475597302739358008839038522439792916603178359281063259115532964170685993454801308140998191796296985066150 3470456362890712326076892245384532869603534677798826200827932965809060297942794274421453776624671558824970690541039706013694069852726124601698946075226132201136252267477743496024695486656347398618199655194574982723777471002961525216096849468577929612321319248979105047987328052113956391499741272896937815166853725572906083887531499806079949034709072163396175117578558935480056458607145465991421289065498286966760132782358418566932879145896693616037389902983423329900887206615149541535838864804569266876318726224283034147224807389520391446844568041085368153360117953247963159183419633708334593642804804484455521145934374148572730860131885644754503704702119940164788089174527656844596911381996258757816294690156430287950880755554965799679547086026234322449832257037261217810039001536050649938501650452038018232301439051407891451528929026265700099854552541513063677550987402030745021055723422022479271559891035824008482483457731293708357435936010780947437551606152050816789095808204860537471065048115016104927534051254937353067252089175241331909437596569520058663690306571169870375548932024003974666624966712566440986177448711254760498651668825047888966442197119098427479389266509373328221298616569100711807153668563507757108453395552515488267647062805530742089587425155136862829322784482584094782665455069288418428164919433731288044 27732443734803829705917708623079519055244924839764467045814050713865646743511308592721254365224408214783031756482622275804071294922543046739914015703692874435687566167525773056106663285455873497667247724269415295794099438528826477786882857330512009760681048248921029148724563740999903448067571160033608003367903821234318094289447949834035110860800020086616875837610971142262377409130603341095194087899714267608694616799234804765923760769422667424543440624316025267635428059423389200024550636423302138890376056954549901239879797752698651396577914726492402101116640482589160941889033451795398344004020515237243160275665935607501769778493502544674806213849272134252200798161096343753657267466199866310792049310202476157884374185225975551384145931479772447111558496252083329043424564994124994511818201734972126047061277857086521372988023120544708138135394613038587676103890951275391103483627371170491583938084867621260757001086594520917060866679738094015688536686121398700566238966669083816105506399793700325874399842674516382232000830921310759265708584918444594050884948726826317833185081625337823426653761936430854584741552751325372905473173099037326337342035503890631270546044527177497041987113970799299106021821995037876074307786517266451249788990612623131565200248087403579306797896942615933258419556757694807462339983187140233480 221610341310877840752363851029342666696162724826641100342905079127441151518023719125063171459954615027381928305171638368608723814388067595460086005142414141319229972190376193192870523780228293148876806667948615101244934777819391214118074239604144190626271055966901676660691464393929651143579954249222812951399956397081928866880818888163672847832188388741520769278244969593278913656251300790315888704165014524640439409760449197705759654707581882813677968467457675941673624263602174569813043691240451778836525029975811428682072096392277957189642351884199660377821509469794349198466376998562103670092965312763219766571651217224174136594908560841298881543510949524207024150762530722871401861056071306713697220558176558680251802199117209182696111085174892299936644399014302564660668563381289742709102563465339214619612460422826800107564278417582670192539185885106111550536478992216095927252219935012104306671763407294238100052544003710259923633612311702629444128912661852345884722046422149177416151950289201699530935951595444899579658106544957757403702342869325345544632569386678431434828766458439817487793524900615209860330179970760717381276907428423834072631212509387162767090198227763974575193116238920542780067540314292523003973616098813507258482912274659446347161212910286163788269455732371047763632265245677998166084765119406612706 1770892643309798662322102289859831042503895190057634580555260904185129006175740687196084424884422383154100139558730904409617866336704766755702642658267731845233014644173731151094261448713057537542501668920441920460061150828306293450736350713270092203163812229601179112178322063513168957362785763139209441796439163477884722379346096746970838195267815601392866006981401719634276074431245999586401408810278485109973378563009058533726594815852265053533071642591137730848036978951871586909624142267062323227381668424673832250196702356643473447740894482216076748613388065160456945605948754087679212776487238453934754274867260551011802956779090353040455556918017204555841045339946540167109740912986047647611785673461448968879111148490608264093227670915168697714254784474993949667966877424061760575459579961050233517864440363254547908883428874645921191962572632022158522573180184792721835446928451463776430648767964050133995761357683662966414341309751846190567275580216256863398037771675528111678416185119885456503214359389179605179148701148440052019128763520927126220455263781122225728974126816595941888496961331038158728323966630290760181749343851677479172599527679243002516443710692858785889562664301514557274630045986665719304200453908047329279860537744235647818181092168105468758795486321988469682760194560666243788236455887166794284709 14151249029237295606500425428041955371312977106710918152357090775564904322969041372487641506937456213363753389122196765829031702641471959132039162941507899778771088025274102128921305751016553887373024371675519594199673499193817077594939188508967455001952461094833869313766552955080034750175306253956222709693051690407336495529534105036474221592849762105254382742043157195411989306701662089507037403182196028198016290306655485642451587865914549057540920007063570841462923473415535486580214813273458421856035344178222544116024535796448100628858673588641035833567475534414450697135285239867150415244293106480747240792143677223953235623542336678205650996125745767715702902178816873967725695490993107117182274439186696195806635533652350441118559836884521554446735292200766481784984335478529664080743318431870053916709230606480254451540495642927798110179868166811783357903285381980468718018123901544344093498537218371993827721497526380758438186319465662344409733180890174532508448971987773544090116967793270578864037417561784702566542572314379666208785280425835954265164658057979484209551400431464840355644006356017687932938022688496824601437310638904936898966485662578211668209997307049019760134089596108448997008234073273077762269948308582505473975714253381724203930420262375462876902335130372176474022156952070775704606493893862944281186 113083083373328853128235410199393717092941151871796870364126452163578397457696947124757691739882587461636077718034787475954379968731286190991097901630049191154083321980970317742602900833402784147916853160875813607163902694265713049609243715401329495707570183909347036699223203798839280994054396282571097829835231737208173897863767876088870740934453439130217485258114201531995571928648523053555604772899697548552953714254416887849384403716137560332057428719348445787965488492130980520378632316326482497518063845758269146201021808057342652080543053902185598968604916710588263930806132153896208753010375905246122928908267443258049570135961286654694371415916141839335288189212066868937829811958026878170712075032564213550240405067138559727084982968664835713714763578320515728077017512762992963745606567893730366664313209985980889010526542541942140324900305537444142977449784754075359695561257368785457280278851937357818294222620069922387068495928399938197365252277414529233082366972982831092521726864087937355331132010122876763075385143269835911823645242273718705404513141828473499874089582854819306075942213238139405101506689682526909653720319247663031626213437193869819199347615739176626134129957235162066624089299293042847159584703943387362509385370117728999235737283455210826724851861725533583600460417854542151672965657816193635978778 903651216222673637011800962940880877078286411445772979370666659401147274129808461702659210716984813810888355496610775124949103784594647218816159900913152991684412102846952737389728817590636776355663931558442773500676819484491040632874448524339313445808230325524230841215878720207896413841896917392677079817323538469913255682323773783785481910648656156581271355313366941396790338586688453342340923448088716779223397224936500377286664863375944524195072912310345747806501262909642357416354057007871823862426670545456157459870987253273797560716253578689694038095425857705762118043901343545211458383266485828833556403121168510822243066446231482358760892865722361363656369875497936975929054194651124066961981320376953851594415552038309599941490547814652634641833506535729501068944859368315782349325708383771671532733206121763062727239329626202766973827378806088250087140075608036137078279120939611927073625949821649765424742120868481204967047333566454702447872033123275212046095742824312307829474440399596546768559943520247703141121590901818219008374357524913941665027155570965255956546989155717685299578032483506287752715498580523243446349062630175416638193110592663700330236883120086026978349455156760186837557788995100591152698027242262786745565819387317110147691789856216358413309874388141425467747534610015948658211308465457871754878892 7221116648761170092551333303514536306241682880018468760086070411122557696217106144576499900968946181959573891059069745273673039780695949171887565195677632439155461356801551422909571608799275562920213527747811871024707520763813720551104169678022376525615255307034257666710026165187362642626000844972425076888886414501685395670004341536201122234305814058300481610774869352149216506753744782897914384091881728040620569868036101541829991184960443068334273484235965685998292888206550108532665869875313305332001844050792817321457709791669845278622799441414285073871203087495231001287134061343472854470648776428272356088382144671530752733233847323002337158901237115634348059263039864641034973526694833456280175375435792603524526776107260066890931354314177434906946595446076588115961996560427630659191015095033966030631633148845225562010274477059429853662942740620638308135709342392058687625450633778954238530081736003957644963961923021593636562325207739019768574521292595046544796170522572231189520062500221538893442834511458525043546315717517487621618142943718194874480142850637552690968176336002310380546845262917142898947779132974721233878579129260895991745994472186058971089205182020073369816574705949615542152516450513504886542525335022125843594833445759954741572606592240891316625019897193718342080410894510847277736944019373916571204119 57704304456571637047614904010245890912729117031680916190678299612272737755556326272578947898999483973558066944033760840576475097424451479229327143646344069931347204447015799098584561091651420022001016477369164463250037765635414210579232024724092281684497892820454477536926859719844790650768265752263176041095367070512486880435303540348683536030908764191905962215556202717871304752198673883650404117900322782641709377738941546655838685169988744589597274371303089124796646360311030637570417139103997220539314267288335178188378003995113832265259319403674174968705584295767810075929462281212089183019221591915649221161446285667814304917943492872133021804336221068304228114657802386829503683874535641886535367987575110527836817015206130906442930762445004069988074213534299201942489974731219683639607841320653609664836039325212617280375494778418565744644754203586890615107131555455709336314533087580916051519374288047689749849861698061111385274843640513789218125263975788330778630024383029217398949419315583276229342451447472255723395533645274254628342002604724188951143202248205385452728194847285472171045088957149454771799711549557529769496418104544429365973732110615411736009018196365631490647590869555242815616867018032727498000311369498285162024385342547065041581027287746337345820217724008895145286380530217270188627653893124774618333092 461118330820051073278107078579655669495032928684277365856942166560547268586058360532614124688272261286565313020631577508816666301992539072808424603237137646755555518197688112676623080403939791049230537233948744513477853867577517871176400823378556530719536761195879160313779749793150984825349984720213200735819025002211348569907119123356604493430587553780553085896968581240486491402507984846443177931527486808118646494991535595342613988246320934229012206524143632897869997034586327847010090490777687353774036683410373926245165741267462416743842632046211808881139258225565350552935396735662668019227090693648750351895935357425420944652127808622738625989574396818935821388712981165452083276567325756276871744545729043700658896545837511502925770215609969731369872768231551811457030916008098167559603753561851743869158451108986360313969765024782273406491214823256819786355002194709662506877181833160087915562423494434731946247006733647823647468634154308266112655446099662102599037007048758113395551806356502628189281955365762861911374466126799527376565586899035292183908080287915002237778494094026084101859405949077485531330256050567708543284577198618179826477956087192057136109343401432889697395949451096311725659073741268603664413413207182363799584368093003614765011133267023459935135894272267051364412461467712739117498789334617423709541616 3684825189990051956448214910101975145901689395759418421661753711733228930544277306063183877923013301964309821501905429220779324033480176901207591625983264884140563179385830327687149114411790511770865199349558195050751917261914830291863133015998963465505057608840844717880095982987097715597242105304345198272016740714037574787515862032076510233411295231359528569696042690620704756438198043362386474452747051674983241273838254519396150978756889160989489750442169977237762145739573623056267545499434653427480405424909925240984011059320704556843046915166401287170757173874527080611075334953344228844126112839260697233693071574246696191200698802817579763966471110257310353699045076406082680745316343398199760357918740600365788419244714851197414336917167301190801532560574471906384596056341829605550841625242858761627774754930815250517417760837954563827808599739264221614954240267478496622691465907082630739003849833190737928730777134295902432575615279664567621851210875527693550629627511106431967257635814762354918039789929627250796336168207013472761891467810525985145225085007877290124483682744173870367456385040436000110720658301104477378125594589766391959966996353615242930193284414506449263150969280059227647924763861724195674324629940650330801602396447796931312548386566272500299773849546584501918989715069003679921891673682550731323032274 29445688778970243784471733392046885472817738086042924784061695136193649115377948366483976683796199241431797755907739514567350506100034925431597445995731506525136487560044117869022079029792733923752112352743016509096029305714915687790205705363517849638637257691736854749550700110525092038527754360663014733960292258084359200883849709109442533347211264441548708405010500341732287304495362274269393552141277342240713377930897180734894840652970794184597630699268946455293593008312089374809398224572393313073667955862285599728614232492645929754663652695598701926705504807211483490993112972067209229303685353863812706562314569758969580156447155016178158965740398785764439422391255688402883514641962672830057175849741686822635285127088778310357977431372905246424115103796086769746590004748248032861209926828445763578661229069323627945580763653266988726063863892065361342241729708859021491730059423573201308082267021244557471409520628821032108754870033964498331707300869921466438311668681720385749496014250050837242977003302405180308107748310184085639234473319208286458779088857184812403622373171255117222699634876101248671107454222449668119216184868272754268172278506161357824087692036432877818716388539839164034190254349476702616101535604889768281759385378949954069042310519085957953682904885560662208607896132484939235180731753644171593229404109 235302678439843067278605462657847667490452454446429133025243358893083116728305596045103050032594346995423399820276944521727403066134137885376824244928991523863447884261543922707203643210117687912410175659799225655716529643899096339354748765209993135826558834279069786076273515615856185543395772154609540951726454900255722713125878067954796773865308147872452073270718859968058091770745007921695092325529175330738832119373139691260130902647915565927944914513353317153214144924777594873830899058423165415097078254323813952154486919405452227152006347358927244754715254183859107792935156351777653097382664205872056999013750964055742987775185231517633896826920840955443241226904501032391537416773016730794631461037152789817165027727229454931522395830412859051855453198235100454518701530454924293842152788311722766199144567444590022230062664797816680004260119089799301784013357182185489876616162434311218836774947877525599062937780424079547245012131798236315383635118470521874086260794039322389180953562431070842912317745184771436763325544817397536469863453277582807384148327375760838036867993501967068216356364029806492500746445206829577737283108294059929157140186402905627593090118445560937066848999933316606658927499287140897253749628790135302074433180797648222426234747619614622016750160833235317258639940513723232889440940291380539237002844364 1880322525040016025444492013806397771376801637863369739262408698116809989765461383995368169486411442541202487585144150669247148286444844113951492232495740363608828742363376296312061254276561686481059412405859512004069002589513702080947890134609995787306936030903713391339430753660673701941746048365072518740164024719333178776394293969353007615524411218801251031457846644820118412831139437852875609412089009929365976829829133294448727328282377879438174274141058894875258564488944719958737087317543803328110994496495792268416306227611366633202950040108299088383521978501971771964236198275766900555830076982802608939425471409040726462150512765207114591825965005436892581249943210205602045832301478850123304471749345978598252266721668451446920091023971743393422205092675052468648555105116312619253389541927029517671891299387731049682413265910943074273892413130212843522545285947804261073142317595733439613710194200105081285207015927879666961935632801757713103902852823478414010012949723092246200445559166030273037531986577195642734509154293488301602586591154952536767260013682427014101058487946656084803811024598913557693926316222301027850440128323843437275682644449752504900907437154848065143687192849579443215621250949955514073070487197711037389257877572852139918330883163274725662116301794136885381500005857476371670032644018250826812941546435 15025818921743018902700837720864808290769233052810002168442069871184300353742082250046222057334593556931262519553406700752744136210866089302865277385868377231344817499251822629733548887254451518372371118582183695720092949998602054584380468958399207330315283507174102206784198885907554205290853433051994775205557338906881212025757985369034196126197531988591078795109467077041246044639470286131865535803137650287692239970618504617544197969069677320177339738675263224861404284502149504630882452088426153799482796301784469979401186639504941725355131992917022115201605434658331676265025833444423514201272350288187829656343503854600886415761953899114235682520791743055064845789558750589509476421959991797460333262301859639212443985047564384763812563486970859371739933986122688424326616561798197190483162851423626641912201812197926202664417532576840919515848801977121517807647653986476986823171642970038297515398883931756213823992309707143398946260325836159447657048099039126228829936945485747332753138411075423137181249062138979023042896162728333964741730819351020840010493292189215502063154179164922176267319322633971080368954445988653943006937427967275549908550107715400849455639966894425914027968962162087286878233477197878626998830080815045325286892989889497537966573436715757819196087162399612719089409764600001628349418846581577836744882041710 120072700088383451474141570964657080433160856683592616813374177716587790865106037620479757999539259197226888420058498152329987513784044343822132379441975585339797748998459570230713984996469186613979623463957236867809848309553556380807533784951884315390747658632653269101456356365850583394872468853681833516391148129897242854884114508916424991694033587279488256919290647538421764011943415136430574721173496384456112296635921521442696014813562766623560938050357198818512191380445613736088686646420132695473272284270710192571230229918355299500333809810011895400012782322249347860462723619550029232788927763705768449825049349878981598052339597020906664663242874344585805815707880302886320797479653260699653213487767943698793021170192981045761969373042435903711463373333587485577632983773543293466793812224918611875514396499734996724603429748406105381873820846040633706747841721325627472322864787270342440796145953525084277324685975613586269461266068926230416275252891106881836984345662850645039615434777319715705985755616492323189358559471445597504264304914633964047730179923015730501865136469292751016504489147633739011393105111826108051799819743253953813786912746751114863325787765313380469276593534351594987547807885270504079563234504924974858915097672816455871329558398462878837855349797749508897408172288338878036120089807239432254074566839047 959512697285943329795929874207573196502778223554898623548752617054851689700418573960896878056311815472284531748119734266097445680839909924880250272453980595597406552185760450051981148024544334026009445736258541718388676715736670412590733729970099305391219419691044200107711166700399245037888025438306884287949785820014458589707423410153230277591428389601839944627806657537307616165706840017055878229720887096674920632800550410146085583849842976070168986803543856460498457491737745191973538373559347170294777470070610065222747414265395485757682784632763977092528137888948278995027903696937489937822605144281670426185727560797855938795682378337363571048219407713689036900627914970744740515616115555700140190645705711560469438230462529064120751451091330273051328446950626464672943222455780275922946113637190416761361513206694219621106168185615275306443653501262276959634075687663629921119714090183114419087648182392205960334106451848269219009664672441985565607954623601117781782247270122869438579932899205090510856308455954573134373264986387877727202140925361751053278131051723135004788020303369770299100156564471025384308216469224622724899709989351063776653273905485017136290292516071537372177038900112801504294651243885554308252165380844528138623137186694265110699073436763428134990639440863637966351146858360953894926435548139715282632658295600 7667565568493387540222055094489445316600379727328284601935895814414206198734984243021790400355609427835776368371564793302944518968189444761557948792258643561088104295995554912699944274393566406033952555281668659638906344877907929427952907428896910684632920914014795917675241368950350862922136088629373693612853507331182745443273780593592717333531688921884191526806585729824802955720032654042687082110946704911531826925787197926906291559359194446829524635923441025060206696378170262356400306539964326187603563756646747788053013335775848559342201119981762651332289195026084160826020597761487038440517770728972637333685493015448536575776771774788794562205563671581749352269912921457289003991392844408246183785872742986349752348700944467842843365782969660036828654889470314540457567684563319007656185383095263533203594120918936206118236602270299078117207156587460030085833119313683317892974604159770849164274749131628952554859098255728786978685975369032877159363882871301148286170056729230358042304859424081206086852422292933600917323048104868706915294754970848528050161088520826739899087705132923425592657996602725179294709651146544147516596049097073844679684195738658011690526771569470635887910817298001385103286665106441558929241802425561452277570393311853881514693564798910427832647507479270588691222142123576014213523017337368613706830011301443 61272357912465732500494108280388491083764625783940782876955522114309209282682173846472022617133166388300152377020152861365441351240483538966455626664037483054792167522293079069170910854313505405534372216857116892695112907173653773001917388106365169879765977585696805439834589288461497004794978100932641179113720335995508747563063533656992562581967728647173656657967651135122769974233204583785344131659051158903948419188978570934938969365480916626952040451472637608665403047084267614074531005179993902663851664837219581256223383071199688715778916711322732872201423002962718754428109908429758611340602756721433408763042634586376036045422648882006568977077990940117704642491010001852607481595874543107602414218286334753410356197392233052483855631060843813038842951818756236983569074374798039163242710552830641336566901290978333097565728474930405617860803750894767079846734931214873466540847595690185063433755233028180435520295618811307222724126421664532918604187935165722958299404522734794251523409177203109607582127841472249659344878579077769317316050516825382925919454102590851418585414207569215086496632679711118199079216844799583604724190644862470191577381060102767008372880412794274703903873375996827842016958433425273408494837375065165823231679764822887460462417868459380564341939218762366892400302682494994527683716545434370055240108003179924 489634499384445184823304943110756023010619703689357182393187602984718956104515992621861253134283158330928611794722888101255653416057420274595586447922132467116774297999388846541592445765195585380948308118164638151023465615687701810915703264223491836390283065922614458114307560991493929875842579477265633647444442076423228877484083676999516092897292263156391803120671216758270695268806665514073828800246162180966310605278605670122345486294223087045982404441684055807562886644654723733384582692584385146233300763675501418762862280099495014127182791535547064679923236846581222537145787606645558797738921994999674105310089786857094506597101458273222043525174905347002066907354629086883958794187000520287086841364278994984659191516904195678072921537130112064908831137381618253614610729411959914393848502111137732166046505387123944242026462229909776890551262025652087340894128235483673896933472486067842886524564296067715348499497995742656751247790298498197682473106980966435378023954396078661484583634370453567263920161399322432107301916287506500062110349149358232005823410179286733642038720675297437920918533120593332729133354179327142969337604328516276705399989001303991657335564652604864077495481716811169347708269826370292974814213280563636841323373368220644910564948605711715376584185303794849388952986603933316869830881035500825027722086785643521 3912728818165688578734175242196464368191339074582060009438460797449246986643478199122776335889636515660988205729985898232775637883850441438258687751869961278592075406067103953917563094049892942495877084411220812387997845567433152404313948577490381562380730705226601975383830443740827520236719537750238918609902827684857815554149314327835828152368675087367543003857925851356483743011429350185045226985158867414596653522743621091065132374105249963137157643857031708300665928431086154239751618110912139722700046047748123941334465481627216109106923355270841044896019372064302470002073940382525758010953814426321769184245115397909176010428628193205073982037254062651872818258885755122028079286412919516096361704194577796343052143528622204566981032388737732832692110394133730033282162531737417698401337268901064624588913742163178877984053033399641009486342075304177970970104164846030137432288090454268970557603968675956534565434634183100076786928006000545841606281564353263076975793940866751480150407906319650998456307734079372495169421589080396323479139508556739321956941519572873492945026442466862106921080545908419856475286333612601596833553936873245582112994667189165583703864982171011961062789721739409168164767803630421773570767575196634202103873003865233917100242385226364406496283778040458181714482036501836882856265570463706925659937453125191052 31267114854326607309435384883053222492583175034713041528544596414134959116531316050316018277406856865971500897027575140535943759095761988591669326318532674684109015281393230207944749062125454114792839505345855984217205114121481278249088122318169317328855412726703782555388466493758892856170255715217396619563460465851584415260987042840712942124969953957088888880934984379865842584765365706291026976077239028154943666385642294217547647352295014385240837115945907081567179478180117543439030401279896847945891530046952105236063199783984424828140872558596662828523365607699373619992747245015139694040620960666453191961977168093484112741700717803659393734602362997334665045065482612683898702114327936624116840022436444871027847703687907588913615748980172711497534042807141477130383517624161566705660031961678809513587953833446380450424853217686114318407106567792896278365642792956112779662321848435406217730767014664972059991109922506897786899905386069751811738138525614987522631396605775586560179176414551028283404593136170659187883348700542425890193758827967840455170098612504056304822904036725278691567066858181044700001094816099273944477646790491174781177667945895141455263197966563319506902930192147651846410884231068166988131661576512965602278520328976112386204164677224829710141674571967083606292560920047089146158484709943371386253802978872663639 249859685896461875529842639003907289017916084596436308096142311000028620494318512607420892881179231016758756817284045299047406168786790095150812556658517827942330209837763333914528841647876346883733557170511475597638083804137364576472657079712947996600645805083596679742025791224780145608375940093508549465445806558018432940714740988175253489558878060290752231849627156624006179414087297047882414972909212916925418305420532393170790372149195552339011732955125508010954745307436337105095950956689478896452224604098397948604445989993874187493649710473268880225632208860370437694575818753356372601704812531700498073639876663776735758625476305679587263844887004796139161404807300070204964852884271627776396398034267279254470744641017846089395913715421647611137458674781142101726124168786483773494630539974827877922309332084411582304145731230363586274617260259768282924351239258920478333469202168664128541522708498132374943290341743138621503334336777176970651036222949198367384399978751991973276384266139665684334729348321149070901082236669794815011219810991651592463362129704346117905105926565072173646261765625681497382284005031133496093886723566807956393336267953649156676947165625004920737193998183488806579397222044927128314970631231833765185534269234261680953198376681977409969452232482493474818067834963329476919681370496600171640694905835984198936 1996663554779898554518828318123495209830397278192209975956501989570499008269682868796591039967182596859974846601761021616102486438964845176993752115960912167109307310119668867382177573474116012843750271737176020912411739714789492979894500227317774447197131012342634474057294001459208670513341118161485144252820001013911639607994139672197572403578375258810741652051280822477602244750291766778028723039594612186254532391030514006880997145563479566579724608781248618829637285425386161088736293224395368005807288264550210009742502121933769559899486102832467286491554397637157621253085494996066742825749133475068396637314715128544784647777942117610717402477063125872474444884769125786088785664076764858171351007127737383657401473303409404776976938508223889238522333703461282590959823877477448796021112861456380934342585714756315832372700076064137467668134463930709483465018508517216088810968204877028473867279365061491508073023864872202422233584502371165270500393313034325399095934656252650417628454667009667711857743620840989544133539451346399914221243687673420522759862100795709048164938039095125825234876076192828442555516945923530778301109755914561756808636125037399541532278412392251919042260935711847854770692424955961154165996117666457342626043558655471558465438705013515490198322845294328730012301678885713642882349817491178304085602659337890459757 15955628351407868602759397158075834242707902132905207191105926524057911364677291267528770181413398792689550690600878205005555629075069205389727351474531715005325093328284662776578048316974521081137576495742303206577327279587700884858044355527735673163398221717113202921876002448059448686249387369398944640037706398981521771951271760276205596160805859544471896026748942947044396153234598142299389144053501318484963756800018801042763603028025967389892053588861025655361776329054457957822041518253537261567216100145794632714630751425331702575174881644700163148397516619827448112342078613112526193562824917570595392784020746383967848228956385027476911028086395157718194987549548907298237432363096944442878601982162589603060054780749051350579147615177967820573271048984364124443568307479806395032556340643586071632991693474999438605345856002186028875305978314106740136978475415906336165077122574532586932338485748614852452933906527738297196978278306527590582265344445456061759731934843666286339845296187270370050072981719377812131772312738858107295213310134837307930466639766508848015189434178825402430578754604768471213242009611237162591146944262411206229800488164241326248840843341485610011929462016598462789843536711426733698896288563335978962776770257291982095820685206128225830450633588325934421230749871964429290749048364620545828589560987207323863632 127503836484101666372004612509574967105136471066595729114555270412962675997224632328866172520890142375885533765551148993766395282159547325517328017246978361021456859970963434314551956187727293708365578715546439871213163039796559247195180895192457533514003720942085961157804874643698626764962820917420295685793718363852664681994268489434585129891762925179243176518206143421786570468928861684730172665098742824326004463161625960021044285126750309117083649122811730863964501098024114132128894755529132590220697251398033651326290223914525514337457468131370039822809169738579542277847709965766326882132697597228075280471360278098319789221954718641070466572903988373723346627553652242680576753528824711525042114120426651935420363146273306202545311952982045720790003146785184718781900305348011758622038494478957380278794909808421864870304690626456433199336862608060487429545740567744903427722926713675191340367663311214631899346235801892465939344057841719949520941509726611849214047996284207533133206770006097451280602493489770169980108046918674695434070381736971583881766020377407742443133093734416434363027910304385160352230326443376786936720762048467341462177680081345045883766476218307616768388577913736989609191445874488432699517097608155084324985098725822888038367987047975461455724023254170066325330585884985601818481749513779988874129790708939779440710 1018903167323089289828867009437163310037992634497933796187004839083788723681049991558754329929985667478303444783443248526096752118255476933955376139248044719510539553156633420923444634355443254504875753338900164929737918889737392277240782968319386771970432625194641516385055608181556108854350841386428003822585877330413933520933307985664208410437119294640673199548423972479447166514327682251658926528797775966553347589177282513538590793718746615344407397629383678134777969359116337521783950622298935556256473884478887164412908452870466537482392766859049389003090213829859580610656450811443101949876360875120668812645020433663681066089061557101153416372979819969127466760735466536306014902983176922847388877709839457296527345085801984192717677410507062953693472600762558464364916082814490922746350153287366777347843233896094157247407079710318804237903315650794739850457819926826558029305906818632896067710247571515313977652858844333708397473209173253525263580917998259678242778322384752957992728809706894003904921749932684138988770630814937229099026417952637258942755775349210350213440497837759473327086487328746041009836982854898384423873304250383747231088686110677047106088966254957167589597919609549384003509263457425075746399644004889772511781691239548906498220915672564066802831760151570860982363235403993809406159683190425995368500940225680313942316 8142221087869277794945486859782525504795633836399054533983181852725740349464263494218972801248586376618144262555786492571709767612569112834596219605945775257391297634152520976385590115471506031002026859346938060183055422248810784923053515386394953669314872020599675703840352730048791801745420365236242036780123052232607586942984081673609287459521106552557889359492343415581655561857932506478121522697649953265737229397019252587481553914999129567702996774217749046876885008385764800165776874025090362383295151603064296407923202551276179463801380304695748434311700544245397764098820103462314395747679050183193576268057449365195923218508383001064551125501652029227252875671939614427703601714384693066651047378193070797060475928915226716088249634898516956446879723922477987752977566416625480059335336045476798392401423463865996263497689766916243254838709404101538336621374056873592588987515250519526630010652933268993355795099154851439103149114577443723574411150665681795067135647743112153026308801361322126333843990734613900085854605049457416399759653276038174534607304124036862847603749753607492709644272522422443854946304408891374580032985204185789298820552787459845613580875879270953392937546599893851338017807383015938748326991595988973662394836610799563676262678090085576168420205286927562963194191524956747560739958511940973265606321173903432595617269 65065861952785441803441921716133992821366710131036886420059228618510660225541301636125087309354023395516944812196427291073162381872659860611533759893989199241052358697169602401988548960278027554526955548471151858630213473790352400723368517886160467257184174872122890947064486775423654874773594856081916476918809761794780409334331919866233759656131847218337055007628342334354346692378709170782034778325547080160703578111282078288121657246947993025180671180222693850822723765793315344065362670135582965946263528625057708509676342565579566330929262986405806700210071560539922439105899825232007014747446698858296578088799242123859928686960888315226825860793158126373286476342982610553537545660746811076706788226682346110183359521843863822639811787012768528649072683632365073601495391759690816294514049526355661893374871778682068676170202888258533423828499783560924508686092345997516400362424530794369524912811444651933440830911333389654640123516457079391229139340049442459711345962268399982520876641630932173132380168940064184369804544517519825787093345034250347838813741693929968537279720324333325462523608310669009850124908912897176045717939219628073294044087142792357020167171284282939063844791628214282763386589635446089905819609026122856719788953359771631515795375514209647397220065852315003973465423690594146059381632302563687781902014885108308864648890 519952657193799100915932807976159417679436534712198710482170256664453289945440568315867579040195708673643296642760941733771540868398313906251537159843335068661390137245018103913517415673645408809427874429611764204936119806541821952205188475799082806628765609126685221893741507137577543212110212134355704920746234757488530464527442056001907700516390552355502897005918999756208173218090476870825208774541667253648222164008157357802503327803624441264892610981266222813261381492144024918306477627353655204376652425200269576288863773479990907825605271977900576832454417454069301412636958154668208747730040599436689693023165149699918643733852424609932984353677744571995878189810965788385860143447309372975714840987032297792822383385420662353929386398353156235944367271601777600612432156687003614351412111570857989079431472551187855116009038245720894597940738591440119165385191253094281046148399825064005101474525525983549312574957632738192481647190313496741227689807395269893797783516858523856998631936493825951055360663959131212326153549946562755586343283758947758561616993272413097999583116246364015144030130390232349594549508821341000489259655030267369416277412178577729494812435932122465788150449936134117777524700342718495095190056960533849470894263210786688516869144712884641898750146421826234896287741370984324488277527685804212990378312754229896631084662 4155035454993928499457047109410661120337240089635931748161955713091113017272078990915252133210770311747245552110924774619976423654928026160294064525744485339267654357501004197844151029780355284914076032094659501922524896305963170088983740414059367077846972997837197897626630017905478974470110884880378414667896892252906285465077897737978414848919305798215105140246678123404628411227969498729207939578207514682694715784516106877580323322591825642790818475456178805231731933688989878406980820466219042675762328389009878794669957847744998587205710650813779817138005113691604231417770056738315863211250866006060595832966758889043232222475367479992348704537342834300570119679676043399792649314908902925557450688682344317423046383601696977655218688694631404494047604618507793484868448480737367540584326513133852498241649869981192289432415553631525158953988719191459719431403381329125947922129311190798327601939189394192662463412911182115893648805489261199191244505934457344305922560334232784534957536226577363834522159824954099729796192429942417602968005154105844144400043378376995734557463216895823142210712820230441196196031665926759001025910644177917023528337946932663754473273335473788041925638148952791267678134972298813124512066201636200037294042919560400601420828605137816831195393234872704657177517434453318674771869914618052111669398515854562376943591252 33203661901265527412968713015059829019809786531363433947836963964151165964653130998658377560617588099106452933475123172853436671614423218323838281246574890255044146419070757949702318389487337895290158807203520998667220983732977480800053588493604289989566700064142931842557133203530691844149572761391321024441633435628324474340933055711818190331488706325231313411556626826615945580746914494005097567454705421402144832179550042553211175086620866098211723838725274232960371988578747491346455897347237158866458048047700302531473205837272084409796048701264374786254885287499967752523190216600590163621664914988327377999375132264002832105200952242299299988334359348917293021629586895754880229698491505807612689516985243631324361657404865072992563056154858577037297125417648084744132259701031270753083931059049799975282305699562854882317253871053062104579211389682026294075664040954016226628267259445019809258910681429735035230088382987435912564825793911199837450687304323491474150311598338657038013413691348156870682912779583691841962899306868605884650558317484202651893707109915750776217931250461693830441948882758462728587918292355228619578648846304752696415652025609814107562050902749321804769813540969639005966702784149373842791382851288840543206147400824587522134298304842337152284706927468110808416655732348964318966756441979217845299827844203317199408890529 265336837500998319764735234288915735532336853316788439725354883404484852104515838520373664619170302351511222929427771553859132316275184227303211353149781639146365781097072854269917946134161215080034925564111003525972693422181148377485987979052607156152942938197353833460616263185256883244070999474561902811289971640281775390772147071521220886105889192159867267919404034474395496527992707507045896069812457119000257426759382204590568575057123422015340607268365164664577668911932564353355199114569384133271385489865702403316204781702842189523033068141209466148950711449178942497205592751766267478022620863348789956874060187898368057140489279790360805617696971284243789033768932200288781972400529299807978642621044244530785691176603964144789731824462129405779141121024826865831233078356432208618157834326340196603776198206079242117946122581894124029583577297596281526138204194062508724477389129027291278957539131839532757953593226201175907575185314774876281707991115630003254857999881113911265639175831459360412041667010524486952403256808936991333603751200331926741676098847433297624327104239470333081145810372602416630100779600574647694475956652945597645015300352248795248733844113356512586714011223914274547809844761204472018511922204553353955599571906172596837939892845477109628698550185122955845448933821133716813391686888471420245968436379985129550964587060 2120359157938660803857862804226211387289451588363497130360594343836582762202481572734835186922548354060645756323492175447792621495914447350119609610989978415406049421908857152037776318354931513050042428492250582029423890126386669665307413893905445660314644946567459243694241544298302596885386665116221836350425464453849411813339128875976861368870327422931074710420863743247856086136378004531251965353842701793488436938900326514630745830267794580373181684644054410826867277276386371439125970107549105254966167474175055945760243668755973399914093043871378835971594109366967136697400118842242840352280506004511689772947811559393011158276016499800745316608225847603381311064580671279234642734881834631624410269428989173103201058373057854056007267166465271121341763168172126578557570523969405833085552969591349732169483870239204505299050897296635150740370466504724327512310050206311929278382550566465415278776918562133753464580027219480395678482836580181902390726842140303362818813121722040886552844679084176074148108148478220890707752061648907507404687691366751517730744214014526109602444697401375008380869366918070078938349818966858147968684390367733649760943462758263822005043779277909738636655481426252995251672008370946094720822743682848032462022475334426769849588511257583848227409104252213589789165380250594425002879516189536560551756070459038863856872396902 16944221804036836178132973096738537713930536905809726932228880026527118335551596046148027560066525487580840940922814369702177004727361210272566162713421553639264173933904815776875911064585993153733653941683960875585819258671844851148445153449610947852587959215505654043080433381989942410330473796697365044329022734409919259774375392468389911030853548533755783426273285256062186104655688251275404524790493086171379235866383392177754845995955894610557789450422131582814241796888149856089970246374197548882671733940791519048064028115857880735187806611941090598620150123059896706428019924437942426434659422816681696344180743572808033457962490156524033395165811971646182042527644702652863714768709564044465643391008497139836257172545947503117980989427272263430859586990790254188232764565399124331582655782550079969555059397186958635050984571110684632237586105158308106350739352367874840767824836873388499590999141464325612516454394221676449578594793337616703223129428788084770299687644608910053357674408463083998063398711556999900595187404070618784595948086130167694261809295346652149625160734633661784666582240315933847612264882836947859018170772714820751307700537815979133486618143512468588764291085186781888802207105012206226651395240437389017518285837622995902487681235476038239640512312457186394723331410015328338338851876943990201258412177541249233028877616442 135404825137157610435741976305411235059559086723070107282694332155642638830930238294206806896464089020042877089365389108862373441786916136626313969101674970792685999978293793460637042465464460152806005206265607587600074558067769964815076823663330480337375304208540254113728425731390264807580887057840251088845766238230710932777975585912192732008306701958409820113500487145642353022311431025064983703726543184792934186188883037356011491961174647935969308152356407196499907399159899868855156806757852486563374459023328147176371702176937086880486665930984320512428972110141252380554914951157314634235790241677090771943729507886780139935383502641435265444620454889658007756349809045409446985475509293136307611340440471373174895873243429464754784803610415154771938200569913392886055788805682493720936853670781754221233121116420867914905063389817640244395923938449208425356166219411241673013434665547307073441740452105819565973157201857239724065822979842675711865647701008493755905834785159966172608093461229866843987516480788730652777287604129638799727463507990413641732482660927788609283883509206995909245339378309048965287137597761711420871037372941630951097241138276551940040013563010457009063639992301999433856436337382762796411178676201324670489494916595919798630747915214872833315434633587133845118703323854042081532188408921267564176343941143640869194068309571 1082049100708837115119326546920595527101911235339100572065186976393814820295000577084785494184815455904428626212120377892231130134094993056748197230106975824464141130215071633097299617169394034012649357567318099474252592461643478093187124530732551012058568727173481460289720530859847876189879092728307478917772291345611127344933094580618831897992695263897182602617906725092013448724285447147535730552215183889644200329118868132587057864751453668659274961405479757309034480690329353388323711486563122947894981147981577864020038514498089866647958376239208779872181621680571362769634574529182912783637395796633262775325424250742326540057871251026028820445495475203474810888688066855516791620277006301163320118983324568037038798676978287300410071338868751439903682298963193597522792433488725563709503465247379394900561790811386812923213562746525718086636054361529369772829557964692326255966782384474540943226137974909137767276274918302730690034864515834411897979688016994487248345692892404518916125735547191431911994315249992465835651130255159791777560572701252756557906921733633948201033552331246443318036134438399041697468148921298741792370025841256687807753321069931442399555872717027300790249983932776707474209868696773128417312851584771894831372477909855863482567824766317550451283091852351227951835947877295291960002696122932469576984635380754538122379175712038 8646893513889687478203619735976976864222939122851089496035555227374629262069273045411250906607882107456958127997202822798777963591419391629757766809195414440398247152336215274888573490840482379165428897919034926847547804074891790979341847538367983336997990220424922624884685872523192955855160731785333945327757490223186055455760397933103326782447282942405518609497853073185014089282090154358508452407895142623109512138365696235913638347586476760448180779650643723089490051198099979060195401906038741549871414887472632768669816883906256131413633317462882065813669059648289344847829041938209554689458018512600190579429218969802265760010540048159628949560534430252912464808096678645938389065955975480631411625265443925395006436113450470245393662449447350699083585921246496535532899601083319593194956316745737074055148123775927835719700844301127705636130576408484961931031847083040732656595602967092522304146556342482333709641500925366649766710746198977697892803934337397450738869606945710594640036274340985871973672312771053402531442943609259984064697104296583203707012607794840042142453698754854220022230312888084658536454235188643604025307631601295028188098711210876970872628130254103489696558608131018666804804124212126813061984356831705520300102319694993727861190762414045152624914925093237485445463349402798256219984825494586798775566095198509591428328603085706 69099287144834620714554660952384280471317590447215988890875699819314675897445229174446989628675254895702785109322796750450783000965746706171478081558617198006910462679652059342892046654205437279651926443364199862158485531959293489931917864664271014902181887367256472613851430507250626477130081223880848843410028357652963618129029177367766117147374758199248376782957062281912441210156145273258940655700422634513301788321810190995733926110423463991662674042775070714716813234086440849497615546426031515681913627589600011553179682545538186118670351441249088789405267475650715864456367879918278920219174438484662927534119714692844633244450405402150528554924208432876464160573777966581114782658124249990317668604777902506747828863906612583985947177827534804516447829770315672147117059163640388157913776584931424594124832116240069715031173359796791619460300024941706406677050285210380813907353810435082961484469071600142050322850890642628790175912667537436912907540765709342944719298651005183820305460163106635679967768849229303997025626410232770085597780464030384406170094559484586333493142538592557406314545018607412592347655684608438017348965242885137020279372980444879418598948581761615077047935475265035242614486281767733778304016829276174626660704161008609956040348128513077329044989892616884860093085719053580802128334395721245436168936936700916368928311892866782 552188473798892409029529638022802695251596789697133043970325538402598163113709714301887760993022956940938214983176147529230275173134967628066850894834316304872363305420211287341923357119028391259707546882969252012516922427903958792913770234107872381541079889287375066315985321384419450696908613838149197173709860237663035100397144390057925491920853552188696848955441058963332319519814671724325359601810135992086833254023993184332446971747339392903608970990518779788182975580566895875335335487707870433336877992092971721648060823341220283465918152405693125049502112171828386421180834930838185699883756154526244460851755927436869019289590122690781458600653668773962300390675954255691864158304476776907882464691624492182413765740176523638724375705233498269523358912341128380505877611205723633412129203968294221242018416326687537488969420428622850110446885489451190837701418885594030258389199816492813133267751423203719840634455806262736714383913124575846866289419754392705539903026571697949720098936887167919266555713548674099235206250185373227182358446858890546912250069423463749224148130843558900017670889839634573352538882872796090355392324772761806648156611515550019826013935825396655102484944399859790712590552526638519105718188980703567816367799199436457343299268768944783809691085657474724035776509154940859602809053558209825710938862724329829588563893415614184 4412669697953899300422263284536632332814424997550628459752956768103918221837991500998246749138832387888217409947327441371343537079355510786240808637419512566637015010405772300599994737697356293644034759444838184835931646193899151863795271306645235488442230584953669104989108599781189366568896022970138551561700796780705709263060106455472573721311983475225149741761029132114378063710708991592116898917975250784660488496542081439086989318721634873574638166209694340125306291890661774052110958334640769074560794028905251611394146759762657129583046411831633110263401748386462016619575593389016350406021173742426428171357623872670382551437021662325517291126805107866967153157551100895964902143359876540575280885966581216195845150427301076464930312239585518509474690824368711531267845062643801821266718962217249006962032301522858935209995664233904548022957400969046164255687820576581310709301881183201997389249038806355340117912783415541350804473301051939069749848569072076760055353743886371840709714724776876131576821606360811393382228464253892668397560181530391869832039167586497413745807435168081578137852098451055200768077530834567143111695236068430175306340261938781358797230290575186412939442437555042168773803178946745028905360298819316174225917994970889329408566107577791637030431040901369785879168351371323333738753635018310240510760416516048781754239850085594812 35262720635982582382616570750669468385162582816824484326095407633630403405580556961068975818176760478338545746584742303154337660390591186431895924284969782052599958242975272186155222738475242436248083433398975961935773891897448875126980708893142145576400512145688350456219092712541370108590896489262701689497602394326958243364745399867703048188514626406912670983672866437666110177593071522182695015923442860571189880001482077807413779278602252758708703553768908033793474680097944759603878243402584730539911838014740679419970508511764284217129717921695543234572323515709389959035383891757670060874804660785962962895432573835917109995461048323301387530126213003211936115493027994094239405867877439525039766185897846785803274771780750455095770308693994353555013666893756969644471838472146027249178569236761095810180431890162826335407341254499733497548522115992447766840247660700306326452316303345850258550688721945932038228465954424601641900168397330585058263547013190845120472933302299079223697317185974132992879044222479746213195586226661677952039771362830466689416150314208779271682151787410217277794878103656775660874864876741957050550423643349587434879157267739523782278335702836778041222377531645766213557645315219009347744377030894311764278751599467598168449249861121006038982599223633475914979086672378768258090787832783199219096023993632739508538733252346056532 281793210536046142597306644165822750409839128074515035672073423759076645935313879789890603246938293506683482559824495794537499027458708631046782519490206202421703380337492434012892164118886897154464626577156632208173235141278480105161195076746724282879534006366988754571009691696087079119644099335312132296132484032405908808509803914983788787937483107142948166597669632377593623783618949888903494708721953434131915004421091561303092341365812934221666649247526752173630785863313139872416645553641703376696807753616704357454468151644637745003833045313506618362595819567865059014104810806058753784985144734380902043664577249055344737394254312409742346148608322893973997532558747403653156225524478424752582649170492669911317287060410652649140031204416735318277786985671606524556038051810944010641364253582937091269860433976925744120708205532499708449651914857521589140830258258298105034606078030071726623898216697687930179991806882778751492698117048825002642622299758145982848414240225419519562973111550712625137748476168352289144572378553333280802360828921627851137056066595289533209734323794350236830977185274298165097333203674861757797281837184156808041376902320238188814146545581023023869855923612575376102779755289680927564922109218725892532981292160004200575727005507139032631108396229563893091548393515165610526841035168438391719712361613861676026248658159504689842 2251881565697462382363446356847306885523080193542783154366108509081545363129343542643745635541104474418445539902407932783496597564173298359293636310971280261902308244378408054947850436364360611314601535756127411168398387602619622493915391827795224630798755003495180437021504479965951933998078573215843280828581379750702446513913743534239412565167322989940773765167391179032505140803281432007002390533033816581474007595507747858239218750687542817974959023344828304936562322429963926898265164864155327284015932434670878878041877954291140837559988642470077373571817797787884445947600678319580397577523584157618193582585694957725837917959499719557272033711097600945156167239339299526756149040076179561046189424065500794391529090338569716717443587850839602386630706417936677640681651306721196913858009980274198794208264387246183693694688753199025827856854942331217538715646061957001975116235639927540994366722544444263192552649705058768473547958314023165749464824837121744542382633276249127219534051623008343196783224608017037365166266854398173943042362809823724322406816134895215387086158900932794315130015126307736683141736080759020901964043594373270794102824033566706114266596037782147363408340136055815495761649430368097885307716362455957981004331002175596836670121773117463775912123143877518915491802458728121635796469403314111001813215026653752447820931385685629846049 17995374036405084155227240481918265688872609017603854977700077099263082015501413347669987804360557998752910391788683475059771995534371427479727967586420735854746183677247796227381100689561224681070702187944820589908495836294329587174313204900323929700072540414321920905644847172438847205842926928870100310376285735625748897059401396895987852137957867238797511595206803323379778266595450823467481034735806216413992326871043626152888126836978473867731389343265868534970041929689448832422418966809712395128814335121787161370388031451352278886755027345996511320569206158495035850743224429833977173216929470221166379742820933712517236989223138255433632606390510735045474811224072744077396592554012298549747089431376208782121377447810082212967083095323312961562045962890095805017124247092315391645628686480511541133080101810736918683242655796412258318669146237001182830741728022605307606999124796893616588757526906215160193856672396132417566395572895278359016995889374766287324494328137382570754886145711563677809782972394149721859758445342114150250171503800382384076686035232350081155618564620914801327568251137703414985032692186329438357522453164531973795002589272030216893362044999747852506826539294326928851583440763476101852671534121322672519155348312036990528795483432562480410426110518068122274683155531138364078016073883039524057420613675763787155558689973027846570780 143805839392006206193619109428979396440575248295681187723343354666941027740734802343474657063813086781911751666232697979145775159216056837327027168742462678090110250241490114584499729145365785170691640320894094064317215144957417348108205349119513786732406543718492828671969273500547190900240590349428690218831009365097208051310081814318129992931426939716285856716383999934454434942105310529316665734528657487878274025076265006406823272653634170560845249004678264383852244760064329346755846575473852958247355939718504636416562962558266932845548734046841984845585465902698564332538157929693553719971390824260416509408935282924594506555689476725126319395996324084601790383458896487997707335938882394786940169344900053758982903451630100630721022098434597629408657077167644833925177547535434184618830770422743123688637675472939948313506168189511093763437005099288997255953451496973132695712340272577747335490664551923286083849907127920425307434445933315606808388096913977757896615792030435544118208158546524481811706850343212341988693156707315164938641318321072911379249330728663243269059455629069849042355176201310085856020308828532866735729386604674134422235123576118147451891338571220922167444786407972414313563660202766461557427570338137743972091730385391041508203039351242046864054834796698541975769384076697049496887123170365590768062062259181211346317664450208454039933 1149191686773593745783051254804909719252634699092212641223259177615848201070931175613645337086102318706359295770341107822728410927868369758172125050836464855970091884597716250478964326056098436491452500522043640077053152390000821611750938006804566231025261686094205598379129119046545046212923683817214993690578607955351080669468198252236228124652928421493831217411266372857225930035779743320924325485040312496145101980467686509601488004325386418414715135705671583783968346528863210994258178545652991549108582020590516114785155846669941528343355470221942858203494520601926109100695062670246341313396729053245536291857949043677489659385995920638850409074755648843532089652707661850154167306093700102743062503876667534199074079173448943720048243591003278480029672879723480481592604034275072223370392670550594492019524698569666492980014827099235445709128913953286990523283775532986789580341220946502549640043037425213763912424836802858282171368655068519143643564320190825658364530066365814503041303631990527034793904001800037320855108811086645418607240629578162988621856835592981591994970241539494664826262331485633532745825762413141090678350918098410042890087084054719331276161773179967657012932306529087143729964113212095845974291426354954150338663175186883955182863388826778953753932107863097456728654216411277711696487606796241394770066107211372353208589572979878004171352 9183510783814458861179515434804020926585280786758507546012943772641753074331502345136836078941778325279382886122998078417336704170974973838833271658732533104034417563333962176731790953343555187894610187032167257959722989012481506068760730076538658624823427747128655247219946879231551721345364479282545291452826543528604967062669804330375818042409118710399985173260119778402360724123851535013818223783267375181334685827242660160972275723258192143946456188386990954573970722631288536358430153721116116729817306078108388152476665814809434291242336882058107086185525496949735865777020416116593534380782657817577306866323860348959092339080982580065855239065866243710909545890709121646396106912480961004662208608510212244622011245659152990414270850615427740926378580803172541361133378716793247298466738783786287466536809564307771846243627134963417704241813939748834284882267916504658720462364279636972534563883314939432630829278843993391810782871750702096310780708003095293723151331221194707980516251036820409899432476832769539502675132775029324827289069200695674243626992155515803264188056245607118039983862189554321723042824814842472596842307951063828197455133088030209405535623666494740877233009511402630355251210036057758585483800171968065310817941262247436731077851249033336033818331391985704360479638502309486517018217033985461332431035522467511481258016004268005577355687 73388044383744631130143922849515535518996800653143059251345382043984081085497768268539323822507429447357880701494649223992988544493625018306090430716890202641094455229256485658868328507500401482699730782487773737279124614411734090270278610090220378277430388657410217194359478445026715496945101736410568971013113127622399019334958724018707296984135070193439578428976971312249719546628061446432217887548049758133765243835727339854966524492858497893041680926575481187495619435300035991125684953270820964015722851685042191117656261742391713406829545066159126056857769132907601242046280476990751190191490542638284025472349747933919824440275515778659395876538332666873298155838489732325728811454067363875026742679055367343682227688761214129082387071672621618023917447425247777400789529415058886373569348707111315862078060089671134959311777294345658531229871680692817862926637317139319209048258877844999578879746396204036587712771181756257722090951165290670027435026635212606022497568148180651862082537922078846143351941359971859863833497001452712265913315914240487029510247321026288426849662718719062908536773764983317772743666920605446308018263460564761379319888112418707456947300087006102012600821900324032417420137268797491652631535134556735579711409472099053935935395931167847894507336286730480338570631527444094752321095982572470341408376530449682138759670319019661392656304 586465135665935775978678168400446451917066154651838360374064234802176534722344244411325914219216457895040210831114970576185872201333826225370877928854432321324898210900127114859902655674529539418581555701750941265232675047946512044509563813133197165226450906073574661806603350274284021790330899939446577479107637269470938913867289940703140945869922257813694433753972146648242208901655783189282040435633722231712624737950562392330402420575849717256136945935310301412279214831216776436986192609355267386836941319765081722029849710343488388123480632648096279512986479497619027249374602973226063263271760148724556480953315804557628413051890136458196485885395087532842543878307161714542745992729072951521866769734582544523354769940782618710294243955740366721128707879870261366367656626037549410736720534676552844475763214429491997232783367987253667145627959957536030280027553524011893613786300976060860002676765239904239865679267735532154914548224732799019523015197963890799238289181318899267077279529269687917689789743683546960578379505311890152484089385921694224213739110301671479097786723990962947740495188193291971005741543350714255708161918133165558348386345185244757302531525444277691486549232258965815587738024187273967713336827329076869728646560038919472408098461062432501396094135777016709555192933732588483403052745515873309793693672326451899033565850478599425898987614 4686616234244713227614538662639488021226969406089379027693902044092145401232632979373757784372439156468122064464739834343133755525730136225478804613233979154015926686368192484915615220031485086787171162122649226765994445707454481753706546170961418758310385328400148190321708454512521548532098873671799853485402823046932295196615229675990100759046927161238043794372909731699257461278683605153282454644421256244990168832628430395127061336974966915494556097484095574953791127401441102250167708110602251730667082784203106292568205762407585681964648424147446211683321456731479015673301120044340006673602181636633068980310447404004825885083478079381187185760469761421208146755581796704312275625268438284490607291381073151094390998735134987993740974577769451102908923443195940461912668836842927206643534849421525915490763258139870273974638645158752643305543874009539761412390994193435718828656831624845983330035129837367615079702236953475656721282016700401432510115966041935590240345498034064239323077152003114393587963564705519344518988738510445054660393210852744236874756109146934681604670523777357046526018294267158377944724062153761162139113899584280138701255513415354133282237725674393917595794005326392772455526119487214231550499394659646349145412952262798406994079227442384022163686880206339858047071736523232644187785612107720027703252838156815211671813310930797407011816664 37452162128037213031618558666678511569163108774243845123336858048804137412546930569310748237810548555432557591055286336539425860469106670907927865439328837720997922072837630766650964202256145347515126089341284960599933334994243928305578126124388551593572149375861381223317378656636644958252661159114986654653224037013957041197494085978992881244690276645079441552843874656087795262884521288645172961571147168715721226020309604249273400383243570476186546797994525677526784352229336864474727549932678902534977152956817864522727352429064336471073034803087455464593270472449314242567828330754067315415475612314097942550811399913101315629084827548792711614427728453685557637846631150081494880380388666065778557986620242126194548181507269542188416289315298832423912868501596934224972770845666469510718799995283000119012935986632414916033002933674915418465705415227477963001385037987423722446734219737071118645607649465846012235320659597492221221005486306026057577851555300908081685807659290458395903869535368337294914658464140014306803810678169133252939688848944740789246079329641692878884173097459939668482648998700973862896336792800485373863367141966110556601981688831560346228628420480436811404261203491649183613255908002272007190937613093138034472361767124652785329212964447143671289653861420673473372296354585135236124529564917490098079997423983049252559258598621924941266631218 299291722199389972534351233964274084574967124574432779083616745099617575095127543122621949760325329917912363166329444997605564351107684469819635898827215195427263942851162999526303011602748879694068985281184971467669622701007867146782049250531245087532559844037324635072193436398139681347349728608682475020747218808161096959542057860865095896513692825507155494491864604896710921228576029965574210395976293052880917031650760866210943497947112097969921728708848300112541119236830799843992458164636527730298369141669091959606385882700923508904414162451699371124014690720567511014448650554938953010592592760551988118780703041219649276176879767536684525996631649788221212629554629884464724608270929493729119077938399012603109656145870210632419388951000288654924995370326625154354371160214318079589257069850362251927070223211357236505142839223567829416979409972033158075020540882788811198375317572261554797700843151151374068068515310292143009003375830221222216171658776229488356619236795030328947369108478203841307173574016072205874696589548457625983277435866629766660595677888632667556234507175040585525226947799658954225185403895624461657702374776230463554155302189464742440013277791007984430249019587181599353995036109362024917892934311645862141273501794488733517802077762284563950363921329894881461494437762787021655492563138926979323675374742273609137007335490095978698296723108 2391733705292771014833143654487941915402469353069651425535890065194935554989368425263539425040263477327759240730193562722404002970058830302578727396908111372980126634500209815544483113764132656879503662611275328083823643538531968664077924098289891343305084144057287361041257736747848501948572761097692880826578982963274682083254740303118700244708347210920171951324657441651214621455445427891566457749479925916054611817823322429909878198932548646198627486365908616668927473042783260914663379137103214965252385343374050003366915234197395963520881940909015202785441187228078313688017883309402123878450361837857029141688405170002002678213852542834078360380104813630085193901776653923764923998559560514086416541277149724322222914578267191101390843928789069044743482059334567019760581500072733662641125202003810544433814322634170174429719234801529580694907297614990466207088365803324617476167726045660786014699012826189693906057344654380382921437162435303087907556935821286369300743370164002270726208203139306685922438459992986621907232433907058119364328432939915751694223868991382240836764791656448803932327280494325514945336191201866629070048308138442251807175819289025580700298426268460581599189377973325459284848344153689631160860689861067025500270759823238180929495538374308968822371920513521533036985900457743262352699204610814187874807248911096856426570710706783931235593943140 19113105187820468540313162781969958648663070812242512907529492080472537068282877922662286942091472279830915925386942631809897558470050261120638236551202865033302193696629611868401523763299668236845924934587473351228325137038762873483163229680716555467494862170171007865492284208387915612355974414359747715041589743123409737464276247124369671060997323658661346668912451520769433578971865559070928839082717299658721058528966199761753022641354238282248110965988297153501406281896509406934127165632747086490209583952451404479562661944398865194010789362664168544152556697150067765540510307167741722404352929774454052711481771558154436566298814153440484184626284302722771778108388640235646026003765542600463111403490098184660097782613428712370982207365400930837942167012867267309737416938710941684917600548969883560540444835910252843955482511106153428965274959900472855605415566144773344234331003842446995178531586957699919869132884548668336394127771552162894217487297332794405060396944382579506996040252503930928244813013473966248782943840095889634132095712151652583257145862438419345290670314161323503875328403057294777866759208456484061535027096307098917973690336582981206200826130803526522346064475055101597802086929461627533814595190252678625172861372471013024474021153882438425112671885223739047446843437005723903426258218016517756116482661917121914565930362847842934009403874958 152739014167842809903056368812158446316441707138177667599007616062935340868525493072294727733876734338933274554406362878860945273597422087451597723743185576515139146244543289842648400143577639355728666098816954912054669117711905204681515599067980666923652607858334117544673978191813621903840407498219308818802942632305814092661102045918044603364659304763135663945183904667555816864073180079298341435251816893001381796143562738177491171393040516891598727312120708030570844133767525999634502436423178131349191998684619539879398330096707188340252307450164669481861504679793392901358644304351515566804221819724103402464883999133247539546012051022047777335912509108166098168879789170470054875534760904882448537123155779314290771878339540884508978493686404513695236093505590224877233341338004926576423743778163702235663095415302321749777904080642527559000333709474241393830165896469605620233524996409522204849281693059939297406466612100096339042995313701749351656693631668060160752932324916559692760832141123742590484247350741704850787257503341290167335048546494434037020919273490896246152921317924487908340948281774668363651069982703194821679239314011965768040631738622239716167438148560743046495977223713519944773693930611629650435669049903381183032783181067015167501201500372962010422655166144128689744806474342576802881745744321061735563578917416027747785887982886230369752107802135 1220587795575554901430262876641733473157009354358223870263642242212274401604819588987462982348787812833165841367734191026428885258244749765712016661964037253435625316610281016184096291037076468373697762742678414396935927357176365662861357951031370800313295226366102776063461724620826980637701569087988356057092400254742129334966288009328124738719730986558437212189249314604990804641439935134666088146026113874831018733344478394135469937736799839946968856631247050614057710965471063888611950433816840888736348474963331717294403259000455228318158709694916366389541752545567339727293093233961215397015352900339049944098961752437308954730795961656160398978662240583497042374579709920165892173668145578566087760370533310242034890542538680920949828804219689429572819219384700652131552123416137146699474246631570636470407762775078366043074563353081859751147035329924726325352164986611977438064609761707773496949057540446386945318280495083178973129724296102132944635905968554128037866001065538951863376353214774230235118874618199325021305807318420653376287688747750133269863171807522105810698972343041943460622382385893346013061404333901567710482184741726288172279742110845693349486087231380000062470553970033855146940856184335163955853691781313466185855645538119110731629335325785891094193177186272587323790058180438093829513349009967333731269498574912535474653511942931513507565837701480 9754126185876763159662836956235537275914953516986424179583556644563334752686174790479376689862231204378376584565295144156492695882378841617259588431425162321835294859499169262217226378727778165560516998207905082005735842747564801580728140251219726852720567864223941782328229388848930428622921906895524383549516096966859592091726107894368040115281625499600734193794996949019106445583835024857472676857905580530214703324641734151417535832753960462157050449973566737171778474809543823148049072548186028832840740584080105925327630958107393592523051782458097303640756945419938357011152538853200674059442836633777266788981591865106113895096283883757431733634213699719975548585279077390777578716388498208166291568995558231787273030117414347533017097504401694489780548912938484193689652486514659261466057680683214084802511094553286686774587205644401814198548680126620098993225160872091863617456912066675514177816840568825367157564619751363262293970841880211778261744036891988267185249105034216858804822976547218946603243091859976402509311759097881403477388009461780252047604374653826951747315608028409994354188770992578157855011278375227803874754533496104753168800607388699245752086915596878518806386618214886867774843280233197924527314640097778732066194725399359117862052736285915142309297456825947933279829984304961986018329464628845115626066371700500373132276264262680985621823820800758 77948546614536968415129056128796773004780567725178485229904427585105270336809033325991761693860047947333217057599172598548562774348344480854702864487265427276782579100602284343051104993735644601531834567673412187601561164605744705137249679726227569730855926122084847487049557431403875506651350447007808889909662314373667901689043924261828361713812014335541534509199922637027135037907792719930856003089160720349302560826889307105893852256106189675145405511317988364555290465938658543187150751536144446625946905086834233269052221766333368913684323236739513355853032700810471239924843121537966020590289295856644239514402749503750008872758525093709970176680276901969686373514753421162802630768198531974260023413868395764372336949063209987742148738379313677332839376895147174903762750676815212194376094073048928827921636675301103738478876001253959503285686660802070342450824094562117649810287815528752999499649507058001949609048735804843144565399646326972947931076963752197452085121323788046176934696635586124015033534081111802675458208944065621128238781813891198365305654273278880866478044075018987307204169251591996656218195330770721537644561012874411892373142129889675996733009808748013518874770630506743445169768155816009634569276366829041200228101303874643696271941964443126538198170772949537092446338309708333866889532620848509722224953075880184616161791826603598522544524610140490 622913839604240450909113695782349707737315026323463788076781957914015647440216896148530007729690915202799843444944879529705722447138613405224107166562192113308678088717226448726670246858122816639805004029097914436659519300668036273239460962161906868179752253630556979553350281463428166198148247505724233188360538060124023764388652164798757041030588189973845174298494113142476184155643980384447372095531431850011487299565657555119576956261966432635030134326870348217524357670002409120504011870748812338176922826956490063006442093638980224380952560447927844546746915367491447441175028588326049596658298994884473126736074585351595487328507488097609034517228201147380095133454946115777073499025310674250555950118643438341420173419463642248441184633949395647665200745966225495423898891091937138302727932873216073613099632677851865798188313384852654544596342074548566858486831326395515856877425806971236574765771615683975371465916646691768598460148284974514346086767629885732421673545203365163341465211558873528088159808883341874952013752539283968293238084494236983393951013960704013605201667275340630031906826842748518237283428452379622758877898785025109560120231071078667817385727274210517969974173630283199076376728198967885260178028581427129956433664770565698380369874809240307063158658276354519838205273403893615233779877762212618620494054388492016156197408716917821345401824018330390 4977923785419244924718292837221782169873044711551307937194082494745427526620256064501774055922198241311996108493639509772787717284868460592149506025888741452815411950719065948502829651653249553934353845088305847946473445475840814210763996977014236954843357126869442044062813343319090981388720207141401069445561604783740957826471787849931178519166976660612584448942108438996076338357673253153429032257719640261055064877169865248733788397643244711008902995254380148053523066796323578448765027970454255528548929581735656551320404367686737765858069480656147648094827265412201069526016757863733358831721202855981892162733210681609990685974385645901324961553658344568032136391082387797788547235385457271633250582689623228789093550928684167876547756398582908124912939131986977059612555122668850328501664498851699171602532447964340512793217406799606862013328351720317628543339077455355086978029753753557404197906885127191623068606175168880014428854142056243105714531220803526623648324575211087509866025883039850394719264660630245738562795653629813263350219124988890016993710244760345932766260046813646486990342932030996718851643599787878139544806781771718160921147026463455829736154487198778531464760345132757503789340375341868752112240751535019072936213989813696116135431362576842907031268026104742830725226760530075926648544274347229167260333104587904925937035290611134636134343378530467752 39780369335146872686171405000134115607447160772515856490350868558672536296908070931389001499029353802346658026113048628312848592235861931718452355922703415285114360859069986547336352115269638516800121246000182093275161105182218730677064332302219181131815632981378760009945013709625899578925258204500707433523253028114878729763542284802929268499489734577134084084902919224857082795153463121934360153078490384539300434118540554948072336712248694968855538017283484394764924943633306547525534327245758181772555378640194201519473847697180354894102853821110636085306098317069055833215607484248249554653501744047855648896046547070863347028471172942373775895744653501097764912604577491205149124325841030993864983055978019651712140999262467083980897766826525869516423101683534776356100579204916254372910243925069529691831139985304493361463264971488665820766058752856774006115609812736662448209287754916768915649780020656431166144618013634426388109427010514987845379904787067253214589457493959883527362547383262717025514844352220148204860758312985977151399787200076801654423707250875288346763730613645256899449312909012903097139725512124019277507533137943014460809476215262711977983226720954292318120991644019890073272459994817506849293214381329523855978220393516022099851692859066218744772379230172306756745871271738497847270538135406305929233422771613013690044824614111670263946197261681968692 317899381704346095002116888867669950204062421580125025651574211237261728826471310904280104496645297063687588877483645432860139166083134135228628382629183422848984800662284824122941144180636610771417702874921008398246329874016402780382333474854553493561380270085413142190967732085600257891666126578148883152507524357964618593146312034653617044946961621648765208275729866949834943281575007451583006496729504283442642708112430187016965688554476505727971911890346854426473418468883750237256106536422885853434505593950166040946841616162604121945712387264794579385069850134589651695730044323633798683582455328255390875523539742691903776302423388685087035848205180598617540132722907676941622328634054087469154695921964094705979484622204085760007470164123565722406851738324552932289951495440852882575366113138323523751929196644718075089643222904306965645164938164463566620436024922980842353961075933938346437010426764553543745885413980808280805327001814627194391879545999445208968421926915269362012429169208866447874758292458291094316949147169768088266031704571034610658395064772737589943933033259535640482107590763314090759999399215255175733183321295034718878739271918316226947085610960399839131299203232010470221764764625345328129324274843754223714280320926870827661953948032817314221592993744938973784406018826203669122929733186022457809535358508689753164200927195895462075878808597572984716 2540451215396556137920062379574201587745445233389698858471958845765662993302323510399017184210058130585954863229687036116599987790176562081068738798515839210915342453105708027534005751609887386582637008372276383593052288721826773539423009826949801376608389248224014938421260329613432326944793913275250903743578825145309419696838071397466520853246896474883379245017465565006190056941764727199568705434323796433751110392139138541952647521272559959929040574365460966392675843828231088642588336413076302926801476363282005851741191060336446934506248753783427746715119742090052568873548021480420642654777246684244927948972796481453518500428200791930234419295926378057608552343648287524191960388908721577941333301659548003226726415364297155377571032643925324767103448901372911015331446424346352591275556847779555482125109643939138863932325988291090513395792661153053521449513352527801746515435625890168374750697713930462482500225615826642821063912474438792606655490768746110341388558919049437174229854188577568963353773855398311132567989210040862158532635034515464843189747612760779247569898535044741329062702567288334800573432762920250534400548476675448575918490610802748565338436986848347049837838178189400201099526464205355723187651100623992675723466888061221957202598218468851468605032576097781577555526198007574703210158596422284369993993802549835626248853857462667498979565254278189414096 20301696891797343427036627121243335491199452483199735368806001568779018041676759773244156961082911246908301453697063542459504272889509083788800761568158639987528397991510255033180214371619798203928584696283754795934571069456836637647663142951145371365624396495023150564197890362760808368565221552342447173604689619989921738933738390000732203061453173325968868858473904640386443554116414994697522493408898326694813205129672228951367503800881417872562712478154775114774003888561298722626361426924013246918117788686874127931904187836899792698451223932800764810420811287848922225103796253006155650583744323816596452004584278022701891441373351653955239517436328695636433565665449934410239221047002007930216431199619886021412657902839187170296334209343143882972260672606084307559895706193712350022979318172525162118924190970042521130481796095530157048974297686830587871989938328376786698651824587553532550701930683308226971006338560076757509905286889701606921654404360637213121898175724685552843297170686089564059716809638799696182890108807189236781694125985051932742834594548999528218717779944787693177379506175330134907764252447491406809458348020890539824045340308138756495323897342950035421020185737856952135815458395285572794321297744986937170162031172136817984402222056863657086947279264628744688139160779945937448871177071245262160388712580025248223937669047417898993547431108239478617200 162238574761151679125629649636284464700848369232880301345418146388202747692035084394283885561555382046433990990854125378517764345241291399830123729142373559428092448333376915228475710922847939773006681053017602500928882025181394204570544040309422822829869518579359813794786387493747643133984005225327315846351170816446507531706427296464960619542548888095290133656649085199912092396162847898289613530816154671476351034775847068265993406723015273201170201091705699684944988389342180841201535765776178868641490039740785209716110067417802639409263719002370810856929889742829082707903511556543889606350706602169112222496652184105904800432216330553954420707308060823607452372543300864799341614928491101438341583791759294476501239570481388655604867674937571569470232271711342462219108269676241636549470803813044888268639225397810710639941028967226318730509801684884534664445781939593468022283587132326143450256450618527419606591441334874202695899524720321762148626808998690868981459198674591266579150482109080998675640362013580532605044906147968580989617315640003318733825022523298342302623593776561563455027097521589905791847532071864131169442959267358377996218820203732559200013434752109130038726469536925045279727447020487534919819972443162183697609141518352353995855124387207981369773630088278762959321178738181447044558919733548188306874348086144976422733458849042785989262439473757836702936 1296511007595155762825432831027409860097424650140664664687787540347685138848264233529414078973918169291234709104250226075358997681130473779645397945255269666728766230361734037377899560121624884777888270820474928009951448605036680881165451934835436289793498918525687100460848539593425822690028079444405138803151059882925360516559315975823899536771095436721392672725645439605520849280546675865692707795327402793102425348205812227175975296552528960113401522752393097957275098079054690083681786708959987396231517910081060805013883339440228790760346456113893293302299440629399768828356679013087651586716513403175220812331632538017112345819522821724192739318908856677562173543640987761699852188299395680186749372438769507573686004139511715642345787712133581064327063270648506734770105307795199345533032133440717281442916447086058600166206762087772900484967872931992756718862252043173675185648855912167493685302846094205489711860575280613670947344881667631987149247499057890736270515957969054588343042504115049435234039999047866326547696688758981467736774539343248586806518780058891670907154365849959492395063802241083625422880296903898716449026735826908841585456544777611379961513705919371500112004886110584914577325507946748829056202318297206063787635771381497955781165034496227045788750482803978741264662967778701294737945421612940993830534759148717701066897838161229299385239331466530946147888 10360926591037589682598174690194760585190152495665910364996635059988387445952129721163512129906986994492036389175034254377265411419901220227942113721040413846870853935218434444967666332772907973048618985914332898710443604165006707110417517992530977479288492544072744246347543926133985605462696344144095569695136380857508610169250438771440129398114098469562836091173194200473881763907639838690074601206170770526588813860693643059495282395738528386869762704744597741503562472793446807448319304223452282925494724357794820501996727517553630672517607011233907955174320981484528810574453968092492933615414435027080591278301603373801596909769283059196807987704281623129245835640526367596169480231797298150018841254634925979535632308531001522769530233300514314936741472190996712776761987591608579430887851815439263833879618292183044868723938196437963914829136285405036328823906628727785806925376216375837631022215984193628064021313719564228401949129506026621485036945639962272615727839122718285330689905565718756085281545736466806760566050655883502747592837678909775510016521546936294152020602296881819071654315184517137609721539585373305532420669413307506824437216950428141476970895394960641294923033196125839502429268790032173250027766986080793302442745367666553071446737201442633413329038688487641046884786358979246724105295030369620373450564765824447754797693855312524629043908949341919859392380 82798274639801210457043506064808730812060469617972273658804943796091538675327505299208292695453751500860144778595831976023846035686430482030504678094222790400377579538495481554392251642266359069884588786677791132080761881765161180339835974385276887315025357138970188268438503811829044190847908471403702529577745904298321679401426728433454345190435695981283400408197100863622775459892660825161964198545240240427479046875418098900498713160579860239835067622392728149720352843228517856773496307250174836146438878511331599101644478329840874903491668614851490127015829729136115469018634083598256814984661712369696951643669378285710927270828423004673610902315523259263438317281345800144050878049360645709979250709318986420125602499390870422095478290928907154503409779990954783427815421671914831714278936275037885361351326178246656955626205044753397892408686534445047178506404221776648503472327230087843576424903529728587266154835521500914977920027933883676027566233013639219574112966410569134944791771896469380092402736135319587504363895947056881892202880418411346465327238323828332017332769838807058563415715786083054295569199922970773023524151058472994178857621211817560115878391848068946197189506046225656863128564659828900500757671678500117713518722770556601028891063789218465117818848976310142633556987315344889329335493433718064453148180077648896100019041092049263845444453192719402404232406 661674318857185275925615228800039731779969783170056369078329012268749329782674493410167675930840210779286913424179149877876405877779569519989276451278901538751217413891659690098470320823692204093528667131796501898136703312208504998364134548876727404993188486965718445702721407574499935526666487014977295353532225336042911359033021691091261718521579231812830787568662683400296197649554281444741690724954422274132441322507759463997195569356185893981024872908781812085810185702959774115140495251731621192496133498192230918462016161936589199504191050884360791347355602343913220131917812392461005573235769451330864678310257166812518820704659040866685806120508175002647295074447011328105309334339592390137082827252155518711840685725273772528034326770352009794924070261582531293143989148060606774565836934072056658484072439521576551000570061340053936919189063731363605865856557816084605932262281740860854205674043484020742658576844635959121883817443486627498772113081189805261213971988634435054321079848691324326566450969262489024113897758331456553138037157450712376220925751502563419629297750868893934115293603794211122882122543679717704020450598432730631885894360076975629297371099181797318096140269463636741969101688283375509299009819034193869887079089093866770638274832939554132051155494638870388524135941033855005644286606751353924878531085781148127256216855250702409215854646103003317707896145 5287709313151467129323643027082478919520320085153546630262239737073569447054532193519842884014592715614714563858937797867089460507277337902541560862469588106697437499036255850944619576296988676430211800854488940357571351498827323665621367008336804231974143329886147349010677680690250650766740974657179457430071457002260220713418066501619458295191168790833116155930735628622577008604899841161165949822167455170068646122134186903318865132465985636854351430765085650468343840514267817886593811518274196407875037213834884607601591102548015369664265046575462073740996981300450131712131568498876717525736171667175032484591878944626313316152715418406570451279033522948742785657103611471917756592739087640255124145756468898633285342776134733089921318463432082672888483097805676002617533109178368918887785355107200595812746900903488186106211315792858923868320199189264913150729665228122624759096257306837866146741782101676419570626607648869755090460123107964142345315701634568776847192911658208910130790242520691810705279762735789588727473399638425165342872573219709815659155610734372803304010416510137303455274932420432875857711820380519482266924280492916317746606322464062334610036947818492578787064733968539692851423886073110513986837141307323419871077421749244203624913122971913857691258210023207373893566727688322082261719637115756373865361862696525938481978406881769690737675453621416747308227514 42256270725668489562540514817009524434147502822255437195753200289290287349793611633383432192208754253620074061361451546724386164076997280437073073953958355152045280465251551843501637325958588096457336467930892968704446087924570073470357115191953487878672553686737296178010602217034977873934317947923424788334653398621996262283869004143475656165767647325924830822722383666468992301956976739686901576859423878734330398962591783057687502403642189310469479237959301587953130033826091334545485810244848757842283693886386518218746049928358967721392202418076082622787937317014701441178199616510703354646241348411906868936300240434886692990873418361679093966631971859548590417731148739473487943806249735367304262572846844616636882490595468181020624066240623694472812766260451598374440713947740298666477579902477515368857948541320791137466629809112324155764023548688947300043799927288990957390193082787387761366343595841850111654739173732062132100695186037736648809958459873582952694505020903340916253635765087802564448668512098865626919558540557153502715985993546097956097204951953227013570013587580198921387053167334246372337393352927930454072950565706788818132448249547033457894893874783791007326919469101536465512649106052257450371753606330474139285592041871060276906004525314601210447421133013531690283988291915011238878389139626823210472247971531310127789847161377837080665519510219212249594899061 337687559070563900066134858060086046767941548401418568204337233858015740662333960571234515495371180048444428246919396438165043268014982223064222602265912997592391109164672909789961819686571312301374613860610444506806777638754930791806456698695112949518884985784176154173170045289764265630661703885911834818022317009875494935854217629380560880642355751604100513062307713585368755111619473138604863082116053432865294469218685420722018847983129835802203994083924931339945361417584861398525098715801181571879632876883742555560275614291386584114010704146069858569786745213890347010521185913473345607511112640151686689463208461875173477197875751401233867546024332034756681771191192665668059028816415729300004065439759082562782010616688020323825925660373293808845314852830694139488953821503690291205983824607796210833551571245404230126416207454771871448688902513839074720793513603747153886399078276995612515628617042628090738614202504321184716956337275531932390359861517852598916244468923372851518287359828086083940537573753854884302182196491162748807316431964515437752167822899857269406871687436679386460032167663136590006502099443569372534493907480825255367278709921662037812804119330478831693017299611123465130596791210047092961514073984389728348031081899352788332050288578303272841211508764066769789346672393243941902687570790415847368726031125104284008744677514906748451808249361878174906586752132 2698604594931956309082382903776836923920840583870034592307428496293533417286590993453719510770994182071869973434348167602541457665061557224106188376986414321883639010918304171980417334529511533814399683207044495354682258663472975749350841039997088500666159537784431181259915153499820570011444849319287798761036787464719111807096410981624090734566687732368530505954723649272930447677641549514436906841184542724791363101205531171756842917272345255210647475934754030945384810870435072898163984063318408711427793236703021929406696039052600893706823105649269344539685181265035452264364646098973725688375644091737638571179579775300495797593358939842125703160065766555710524998009996762324890433419854202261455378611752697005386755917676248054683544352276706372142283844881735204147943666591458334853600067316392466413219464073939894935578308443429118889600059267263295559348280521154426890759675664458424149181260243851029457871404746957232167359154632034941594068126216086753074641814979345093023426416424830120159396046941825361530956222343638917583752000462442329306062770533766004683588544957229591196981239380975770330187204345956226962696346976804165907538826818084225851018785622472094961872024795716399103864520005087920422995078115709666032133754317263355225470954741618937586347335222007340362287355486178007618051589215551573932103828518110036928497371606497985024426975106241913857411677988 21565709454509190130400437044348235133185548486527041409353755869492220452441761463919673681867734944911537883459613646197632141434198781654668203777437758757440657055414766416513961796579867284718551789290812088078709390908650457201534779502531680469239533411806367459859886162754507744488045066318048248462614591230816864354622032880301721997023458921481787240984751090503099150287036927050784325077542419668621169126720239075883210270673524835561811136082063647177297196420890798991002106164751081535054347982738792128310527852977578797871099383617641516513050022269137607618882129798199302770355422288234796023380466569022384311732514776939946852852979087248044950397213926679701313037471004976880004965389189934679992612054447131866283267420320240813214105030252255771954174656334389022521477801853863272088941355772334831025477627338168778990681569158216873693178770245597473208230487959672747321589784181743214251625785796168201709094191932813742780367291565939356161240533312013937016423572389857508493610928458525515986298964400931769278163554160231882635506245051300164647653912624195786897572641010787878301484756305607933757096024619647463500242494720410269886670555876237312777676614480365247541030094918272899421970682482904293167604824050317770219606618238762303003837336500759756203815761467447224099058925903238827633238163899152944071469109651147683757335006539731565980821708102 172340974176851115293612928737796655768046435686481247621070112176871095185218098364911333873747574313743526777330818625323922729170038062327169462767876463045770518437487706220654850993949556756566026596107828318361323304141073884564763992099037383281104013256230103323835747697527017288278064711375222244451994602552911111829371831945934901634817239806301597233481853910511256181661831628804899178459420478875758940150874083256425223091569980669551179708716693984958557451757030078360045825271614895403146517480576293221362901341915766235095105139025408020701907546909414782098920371129132364416622175510606542253037276984596785314103992459923067292504332614443722403666540450092710985619049431808568278632498754892934930201163239123093729654745276793409858234229747248705413850318939746375640863264232374547630569495669961864641813125773614887918995686584381434314482299984052490896176388021389144233038754301269663846706777862419288585960996781661266705780858062953389094653664814193090727382998975620429032828047003916230004583212399063584530462562007859869422090344205597618874890791947615771136650157542863489232483690464591323608079354856865242038221548918325538008879551597884424901866684167713681186519823124315836792130147757901086127419358405036668208188403083366354839907157974753169786216177903013070390666424331456419487032218756487463352730993924750477026589744451469058181554837243 1377252711613270072488384466718299439176486627050064365177970063984765184822951073432004859646613522030951836003075639542984521954327440540709208914090366500150092854383487926621766144766393636776916999550747829534639876250264272717644264308207739680106037411794304005322238307851742872942342982680544212886583929322475270414103770495756527049443860442823531617451716880911798858578622920160572377960441298770599575267055322796815249171685801129956617342555548755162957591692333870801767032218838973861868810592499401570595200785600730247742796651220644831552476844301780055602171764222998870187527977718136902978375896656096269198123969013753976951914057803634458297672187663750006014232596070500080132367872076772216392527618632241386670238744826312879992289194441798851777504880684350359822453537481079301350366299343898881378931393722933079759624788646645272085773413928600176816168851024067971276947449181560901749910305623868525550710928546853274401638157892145577881812653869029771408544430609382300043972873410008913493042294551730847527255223399898719351100157337265069709447825413678196594880121695022792790475251328028039787430404019052930411212556155685710117158870975927523497659759388508399506075434110453494921243791025113933782295924070351457592399911187594666803167575585860742309013712792859708183017131590176860212413344324712618274454012394663644129364560207313026116426382465188 11006241229850393083088480676791209682077993073021410024634272937331519115457624240357890111746067070129827286306416582262236943886346784314240439880997109457720894541613694284142533412832364688264147681826024485652946538295873863213226517488347455048060563993649954523223144288384713973857522015033789261106338740587355788904679408952007128451481940092431658403760886637439192394096740152443389850312847720481928388584563587757963417696598769980022436383823247679427580971126306952066204665408038106659211530876092176087946211714676165014463253061144731732412322918079924516943452627382088078079428494054207672436527648954875404924084396180304869418685957455971430309740902824768759115575161803491429172374774128873321425016596007953487511771856938469591578236587332902370599094929099795452840681388354909200640682110974480288089458255773631405509980458269953186354686585116717273060040734970792223783960731417740212651901157061149647481941207353740026972188196271166877715305576531090480960068506459480004133129856295346553902377859891228028159289293699666247379942259249280669680716241037086401383813875119972004224717973993143004420843254180597810174119969620061265865724319043786227720936902786443229161168885234629605597743840311207012159825355332971592566556923347887221313785497767966777481116618943100402471367877782503808424007585813359493839583881017174202477540240347102411936879698784869 87955847285378558254366276004379157015171660711776223437989886388167165813484034977737937408701416458422554964228435478487775545980708196529658863265672180910999201888092383909865113240155288892412240383487847903966793523647698675249585551610011265922391420570125662398432069333678646201668168176066955362961186106239424429416950696319007719864998239702457262903306895346119312803279699428229590480338667576705622660428352296630155546524982522724758121064693913105096502175078864901120372696240330103497850850457684251554703477102091297769121739488840390816551593071962185918618643081484166692104504878437288560441605670089906783966192277792218343211585696663735846892150926770381371178871038574591077320144732488681972232316049885209647801979571643527278678616152430985733044255390038371902254552383528113211270410350929179133520282381207455184064063877518931577377559880441546494788667282686864848985325620582025225478355366632566821982674085657989147421427106614380889966171276511891208059825642104831515902795780275793967933608705803272084795882027552624240490482285082738042985497327126797870564552528674049602095215959313005895872840787741451429611393354883748648830073393432684653873018881374357607652632325648862723640250120346761771053821963834363522743974929025254494788552046071330320499208317852982959821016496273755510368881241417366522778794909384529508304057026639883216338264768560626 702895404034246695757803809480636243506735345016996841787394691120535776433801838822981250081808502803144767795723813751423978451464387474402217260049848062775293089423266136590458588370441732750700680216280896161445621727633830159320051963499413235547208395065262091738611894283834360011911094214491981148487251668225262476289738067015167381483750733833606528572500490636859149060411053185743004023337529246981479220146496705355288705656978258616865028204629562574127000486197966201507836214628939331121403197333829802852911417804555970071996345159100311498777717320449760574445782644853804479672579426049065413236798793642986333097706247229111119761324080266763271730242479017606677768988272641333369931188977378041130470921853807212301580912163885903722677885634485442918840174178083989141478261395367865528085727732038238402867656780287453297851198891822996318706696690302890602093953172522951461643247999505197810297147391310366190289403226129727111299362675327583770292841633843858687101973809232748067884293856467118929944456276147397029834259484250315132246102252039070036688118872663415176254673708336145156248435023653305219813664368626594485866858535173379023103052204942634052742220232995213008108206324180159409978865244482186748635944764808702785556653184756953721419992060999770654527202610107276979356124284715763409281451606605492105631402865470458045619868003264820189665445021107496 5617162503548625459454231155876094379841310159985898974491965128566943308812434224411152967945210326992303407178468221725178746245878903418129688969255217188446300927372918642744884888605902221795117648477434022614846620864688596962220911862805756247370966293397285154314817379647634536988991763234461092705571570678267413071508313584753474023635083732071599008518297809433584680215013847168514184548991595060176353980156919794929645620153985161241354439402112064428838067372013863108466229379482393517080069067599846931231206152439242370311760491090440565560938301547086804517355821628738936638794486309952360101835880831336399040884642260080641168425174294214825758507009442142453104458757324578251515364479269521214417608789953512778711994395807716743280500927779408377305199338321805446946992543829129582748742665886742145949223344884043465754600632169311329160237198681031319253521729167743607353851734860432069725291318253411131303438235937423760436128489767446240720731701446473054987019351200868064178657466434115871184567722706301337013024226596342753336142859554545127851308091794975888241710202425860698163827797830435658531839281222301784159548503562079631172251261738546983498821554449278252780538398228205924155441464571769490125541929572532299196448294390770066800345668934952632130273296033086614458435278351468991228521243190555344322576216089267655140727489038769116584742051591675980 44889376127970832282110593747597630614469138451693006674522918667903563482262709852480123510916378700395718812466017135040331787962376682450578760937413941761326978678252463084927218798559344134647674871043990549774307313449381387929873200799351917183858254050913764474094046925177095460525337017758507748160953082550434051970187746509524474561706250976287176736364319090220986905735870412192616706028575526226826618516572615753196706694000588226399754055793454708237380147004184861977757841687265413335324871134188843590348985950345446930749477897745568992806743116553226167787842730880227755653325151396648086474169101070243826130503468978777243715554280301396512592886907074420329689033757482345230350047476883586156506404306705381226409369123264385156460667492168512257295808262592114754816507605646105125225422100358628128436259987680973297357669432749526087360550681387500485215660908952026560392430723634446587348599347722836098684771000896132137474135149549756042272466583969664868351050553710382816385919106316335427888561762967254104264547524386587062251091176214832630544763365101645961564673520783102106405364537556899914926033828190612525426170450947702733585832674826082445616327359261538690847580492998693572998307571166916340109350756213539107829751042905478927180300393233706277314994630134273118523228888331773656643822514180109213024413957376728610092966337642343614424639128251639603 358732271718224139014936271136930667374034297316481344093319361135167485899287784289862148534255293013602668501989688601556595732582747804383555336417751145992803622943751846656897992644645367733523335206728399711482108936182983915622280803482724603771768771670152758504039778463788554296209622514399546478190795030043186565733977966172372544558012282059933557986495563521827498193248374754093995266813300254897809551316980121680186118918422739588747970140172899764318714341264410928318841360570546884375135541856224222531042294990641274108301653686408051701341789743110543616352661254026449205669017148200834481802015037570628146451787239286026694037537254043194257767796101318872844091846437383908679412870561442677203108458626532682193149877681756138278093015575120819596109908422790323573276477741042356264365718316582327093565351281644919075428400292938215297600297173683808848498669144652669200133108202075670067308961918962638639737624968243911835699839854695845726804007202385728107541494728055221687524712492924253019290582631165906427623603008550040992014295491971780807523757108356408959106948333188907483375536345463059692550056155117457201194852312244202607416421836217990644588799861593378604665533916413915598067129736259858600366934644821174067358439800671892890632833753551835831432392021150336618108803226530990351292632810890399911162318825276514430224127413366279414269021448530263164 2866801494222374107355103614229145953224873314198397860171073045140529430552122131653768974689681416907871310211212963534089712463217981347663530449566938832580051624877448321033856452964790883754332891772305941947644742276282165044294813805123060243618636523307587457550392193189107993564458966063696436280704498325588761962174877264210355740742476100338363319377377168186341712077795043281695317807998079643504352432872195346653915990522972861280970733215347712258653864015954534836181515687507985210907799146496537815112426939417857960628822271131997586037972368759898525878880277487774508330355348366582526993860892873225582819298440610787019324639732997773382172928494845695883894842433000876990557257332089703226302871266507900379652428637660942961521961079229417987484785035336921294053941168230660806143439583052481728588531210073294081599400926260976055515143999234497952002223658416318814403344062141618795807877954013449512014506832634307066180434162552896106270523947314800174518677199985612539972314215040677293699464599562162333865691814231064208965925893992201868833294234041307100836009544470568464912345998375058581238492554807404237649246704357512724021145177315387880751646163147367376331157564804499540524021510022606901359029499153860508123109985655055262912432725244802236049173095262258229741901362938125268503641437044624510490742372727099574974283679604790851462375604992212802575 22910000171159460169674822498000963394104608389945711519929299200638515919452351840226940795735894313570905008076696146914164723026740030353358573480742970872744762537210982190320347062696996542957882480060591222675763383052599344694431632030908047439972902769118102526276259292873451751794286319438658399502246584093410194858788881364884666981534213721611529540197765877938326164302461090370361137277860991313496061991564406346683533048769097381152757539506791933737507408427956839800445673011452415009241645092002340721028981891699626129552345810320223499805950164357504746438207259450860634992629275920258885740433144209242716900989342790137073970957205745077921062532802543623682986871596418480479945816475146472854017074882311942931871366506142067069426286508307434020659709565571169389259902380278111486719484561666480321716130947084566908644339894564847558470302126607845389666523849529369864777209175663346236123812937791579701608429507575677700199744703922289446103624650471154746478470486676193724505893162762889125809636860977471634175121037367721995645076512079821527996784556600251228400785551317717602510072615833210895836734045312764878269576452477694162595865152718008061500805217341098288774511587892386024477822664711993926109964637113659532966982429494265913334331782283480315338989248230092702318540137720375728474349044758721605449215740939263694189440398347717335486278184814312448976 183085039556796817897187504861979971625261294921203906917713462410621737266121235568749124419061136964511265525603904651999198211397553512354699584038799503847723102278088352642396807737543573873031482038645634372985908488879158128355676811431388561156667343345909205648531142626355376253682403341799451308391341311263356561764250018859057213110917384256557600918503763053569853547275782217364965635494135930813685122674717892216070588168223765698727385562599948576604802849644333564177748372134420963845289209884278349816612876955923971946648851073352468526625323108256384641619526251984802244868738182311274407277675847428232076037763796938667358568178708024782911572555766937039034034014679365816993954359890504044387228611679596172774135257986988150755148099456967326307931528749270708852244977835632826683263510327111460924498642243908031438748801230323339148263773231869616254293859536993191649750094026512831228107178995244134175490703910777947920378103948334578421532635316916635550347178995953551807108091993362265945879414403540330946826094018785037168006810094638858248480668007068467006910089160952351683246997100210802410959713376194553867160991969988652862163978372911729576151254596472893721629838357999810570625983799273652613475510311974497256159885345681489654914652776324967229335113843045782696701505871911321031734130069262903713895544470847777372336599704046833880868113766918829287017 1463123275320424063428910506150695925828429650456096111726101564580295084012460905093933947714586541039746222226519370437296637039482484095583361041899197281027072924201326240317162563591082504736310465589117907881167632154523555455162014852291413961778676701693500693243412980666727825134087812963863262970974660719175556648095272896761929187419958402305912134075728388020052295142093030594357334825575685195362314915538183767165182386779735330489113716243301543891455144329833708406869068041708502670494972728861109199424281575926249894301728339753513064641648944062533827898711525752231321020971174159854201774613471670684491125846036407176640194764412041219798088667185849899427793498689258596174074645277672138748659849584247187371501103927497137140554024225368498773127187312106893772625633278555290628825206147246206326105087473447905145154969334444132530025867501880673533506198742785672434725916117813462826695707726011035445232919575977150716251675680523977558502663782490266379070781004052301901575915615973961838920271735375280471532804377712250072136855367941195421003438962495359332858055257227374729435570898537013164551878487881061100098131552105736646463108162423338744101718423158132835095219807542133327099574705833416486612254735115177956648245447194320376448049493741278940678270035534157506415459537361931056088007944765006761458752646089294774594233800210398560400884436689390403490560 11692551050791444804357424904322006673048353141235687427926580007321870839585641166816172440954851881638614035885678867923761617840440253758071690117180167883931976537987377832148264031766245857603942997535963923388360625629832340906753764543052122404252543574684616331713263805049428699903999504831230052235207289887549919935214819248601985132139182190813668973707801082266673430678036006512095702815976695514016509368175697617863428655354206413119367951491666675900887626144982285007578957265273972399680587470294007387949798276724737398531128090952120589550348876436570813896089515983608894800085174090279673603692688323727422041170962080057044548453119657515575833996143300735672300163391867256422515892028464223147963267994238903031876363980890806988656322384726342162539129578008819351031569500417195855962330607226590155791525115925976895662233161377051377904130565867004276574085491116399801414360598184403882720208859352226982826161199798527123583818000229107261168634499270623750690760630441857790882033902912442450023232579563574589025522825108900149578738565604227624058130745095965388297605392072759885955463014226394925158626935456019451841720276290095264413518217146019423215662695716416559791178823812401860924354146289213151168785779482377148298971056929577212173612075333546135494970640558108031784914768124969056896989943164663626814729144876196142837292239872457899896438282392479804381313 93441096214714830221533444819782552711679142455458045604597123018053604881245910031317173151868235718338365431982208309554005779679366664632561862508918891575945548022782731288389371670123503597091488309623347301187609779924550684486607500891748682279908790889289274224456073849112025789635384292068368782318445345396257892156814121185370229889915600622908247148152308546785632010988155015642093328951392983892345393014978787260150816855152431534168509636540487319365681940020259755292862072956075221602824829391371765185666708439244504371409791324489113094727423394624108425854836330264809856201172439592328812971854496055818325870444409344740157867957038279424053766305782482373634883768931190765216845525733066104171936800147793642581573469356763769546767477154058207033123971379353415439359384235083222108519404651275549201675124193207562764590163625049736179028605400969550457752122190694080819119380712347139359072783859363061434859590549872722614565246602306170447001303199387378347067580331063479787383805638867986096398846853424083308351207541674527660353225308444503383714581176134961295043406791503586464332598527208140982540093986634460834842799714477612780111210117076989173633204778034536782261324884008912139164939487770049589072414655364267404998217771810060496093841058976166498689863542110472566001390941689250393665166976590437238250016781556646178611085051960502886453770504505068293468232 746735621207960008773347343006052792217329714600663111036744910427932276732211209071803470147595418703838862287958599717552526790579085108891288182345502229048650409004211503223285709009254060209829179260254259363362322393509233056728126338707235262380335379597176533573916619217959517777410366675278642351516798190201383550470076278308427469168791573187607633631279769645084428886003560259188074960437339716034997811464949251253674677791329418390634813988128960859248756076532556473059435155190117206299863543894606413936991262828675310673431022394117855093712482189119611641846266395471563987860898991792188179802307730917068023857197647077096315979955852804490969397687501435070741921874728229428766778461194038479772688647850190708870680415677841167418404622836531070907258303502546773239655999731452873060399453786615244370239207477163278200297715430570889655705148242587788501384516727777476972020456920888157481262257832038302943265691821507587411486373471901893511693700174975600269601085186779883695894195554273637414617112481836008837958725955738070238206689000008346700671119647802648033372435876466642132928474309752261447446878864974911575497117763134551356182338893651922086728282859463409042542230918197057077271227977632146721779946344828249969256281874955546503293791266986335746450222025546586836631955908701626732194250175023482207130361966869805019126867191463027105921820484136210207686203 5967550548587668151716421143653773179860429711775103290454624529166666058125417593743042167815726936853372308225964597936634876288682256448539690464674819099682459561986779478950262038909835333532449892318338245258393470304410358155470238226107751260150528212985193136179768993128018814398645709945499632780376550778518663689764271184135515375441003448874873393198090830287617831526646177622831038958997967786866817938279054098316184134238596128326938614521582381283013597215846740225770714978063807359126226314760058965996002343149166604651712200799026736963289768253255902540867445726782567400276898709284135970604552272041320082056998640611462734506293254416785718881862331069480882011264066692756881647535777966872114086103086684699796846896989214757278754480910321925764321973974281184039052604688097009660441086553538673362677903840799795331483572317580858498354373187996875063220249269376201389091527674732705830463337279223223519629052469386582532217741206746807335351495639796772690995278568155637445929605039387688428228945540021668799093250920966201124430931061586390962978804854390839772391569223613164364409523153006776635225293337965942117126989888111930943840035600846292471058093619141366623499236337196585522618338275740729207068272533837319128794648538368269419603849317358007135160451593224091585638273969825054552971881636851405545002179939301478440591341127539848876852341123674597858796748 47689814955240953993865518612934195104320063847441549270358526111176702744456282852519960471491968413475429234409376780311869805099794106108302268893390704441395891606799788076502752499899611743985472856154914786788632604574784942737205751086711311921308356864543028377602455981817221526343084320590080299257818597758332889024770141330859582713741169979434972093599340501296197583509997116296416223797804729432938572902458394799873954015807906754278869791471960482906168713525221533517338981502220267832652918666507201396400860640210408976313540107773219346456091686101844276004161388861876393807411504234255400797428749923612478488886036539059977422970516091161417626889313558611288730851166252084420190455814126593589917049511936092150480227645894547097440991771469083259438134130984440331265027799543770718485672424247288178532997368784985901517705204613578546684413763396054570937045735123582703800651654876139711765973515337220749232976377334605513468503562665989155552826533735177476225349569412774354121361492278087080283681612609674435056852043212692869288829029936847652937163965462414008556660748035306048275352724886972728460827887341451550543889157718144426717047779966999816234884028878398307124465781143072942005311824700103270077452628094291625718299568819759645800831493722453616161190037454093021461582919145690389041860661623089439707746911726305714022812190831402084652169486804991428889242641 381114490053242894844728795214852205188315263576444622360124237820550934264436573940543453439641578218174863668810875131267920787694034008470767852808539677370094784044848145059672587756335015344479852365890937627809628990061422689426053381369211690872740030131618893146985191824727446506679371078301971108518434960712363532618340702114666421740827605922574474058654124506056930334866401517714145455106772989679231451128603114434220376581413580266233776490085010620792815311610416907527835727937653624874564503814530751817032787384748095175685585949741034894304798898268806369922226659805494936047271486560636689139645960344401546700046158122132383277821651834451957633948336816831914809717358299926559150510011355208084362713321754321869200791930046268627303812496307710257877205779847045761746634101306132991530614810060694164905255767859597556220941708811493089786354962539505534080392196031275913380644090416580361871813140729491554676249640447794178472065832921000639724622132576550911347158127589654316905354297887914388997901548875341397871225782162643182734350857516394593899983127536878392179726817745975036408875896998893651392530213667904407329719799319598185876818837826848258306615490217920980915054558785152448538456671224396191210449454176742038139514255671615230108711669353639362164316719028545918682666861437437451973653655793108771377833144007627588033876380274162969473370014818339890124933348 3045689157968983470299693022920834964627485260477217665438909588967382875285957257406970284952989115866394805108560562118599706658717149986253101862074292229380921340267041581575645144051232885096219375300695193204823189122542624890936383943682035496480497878736403855049826027347758093268526165179629323787587053015587370863985049791898471276895104351677627073873850118445609701705657683631445542601543679467371892206242636793310873807551455377855521016527758026419152794192737542247061824824949617005598451346178313046890951374609984602179033396016801741117946309223830652895436143460332394289322708258466980937512403312363322109970311427838851130804886342258409625695756126678062369480948457486556434449968455082106527855355011071611631407184267442665665429917297690315338282027981380268970354809289892323315584592532387814963078530597638994240659568088123567736123251770796139078208732509338022303328500874751761735951087750920781386155482173267937126155873210897540565022146149967667843811319187380489361586565399739882132027261511099198384344084755586455070373696998619155390037279933131796946625391118700523067974133210899278563527756291172301347894029537446092001501169872393315109562148600715709447256949163269535036120979935219750227645955867987024112205011492548453230680350952296484455867800576694723110672951589410061988813967487991537693920982801508157559804152715316934681908763571284698364211937197 24339742856183466779109774186431834653473478646855869368185890045510736373311187658536919063561775752658423780023902512937598176267122463768935126205642574671862942473880205251706350718725584661235151234501938148296513600261040382683859859927732779104884802491702679866814266007112601653995851975679548970296266483802461340631433341272518439207815748508488374295342868641699138197327984664832679773724313806703020371721227669145828245528555206312415219320046342180628891738927880502901337626768490358032358092141836013110904271761302251588529079372816406539292199490915033427187626640604489742072080889937071099456844838501524029777445023410978258408020282719077314068593515551610307385666736441896049531419553295358699892041961572101868203875956896383325527893595159802093393704490799086843492549735763305914031874682036766494551846331056969500499483082055177851869681975280622471859349063032385879239829079902200502296787939638908241337409153955866948136179842192804480132803398299854319243897758081675703359784131302402857529478201652529231634427100044317082605338940757733351251120214152297087416459784168907043966298601939286661700468897458895614358527294579973026210807410306098138120969532917124840579303249058368975502855855478442096236100256907992207446348969759026148062072734945766989406517799553405406221384804010407290033756202427953387899732482060060192840045464484297161009498462278104937143674579136 194512128312570132177327105911676575049437527725252873627460952372258997261586010353719860392774323609444709998393180100037401773546724103389864116196255548598471693528424446504199241025556739327228559235498742613669501752048934340934768266443514101412920100963347240862197111889936463081564790559371519059488779778056821750019847657103606556928434381666268916134603806806902522652246802830855578126219094399677285769435385675434192114240733710177850703705829914886108253761521066781157683120172223501094970480277522299859704047709348217602739724320377399967294135566687129556715592848030635209253023010189793362170165835633140741232665331788635438293156188149901275270864697502951113218866359302537553666041222270350108127585950939881056000823582425473622707352916653726529359993889692953999929597160032740249005982939947885251987243567120589241921114358934586178877198007817987813965770596100960459372965268741691053211566687497212344963124059427007116596631513262946854382053253574945359435582614451951198448934078345030374727145543750142291371334761503646202348253490259978684746666358192760237624444019181148409642553533551993400807889068947085432127397141127632345415800098770392446607622698098726507620303154334090798145797244896979778634313555899979239905121785033105463173516871991069079335979371810968353655968387105051745348522664283135868945683420409387334710164727706652496407186813141587739339012248469 1554453293509433610662472613001496910734556071170637486058651893665088337762802306305072542987121953847416874191635817441228284258973881983885027699102058755356782142335883398530256009327006839537877758143890127625842996988587814524256923595653901941992755582133892727013287911634048454207874383080797404945041368765711258899506136401770609281288012307381756653226922474702844971076499516491275011177345112835308454475971732727742196810395096299489595562738329910281168277585281036800305412854068919461604138703082486809163131596137447585959358073079386500453299492484558906919988166987179783505461325015811580740465855426016149864389335802905970478510101383671553856809706547731454140730169812048225841450351929789377255458116662470250323152534866071959557276998946061370938406096479867006975376014545675192822671377919008895383295232978409580659210625885582216956970065552643404197802705112082031383332418347253808314335886357102592741402388383568651365716894039690585068213525670147358694133278681830418435831568707748825084923058976803706457556873545833107707789867191273072990110484416884327853137572460708505675288083337935974075670124183122914188113757215320010889827628795682567082291483354864075786783620006867423777609056540355515931320107333801406571820043324936002090569454532037425471798925546311570721287344500308147144000475151951206705559493537801173361521823188010579942416327408922852430890729319532 12422498698851138595848993638168463833864557737813507712466152080760486526923789047938054312509856136169791367763108112471092621984664768579187032875991368278365868574709257895668400290203898165358653399951771297188935408545500039031639443961949277779537885156989706196082511055515845930456122926490582040700402963274808112695094327432021896723172084203603447745688443843164795595640617996180373342566109948558919977408022639870283267206164201286637134418716139226386104729104341324470428514149057807285966049549671934813196814280551911578252338584226859206486743957608799506815308558810410750108804463291235173663314501058925488628630024390081305309440870115965237493997491433837060412344885942306633888671786237292687513209854819479503378946525455210504181803520023412479437517485121311852675372732575915726077537499615092521828070796197887155906923319493962303905198552969540884416986534401474596336914538302086079248069589312959042451803585777448210322137413781005656947506671505500883288567256373575708810603732666560363107838622264280706434896471954423510008420342974239134599971577091695797038615823910337097394679450035578388453900000248213487432365250238432779499688261364756140520613532273497054568402479818223124612680390870144265769400328740023547465078919774915897917949196761536559671055045510015142524657829008103426315791082340760512034973866383625233473559308784931712478809921389542409935026680943950 99275145702052956327887890622092207075177889917059122624033691570395020545053340359897748740046308610077810530740762631815937661256040920580172949310671945489770357618746423483084007401341709604904802906844241046343381473840383608488627069409784857045446575762073044274310669218890924372518510804365991977466769315518423662020804297382670655062548744460659240402022009452889412421007511059998539412133670640273474458137718550567339401021808304961766137847586641981884013190874486084729423871318179858833908052033182323052065634917355402693617943646079765087768495309778013828981937084974543213089289120510482329212870251092768329482712543997079426214562251457251808783486633887633790088636333243224207362000059771285613454032990734162187842294464382485239782270401576311550902849288386355580700370715099856151378380032735439532853045867992404453501257732239173568531486110170852114431762197667096111535989794991978215588630479489928019749725353900124262741759249852101049887149408398477180855675854390270275200760653091221414589098445505143201381405236707242047741831303824607295947030183320770260925713716526279231757875384551601344038000242148520151781090365954883088200036933909986514290892806212823731456252974734074042506471057389916062649234271630648043367343305278829879897402824746668812403072031122635302011796971747919301377039561804435797777288522636436974586984341627928761202326501589532467017113727651460 793363829655638086262642851106620581326869012770051119673303908055551858938452048196651493124357016698324088993622157109001301608389201586968968923625594153870545665425911959180805184845251261119107215846018634844173403762135181241077857310672266477544487634313548564327160888657180779168991884762251953310242702316999937654372603349786218330972402890557873899515579685407197678359892386535133677799757070805782723673184104437235482449588650799339205193723800749297336698905255540222515619065857061394506206480603299179345385303285213448842772295914291479327317461125319950552253807871136346967851560960585955888575203559332869900049299948704014352198588180902029574587600372276780630030467253791518893898435354101590976241427626271530922673631757874446484951706172403911586806969651877238740999441178586721096297559854961094568709556585053630986035753922589522433114118573841305951498475788019168786180671589102812351516261861344176143768200247720783010431734393010721340707682704001081941097540597984529329924536693661488977180847585666861445039630507924212903417950758161892527431716738396784596635006725890396552709585372515531170843403134009223878047978675405684617840768675427642327359934858867261230075344716546893418719408518572490673926149022170702973464728906657522412418101852249021955438840489387400426025754557893994219765407230667988343360025667295472652424582517305206904362384972106595382815647609481626 6340223244502279263526249021412026329441097862297345906725042286027615555454705981855172067869236089671642219904749339834541671956369693305372739700444474968482484887964126570364132639390247018042152859951904382164839500143423071308516408135940286490130190803529951515445543811275158570905202097846977510451042850510720702336023570510198575662667370759370937820489125434219830058120511101791668007144273989261418106286170140222058185379903950849417758599272050366593371163447379650119606145232051768601321733968262660644932931667595310827216811358689116890946012415379242845293429904404106582489178698547661832618575042672735852206176723370671323626413578022491791468350784085526831135417200888867525231644214103014429949832735239883962954612550344617853243769936409178435047463795706389056654878213570275022069296290946612722263212236852589120770763690125408179027939649326204209751348343878052444915311656239569110748966297662318888470415898513248433344501988741113218966410521064061802859148721906594766333087979673934107572913002525969830948477525564568978815071706733073651811167965132484310282019200791576610762674533851135931677981472855533317094357455004426332344293933299866326099132714352137831201109684308734654105431028546059106325646505698644451533348175647212006853461967569346479951967422614341616064069103255401733813474741505804095299597542856767676679718066355845593625337288382570254067195997793144562 50668376964237507323668217445010773720171692198128583499620305894673855045722482625318719450500391514240086277082177706695272642828922678178189452455542371332933855651282449326454142903960036422525650955669908087172956993076607221036701031321986298485783171394778678454171304278255855161394622261465576712880000444908320492615589049192316746479459264192169918061122574391149999951132670510725356555857648306458355125655308575378380295779176738803744983319546647778130856866979539719701889452421181558783061502305691456662013816352664016476047525336263484962821972048496427042618345392269827897932151789661880847848283389972021742954745104186241466435331849115365852040374284408650749784254113654024712330260820146699926334947390210160117740183372041689819805861608832548644574724986483134248183041796339082167132860390077950011773441442339517304984468661097137607862529154253583708614906528518053686592038030928048449389485106782088423519086630324039126717570736275828283517873396272532846750695372464632660716990538776218205055300747972730931511252738896211792488670509023630278237834834756398115811891127792440667179646412212189601802548634484494154868388712203196452653240061646419706622351218535375327488611962286329286337665535808166805144892480475463519906073126912163409485971896609223173304001623988201793796805474197374576561538721832222317207172837000688642071314564326109375413698492637511908473301040393101539 404920463310800392727415499346914305069528221875492338869432216514118608256240470616603576093820972107217363624888225848922186214409485854023054541361792991858489880582453700131972139550523768506287404375423032535310135069570532955915371226741341129338505564789035826259211948497591958739432228644839983998853604229152185885497102711011058775555682707639162033788000792432342533103299284012283912698908711647973090219642027167820082471930142231552453690825119096336010004872830709367450485897943039110919750766490735569109713123938478830448977690314044161557113505919680261417012066087947015677019632552081218311327032073278625996723310348334494733311344835056969966184042413579087945661734855908453564119232547727332498830476523371389784594157249521386228785267845839564627074104581104206583732264349976930793894088915766817133163867973663104139254503198638334345579342458977633059099929166313648951535752766388581386785640425144057442258766585912864682361154496373722065923771224327466799771224890591130072444078262317401226176099382992757473168015145460590853915291934893056465185505902765937313912757866675158007127050093982016540544304175701588453838362616897898720107164976188552670106743569877979886934814186813990569269014109068269517625484795587125500125015015112946571094639957418571111549909393910016398136367600587758047540514215975700245293826321433076853556927561520034419779248482599090791864036266717799944 3235957030188942817571641703514835290734451082755639657134516337048543907671610639792155993131257866231411341962424025096970824916351205694658329338834812156280199425721584963280977452970299719467637804639138523711080485527110323480964801903117063126183918047204540115562949270039442147605756219000120515315987303361795079962090650925646647329245581865941285675398919424372666804832752119302800337785839436596113505843074012281467741411981581152254936594302114017866817082661750380829357904715345196071122525945711675608323577605369022502229901811775733142211464305650335527819789340700064582636836168996580600404992654112266503874083725209008077206359795703507758509600959837254148260184850736899809171777192603430102215650560276835381861183892680135890994823172431281513008877466106846216780543580315189292173078916382358403978583538680076916157362352656902293482870521707485796087882045896941081153098018001645424286037278700565625289818376807454289353197063379442055705125213039289070175939259220858373785103937065762283315339555570824085544755157761649494609713502092934748619878196647856079352196931886397884849796156586253153215960415950838501555075231930840141615761940469217644429396123592748364754686936183442053025474116641137636164548042681037995192786818485409391206622106402656534408712252901537552033269227600797446668735005960020573235204758009186457455423754480886194205400322186368721467467562268801622270 25860448668289642703243759221244234228134551208055240729349650685708811259244696978188805987140156398029234419645793866888016444708475492511005852671817849532076141572438711263410881862730348249705581026356035319847533133049482311116937530861753440463737091860079871371837518591773802153416796757856709025210481987246211735012888510316265391871384499764726204742730034723096730139797352252460847111330048866950888405726203259526214366837151449836859535938989322199451319915295082623877940408360271868073707553883751554972258659641008133538923480634160629500887399534206018099003124415142540410128198868752955399356042916478743772723464947822663008233141262571348847525076718051103597026124099432608433819749991299470135268298157926610093241053474870126257150230073149308191400048812209828953988255359619045615549106606610982824520372244002759157677144100753137947617286557049307072319116132417789901764427030739806262153289511969424148245572232094420736160088110425241501520758765899283726890032912135704913432812687062178154777669322083489692944430381416704587867118329019725947716450321435064226497360036203329587544914750559718632179209360300801030244226625393811088021846300324662672545493775262954548880795966649568031311492912515057487607283495471863417382859361934041524549997060455990557727762748353448845575904831027035265754483723924378215762389691668478561627865511648328278377934318945699847159584987324011669340 206666294610217885259797816139466746610450111206936114660725275998481117544192590758136690941427564303882422395295167569196892266179982663412953710432253377016627891974695021347784293284266054001912582009913504844349182675187995370284761481685295047057119816574479396371038089670437613224915536713124240621087008999718406232886738285005065790620940669868797147194441029264235958997648376260355145919871175856966200617762730425565921703661457901100304760344282767758007928607407310656124781130032808672869767393787413669847507250144455174660895509831661735982719338615511586902720045049696718905148113194552755874159437046713361952413454137760096907096485637388805384575749800341357296259413783094124211443153251971100889227335504692919305451437460219804247084232829946897580837399871804268889940391530387703116786507157811158202518636009192503295892594048047696002706065997390866326363340409373049244407395759700716002901360306392877873356372007671835904725931052545405147831900401044981014224135751389241745752147695753481229336878099257378534150547999763046089952712962734723028750959750985794090602815274293781944037979320807967787598997643525044427904084013887281838942746856066345021479118611273734623116949246617728984160760637479878435395363022124068110255368575916995956370744384742344139689939950959406250351721617869249399300355081456877845123543033443841245584318434164949614564446179954261129675523301948814193466 1651594919029602466105933716860628396034495481427383817081627290254293480640438410013300004378805858055801794017019634394251501876545739823104071566399196159752683245772268074146533761408988438546901168662641490073333668542789204082135780384137636124617133627594100575702966128425095488186032537074053625624175156788695356207588870759706847490833647722199625814710326805838801720079694100600153164385736027505580092210098409945855922884026035048265380897965179005851498149029976640443450426811287784417591663017585003509537383294059391627185808557171572075168266770539369642384394244333357090669704355658865440607409242268560749560350182349687318551192152262299015724954264480109502518983957986773677092389248471711884659704545876513390825328200304667846204685516455837179817783937665771357560646509847697080612843810247538572942316306115384114497434701176324812825616020049464235488352862461193289127348903888758969552485160851724448618983607850145260132791390841013414880908382984118901430307365820331535864724389512636584325062648308332510779302011220929874880768025719224460752816040929480329350224103284546324632679221460435333274609502105921039606291100935973321678914901514879511005104090613457954554411747761937665043820898564900762525119809899324879027832063176985617206195355043885480462969639695402607726139444567039236773149463072005323692986139631006646067905602083563830923174332011764074121534157502705024108862 13198899155785811985985899944913006658212769059849237169481269091109929137935445849964461263870744711342609182425739540849252671575368096437901303168878253233854518442839732593205330736925505165108482099681621195648072974079580191183982777962904424728144328307313892486339976728718209851837353806230554403144343710543211987308021899820953815159584449732054238884633768159975715212410069135783989209515673250461729947286066388270819461658817635170976521562338843394617402529005411921365115515584751619471320735247684407455511483246014922251227539843383439273919426891813742317017206460186139891850315072454322551427973503146127169914338911730773059732493096760878855358870735010421551451891872157128857824106711266652412229332444672287970516404590926137729822882417651937071131316594886250674755856715351571808556993139545973482929317022852996861238972224107742629147121323641188158721428428222084974302132918126398913032434782148993937116451011241989998898569724262518029772849843356859445142892328428996554454213234984153389731458177197494589462866753522456593980734414819827109198734798520638968036391073946349531049800104504820361015096460599976720461702012165104714105069506870062820669903251937481453670659407848168717653144610155981793441829647292332587572635676475501039316378470006823133379109409745807423876258385304390252427320605156819874465977662704114298606641059730522250191527265386124833427991568909065617097467 105480497695457335665613471342914773601551219549985481302316675500764299469209869488343684118876670179187129771521789511603940555465621691409583322547933399712035278552747595755271423937349691141180923045613122318545296226893757631060219836859935201822103784806683872340941147611679004660259026922436661630867266796325888778842585840519735647322703584203884743599104208029999968686461123926911002730157769245850788042432443764301658522958448445021401221872965549316692948755069304649871653934607387934482043810615679012704099332315432894247674593864405807269075325689690819133469441156241548673850192441334910347339153215223241297886064581052844412063839180755478063248796707180271796062301956656618011066761446123700066788775576188810562004201113500265610701251384853793972346097443291254415724080711895346539613641462036890819844307596363732821532068726134853949336006046774907732560515314081411032358915611309822126391210037471244933597933140130481250360061224006065207431980665292742877476559905373161470401867174898439280115357497153982554446023618619581046217253160174384588342320631469017286667438643744145349133056755887901294407725742678525130782225833021686698293615689335671670104245026755092586795965475198852070338593456615254140406957490056251199592425549384451710684819138669266159724848366945912707517428856936119057483386545872469655553382617414139652045259141028306761308444737644950443150195596298630118552052 842959901892154986666496756683717997801164542181171862214230948208852085773496663213265944747469736153284707517496768748201315823916287622863708731069202172750237437593531532043275159223404296024333466340964509346704456472166749582310816569816677599105092737959128202261492590828736473185051205486763558443309811966361557374779187204761055082828055411289403856593352303280950525115817926283056016419558955987437984937153319370874416917998932998224117091127108844066834646590985025465462154160429385154176157846470015549284633708443930170442800146361885746531012537684960434870012891513851557684889668287385145397930806629546335214802653720587712695441283766606010140791256153897141905586739856565439834410578613008863103828696250030215093003294147475770339772505608291482271192387226332778332588481399984852691737833990644756382368270006093630687887643761686060628419026975987179189723816536782763079790870563278599898606925457658847868162746205105341886527002798840611126514753761062726925576319071755629621884244425606841294264624117361770228231777874850458134651388708057358963983221172872645876423889000715101151529092828764313951107937654718040991786978928586462340923186774263855427379415743448734121816828278311486090313172827696666506802030299573175543404307625893287290280915271789857260962637820273461254483430075567018305537730632478253178703864977705067810902828482978498677445728778356369718236215403228890996823651 6736618428277935439013695464983572079342039110905697573460230981560072144045246115718489746943381229082234402016898889832120940282621813822321409625320350691924596765500151980169953426488076351998816524080947883926166338183610050428289702574676024971829739892893354285821453221496262548615521108023223531372221409632370683134989369724898069487888982199856414274300056842543589927835964476723621711920224688893159422878360366956633195997275071851342609067544704381505030409851613812658158669804741319598725361788973605294013782536280780288873164341018041877178910977166707691207640034965573840050853466397415723784331206980295496846627578608580339588617626135506588268652016704435956136949114365676843581676722401738864871963946111846900856141389914992429575589406354661431819234866777567075092216126241776355515022015132629172563689052957550442891142575306784271647712961972410682800655706138908009793744878933678325095183478543714747687218913659080710204445510129555196760651063787163589585532285810678836178975840834601185914423736526330049267349429933597434706790059026734661890912266669135051458179838389028135528977935013889638420707320550734709686321001758917618899335410331874122055668253300092409539892640640983801631888435590407029446445584519532221737133739983716385822763419125355775389948977815369166339361296249933875033210348446990241376484908118635832599280754964937735591680905319666826576778374404295562638434112 53836555717146076651331229526674958220400631119125347596141945088489484178587184948000543447075367443308917914195953443852087667992078725345306392310431046023688922482252672074691428671663424738470288060283242350681704153650986436529147388448829708924993181156907298948093182443467497700392843666157659209269266040529458605664775652625641915535020588767492740332222291079531377126281029601154587578475989678698598922812462889142058612859016342287650940680082390839349928498350898110333009651901584781157834943705001627165672814514608627690981397764367963441965946274024667835025976303195200482281763005567860270138551492505667386921551418799644755371138227831363804825314798002274719323485613043007327470804144578268694350771624016953008516792718752563264217623602400100558267595461181621993297137206959278392111531098278672552448548974970093106865234379102421575890253080290529253560747159256332859238842163512099471181955324176935541949762947124826925664956888291700935397936686292918905933669532621655900727572588104982291434092963367266499647094394578456003363674604637588609951865752975847410158152270179619675310163058629204087027742921166534610782667790581403629767238862516986048037956214335491787636348813502345055525097049459961999719203056847169176668108567809695839527145321349719443285374609740081350712222819917642380427687021389235035859371104744635911584142451140489070428217781962091101786666370746836196661273657 430242067009602908787032246510396185691744486746308399137128552760635994675205698895730043167433993542560562027382914279484901215029601514750138064180194502527510661659147107989810496808178239635351317378559192586211274156608943264998098083807156166731435008994530903507533245882826019612563688951482341265694948145077341908019430848896159873820937472897413502151095752214837675313198312655179389960961194756693147784155805270803978301889384094407848454822791166038945254787768509049120982391178975293157191031230312108862160923357651729155801103876877933545453254425802658634616748671784046820679924167711588744088641298906728524849805077949047326601424091601592762056324028817481153279159257141873973211618427277516299489507901770796797939341204177807498913239565100775313484656624957526100316378492916482392603462915292151336458612076411668678128782014204897345686005512118958888354737649961846684453552805757188868194722263148382476472851366155971758332478853033779955887148140059907631194077219023508956459713779586166249947800094990827718204992074159358438026267793869886812768577785815645035638803244911770400516394755711381619034669765218147069499373680297290524491167813437849927071905466478921289323832981956305917758139991815298909815861822949370133066222063893683794910282553357942622925649847975673374865402896763350167842194744788151226894133698549188568609870043508179536196252079233408313476124723752365305407952728 3438339531926923115474442963325269490484647904416474039836093745292538523773155857648587435306254868286718582345948594194626778959495696603800741829205156566230405390835390271050043849923370997432857109489356444811718136191340932011441159532542778405788738632468978583652634092140570500223212276812257696233386658826784236228135516992230824180915821516331602675580689033211377139507694673990772757435585046802277736206646648568578683307925506162509171017790657369275998985870324292388886452841830959398942503851483903763643361631385209875015535003480893049013670904032461134446755285543237702595388836722148755322503428904442139976427868305648943605390839105311386354336101586202977426878309048326341319865375132112427534556949734943237652580346835276564030275266955050956437875076709253994962972759736446369914523458046809973950333992523686636884108757895314105682255103655853725302933246483955423153656048367850885457267244703208458462652825814429003567904310925360255871374627614612534412498985314710796670599892585354547312435549406964651423607124835129668723870875179585900185531191034561098389445127996286314135460645805677867082111313329748444100262834426490406927868048923431578406655557170193420226578920603193748302397203569805702024984183077560823613162506188852607880175680379763758991117239814646717868880657654429826212663457807031220601196972237951132790970440092896358045313750860421005966541052266650635438811662687 27477988316787833325946369084745585332531498583754551947575236480292262249943885151433663612334328564328520553696334769423932331732111700425473125225299788551511645714640692185835037729425161005282714162888905708663067668069314052810894216222227004998384050817294114615186590469428787244311523022128975236773906260765435110562938426560442903683881652951051519945639527817258548217084648400444545717286071098728718789124439425442530002269694857724510144885888681718878183111068463813584226016168444359663396377804105177658050477778913912902591122003965170032915050725752550711053795629326168801018060416339791476770244631639697368936853901087550545023996237975540800745269096883414130127936543297049099101228418976462071610639100162254503347885489663638616567174855612148334464545754453194535405635449804252437226238212808518923279902607707921449403484870081205846206085993906597254776905245757985296446021446147753892653165938185259348368761948735308102674618214027220156646221469894121429500897985392543793752820764412529650852431270078064817541983599588706428227862950596769435921595083648353283822547077129341625806482638103589297686147457896788737746628651755448127140865915747334396982117575326841266261728716721316954311391091253613710095283384751368485848396004989088210045718191539889090974066539216445356416861403112876915170438004837779418882761279087131411241153578456831553728298998102916462669641532593088409928113159432 219594466898099938007695321247220058029677102322372533083525580938242366920879291304044878957917805295994502881059458481059423111421192974485353291598486169083174349409970914545673658298439869680935692636977460751932941926997726202668141521472181356607100096109398484473084658495474864813296184124921369442672871874844916298651104067796922719151906426089664888669307314167515088803226815163525455445668636203161205762130477000626864772726274678496061864183292791144970808371864700805799432122214528024958988203516952134164038839951420605506462674041020216342774019270689612988489767871922048300317558381391214980614129897637058274225413634321625415037085893397721379656342944578778475827283533359424165664026834687354386796989999098304450568423375173677545771182659451316061588739441528177307489008063269645564957535569244088831634553017946978959913205513022917482939474430680719018750878677962713466265966401400999797811115207138468619820993903028987613764250862329489917249319827709921941061059431606591761817398529126751686573500418995775926416106303405002882135733981279771344332028678547493649705879746842406574119720611651088391677816145217795480096696954216596381785557358310188443455893975308202529157858916111848655924553658823871235616781058496657993776858298816842939149821592087317913737257179584560455691137805169912210094752635029498042117000905580440859961378264446004693966340424186334387365305746552251427943054603727 1754923282028332056915945140419219185870270440625625509699625807531492426444211354882451324720215352124661542672525106506947469547218243441162698266295892067546594275209854662309236650555779090502478088303548286711784982336137340965865169717155298302945356275995157139415739087565264480676067266559058962513560753316435101666286758716118527292294825961276553187022543159736717466640937026989912254988751881441642490787379659746041051449230628305499544982661603873715228997901335533481659292031212614299061433797969287161665252756352919485190388823814432583120899405902149015176812169836763580732080940621769382493927357332507387658977906288872798168118827133357628712965656518306925345644398557688852640393472172266666831375966336151428171883575921696754300235479141769703227206777984637356350232915004774680429399860835915906411089889428913879605835922168595599088872970384344059774093030036558730545302638746141470673739379598982807114753922159258625430230596010820468113207329084943088022208934417076804210036753382654007020453129747116453289281365530435298839352713762831326103582649391718743277997906032223731794178346565865489453552688047566763720270837060551582054492308883223439322440626369080030577149031136711301628479016824559935705146804018222545235196577790711470928017552815302815733969884085709266095170306267888679708329530142482402248513430657799557792591458970079373179888293006223157377816219577914750578641208167480 14024751086209725315454079905162274561607331623404957992527104431887731358514029537623332790413965494817576170198437266802317614858870240736245379696783582193111622921608316168536410456711329890977136840769530971399023539815501345806332575911143122842737917413697170757842484381149459920721016091183890322813728625600410273466932330223476197793682482117037841144745677954822020497100993695212987148634071462452502194062112076342270953041024313035039767658170194781249928443348957399321042008776779939294149466280921667684057151308124057788854113774082365147492220712974589808781970801003945085123932001213704413713764983747319242959734039363577396554837032764979830580505695729197135667812317810222239156154201580825377378479076061562810023689607433099762819524277644102649603934868968477163507281868646691393623341414599657558265502670822197696318035456124526565012576504821600206327370115253856626567449952650629930905824774014641293677229388455393263969059498196871005860019885877908272411990139074659095899625864336877515968778614838083714923389556319125298483173303433487175036898951241216191968799704271970151335329258442104383341834890725919374866766372567236664682998781806512428371352940497564939044425351003145326697911215413762823385076186906068835406014755372210823990170871348667872221646642401080848726618523149579065445787315230408628366925604389576640899621975268315851602717829936373922353289369375081703967034775934027 112081122522890100665679797028062852039942351324511849456386097014311889055057289170847610198665240374972582813956440897883107752976457467503839068296873131647670984826895100220240592074027230297787516398752875107366281516670824486619658179779639488038935178542484680587150652865084570419640207907094356112750541534554099496695113126248883101930537348840051502138445074905830075230977127203758599900915490448294819732437079876469400334524988198275946752688584842398661060919088477225191175767624607092625959472022397930216805702964088739647483853004983952578975778950698372508600974643024031391936113425420302917870026415843569629097946784987943641320288605450387599756829270387890673965205582367322022270463750896947411139053223011377241836162184019347355774460862827722318038942793882286056029333406061237204741406954912167893245838362805103942031314927035092065887153115502506612643656542618945832505425608346680631599445208563620295049330177621981612554309201063943783528583881423928413214931585625591193756830461499092223523700357886389365255896000633443003990713756691475964316916754471783715112529156509942533085067994768669116100133908570577226638198156534727402330374856993368477709542400681512702453872098522155596265223932852732154651621567038313563886622023828364547973654091041534152696368466675427426099059229252066664550341654495442065400597560196485995591787053114855785555427698656081301908088399632063629381946056037282 895715448817819757713938590058195821896646188169841534723496249238782712188288387942927983208823005555441783329424035361265335369614395874972158985032413688219521486577032897875931808801577030083412448775544779896256294708604059699477865292232482164939172072573627204546893644350302790028830946513800037501783538892673022093670905411410460057101969154970943687091026739220812260451423725067721836575905673207770423463632906277372295094421705386500697496649021541355932500640797171831195804918212081520637910218578847415657457246359052224657138152021127964728869364796286210068301456138836656291890738162119072114904812751226790286825590352298248671352043560293392075007834252738594476877281043846593341434884002781615420751683407235331579911440804497150304387748834453776595224285429332553724246346976528144838467902742580899762588266113734482753217956795183856700056163416345488652550801514462451473538809207475314555704199621822631891699665513324263724865511075179200837489208050983382871173030981797277946922989616160117807130465284513663988724732516833487966640773357615363118514719953784721730176873411392383859249520900721554854988164286027901279433293219149149300481590288304817945474500615970470541814173418272818733039010216275667873760046484111035066190638648920181997960918402885371195335312608843322734581459305792873428065208096203975926802021390911990695343812166708510553821120191420196659261433202689451530976385846058110 7158267774833321455857440549261388571487930247713549761996502055344307765708150945421116382355910860076585200376632476567984090973242818326169646599897376952736513097707449590103116682634091178821074133633308018187675040204953359435338215908947525295281068041633315999375864457378805642974013428145421091477623341613208912093178636010661723361910358629853080919638016406058052702553734438937895988974404826921620258762410400549420339001671257264452031203473252179191540916998827566583241048968450322924956829840943431726050215711108007937675039883554025328661484597154417007635228451236515329271056647228815640915259150342756290663204220174341824000702666061293786269825640903039094380878748586624834368239211520869708991524683795841983305122206417766491671071113966244199553729572510852018733815259896641506031725674423496648777385784675777828594662914433665453876761195733682308069687163281809485870839806597525479344398944924449366734618079146808268137263672514402974531967082124397803029882580297049707249159815569199875197917272203601841495833813600022968663902648839445121949479493304301434913466502274153209947316764774490605574387148084839236936496337258310395953434913966538586378078465803615677079775309756249977297668403486835098334267482244605753010529962079306348240681631460199447436578876253505677426208841546495084385006570963428366420349842865196799020326054336990840748113825570502384975332267375668294558120924694845088 57206594927052378671541331093241917000353814383689868752840905500037315537343206185251626540232670624321223635438121316373211131117646235772931037974723133116960683455889937643336878875617240630975146078100929530072352550032023917043414459294646965038834136883955061730386099451715766603094878536831522441278096985540795574781800095577001226652846339365754086825452192247534820786134008076820721582665505514543487117442339666577108386301353766303682121299728545014465577086496219371084465382063383438122954976538930134516865769174569350195844419720350248436340314942291254168217770745155222305404852629792601396091775494008438742651319049563876706805852157007597096976406474336016032193588688271294437442051907913636464823568301588182600133834526122566337920758477259732133947308251080660504082910240191892275366144756193046170294885274750650734552452510222160269432135572360119571968139707296805603178212192828201191393214285432035209020073192262416344481894695835857418029715192450439465919755944708213851338263767907052146692929229840043943736483565504777806611999339795669281375057088601874355587559514305766258369685766974970139716169852239562025126585600879964516041269902130864953315730900070258823321025006879904765534955306761977566168765985374278565628150617899525895064717170744310595326638659334265034488913554766969353080241243155344052673160169172114363877132466025216607104728460485534228474846661771237045763901675356707508 457177173460118787326714307999648918089844378665581870590287912183364937539855202450730925026383783747509256721581258288164057916801672098721809292674751351933211088275236143921885320399015003603679907967265229462487461416811363077090103580061548877857725035899291951715582908623358846962627509421921930214146758338675142621175744917165581026167039426737610353243991726757882692504926192481115498394221749608313946743560725042132695147949574851881394806538407153056921451677602103019052670471019373747437671172164698413519241246535835719239046307524110179609639134807590893939808415371532224104182292684047600308651569299506653047757461320051691222218780743424912523486736137191416319982055767973194505189449999885942307068253058138925790781057234445202081263594828956239556404474380018279529322076320582453053934581614542198220834038946374230512822432945896510371839542259696761014812086330335042574489811877921983676478808577134097935037521298254267364148529319446352392251496317291114269495429273131260130339590480249171628520161430542088125185295740315426646019664385139798851311292516062234321611476523625698031370417623695901800466563459834013465761990781196365510789182535379762496537567032402486683863034381571953623264332612211768645889880469993008974568416142525404594661484763559005130236554941160159326550284465433433025912274649051334471368550350815512329003955637407744946873424620242370929101195835223782388340525918469125206 3653619023278799364874131191244026603197707026135300318103544574071483196686948658044546998003941240389662205441762857578831604507041908158786115945367707459386457880022959310464670450092425210641912258189314042207951892433158247982773058887889461979020699252885331234383585565020985554884658618846414103763217190275131550186289028416793297152316015912132638924179191289283362376849030451548035878019358530212093439396510695179648746229936865792993956802334028186109914202604667228198024061796898325017979563936923560254211600094325673273247427284269181352206073563073114541678541580383382597807938913529291716642353545417053158237785323273708820411360337540646395549651100594006248148314448718809277090579458875865164933213668268491406584911952977929432735291813683807137681004754090960868058155508274940122759368836143685096274407321324840631941924814417821187216185247336101085953672264761349111693500580564763135142851564779291364334418410881253252768265960505956929941105637755459980986482609954357258614341926839120979463284697610689785887473044043291857836371603199240820869101545084956090549944348182511906498216865547545096918040305095154912537499055048550728041907490891967641963136784375386601800377577014130468538650469780046272771592011269552061210552147860025875549609444069141125287401164686076618076847200088400006194745004388198568766247441992752744696310307992278476588567935665820484850210924962360516893548479887876412740 29198615741458830382855920987771639147311137707479600371678994508590193418110612697660897987552039743546665515903568164900182586338124838798200875722757611191099770200250836035289886463699288019409315885399132670548303511161131778509910136565899696691005700491400928007828219031624971488871679951220150694165192568664199041255203429629087057201880630582462509122520469933210564568208177594104602295412400299875486130533471527797752320185651270034272385929012743261040809478724847224855996726102621192614481580715096531271508339509094281565285465023464353571556086473444404349906434024873562165033010313916643665112591021107415830683859820984642633181685135024958692392365042049171833002319693550597719132448083732444149715464527455333033158115829348885207248286448120995647113858525215198142992339662539316737604851832734676123955314114744767891958711550983927681149732447785942001899347465966332861050056514994622134000739731555097843441256889345727173836566430735372643641749863254592141261261473191495590896038616887510663472017854493653964334665485086886031307454248449583103687859308756895525560712610215632180952806551290550108333528106581957129421592149346217032682380833498744231270731535981494404989101764982368035450323705403002516632982853528004190213139733405616396182484706358342073807075742039680332341036997744005533564136688418220221696099930921942982537331686189930764948214206509266909086817022091801458590089510744786450496 233346637215425866605896307077901414091426134867057718746046348855091238538637152395899389793211634007266523959341847571664880058412748398805557374959242901771624920096898889818728768356622463941018231281161146870045802706520232439329613340591161317006186725419267706026607052816868848270335656373796521814045177990028903659218963386846621627917107077013534020843224831451666633699284377043173063955001549525377144732552842976069903216094591279854289301990811882402900306011188855902290432646381025022221411444430577788020566770181177662614507165714453578849592928791559295745805974821878204814025219607433554275677966693953008496934503427825425012742780383304787230917162501140095591344245282039816541603486646484391975222998991319441590874205458900247818506991478931472253422358221048378160186814126278574621429964805912923407954966551106187885982095448463349468942206263185864916032864274133408720477526757874818170252161524613260425995047711207033696627675581787218087920092012230251466734930735658020727449520581637550738696588174234163749987785472551315241250203439285567564105832488992735032218432053377364938374875672634414075536505238203823661393997067836357089017612449263790629249289292739563210457057559861767528645142925504171881828184843084065534510657644481074523544629521595871434872860698268560586840053359754374277695197649602851408645471193421350194610573565590073805593526466895646778041211109828009144750070861377149523202 1864838003377179794195393495545620623218348456117881586807316127037638906970956854223706272983148481503742148945683775695307452489196078780412455515076551987200139972866769977933684255253219170474997228684920873507719583012088913437339207528825145284640189366452483283190102047986343378992779287398093586513714857653377945747274081408559199130452996438839751833173462691973475453116425168047163355980869757341594947150826774570984858243382577497883034428248433916241607509402649626276224540304216898610713557605139023658786482202404267762598332574983777375198019584481618626798780886105720890128988420386047195733193549259340679893458336829128974064380259909281937473858988855085753974048720866587259141419822072639814472103050710724833740731330230713343792056669211109332752497172273701876716577794303970755177224039079082321552198687973160380702674404790893743253400129940032650472405705303446356135108284498553760332253819015106147806179214752763587689095114736791760609836566189125306149743241205875989741720075686361026610350901289006548671318126240269011397319362654835474987000934355512363287030851534869560490661154399006301802912144097675012396970663375170302438760978635660327697713386003795906878276975059177388517139805726145159329833760087532704108236151955942607940774870232233337852086316308976505771144093777125005891068060637774115194147728547967276057501769684575775185846969920637212623096690589984806993206476176861668024040 14903248936674606619047143928127400681746484154002318673158079791730199454502440626711859392758140215854188604814946327835138229040867881665130520183370052791701799195647920656120395266898467375221542067156615136301895734129041839754907234145012232985081541870556489150212624243346133271511287242167243854504486932319374624488704164525157013231276181773775469642827064546055029537973906912062966459421844475548126422551250651336653383482623015105662522573555786305514296821892080795808247433808815706982292570798504094113792945131217352772068444510817451454250208410623387084779266027531095425621067156829203648961013036926136746269098654332232132799485066167951249156355399638175630429706178196174267279951234641913288903691830852187416948380955766687407456920000436025927264355683236181754738675179095360168436383943219452840362754248168435624865035163685841238979155437316017615204224270988060603746642517707430196583269741455298342519665049444704665812053848397729115541536504903629564195124219590140297695224473534611292142702659699605764792491871732650034361299530836776601705747402596048832825388520761814888549296416800212057732224986881891430125183977615252449246125388524865748628905646621105467300739931721599771159431489424535681600152540743845211757992900736122940783712449016203432595710422205488508421264642464806280920643354563119484485012791026398840066830175712451501816895810570586253634140516083780469910988663941043124014617 119102555618287676756759498654199833861204001110654275994671976399689849566283263877431500391819272348671696046489308986187167275609819422226121724961216098409974456068225071215993094967744735542267149890357347406213787415670619875721997928354598730922354162961766827484562406547580591721965039120009797484717125823248273122605834467363221470210181486724829865514683253846374235453945528067937511878461854929082233598705683121894124783953657903107745400358030599419790961401708068243843792270743573126632412276426874060376582147881012724889470271045613542630485722042488244838657365452480970297752440847179212737085554115935728397861747361560946349334657418251645746161657433449194692248127106568711751072886856223983999154796064838100861732265041420006787374336774218569360494494246544877195707153410917741921365399594043778446172639810855767536932834252129612100698818456017438800481118267500239520615369629894061239676012405418765278976234907658427885503600721185546668193821272880608087040249498435766364471201100398428098574716958711513262808046063244747968116915704437640073339617682239149530669144371679954304517589254241342999766666900090602174971333220205452870708303888198259291584987593417219044621164612106200998930149364899965666848409392935405053740961853382755893268087748124085921284454775723419108634029305256574004796130921157288843986310235853253526306213267176042182523861876698012718960585191956885748636406472945083640922700 951834592995082280811969371657032872098595829419287668457120919233580941248886711706433058720544047141563478210748928469152022145804475341427226404723497261096661284085778598684101754487378963870671742040012513826038634958877581822406740492070746949025431370637257708377053045199937632872079504414027508604214382934930088989719116483529555509914184506642149108064913764502847845966238678492978006918155276840868112785339185018298111030489373905895072669328313673449151482310464484181810245665724895011804915522072212226477290231440423264941742929556604304880795418584963532556976630272030602561213642935594821045632385394585304169007614612348065846287878110638618599519694688273722454649244470517682612273052020545197903138527635823422367299411726252851702546563778226142723857308215926731763531403200749131845216883029788485876841803311221530573184852453585375432787492988013476227386641547801271749564150206865614078468740864776354092206158331449252791048351393570779565638968403031087193201846313956251629318527357426588792182498019618658909601171585589700329040392575131242314504766793594145943899347923374554723864982647067601760753402568222196597864126974931282538503200450071097349760039639398729670812630416053933842736415665586783168491728760922598908801090716033617249072002609154973039601405646714579753190408536552683748479395188226830778554230602070942937042956975197914248888551441769046283461048092515351552427482258401177817969352 7606802978983291434037928299574261877697439729574137264439364259593741735792817637500253522452144769623785929168184764384369640315674084932107433234666307483473278926476908841958711137390456031569689315765546574085381946113439682094160869258211231568621809872930838456085967970289801270766110892401578195491228231209422446464317901075043161059989028360305917190623017807199617746399018057485314874812485735658051233613423489736881986063700430011375603552478982929559763426708557491155664476938360941893155004527527496283976020130347708709183121104570739452207055977011952021945508551785794210047916880346475612127522338290889058933564189270871918027881744246026773822385070859087936345355631527376307242233766367746025351902700379026032981662439305620902528854088800825516991139096501700022618084184583576880373805983610482691927905878325424250104807878463415932520931238177414600251934148244615715756463929788333601596848330442091056863588194940129723596647986796198748518626813524611843069684915315241704675511881275583396007774480459756103930887872625591513952258561377316974836502237983925397866019182668018983423982176410242042216197842816101541830141536176357135612552105055255376461850530230614173510759186104554208211891443832281342269622262886310106432962391990853420658197151154576040535715974716089177345170176467491694075333333740876004247056575251209946935233429251558993416446499114367194303700172395900577992132111770371640443562188 60791537879676955267521077572427825441748528451500818699488357359289207266267712548307313847952593467589431087138900113126607455070638982674445465690750676996678654481446850992706531911601341560388501395324629556561324221512788274186952783785712151879290174982486051666474272117178516572362326518134992582605062080139030496502987901941902943748375647608489041771709822041898188229193966836979239387597630781766007538145637848716829157231080493689347713955126373515433350067997979488157582475732478176836117403516987595769860834755290998623618242625223048566305854590777575423653888132578324886213128841303308078197061410951472990522796242979380989551860799747723195668097990011074959016864848153569087085657905842778333569230494844222046932002690821453551355024320106635878787294450561729193066614140618506071581075834505251771992247080991287918549132943010990931404015093548306728876433262882009548656270281509691701206416234390774758920522188596340475631703956375785744026562704246563719120211427887600720195427943293371413231351292354202693350919536650179934649721337334560636370949379161438685794546421849779808405131121726000080860309524636029357357678346400425899700685519273229048542376035999344637169224789468604672349498286162130898690901343314368745137265654625160918259645611094406760500622969675061967291066566709204804830808137769020499677421485198048276558224152901878409260932663939159876141832944019596494391976992573339523200630714 485830046866995490320789631229813218423682010022135457664108255763208708619407849570842510676351400707557688237314793283647083054655699851956804724446052564210133358948344962603201557538268672610093421743582292402273598399583049226839381153657310787062884505027709043672547611131357035438869370390691519654304587242370025371209830834895037505888810988082800014844269131749449174243917888413948345719407902055370045887778031915911649507764027218134363660372146143452934808841104077306618413708336479732698619100273253515554857524489547419841625097457772760523412848032696379893966887200667747114789096588777104791894122904737899227429748046610559191159716002780427318617380526115533289983189143374021954761578068879331957052115843482672024628790657849278744419979800169943404278479309669191827725518512527507558703960530680589660011457381305677376722860673038104522578158079290142617214104204199669433325747220715798926290943172720237308904162489830035560429817948015448885472273445035373156470325846637085651196805001877194123412542081455271329513659063750388528401287475301155537247702837567191538305121351021327686537143434119691714581578309006782369281695968706557655890509539435155699988330975060416043883105430758242447730389676087673172039726577134617564577607898247791553235095755443192038000722669612960945991953904743563393730545170331035206988593860867671061609627517041327855120088500197113141659115532420406888350249440720467060238493626 3882628962041631544344122592299824931007730778182317966197408789163506894233593493680900004335468945002842231995197389721841473890255659593793364794998812611589164877160341250909445824754031612266601987291867530924662226994854945103490612106457433298935487984959834517816193562028885277218420396177031867236425371118414610521137728786656744181099916790587950439859811005486215877622943635728355415854439188939138406808946026377198774931614833810286824575580459367030027052727366533231847393984292446894325096483909133038992588660528375093010142782244705033941971196116746036919819425962259237007444126023503997407724718056924326362414964870455117389696564052075671321819031365760358838827156053955746663082468357407788256337405969518559976479039309825918872186085312358616048338953627015410938820812289305928258137299839204688883711904640693404898261325161304118186746682435090134668711099032721845056528026300529914599929696993846361319344820837338638074842279311843956529200138521182721964403196826876674291504233834564969796819736928589952504580947510011624388509243503192290036669449875651824594426100471951718247715009514729851577412591996183559054350487478197938777290803060784431273550166927363284212377698208597176040694586561737020154908553655827257327897574954480062431084903414058823482409930004457550363985656761962400340895904023845027542358087698716259908187876708635178969668996420999016434399557916034367543469853178824485033449046273 31028993364417977078980859599369688141246228606773315067670549536696934321083859646924723708446979662471798623324070599594446968764291878391210657998123101519975536682901379529527510475608055589465954348127653974820371146604745054862173270228191993180110264462999540927306506921234962765561031387486764186701249436193699228815821237575618029424854461737535378274049373624796606169106561686537938476612061609121526653148721992275183512954260486372740814509660674548883981115141424058569699635879071034941840924744349921654279850490762260892271661555674272211084428007143628091777797876258564570348777487592011858050526516809121622120678372879193730762956456437401920828684845716987509272190342995970065216688717529960301991983480551963192288736922655184019019413098980725748933083231478813555675009286292642534875297234038808105314119113132205003949531448550977737565007596719175002754175257580350925381066634152815682985591480074344868107383131554164516885430909375178121177509693412932514012624164189704966907321018545516682140920728811729012757191046157078865743181217575493320439691054148430019665021985347011072434466685370901827459351192278006280522799483407767245186912333759531500816554628985613540827027053356013625172584024084706094871191872924631148086284605638022105460499102610480795951196028664435240553758643425529891143879635232031534655512132134557376269777279838252787230736676987281606366601459044030168762990798598775359582323383568 247976063068622459886966739808516444024667715815079489917077551639227574312943002187323811037927402529499608168487557201918417381860667567292895070584002465860077348118949934335682887095143064502431151119483601193049965793983419824728834517666597184346002720266891473611471743714958263760682229468358397457826989898812396121773290329774330859386314974447287418521135936696127865478820769752656170268900318607155010567161370813263423936251370500287825182150778628030550759256864904051500583311767598383135524958681416100734773530409522535089772547503893568042188768943649281244849188678211726928641713095892338407888490902482155560842740384937207890164514828397676362197131958928539477185504944041111246649198829125067012130899374531292290544787042777013267428051333348473415044781402908892700124678807679910408658784916353038531916862674941189182313268419261237054833576763527619722119918437186995929168124623514143341242806193312403430497683052894335288235773318041269155530962308348361515944215337542287698372622195940379131873659764208873773407480447844531358905028210624478780349012763252709197510333096452359491856896076305836549990385038129258074631220528290745465950127065842795954795887396424016650815561445139177357255900434893148477160982043184433409600043815998964047936158555465595415277182312564055734162889081427227586411480538204968664759881726561937355915820203417419896199189610428330693990747090980893901075172389509125318745308377578 1981764808575655362146111367054018158220367934049122619751261448190517612908287901257634626237004218301055706990383144829370372957798538856398320895614703213855282778555968873358445976103291726494957158770177405619057236631187235500540412255802592053926863283135199976001147392609633045386346921150322424057050606816701402141358409385744383739660509962550214675154764966307992702600556353444152783228250688523219751261569882500102548478963336813751036663463870241688666357697353318581335515336858114580923963207571465369832803408546940429085108120589439851015589875395406567942331630466187626317881805233553637781762650415648656205709066467507178268731309962692381355901236066219354906200062815786023479370132955170827220722447687005914251361046223182313146084243718516817069208743253270926247463643648144889917103626224814415069966119013568947969113319571285846333831858378431940587548992837533564286045104101345949995851390188112648305963153226587002226624902319206393825714453448131759212499598865647009479565790755893256874954142576286504742687721270878363083451705516408723069879383491344013704428723305454997095146280300325245153955509183514287583479526901425526247388832585595583476069269478815957139345659777732415217281780717628350018075724828217176002245713164682400612479640336976558223739001645433890022076688094142339174968720712508209144956774212297437296948831549991562675709929742172380084529278624116778762361032479406749409955864904692 15837795838052355267412341182016848462900652330857162869777675572705482282187389026778798684189547643088734265974126046862869343597671117119634884817604730897706221123129336785356302332212479943261665424222287210271769504997454359199919143113252539034714491945632272444857676402262737397914868797216075211890166405756507187643973514190951940360771372355909392778566636066922569323158329356247468743721181842242282506017664935139385036547788774303226037511331391738967383322866675244614176469851429500358295551000159092740016669627250332045958135932697652099357112211534622956204684128925484106275383335055989498068924244264674126254812372751154291070086819259339467818480488132830457979985214244612562135716848150111741291863049271287604551697692889556282131556348098140024439561327155441735656790200759772286651560186726173403112465913860710839935477554024658235027022919311055092062766755028141063882861071035090316320784259105061734800897337324289796399053470413467191283778568560491589505916645533925546140488667647220769190531379956325291775641173180552769522723023841714714112178657487148867575482702043927488999471591496932503919223552422187781222828749281472431257468297225519208455769674801630526661234500060184191741922354622934475476253974252601078521555919144878067867891970736066429836129175270155904970195506242017042442959123147128797597358708695940324872811884946536977479398878011389393437771147086876857483327177150009167498270805816871 126572000669916832022069436511001253688424255855870277752927596694762153984675790292692625382235545253027104196340805241542850176571644902383341654676076400780580358222738646598556017535174956539779429618936237826408902792122531071398196294494226139604671335462957927735796712125935292681853729143544032228468266077768960390066077425016953345080280487183623173335491903344996940062914800925755699089740578959752600491676491020684791054282482305648051806819435620777018330581274538530039995925177215618991907562000968007751636373563619660208642693263569034900803036195916245577760110224263093141363224390228391277910660013863842831544534241688759510694382123741871499723138705512490805243989727106273212958889751181558974693365483537203252672268701871577983063728275089412644651333350435394014922669875519102633475401093872400693588039174194762222536498933821165086330816126990596556958083750304847383863501511667187284748874322510195903861594294986171814608633776233323480801230652669621163883051122545608165474844339786244913826797114620101853501969917198815606641916779108372014747317189606445073714056681987187777354436089249628532589489667616000604709777059095849974722454040235983251142416466783162952375515580288248175894214975792496063738082369620957989518378906555505992292483359022747929226229864282964980474212864136260194054219008192694669639809830491424377554810554785754336231093620600474185859297711710048948713404893110289571775938669308412 1011534793270342194319389316976161965652526886694474058063813932888879887400298866313930750311922034432599157524640245708322295453906975516537801154380605910228109154754887426421118185211620582253489845247370856374190279822176057863047606915590559961537504863996922353398105452584564319857132971403821049868631523283312422188206696732032323989306578886822524095644760266950844067021838971375342840674494626963463270587400434925548819429173234488947816755150877463443183359721430693696961432981137260230467897625354635323366722968032887714551487719538733826114398665010804882908984973396025530527992962941558231758657800776216507242252471217807036720825406233136178775089845165277831218146194825441935931294981277895650788341009306873209640640343506485982664237535032920887756305261107976409278681322868747268916560995679194846458681678622948004702390649297255333335125286175508395566838924816890450361806893965698419594926893231286694392189125947707018646217749923525657902352362460631204926615401170831506031133226459977676751754953978559803844104936243188607467336964594604753263951996864620395868845792416378123019383442071199592746602175137678641408685790189156719870829373736442656256626071390051264664636872996516257364516047466470316044753002117145346138426156797160369132479966288018874566842675421030365381322115423059469219772391593199126261521119393332294856824222191270071153686462160356735425760486483630578333864564486621213957437691788747366 8083962347897858782653402009531867957596020498132178805278955702501807789011599668484810711208834846925657244222585839146957274323153593470423208677370969254082640488949046099848392215136886262580487163883656714186036602439553707639232699979894715056057238853152594816577983058383555331801931934617843320309445937194696585254154269209240227688707778364539596788397796587912700179738108268041577966004554731283778448528069847527534428987084356125874672959820578599388386354190352465487065323745369605315946305841932673309574653109432205862365456971391309799418056560166914292213685030850726081569356211540484227540584479082005419683439513456273733926468422135481754041188009077328017620011476790449967796667871820859040103119178281805601858483789376274986621268460161306478966716645193303665792566514982618667559045933847879903785798909190193211720083329950164505053346353250728460301410354205040191714710788381885721827535717644948772443330951913390409136818363280245681630517537970884344687857718322887603027662221502068699884319936844102445482817358291110718256602006633615169463376140744832113196480986262496353761957209288983319171662097703055534594586842434918214278470575586727031013605643486817315994744661458659859345314388474758087801837617589569422623917287549939194178376213508118209725076636012599121087510121398939410573386784373307349805476039491647493296363854139913487610970496225102992547108158062977244697512199827110626724832106464258148 64605280136961860951239549037800795091548824603759674454626254543718280099303633562485419750712777637661170241568655381950189948712648717041287487094426083653517378380764153159109079770606787379492175669927405006654232347660784500662731184475474314542593715537461818458665398696981463704079377580877649230244731990311969070674349722795709063738294411299687136715453336413611576328500911254106777803992726359482854239112904766811233874556865563026291690635722296175880948573866597760361891632034966456614728118829049597352969560199012114012691627740082781725542245200195427421642212915327420167829148651735587895884872560168802407606772470264092664170910189256530694873469426556297633673625374041416557722366677991118503045156786634216259127671591041829130951978223129288875953974738786374995790929892749236599227837252036300024405614383098910183001150849406163024652730072132304366831846530670271058907888506235379182452164933763810046709272877740582601158113769041098144182000660372266887051743596833650602832457968474777935253669072456872857891512311061936109478171824475330577872701144328092495321393301079594729519198922644180625560688511737433215022269327411422878466156549723922761199980844430519071999444107345099631099387387143190528127570596271271018741824108843777634090385882499118286072105460408209960201396166939057346584942796206556096497262459494908318547738675928035337851756415014077492588302050544712916641079740701260589696489994708528616 516311764669379752181918834699742923452249574345814583067063871344392468668122885874998026309567799592396837779940351288546790936677640801623230834062075204645936308377020773842208300587924755360545471882770738866256881327548232905226198801797730559986770295560211455338336632136209904514824537068579105800344735059384158772436449730994469568619550773640878205906048939759774927494078708183848873934829166641390629462414121345956677295795549539192999362807640246698887669038687756295655572505858473993201376746542057060471225234194833613881043613713329343088590718551485578813256035987680264238177280874778008659443511576426212409200028760072283332979358358241361424167803275766640044179479304102647237180406614107814556982885602005374264490128781533291847368913542477475632053466166388521573785862583905215669618212037721279206217132283349730136490440233470140123599794779788616122509398573636704416564225789955452743536685739576349221075060454802203559703055889332033592602437171586729260931945275361441105989508571019659265247930333493209164203722742375013395414114013575886277750870367892041498208403130513599180210679184236663846751587743351992876198038219810115598703707646376316250678646171738271580467811566078023026000730212957140450642320430488992330297068315584514473461361378703892597593717883988839070317412199650557375501985596080063091293506335703682538936732226041506549346181257803941971631622606294402376215023810716256254626620340553282650 4126257272131703653308259914214439921341043316493586968956085978743666354368881852285228157355006034659283555526236027204817654464089292162032943509915572744641040517841781248118870710198094800272269278529761888553539729183626674924136538408987575856406200191742070818612126582804842835869131397639776074434566515955218698805575385788094928767074737573782574367560803451717283845880072385614110388352566118335954481785556408018337189410119597931626017426031914381371233406192799171096448234929770032107970062835721477163655177114729739721257460107518558838412476837009921472236439587382397103356504014267482825537510947261393843183764938810366323054609136254553320544086880983951559939424223007863089241857496483269156347937990769808991819708898818906345399303509248665109026051892014439361975458611205118892553302899235708490978826935124389626035228147332901063470249755149570470941746518925022198067972409783340483155016271922197795489033977989215649281277014824974651136358803547173732229174691012750261325305081454343300178578489569077349185098520054933925766638879219654177685643964397965164945196517298173747748284392549313200737367733070287617643033327639349392877656159716257724947362255535887861258877611456335307021799729303304970021535117270881545578929450396438858755676853763378653243246654572780288440578052566496750393611463324021591029662219004924260681883604203817321571341048168556769752154446292219747722865004068022766319516131939241746855 32976219019042991144270314917102512364131495783052640163356162617505885030541142583647423233615384814073828934618276273762913329872862622799024700905513272458163308942935327328847358513234854648924632784865388069257890181431892230844384678455231329768840595780025189933224601595073724935020038937151746813032808897503764942491113398750326398376351063940841113905041127577776566657608587029103178580340822742191527475686403669472506442879829990688482549730311206246710761098969168475197497832575515490376776128969126423473649328066764477335983057614187994484828224442231072391674608764249203739609140882607157924519854195887213112208428780573145759363378933288254011740643436411789999336002253297623575286078410562619416484241737681634160611228753822236281817923999591144664976898151518838386754347354553706010187493557943104136604821212719306671448520310256490101198617410238792077447624007730466807769003050709398893500601415857922148421601076038278175305097191245225334212910111380933506972578394056957997521988400601668585087296360156904061797633972058364141938303207861786806994716720169999782882603218074292085343198817860221414206465468576157670419829651059795437722477631119524724254271256586081237271340590598297180596672223884372247783471176973405735089693440190861235642435728073419739521020932178087840108865235907264982493085472054959815767879319301851979254377575647965557387475711170093670509781075548194542896954929316326963336838800197850495718 263539482715581670151105806797203719840316208160802816242735783371538819735815194665864213146199329542397882663794869289441683895076129762387688534314537585304789447793176120484189812519746417245600601213156027506643530655982034339949477946993925567709763514206302447600467761896899519678571271925285967354809596698630967921181709784594861259245575783300640021547866841001895271123176051950834065851374895029746108149436382394724445025904045359113922524241824367307474160964703728219613140765335051464210123851078013467816322438888203665678738157183754149747005961342959559843519487644985431557773356376530509305828901000148551043142923926548381463605396622831558311498249495119256137010166061202917941129787295128582433647820990394932811650501592710998583688762468812770000178055607224776745657048407834693853087888667618614761642572519821662000430187452549455142588882219519051624433058010703754070785019206401461740114567853225767574789860175227028808164776197120405976186438561832423668681878436343353072787448425691252557728659295695206089197456917946893178968172258261860002646807516206951754070936533464906911679092546795506154542742309807654366031999530984235564812715269332553343432962051419029468645577444051402555595306169496213841625481566134709662800900176722152305511401597599523102232782906519004780622349896769498728991751866492601287582768186994623602916472662957931589514924867460909628940948507944189964787035922609856016677379477422618454016 2106157248849063700596974836589681091959697342988311893948923404107961546571211250564925719244677414009932398366761627354327752263051209862183405617599084377755954357592674510435448825712313051246184860573444761141764340591624702900016536795628132335105418083197603590922698703202387299371788950401803302420871025746021189282909712508551878954882725859830530288997401626305836557840267357796788874228162579448108149417177904907613888305786677309527574744470481212038975335493218156319880656352694850210667147678048662097546136367065962992539652021807925029271953776845704746608356244570004967835198335663996131172525534152715391517910275994440845651253452102451522890893930683136097244827927499700060837125973657693020035636972441099877729010535764623194615257425340554048078937748941241298911449534533259260857101963642113273524777297254851593025064733128523593788295754005771261730865926005952904484738212152222175113523978159178623465742663811783211994515635476907634151099553674883219756697516575218374090238203625777827700029155984901290332715516374475037782321329630026011141049276080392102386044043843958178478489597021231721790104114778890597652945833067957591882899654608291595575273592083558539910700911725923122934104570675648684656296962739062078610191963810109546065176212773573898831291867558959569710226173091971436586470503778637966191570833470235786461072829246164413893023021065769778946041816067155182059501457001082022072846006981146835008114 16832017364918698015718282127212152471016446779867557386880015913097691705197044101103981292522396535166843444144799033141658959677428111021099031140937586430258696167707543012645865390278278618584391503529946034434958377307884630597274553187258278999313299855340480372664572115072536852720818538057586014273336942826829658101320396671696363476075030389430205532369078603817353008899253683661864404573231182268385584675640775760917873136714874134452292812130355504599277136219289622600170342391628272552545155014022264595540441438305910699172308140638595577952635891365829389545387249452990629455486563741464777180480920439157747965957094721590278804198627435634889515303143736292164681076939256673206227834319646605773055541403704127045186959078625277385699613684306944535088444437770672065323605868470476740809053266154367412844294331219681588706312988491511046308604113682497850638650467167021389839088856365053198663968534296512764039129547689176811257136002952531447264540786895027448993536243518978504830626049998731519902254627563844331469827464424304354022838461332982971694608589273572522174976791471255269029044463717484893458497246176646759312374487632210131989929529818173808993663786141025959397132239560928014459314471609143614065020001463368648462257714354089829399633593757203123874295859258227785128027152807340675367384527595712308919709604653562475016551975253276015529862392407229209943637650200952189346778358491341285334676471810226067819344 134518439620331405713410230203160070350834646755380211067417218181838229184937686138456048295734425947696397016971961986402431894337947639700672659319819536134269432284728832369574224348582773355111623964782004120831141516506722717974700954952101164042113002376824612993381946188150148106738300832349032648119608502696161542312590729622613540864662376890943423487156466559886835762307969511261165588453598533388941127877268342756851765836382828475475535471244186571296729721350474178835086579246240070846031372152743873738358437876863277408175445747147012423241347644463681524701514034407146111476620873247302900943208701956132162678471490090517128847260449916785769554170670401449758988435520580275971289903683699014728483112509721385181985107632328772150765884899781844228832955826958673572467887669057874538713109290309735447140915737697417143078913362223546424930484148096082882912663591903979598790764664931482647007254212711762338044173589003187649455997599611073157898559824841333516114600405388082405259066669385621143889978163569341412244600898453938661669287763227610480434160586940781548352886642112798507741056979114225882985387577562503583915592924947026988862411155063780594446042287506164419198778948534507947022673444338717339966277531109942777200137327401435975964719388092559058356040716819539361913631236097687957236848090927172903473351133794078122839200760641952210688198215404921062675439294366708314343537786681528796619871545994693168512390 1075047724173343106593978484301631476789050752362588092611682281950617232655927339180033175077085242338814925047714253409751613749911914425383227429192596472836008489578958538413259262806743177991287122800013224313093182346130483675452829738076488737936907893793746180805035853947864713421852846005236173586997512725726878204210982585787007885599212098801989111784159569892204380024820523081242719694083495966421624495023906970879708585816930536665268744811993282800138479466404785336840546179259722974858844657957298983108628476280855469453560944097887499714738510546700261347924107925882348207277739566125163156832166781827158326233520813168736866779840267664685728385141667399252813832756738216754611565317608077907166556542531658759550941866159009473999559639570820742955020461569689095610141105659243430091623524014501575655782322652562169012821920611641513671137900941590773216867127819673356684080704108290715712785507429258917537968587369736412813762236026513793731022213568722464416111905378794282555925477755483248604755194653787191109772011212701741409784027889375387188426457482972876338284595495060057398342309608173221172365628627650086404385314334578871002131681852114294259783584807842857149887354855234911326329943898240992975911385026566649728038980731350207548485070961059540945972557146782110981773819794817059169958599798807636288592950660687981894353487075893016717070242391500482425247476607871928370676423740508533534850519729959001960410706 8591597831500390012265907212077654629223955404931262725580425750654750444937073942875714170305141878215063788638361695895290513782654295251826209056487361875726735936760605192096757672047281366882560378039342059182185398738255274508716583538062834494527449002155447648888579213852313317230491485508488107222140698386072819649660967897443278037922317089257588858103377948802889211252976293098546239156816209492781685656411573430142248986994180873841132690526487707668559001956915934718777789285873581146356619954721577961098009438046870869023222717029217737452245699560671876257840330856705109756061097840576550240097187443963013759504963059469602470890031292893778560329882737238384802792132664490655835752742893532150901425009795735377623664074920998360661843158918279917913722229243557174435147070290014695780123040047508246372861990512519572440555474990164524331657633717690473039761625427403135732215501654511702062183510076448103578952785133862426740983177042818373217064821639984504525523626403684091681845921013929249059425590822860669709804898434831199544012405496913725118043695498083190776803625558292168785490834830980677653772781437245858661249058303808790373765564253063572007375040592063766873783941229657044865944816933690901584334959880013328816850605918961344495131868237999909024517037673303221351375688628370678601183574196070440260429058430756980946022730087184714743224963181634859471271042018310066173550409880452652108124961280666232557977442 68662625741921411973488308588441634629285192093067703937251608283991422752727027537249194260944348595545573202698024675595093513765215429901896217819525943917070448484489591326797976045680669634264725631514666730331931995602396547725393585074597856456140721443826667787608200457668319862646291461836855163711725158887436707625786501856070395490974707788870655898282715360581948302783376232131997250621534685374207609875405001832685036687770387353019982385257384982154819838424921417648461650320667266658906288200010506171600841145664445703108956183683445777246887200318387140930275831165389404943136588322783073067659326426589124565853037399490491384224089539548451312134707921903011582861524728793637966515473947138547351493104282649979748774616374167013548248674515380070770097172204535668926754832599727240106743026751634861818682907423888397877336987159770266424792873762025886092309060668610005523464690312881813513164027166953468454828786910025835189403597309933775209936067847561975882559596193359157856157160284238361721806650936798052359156186373976293924024612626547590554201452810784797992605689250353657364900423824414736361596649975279632467143186333475154678108010439168918845105590949506670005314723647189825798689549591075587525632912194334730990758395694716691251445460559493903294975134258635178629647192054415649904531296648120478415317480493569952407159494338345565177823670830840423051391772749203795527208912006184415294911453594965585985220600 548740666873371716497741526036569800584289205959278808989484104996419292784636661634925764893302346117889370052328127071037150863439886949246257334184812446379710849960088268000320657016444628766273054666743828195447699403413136278267162007326801676588878676623849910624178778316933848054954961812979319532856928178335648293610440025914913714044129195058641628752770135508711113212097469855462342164349642596494944890934658769795833187503121645574510885445861017953718598972575556619617557851707611550632117639553535738626748350107441673742294679731789521132116371782414836906404236511533329025408328212459607094217329838441292593471767440875341117698344144057435891634436540712300276393548993524561418899256758002724507356565295178485533861330567217496272843869433672906293303024442229322325772977801204936594450500914407935568778259298173551532007000331976328105685355843032294274273993253902149534621479765131297817158083617752452575406242506401178221882264810749545860820676698226147172568329155548677602094390159280429978237630071393450984822966811768795418843163120798045869233362405608589320880122403888770084946202051571369125058311021475472927131417942497079331109513855675030290055850048798447113840169216097912171014571085664125343780129479348056400197768958612480080276731510462493051787810812111423204973957892606232629680796991189534119777296315305256876032054090503362928250312144947434501871986018472894514535243728872021276235763178200500485811038784 4385449935795950666997571990536783589116226648354878952638023811968653590350493488025441661660381051773892283025379578869375747633752171596674694499469382893499155227648481185163245401292994437213973756627989572765110112687641239364679163174343042851830835330746642771976803118301808505328922018416553121823401482493671212470801071067114950057288767932622617374489901045450103402915754786056091619542439816448219891084747296531685151143368916482110774986194074732463265950432133125976674554570852013166043753925164548417635525318973591926920148029472155171420548563509083559961273106924234827282402899257967180951154132321018731774687756429181541701020871277147728083001983628670933306543005392421503543518810419574503341279229007638985092505936982972203570480429859067149345023501391691635765163538895913908921271135813456394953160410771113945476350898382750657307698677709738479553156498676362389275934240526763965203693633969957410397432187002692529501494402873823113143608348013103325762570261100596278763583468217502310150954968383744337346372136298524219327838004124198808530514177330235272540027045998508628802594757196877190344568813119750389789370567949215788213055427773632483796351458148720199234920721688847914263165387308101838993313892745773171314664440893201467705691254004346275169815998685753425265245872064960326703648990987290798816726576575737156557861602717512266652905350722654336675759244215884420828147489432460628814169425428345286897534938197 35047854668100571260193459367818646113808971925166459187854700638872794147683231776677697662698357663525934791847759311111643096683257379983046389794316684257312335498488724557685431972938851401865149024600738518959431522129565695645258583203110788637502736084637946380202816677149708211720147773591296017708136707455800654598095497978416324680332565448463249890707276917800764686827921439689941344434147354969537847729546978144121014339868591281500704452182610701585901128125150990639506372019956339725073217475649516042000153020543088199882340458330414659141565888550391439677608335494357002734026354573677031043417690341871903433539572997584971791800389989039328975137224080357750552246006586945938420374691008591194738365899469876336080738792448174689371529620247236415173473167419587738456815716821356107451007542074307543767790884631789729292146410813175192424821922683801348893538621000636111181257647254618930549006489271908691729137862363106040603245230194169717219124043675054869244494069356787444530494254321321504089232467831495625739999562249686361136396302200618753467700814507844012592675886271312566849796974710818415508010801483250866077154776280155660338805832515211579702077391926271297987897766487202291365570642975987924820347421147622140831314766974271845307429705049609617458201806462293243330192500105667549196849261125160559902694118972229775910290704427782508076368366279397896944506157394248454941838704473396134776188299181305171645967474496 280097344754321472216342204168436131694197516816928872243550062324935326656596860563928090055454343383618879193601336173289682953397802618313039550575470003455165714080794665997842062627802183604067059145528503853294453752326919340935279167019378458280888999660606130480345992608425952307887563784349070860140100659948657934653297153755180794821071986747218392561291095076256871183716198854110460637756678362707852135737818044862932628527616878350010749897363973027240956198293902104997728109432624482026954930788187054214901961094731044095369365210193887827184675275351699715410055325832923974403905747908287513018582657613301820769984207370716922522422466821374272533378851446956194062798050737250610656712348732783355787433673499857810111217057555198894939477751397463568511276929316075299121304610214352382336871335085076139503472254344841426260644065681167521291799464096193184527622092012339698676609325051711553924033172667419357850396323727708892930739180813727740556439362553787457706916684878502392923320195810390684629961259192009403659290096037603276266316980422845916683420575527643130755560567517389074394929644943403123856433983496096537672698563064587201540815639552620227737109249986401980177180199311609916189408028412520137811443554807442593529630179762557024215083751985984518073926305982401770586195629455171942844129053779109943469061730284519591068366496208208393812835610868119098492599761399857614377978379316153329853024751765929699526317349994 2238498536608305889845010319745948403456147349002598496808268851191363448555340159016808501576827031356597702371669179189683907651569759503445286182858011967133216699990256038159878541755598979057927357305417212731334607376128435896740153879829830617824859544160798973881517195467670438187856148104258758158182161206817291077249989948782287066954309008853957554096722494092048896652433181873591286757537638258397728393634497434995150105269576471681184164624973395186084887356893860699121307665103254712661605850382850736378558194764671472412895207808891896259941909556126011885583137740394885283035821414715681774263108228476797922596905526078673157993477289529641975212729917804649515728185621861365175515611585915594195442709955051945303066617414862792506830281885068854728786800532921990032059210855946004340186676971329955704172444772911480685433475825572211089237603980344100656424573614217388395930562321952293205045966876580731846461481710281903858990328923891942791823462724559261221899849250241163638482866763102910690393210240880387018917388326237365990571451553971725671481089258451240722727885429345506103659831208189670378176808406171976856581023154659967003699534269854179191386137967928832238502126835621971767465010174852310291381079660534550396448172683711576149519670830065601583334492564673416588612174277690871514727299217562164239442162903696255440380087174179342843648405284127984574846248540840864662718991731481439845662093312783077635130825179108 17889776209246332624275879834578137927461540993902031567987283249162193002570936384177250523585224575460529683511926730776312525198671551340448677867667395288115436948916172318886649064608838197956865996943143515115334022492006660832283980565496649476100157549675244528942993107346867343007448625609575746123192906820862879903536698681595414288521828013963577610460656575718499360519967807636527883088482407572368725700366820567725945224259977978195957482272367799787050568323895123775871901540192370406251332395359819149605144993024175697525424273515957111962547774215842114670197439610156217854080124998479934330420012783192679287672346923626275864252118473294210286157163980482936683396606556385068157721143110691673749289507368134157466193415488711112759143907935149271388383812677978268675203035627629485061488218599807054162321130416701663369684302410284668698542930677342539134872699923969508467706228566814048606872461981715482220948614445380006008241748594722658565696801226193100512548107981407176828603386459401812256220660388117931553430836754415847777807733470679109546920879039654141966612058542264292630961744759043906264938699105408902953270227778183109653967595785908875667142385359963900767610939476647579679653012373184964123208538630449792843484461353252434141597787632336281479639648293033350377538921429087207285032811028789748891672483607321707347170583555841239673708487173539024528531454390974349632735185192110740705838907169527320970050070941466 142972749976120223957931380781526625720660778360958641976573367830141389559911285740459959118659337894524780570693434531979132797368643920842692424652537630610303374325340372193773970473148913580888755116533030777408938343866677684070903550382769897395824243917939265456416054483316575338900471739168466300191121856913743932258183598874730016111963325668953364381779631621847403961026186666142679605852745688741228584133433902637268680180448414673938221719768578931589039198184467959675414350948868226628612019921482930535604504075261232247128977786920362177135865758337744941265286333192256124673885620176055701352321626488475958202824962976779080487400471761975224612152678945331060743187768981590686592002312587376494627585989608545409434234852131161615533022442497713704753787691464740039854713690784813677322964119010192291234821120863972218356870162015141981975961146198251258724865688673180194060064110843326864886177714975179533593442918028677215468976229258221481442871936406732978573466979619652700508696221275813935050183472216661524272265657978975115273970634564249127515239593885614358791874369223925371510412733741119490368546382186116394014228010218503513360026302244509338951327430241233657640858851093517546288732013721967648992384097066074413684386131349914720757968694182063049066027289377212444550343798266435997460517827449849669462894766729556599805329752227717223438735730301778144975558828439605384083296402009764022256223036055036934131427863902750 1142620213757456083486730921270278247334011431072478417176813946242089566507909497761851293893230281709417299337674680687638753058840301167814049667423071053217448325806051675913357600029499574558599131213959315461779788948324014280100983466263054259854218600527964738871868653115579577773693414188575441671242378303717222206136627586384784402294529925402406719086122956485988022538679798535623824271443090182189375986110290870550581831521309820759658063009990054943527603320803069190767565006076409011480559131503347462838354017508156291591566487946521290378324309997108702067843312390708068455070086831364678995072098324678926854049958581089877713877471835630763835711308311722752465410134305296321823302106719256676035823305019725221783414685329278005215183509883969530145913128382276326395395404631682698388529340438781590277100947576957228325095892444052663234510178330789607837699715538269191498820397096463032191296478194113885332335278686932621396715353974334748688455893972699752649598662291646945668696027828010408349488835226765265595416270357527918683067395946732391310197778324886053282976544442748625517435115212354448844286148023261054433709332482918137207690268344793723585194150562953891871487700203471703744412213735059473278399074596873472429819300316038007071044321421746490297553744026393492969512481805571307732257717932716074763681291763677315148466478428988320618660941813823560669801770586416052172907980267310286901285446795889973951382326800597730 9131682520093690427702688092897761952871197602306292053646578505165098964598218063232937065848145504912079511823480443143955396794619478364966337854656564129845732472458997554660092284911392510041604300045474553712814979613467502654774810397752249993737591841820014628842316608275128462861420203595952990077697086362224269585106474290496633013473686962860454446797447546818837634171215929740049625391932327633300889702019356763449127048183517192385588267735062742087546899080789538677403620072373463914674820419548988379912289796893587959684370642465576161590602495521881600996601025241669641721175094862463890950144881082382323688487477232697859452193757243439624298299484244435162352155688887042059576834067565676390368861100299061915526212012187695253808918864208397243072494534200716573048889030371637692716411775250710977894309705266268394932188398271314822120324979074646721651559312276447609496562005444031837186444598686217433390726209431523910678974924481664654394287340924748555991959511737190566619628166921549473451355761009916488033155139203132086128929170595681392374161372208905485425774098741109521033467848563020451458830006226551765122712137238513586373558410282350882403158861082739682420262578870694156556703407901329923095118171581777924407115408046059111536567318097791618374591617491617809248007303817352066378118781552946129795764423334218298866510790210444900572874747632889754551095553135282543357041973604386977320224386896053728738318780982795654 72979347158924684502194076644042618110673428834561590132324369967027515145438471520821968759303414703389991066510940503122691744176054342576261178395224104568494624169179487474459431895535380692419241621973442301715174462972011049082119089489465670618053007532325276683113508532807982271395699540757236035892454250371527884641680417362846898542897816235434092737753880815530050689385756248050721756523398604051694952247045063077878974511084744790264453698426619471911304121186004520657578491307744931432659567243657612605346802654876593234672660050844138076213850426450273092342040361923526330267352456923913641223989252762533548256825772873902256646898837017309307060709394585651235633775036922863154108993042349991332592999200616971593776721556263498311948227623056964297204607800789960003191424059319729581178154750448444649978665710071198576654250058640949856533067566700561286715194628445276796168792363033377580599127658715407777348477416489621257849871828816097831904012689234573527950579875571009289938454283805133002209643131948818217317678820729106982703601842064265914691710086005633697230288317969874821234028282418625992487179870710997536313747875431358729807928276110578235390145352220276263203962714192514715085207211862169606360811835080704252811816326601472651782245438175922507514051150965079077647684176985827457243129471788255555994392664570586138157713839368818437932672377386250285103522842130316349112315093173358445970621525103844473357748751952594379 583242835248821092225111847584697962278215089879106512717943882955977284419387611165304388516582954728983014976814390787842437347681766490009879665928275652882456236890999057795406847962142248590068288158711459460451282663618127662408829028433337346603236711441660925508923367144764319563384821114911385708315605784963917082329613958693907185617088988014729957721590848186515463765411101986964832287004122994892325053025039038136423572393727913497577629758860530370685871446031983356966843047428865130391594512387288753845667217936091547434990240015186167151348448697685780789614599911068683227554011772486765972487193767871964096764519306553269573772540147013908206064341483786753102186611333737381240027672652425587351246212340279172348904590059602396624223664349650284641828292830710580518815859401205079919566207902056075740189895068307695701309080414048782418811932584077122032876669914089359796380363493695969531291046302464485009988526788431051499101527355646508501960496063624417682979531866774290373261422011354761551033085992711314343695629092072467177644913939200844566467808730422900516710323277337169526527536432366070886031801003102141795956082899843442637175846232744678791205903923105396937907764626780461412592686563908971579004829183772860462130970546192065016766895022190698815327150732153519195376723522333995307449564109642391287298044803430738747455867103137378495956608359876854970421787136966867346770815144757599031896607752780104480653675233026849462 4661214824585378575225620996321365241068160985524558271669588253848780138242888237567339463115756977174458615101299987576748177874093229793086761322228824402486585634456674724464626469576048310427662898507313709481760124612614340629708033845481751123318167272542848269218102056499427410105796650839074681533266587852835241933166366792966420748787388141679978813372616329039859403914941340395010342196268316650506272026227299828006091432921237214293866446748350994337587823013858094815048880752122096253598263286079513324139190681685933543553911978225777633645292197353651326039607031148953695217079657800510001474686729814575118474736930833237844129472538917742067836833542996948003149977877959900601608158843994273801828617774991047714984955780424010024125769678569572312730943837706737754427882261768846313677088580749987585193266025448579086670972633966258680773290634517435008332186862787336203820783730985531414488353296209155010165038287887160542912739918896215101870588290637227286010323218057076073662862947183404285092499625872777582592039943056598403350347676456515212322466822339487449729134181115772894652566214720525186542200386402462841202396564594880383854538768320814782575273631790918994672712681189678706169543871533985145064914781322454586511927468944199999000162411040118121630062448136082819670471031406964213689811471553219203484802634544693662051542175121947886128270083421277775038060106993340933462624625413265887616952956290992888533411845330005992035 37251957030748223648926463633965629139069821172515648117051744535567006142315275225857075334656139046733757089631845098657337061659566568081699777952644746551636686761311930488554947946202654003009273815245416826038878130614650600469152765693268519604307566665312064985609587342897098603784940165734193337665966869127252881295502915220415370351123158397539065091539092205822513344124038927251583322295602819129935977357207487718171819317849236828929702413725853330995344837620391324224149487158849124359477470779433717571528539808033415396924878177363477290678503960852798085108086357015354059100078073577716021388266995817382031741683964462923712565713714521871084450186104384027945393551005090046651971016854678275024790288318649807716334432221183706992324539353722313952296102461850281866616035679106885976486535394820929731166928071943303730190602111452621533352914445838594561941144633793896679069038567548865746561323928366923284781782401082462183186833185118786502825522021931936738424067721503803430923068467399344770129041713214360132034637672953788729478631002408426842094589862279260423871301527018073086848646823029434223869237549259528953986938208523712155823778435805559213971779990359037644153768775172437894157698885676507661278493983100482967786198633478414201676715006918555364782880850615754710305175775334600099968749203143457811678174034870295838565965231442335436637263655593789389904353832831451972135751603602792424833827840538194542582613258685328562878 297714052972892435173226523935956394299859580872400736868095771581632680416206435604329474250678465813670945997152058606852120977641525709134385302669650080318822097441652193752906190546083229321642847247434106551262757011998574000515950280533944734017934188591446033360567752290567357483927452355145080321638110521087770425201883503301795018682500063012697805612772826462690141581019020234836017013548282887229813335678912535956217620403644898221151161376202724724983732812136336476607617241115233570376146725577956020971285451381399960480527470892738436070252474280006180635774809724053701592929486919593051473308181011105281967947338194085662056707087501343091098710236756418556975559171081928553702920780817266080552766262699568171503243904460484238897541890766678350561709497023518581912872358626089535399075772620893100109625385509323349060968421822836270842793256862044762142876055311899150526089661381305313593722951738334266050785234953809886578289718438219343571632487030701812903634488116760889756729641007044592558358756940033277061602828948780734167440680122898932772561168878014401260248177443412889499517017724837442244274283884394158767534799151209979427023756800282272682362518057399411982325559371954179207866514495906609248504196575002209426560777760927426819328516334416229633906842104599375556955149078675287091643001368064114824618738121392194991788497180689479475857115914224607660520911638350687551547921714580203705245388295516955248847706976932113200749 2379303502921675223734861814746669610076950995904527890657202983248452233218608137009898713173849673123661917927810048543737648749486215049160958574533147703644139910222119832609114545617898895271660059849596467775372453779351066317826128011586556804136082009242159390113005109459892546071855869537890892377063445341815854198669615887170071711436946435534168910855087461120297042718142553653078142795856341775867965455070386878529893345129424131856711648118271420182297220612981180447794734005736220829324477560309429535048681486450515749182913900142195702176021935849589654639608271908998483614924066340936790095016695657155168560267470710786711591297027606458099812484084847774222512668497579068448799795523190611261565897899946630408071339853521187213876486825659428661855536072680425650776507714913119045818607920049482970814053206400485367056703860832426892216100444982951205260683124120434770529875767876543726370767502253124037008056315060620279856244481468943863669149475449510738466168115373878500353162630675733420455796740765688557170474676095476096083980305498233070416704160216564750660844257117939198555606372529479595264624305931899241182796622582776840902002082552061725404167638009120576104372328367322249089899736629282391949661969645272005000414730241765072056974669463879445932864702182073591124392561730485506102190153686941534155613736307049338721909504950331571814908900376514504509490048797812677787599266392553142059536173582398072640677898565007690294262 19015187829570891047345980887889956804679639379114336073375707060964669227674347362309402510198831231723677689396868721694783826980938492708941932039298911985614625537635349241035900153513126927425231076440402557606633835991314360564345447681333368373545702358121610861928510240103193690043467209359585646724079971290648923862778943523826205606404730131364234134482146491643281241276472186592271254418270875627657071562706769439007618492846182916451601610563476100804037859214691868203684085188432079287657674209979335621237625550530518955530131107369627674315473787243475561910138640848278833997054340349447600799590210903930586292896080674311936739451478492649606811317871004120729850625141162093275290603278546700049974189272924945065344114190942349443397190076751037433479123848689750231530614471025816279597814690190950836136070062608619703516672832091499392472350324547884935778839897917793609675143403961238970126448833644087654410616974235114533118178450129434990805466328518629533675527578871641514357077984376247626474540278134833278353616949858422707788579473707100996667346232132333282670649733837013166938071919894543526954559447439746710248615384859032162595870210867265558560949607797837471530308241687430247379632824332139163699579897974247453421263248967892862344357622976809866410217131997275890897982694164536848732248226528371877262736684976068812897883052863222674180363279883431184289163056633428458474385275460718705416878030964144627576275994229962347874819 151967829916457407207175364177047628278537194288956231479249452240545306273988379503619775149011853959479552741217811997890080150952823571481803862199982307543659657010057193220242306996114790536508055365677681404408054558454344045113116830997225088896327562327858493604868756680293893203004848055947025409312434596405035422211502227656080132644277243159531269703447095260382736256562059805780103210550432802583998184470872591917061134774997127043569718183128777871836203838951531845506860437501390098560775252816289474579277359822148758271043533326905011340462039925376374411211906857535318402373906783633206666284341897177333144150499434718955095778307360591089159011827241002798946278938603516651329359307561134132477750801018305668009258208202134944295725991529629167005544439459189118357899770831590809470188832593608381175362420988314102455553096345156808916677245387315901294415772286999062236907585093235600371282243281601783795304715984655396585855119285816777909254025529909405614369808080157295918254463988356786363300282475197273787171292444310248896486913940416312073158410627783472811723859872332788620849654479722067103893621379688931626281399369388678651586103802850909749218306086291845978076594041101457993972277167708704415253935644400926114345430160117234956887672300690644038842789019774318703686379681475379895939224230190998792580991912556864955215426338336439094872148698794546169708217892526269779736732505856549489140715666999953190563343432165273615624956 1214515243790580663768243006043239761498409992393163398990912444807476184645381904264530720448316364931699880413914650797536022660298746247763931243601538110226906475642340899722091913571565432774746149375113806152475501476937605316304837188803191295014922421125956951656224576516970275509098865672833653354951457124786159348622874392924205504344767850633600306314822419047040868306866594394074714508654082390330465771383537023779563207808020429086515396923443947234104121651831044441595502574523587800500977480127857945638167993917328021364349271122687220864986701192357310995069279892902496084257091729987628446633313842149094548721213789929354739837810660106170610358383136998941646998648254062026581423310421354313632906503804693470390118551323287908770831723953089145767428013293293520809186228500406494187129676655594407978384983673140578186550735985583709046191471498281834882440407098005869099392807216053649863407802447928080642359528707655840963739613134343517706391252620929567499254476406171435458984752393540599278277156619877140117771735433404083779755591354010799476609742675887157071368626328048228030889816925359506718590585308469138760322358934973623914700749633804561630950337851018626673584236536637848682806657796036392035144011996484608418584748493651268988209163992306501009047380829198774397912304390351385199071868163136102552275823710020671779403630035775177267432974314534615186016194138155426136186608864078713651560316302789386614701559618303718179959002 9706318640472934470978976426633995896730389247073060123886189358481503417743539746346152415749134533195231000309333850079475647170930968130487721766319103687002856662224021124018860382853927257172327406356113275791564729908516156873358907535815921172832115950013139072949357585045376625414688924345750497075364739066515935165748819904587222065339771852149785808768420264580060270431364964652603667194401243513592527768691088995295193884198824171202539165764064411357153591292039804616643560969910407163019773186423307595777815074039662020235063828981138699158616170624343946042916808298867802744763793919868147982807948318932535384109043089223622793928176781623476080945880742389030437420350979596814036604542736557002690748133564231491692396141761252152351148285330116547811558105854782051959707520983779466268006634936241094567965329409745440102742436014674752525351658750829651239546514743681397033577997074442222880603195843124034226936351396840406369872631630684543529172317425888249390953805346525641151725062853266938051986925487722565572246936165061572475134535926763930081399122611639757616192416633260332638821141967481136647357570294740539301443309861101068765631395638654658000701647463153755098880895362032538173967872558797174412589856950220070536593659698952383553604681779947253425104943135911963864745372899885397495166995321390356716409402529383205500684323607506381118441981868863368566295007030627000251014204301654749841755688787218193809028888228860225631277470 77572249199330540221196841404640073135241235156761396180026498088389869581910887296032731861616835839232132782640471932516884809597291431641148789684555335274965117444961918760384534889817355412862072633884429693471191488079998641519996181772006418273904071479778006473846923018008239360484477584348076890288308520311084699021194688722410013379944055993090161868954763611358312817873313056414944290435322964471315840594735652588438440766643753723120741898083106770342179413700505629233474115475313633058412386312991076794025656748348282071566168571854398430279251018914069502729232366341357493791709378475657068409852884889209595120304884394296504111486197721107864583343129448931385887045465490892550783047672959033716201872401158839668580498551903538890671977930075900281027910714958985506963925555266514338587817063944451731281620831253157201799463080935773724565973899677535699188555739160540958504208356544324873463603506509586252200392732327479280465434060295254991564262253822504210382327977068111614142790509869873794283445362492234886132296784714640312160803924718100745340097530695432693533150744440691989296816156749271963675462851481302842013091814667853179586783318091793737869141499043593548247515761459435418104755195739883345352108881168594829291265368343973846083417997723090393403254822340450171012458409523023138442617280094488036384678788332874356291746230363370810157968452355564846452469446899402119868212265077120912390931922621840659823006086740574266572974374 619952604388625942366269209659377684947399513272748649484888933197144922337911168914086793874601392198166124013887062852351860014923088756339083239331124042731118996969601109960613462477572963208446648376382219203892914597708001135671995043714357078214453059200816191714348038923523936128490485610112856204582912244396442652038089451847074798316225416133707009214813331781996840250447495292686019387709458632826975961365275440637919130767955850647506125509752324309234217526804702919963386407394398923252771851931670881269881986296068472206369845803138512486775714870770148793162352745957913554895835255723413259487322534347021054604951626459950741007573673492520110706253379158779291113968531365813587066068647668682887726370841712624876116802100604121708594339227368988237449363322274058070456818214817395416067670520293790032311662505123694131557195033958905611485787699973030042017385813289318065434592800203693853026338961518133294113445592358630011750211938802192629721289806645741261403335283608669790770515638753781257655838850761148711711040540903992171658961545581232597597540900633809333087177725864119012516900578259624807809011817742327635941242575893661195143876150591379811179727062080741353350699070740245712453844801657995483413233223514701498459725710369695292990228123571035602932284024816136124384335218422937008560753590323047893289377377573842345685802098776547765421906873888116919375043224175573471196013263848245529971712679386308520681815280342495355485798884 4954625785066126580524679770282286049317856933034486215931727791862846415165641795904390258145739000973496209772395849527634768861185183180744230205501652493052507070925120235286497820914875639797426614489224469564802210498998722835524468324398698965884929957853795615544056170943651332530557407178428750447017836079738739475209928638924491559627927013760908962596617272249342214225247662893922068378232945226913878494768896331359487212976028219057475498264119308966944758053059598920158774542372978252453547422732483952863913203193063405303362780254831936320848591643095741998186232713950340048506361615565977652064914806875213859391065487331047852028915594737441850977970447728129407061616220442395843407483094954113865300514956795635499166393028115560179917965734585993258631005906936189457293837484606509409434770596200188871061298613245239041360163745626184103764729404662028127149824522277041313569232389671234924415215170710533300274481488543454458275972783148600799316780990423035276085170700308346623571123430761449871887361229447718595156044753434618355555001895635374741650240287864644997784885401629247059384775423508879387078109776052779207973160692365731291333970327876357322471189421393364789108433129748625287076651781809474346155067216715420810599903059413803745541706527511585937446470159065753878650432944619626139722866972657646755512288988021958875271215609627664001361329960106156502617895561575384766058054762981783462088561163551037911173536182124943911754449160 39597110246139487362106231439048511086307575468880191317850000192550840913867894256661155140859106819814559619864260606939708334184287789949611957945215742960147719201793485106770074958911736041244915445966529730058942912236822580763265150549738275517029217092908215520807449304583766948902266694310032570431437798777230243435076618659113007402078270785071185623303868881819924348154612312514094212759137488516887066016800035257371862747063501389653594719214655903674539568193997840599373327352167135713911596015837894886844696035792336051545691051305304615299929460365007778326734870016927708782783907363285534495070225878132860445414287519296943497434550638197680913201565402189232093414626159501486674134953147339041938233505767377717884938345813431919849098309691032880315348382750663012783650718882310218282680869872232501152753363075585196994105847753438210992744041719190711810537961370386884525281429028903988373310434170803918864108865237305129249936407313503420357307390003483365735262221173593309111299389714984874975818409638075791817603132426282434482573349498528562947342196310520187053843792236741197951755494539646338675737182348783731083805108242362092263004534318913175413798000326925055308610709875134640982242507990927763065263549682548847636062084083779353177437917483478495750839968493679698849367707167855216227230599493209305851360828498353831173778975944640020979634407769988549340312200064552496789599180302961731039635165094611357549571584752838673196785229266 316458227481739902362772306403380226839855669615232572712363103041656275808183998187766779158889130010453419413417494228682167221102967576089113840133037854994650906837674098151316785684460802077173966635220075612818175053077808343983070509339834968466896078187304079274001409843601167633986598308516905655994620337321043698661345458490587870494629690415035865919856329970946188801528703631267538872633629943847223284576153970275484815047776166974081661774426801758531967011155818498237530582926191674630582933705097861061269198090241667087116113365336824641303526807205843919472093885574288754544521128637172798218154643925396566561532523280803410365425970254139444819898596084198965645786492437334967739241111700906178454450229857857212660567841241411869690072699332262474725208854951676093088847482508873623666240012677561257089651340650899902747514648571908650514189504527482928166101854148853396053726729923671116429419795692072651424141880255727641433823595405473854491669523875474872929812413276606401863768102117522543031625553034097405379704167773274718011898029171992949833887918655603361319225374360568894298806087044560551101436773894607848139918862000688373403628103296543905080554160601359656468693590248480034106227404239469844758625863759566573109650144624340994961100682119787936340866065564862864501983028978903369402560906644556572720696046603848434499983338937394132878645337617759374938735149258731064056512195130417429215071616072140266554046482463516593226895708153 2529120685163408005156335211089438203911082656334904901099005447504035319286661126023600272736695504179819318489000912899844062807295859894134903915072798752894347584605116030165361601602991439490762031497394764252403887152359888790537550421817399957687369788419316468613283767309557279874272617852067193419870602011035933135822013968409122541869897484576246374481594004497372568872636349894958787578315765191518422875898003054628548891690534624137970685814199687431671750379896105783480332372825528107532344838934732193318390687344997875226432114010037274839974214494493223701849557807619674078324923784282544038782733215991351207581442504192498167091027956155544566268132114163140440047398803127915611391575013214826451522139516424732533284580196350112081322156157486516644252960463694042771425175631658807926440611634841184301180496804619326976688995544277418738511125159862687455228654336748388079493445271644784700995135353248301905111760444154965683200196226744334407033620008884419599845514129599903057380860381651126173818917654775189048529379046142256536014873430961425888773916369007544976582643602624140538515981650377872528498699234034003778046378996099547159269795948918173683344821171306226559881140358151650767728259344163414463745754300374050215524637738199291235860659826436390892400305790332714635478620671033703297976456240232477380855595136735930801712991791140613383089480622934079175273724416896502862003958617563809163934142615160753343924806395672679957073425945476 20212637140908478435028222414170400259030397243318177585186841781082781802481932326565287369897226594362795581930566594023564516673285668098145778216577474112494549121266696932063528306217324603742522127976861223197552669594239125578516179978847841587636057694824007297227648451727209347890595404414809757943228588329505232171297636395607525159617795418974000269896958916099244612275123513959758392239085692504409786890247869111613155541880438574613878120986804344531582864803370569128457499978643155428868985719566767747188888959111675314672798080575813328798182943859422808751509144621042373417905193900335422517647319130591967466413620761569772245001321313696932457356979144974247800696705748610667836610883013489159924853749061442371444092830902019553087428130861877155551559996644369329951736264745328304422032708846622295571406728582703913458525592582707718489492430940529546504645178976598307219028728611051569213305486228145035957395282751919887778639397257216060202664994314574536889090086266728823479991463318336783168635967312545179657624691559800593927410064060732522969044214969394470738239294125856741297199775055089697238123650559191396990956426416035178649737151977218231545132254086487534434128133012508905892611799931142235685712523564925707539876596772110801206578787944256399916957989148391535163352554850770606888513753045619120374583603035760346239531414660936917592217268745424232052668166367714979326903421903185424858296277062345226365622716850838190454586775140071 161538731722370854875619746778497469138406551836830293443104985926263245795051263884694353044542918177716809317431340919786804318499186567875203969438931159523259513363690271060634078609758885038829278947009554636590212773403903698641454018880128271113615843496923861309220943952410519471073724646380892288334990071065565942750538486385050953628548565285651253718750982660895428801053111886849414677902049243102738048849756424987241000710092525387670417639869069552041427946013334060834478366016942494687383375706789110929980405610786768681295011798575407591757570849946870645021217922428782145848120675808307525649077232565078776636679425704076552811617517243935023968974067585708521694035716891002458266954083776903618456473229837861109567870134319038671669097881079688129856630830991448775371363016071594978601342809941081181450507096183355063884000942150953894227659296246941724364700824786940676201131445220211288971023731914450249660466614925957231928037440399297987335384805091240098883342292707325740073528292931533246542744331289924163764791150386352595502375121360727139142711217385226762994934704074717691110607724852328286254676375464666471939813674368726803307596305949633352587984141291012902770382135559643820130066310421394289694196944218243360457513253424571839826332409792003384054018965012807442463654781994481219736473784868562433216611860077535314440182590990627851441911521572639096108644190700763070596411835794097043206322231943192250007123438571920773732219141915264 1291013016469477932718681127406205044001475049525140004531584837466182306182210796427481556985608784410740006739346156046176154756505874004259776179902159618543151426517162318670047886017269143979864398984041245359619441415117197846289730791746472529521137445879265152312701849852419507524581426428038306413012402511425094729402917310135169267787854175481201251623668084359147942838522882895285655757604826306528843841998927990558406629462551872963438669368746726734523795573057595132254145621461545564603331944835880162404183005600769027832445371872474140913685390126072369835774765023387144311753897406841816770492262453189390367534196431315410800281774330290995454189169791982234464492675268019653075489338899818288926759109391403046229031189940753377833297462062379200385454995509070877374237956169829480912489811269244909263222700611061503314606119294014018401424120778973444678214240668046469960966060918219241330704524071668208166369601616657001009825341781308260427028818499831471831252740123172161119681880936463962724534461685768013048054474385965484081577496834496133029275890501547778396603098731357760724875780890052850604031268097381155641522062152039536984632437171221970862789821748057588020029939747061001827638447922610786124730236969365621675153225963011341359951840705472824207923702000158690695209188880871442682402749491553299438245872671671039392115365058962564472015578281980504471143493260997693545628277361023424827337326187050990538301723646783282002071640317698617 10317746083887881807596831730149274215354415570694286743952088005740286723770688401385579041884735044109494367260184848934134506582849609542367174338681030606061820468069274577627315289449261787589179798884997987206848229067612226836469627512081120000390091352358971133619602063179916187816323311139943753177228971904094339053602818362953433158937585942966472175862351879048744922448742146037962928760797243003397955866256871524022748474313246691183586235699746262563544749270836159273306074181955810840571794344881507583369302567343271365609181326491374638715322169076904918956254226975549914409637703067090340630061680559333852994709824326204312311002563122390892919367157318579956391460232834781268951525724548644732050335791751549475477023183185081573138778697760597996235087611655785308332577726253037208903871422304378950518623704122273035598763189887516597662546215215896507327823453892553027794511582522218309714463952924679203416548096369262492438303049309957436926800057124292516369935456183023627241944836559055119687241307180983937434326144593630306630102167546474715578761992559938924487429093330857295305344582809897152223961363011319619793591380145401743080596073875142531555474202874239813778153386713020508873986106193442645902683835240898961385936557814467271732610214611744969303000130436821520366395491367331357993011445019115588281446865725635210765304222831983278989812950573084753394379461084605052708472089906338864520077378994920289311822449143297892657383911335663204 82459237199214257741889498964110114869625454803846287575550151065232376772574277577309735060317353529789968142399636960105153361539884144655984480010402321389458394723433088460469831489394372601475766387542203264644635775684137619178162674387374178382193430372762568571540149396292178022648025905754726329668111441228256917410283658746991641901298344975977844298919532746745737156819042157574419187334461739181764246662561387924952453134354872112111868200945151523423224121325278272547930592199482599767990806466178286808585995393728932495327187610802619375941547847311558940729536393922872273756530194127603776259963067660683849463877318557352904929758864123176692645403965843105525113220038838329892155216753395232598216848025105329121166062918548237888929393200171797692662698782763195243773060917954530449016975616361467243935772562520187862959532520326481095330331002018814245998254630836675316550186346860339015172024803117762569050174184139325027715684845249430749672639431374485872350647600156836302010758640695186899441328319897236667256074969069624503405042100910644104752176759179039658248665459250812002023923523103978534909081307467456295595721549627563939598738321312939558420545174392124586695037115451020292929602508507342984969249859410146898726665141072958114853982898008739498705697835091492489212488184855612754149079963757790882528004649666811110625065269889965255777257187327113966997771265641717611000257080030461628593971864235336669755959551011717860406027911172723845 659013106763164334598356755324297752504155247748340451034733884298638970888767144781494196107002158607560505889650949634264279105857767199369377365898943715539147223864790722108108837668091008465386690529252059474321482836539144786975724579833305710510671030174224344601325116497614634063645103928734625867876065299086855841588099022467564080252472045650360204848600203883639355732157716085226959190558441934463152099791957617767169439261895723542230586437947332945991466999462357685446876081928783053212174646182398944767229107943431506084076237941372907971413885009307971120901611868014825630534259857295426908591608203215931455040343293169085462826193468179842513099285699174027782298432471119195436694974052917546224071009270430174176177137067438506894550396299586782969339833174261702144448677576883916940496223647444377384512580560087035644817435589976508330622754594624784081944172115376199443631751607411368445287375734773516392089451980905118086667014853212826057151099128822362186787104590426393779559694008977739528443269576239628318875530623282985684793798219507530985721645838644355674000052733512209032826838721922758413735670344920662463678515642905915427089307669637196808453228791288849482623127675555905160753626207086008514144587414056025070410560829625925584578943890771790596327138395979518537789836607625663142435574039346800979253183228136265074337786121430654831762086986751735817372317996165587640183024600790059918050301457184201716378498692929950384832334246416563814 5266826996318963739224445553684101356170828816513519535966223814354713692687271919934602049014914893269766216905004733617510520775504469696750963376427890545351681330973679863498411635025143272766757936973499084369601062027902156881858593782421345136664593115482537068035255235433233313616720923991419222042296734544156609513070924187416780231975121243687944010685402709923455990932558327711390726382379721292466814160222754306590349633133116783113812620193934300778110346068568392036334715337075459512560510753258612162479691595330613751341705402634446980768677885720818876222692596498948683801883842205114870312083756189128518952777285081340945096699382035725296848309960060876183496919123386461408757198326450358718822073676488361526424341326842618796263186868066962169880319610313573668504920764798022216901745338120647800011849734290560911423330629805613412109693426490078143374644812527032611578245499373287327847396044052109771799926465860093669289609743289205131330420804440472262746431143930922822589579296774934985387742802960421477101187346749210810006846271211458169020057731076273675099081130414814391851541390347967608647367789442466328854672388715503496072655341822093812338689917404975751448370357952104921012457938366190019891230958267954783712827251203404472705420235870292743166837321594257817040767630044489110145978836235159466598275096386726450585889087483831148401223141729096922974713161154370141248328756773401839468542711938975610566695711725060770295777067347088704140 42092460709956977056550787639087009161524869258282539085631495172461918110132673833989391450554417291213744778454040759399243047140827072141922708582061970181568632901011141498552687317257580768123767290758048199243380025254168127529680678565387969114324428919704647491714880584827444321879721326077685572874591340963176555701297583370182310531270533968700460367797358209305114514839079434133792208837413492691836489945298050465814629932010646793414509566711338766101622820706821277228978628326682410726382615374679890013966897886993655805743169162015033427574788767707148409012986284842653093256567280167325055064513008505979009326898775273857379346942320903699405755610833642934609403581952261986122922457703360061392542995753867379501306936017457013646570594658800822549430925960432453661951907597454582094963479516352370521505084741508186095501508762488350494914306729248480701121045656044504142576522276992427100101358996989546309076875568770189043457403794277548996766670138935112445255061924797495125882960624554636564219908889758452109987518022062776694654481814502786888349363451728280509971788508992793760978987242680198415866278887084767263050911254102140450777730103021309424020057039617507554810687178863112181010348071098622251974505699105131550028870719262899476247193150689269020332653220697256904662922117253802263345327690657881276538896879547266052211866555066368830374307682086235773557744016431297043562792319533087276698471161449379837586938651303203996417576843019818795520 336402983218462388742475323513422867790886119121693889474377586846844534586538110642902803478096527308983493333640067002970414930179244936347725975623858054878589004330958185734021844740947276399153372168955284405481809284885359860721130364929631792708998729550269433362957398582009994783596964159137190383258405549847105846584973423415402375358393156699347200429550550305735554336194503673508177993798549204032091618354916660173554438837747286733245495501227578324847172259693059689979548599703617873490983141103394938969377633816403507956320963197066915384593557282892660613127979828109105626458547371441035807403602607354549462113111690572706402647382669419436866705552269434726040997297304007219354757355506190642236860126766132508041236729314416674438483705712383078409659960090796534359418929537992744058478770160770372010190492768932368863044298927605946009232834939819437116893832468861936931290229517780818455140717275366391909481807262700818775474579744436163010597196013065108086150515138486557408240524972327752930394798707755099870615876910725576959939890850138379937044741273684665235432000377044751713295628523000500310938624610584780389025698512513888668190909213532070891618919409723880292497669878794231068219857933362245359768943962960633081962360147776942467895782704217494178197879904090578869628775351536473641166516706515181281094124472006438976550879260005700247713554088891956186221979067564854849626663356568808465680224989670327384952819970615150097738902497594733139183 2688534553553280919743107705993803222980886392187943562504214954214430909382261176754141492279153914988022594151035356188734131351903890284757685313460947909649224289304887775695866783289884111618892893039739927155652863521659103835560772468184068474621714551648547881407561460536599108363395219819665268793762757599895363769557673058874146587710699540963010784766887240778772504193974205726620224177918458543404514952216112210518204757938797682214322193057943318782569113981434817711914150460707773181437220772292049688280966295011354826334795092100874798489479702585983428612070689857259797657260818678332154194739437817264600730100540591327528561442716784534959997142415540645466551928442526235782854526652805340820377425805401510192102859428998593395230354330570356936598881157617188708900166164215010913194263390913610345028001219586630184887144514875310311794010780760985644900048717621301760082614951416996908535733189825670841357679469524126475744750120032783754884082104638174203518297259419927996283743503038910690862736635687479572198102556146878158931342476552651930421781067461345212399374072174863558857481614042976881107315786756103398866407130534522541975995741357729243729090990524565953076409384855104957408535792052190920836779290533016523714840863028372976273544421319350009938421111557761321115383732318527653020175303668049400630736762133561030251850341950562164757747104143271030125229304537873181351753027147390329327868493692526359109651764984284318208434212034958181362596 21486796315097297897116829830582719427554275765048594930173210357979127733195300229993664473703299671169698401123621950059814324352069737367118642740708293029380979423475082996416054270841289985009844045937368545511315214937643658989542608789061553277496438774145441876712244488051758258063818811107880724864803659081292770274670324809492396571237684456902373566425206298463327820083256495697879714307587528078553732617344663095187498030326305184270788384663195300075985480516693531558446534705414531987925316025310870916121471435430594208318234569314453839424114824140615740395139217500629349982068877778715290144103951610090696275402829955732803860428048533189290348313447711259976722861453665698358995600232679720936248830080822728561520677019998367231384775628244973491264624187817294236329723285598174512574791244584232307399877847725302341216173971446727609443295761337804288127624977896941057326443834470073837683510242015329653050368024484918947348493283227621778863951916793236498477663667345304224003165624207055994313823608419335575856233168358538121438659130950212257152212840737054909491238669487843979368066619732395510996864150705792850594229095240877173053490995286286050777303563227646116085329015662259099438750834671471853258498833414626926803890339062216712124998351501429598644296564781034832119555652036969153075977881342417218553103166775549554312449067446070825169681446801796133875521413787037905714478113415577809520107757920358373023521491006087685043181372207934238059153 171722804083774701129351724632645204820051511614533480364508884814221266318694859651883234700700124363107016170487564881782741351861765042722071481202049261819644921747328348764764239168559846698633474152749158101783562447898707176984967002074762568457712481908534142918355358730530730351256571076488455033288088269220718365117065717339717992289021325432971048083047138013260715660845684426605540813818415897016003195116864159668969262351734970162668113619199785618230585203684624221664621023382301020177932261942529270396509652408178096396683497858546577809698811733454629738582004766080596364979349834858839953203536112914651415969097738377848199302079600916484426297236634969234790131729490800999518819763698778451187042024268896590573989398386552244414928213575374526881280042685794029207729992664683629810415050976956651648579854314978575662890453789673869989054168424197645299950528293661520700835871684222413576781280189803356267457618494520386126019993724295767991550758313549374591933334029369899826258322456850051804051797814135907173026035761043876978669663150585314770466470833196972590389167955008314215689408394838154520407854263930544643278913230762430464436064761793699061208061226898279182455912542757602462201619746295288380258566282947275458155941203625369391853964189531234319675080196590067380922735823876975204032594211762258584972440797297702733184293936074320064128449880661127970886769494972957187684357450487488740963284083101598112896150043981908687298908682197548433525520 1372412092111230225759058749554731241740441723659851270777740482702974620229321376696207874125948991850048861558139495964739085705404545247045534192119945968699681393729217751450855970479232162010601088979360473974442847759317677837578633251855064155268582382512364848628924648171305139155368351072306073188246493630995961638346804412075048161126640456882269760090889599596617529814394668003296369269478064794582840077277281814055036863591424446403551814996000802357082185712691306728432956390803797870238869983438481340682342255473605109412307152002666947041474803154034391743218263539578809039540554006192772092642662517570623965154936372609906314436090213874079491189666416423901941367080589467739670867622985444214816421695516196362943637011275401275050683432039346126293516268417993889242524551697842477622594471955488888402472971294223754423743271411055907921310670706273022351143913365846309712841870533257478976464630679177450833233617077339745183538043400427527262620558004889299210555295953350852022262767957811264510884047408472427048119590892699121515199448564441400498086726329946818323739061900931752804797632888393588816942776135762449728736048638703476830851958480576565715479185460298999119638350452130773794524850510374629993415046801924678171443221618765448787333087433155095167290814304574673034892447649311822749893266245196631279464399354992633426486936760754878362711241234767271195338590974099761339324059962931378054859594172893031063458787497669719164813543112016190053425541 10968351501462581509493495873713527395763897047637691783821935526976611196554626128461283035427214915175914472505151232470496457319795171639368669456864295748658355792141566730319163343893379952965515398332029791919101507292803551882293234380706008816746401098263269934757676538515927793947241678814975910481147024381125478513925090371109132877229816267622339832199124242066508250124262283303623374584687339041825584578461707856255899459391625101801925816010139813616829922868503077308982478433798306749845033615511572010273495318877269340031474691436210402232102727240401257679060278429634095275477948743327887865165660334362691030922695475269404965923148249135755148513105295461521439021849239464199320520297328625940623795126859227194100695404735093610124317175553163936517533876359638705240582354253713311856937516669129252605661063206965899259466442823544021507119259415335308850387757518156651683097949492574752840893714768405637688530530041775955883543051634741162663230131396407860575864062177704990724633121334086720123140875899560641156055380790679683307719591896744597567714122972711834980624313752495519879281195622490724948423560495522942946853571760588791622718179233318298415367193572021278783600972706099752275758924227616640466524341311204934821240312964785001934711804055226619036522673529454115640626655363886680781273201361670621143987678487203579335667893791913094786391794450417604843097576257123197729756137391487362829281452021678738818604751168007325610191023664547968199391690 87659389733880714812478675964016793072793770150839330599477896064877338268290551253944854327728177737466032573211172810380241520103474023284013644093637851735292807402222234240159474921192122998886232602370493022688732720388995480049366688933022557431670252875015277111978031368595983513855460087194948815657522888938629832429112768388320780786756675142532694207696170550437736610670019171630822449584001466260371025972156435016812570557043362463907903895466578323362418571460219103148714909075834765187717333495689558761692469232887088594959261454741931411052272473518241321748611055354137172331713526076554007923358390383375846620745596451924256800231799328092461482928799467218129478350730683252452854031029327523854935847640188669275324517636245638708401348013769297915695766287225398413201888264040252302310651464060350027403962711014613047389451253278922112969286995158039849751272321965510160584062897606252821773799098392095080978927245269497006441470225134075649768683529873981503437401113327164941296646041508110596123513279049899416817391639777335097516122822607366511727414056703280101297273727455700756622743977672913274751284068692065948571091399945332855555982061289586117126184815625310979846430418026936818046864935246370677100867833050867412646995901510346737914570166326956583284209184899835019091958296069769263311627653310891284102524855146883317480545915077290072420837925395835981431859498818364994486565904359958669431325460732051593573662414038471715890913905035562201369362390 700576854046054300856924975870264727726901329191575156931109055702603947523576134512940860269059175029668703931225443933906521414176580898888729145713968219089646195261457926221772086121373813870504577104941454456887172433908761237417803326047120792796689241386544926967304418532974276184865654106406210860774725474902437479691091596928927158560371842536737201985875250713580698005609601547901633298324797810739861095500501134536468497094535873195825669924523624101611769181819989878925395590047963472771372611306878173535648059819626275560227180515869722040510419350690634212800163548678704208734437800124038648943054997545401487354978297551653460206611598468113537738950690998947454120351102565494938517185035909394312109661251838907206564153404177596906783489899264013274678003317724119407967158415927196724294316316852983397976274946346222059469897483107532011396886198716721861009158891469660443737048709023813094275544404266761947590277202567356338879957956369303903336906251871644583068860842206314757353695246445085681583422562504936594412740441591554723165865155956004854116750806914360651830137287982937615347291678878971111682459881969642417670454455555552231765263491546283526000272320782856863410023652370174260078634324401475157306104371711566321525169907394743772350668918050797136311065848820923227365400718515133989289429701859327201137900755653482508170288653908619375230804598641029490201549619244746898035044441817274336690252870916883356151658190515060696704565765766942942574787356 5599037617425880928458860787125202885738694922534766299497698320355029834259445608944934735872233441368687140653903492643983528036311461554784962415093853013259010605768781367297232892307610555138188741199005933712879362653561195259402160721019251956433448103720669750206371424921170537614782928812963033929217229519697764974902834021282004676696854925028186896087743277999070077122015396139023047909209559777389074839257308764651484487169030781090696916728035746888836842924017041374024667319680854440935545422402225145235739019460641021868929231355877031262248067013501641846765292334450784153735044854187891133959969974752128131633821474820697860951906749781007229352303659755787604923608986911019143402526900395571660070142096766125049228807745671532571962008117315955616567917534145852617365359751184394922069820119516784146342495033063499260380412871628613624121987931903344678032302837710698883806474367775777566767188893930584486305059072561356482698297827300757907393767630155447253292670392405106272444693262402366827582416438111623899179497539767525980332784489260960353445143933252196746719536068100883762669279293846113161819694491349700777234196055261405586893592502994844608676890700448198856790249018298362487915298878502905129527304109413340419144996498993630412575172933165763049907407062301912218440117586310922475329347439653888592979566126989043601353514254664265555007354379848766632993514532619837342091534337539981032093909999939062040758851751089063383604401039775660709129730920 44747754229375390354179256926504625483541078275404217409961263434197483114405391157459391338604889234029410812526974790352601192510498569582694999187811999856127365796008853919494122464467793098035802169858825255024573888517862061738134771520492910896653619948310229812199635393975835548164961358583426728463078786247805561945061029747192840856426999025920414361294386683337533731124033562009085714380847950517162443021900876396005400576366502484731082339949362856498858754918850321155086929826968647839005413219680961310526422859279869165265024636019140385160595604351128801471035218106854110425174044225143265529191818231811037501330093805519844705055351556326116191877422751561633520667227542525208517551503972474206923846814448992332409820222777147997710828369978174005602670286835122912741624372291319780779499312397992767008802278188011597138887850882931994782858798663041371869227701351755826627314250081909693688295848313055726389897188208362567099566339325064413381275051290624189755436558253743580492441064771312868522300052622366223152294898615745732146788362048147394491824669698847033626579243570334617246064997762434518134881775952406612768886474964936000241451182793420112342142495000692165865302999467124878398688158656727068274295891514670515272728022681556246577509615287045115380828278262554750453982592168664013186140246538542392444966558432436293915858218418633803511249986427552085606028890008596180907021690009343082018338959006712369971184087405880774410259695213887792925924010048 357626226988286904486411767949541334302502017247906018781706358945174712123073477540800138219637969241449019211834432980814063430854353821199946530208724220256833022951366794628971465238381153285972981214836349700756981201401742170822220557065240865114915942073070976491140226397878009142567601274187161595094941811796158346035249185093296823334726713608113549510099334049999038198156722284182636682954052557227810611331696843267126106955722211420195035618667323409273324915381396917143956988247557704498349860862666162740547648595589514424429892455366667352129106592332843603907400879574308332985809104000643857905099396833203887557779314681598410718710058294727731023021302522496514138880694194330567127267063749439464031422386440576035894956758091616982739813097321964025755668433234978628796791248911510617271969300699491063069186382200494688280313691936156675293397074778738966147170612966706123357169517563857377533914345359863910577040469254460999826937577672697874253679340976645415219625458759842489866652859018877861808661001205464369287381929516941604574572777387739181354693766333307299060664645106287510616314134709870614335784705272965179909429652982492684977922793863836931167662113895716025662515119116661798980844560711691606644272520270215353260874738757220027115559731897440803835839166448178267321075822977333067860912529646452708280037463854014762462697232778282219456510727190161121783639928637499503976527006685650609363228297955237874415131323772261501963230656741093133755704557854 2858167885888254122957202361793619416616943967875587658336250223083196276542877100052192275462970159738788032164498073836175672278920444742670706058392805297460838184517853508168019277099624433009840501022200251077199430019160001617325711584100823950061834754185839310901160394274193480918907858380497002137544518814750504384834817181151375927516248161257735526872934837179925132258110210730466928392228839613026281592409321725742935638182440172444055453142361343244518266685206862223039078149405262782361149669773360311186578541533954239008118956588286334070002530644430847210969595133871854534559896381118640957514736377238501941102135754607354094515013178671125317955104955010350263335552254120346615603899729270466257160902616259565782705407910916204505922547604258404033129239283255098084275576682473967689564121824036810445972272396232172293717017098728768689701483437060315237456238580130916635210104183700332055712467889472304369309960689195966278025866961475340392625669820697514779159867280905880344914389001243660439831074546924654186924104379271050836644873580707358922897731167440874025141101696734370035404839258100292048584018223242844521551291667303803810635054277656890673247277190684158471541450160754856869185374019815348904669832336395618212304017223031932559589762574530954588528777294930728506916339252626920048916222799267994433360068348363968563326565979874484104256149510368278939933162624089132399452861285451030502094082039569515707679551227451349492616039970665662968008831368942 22842643765926863436471814483837702151813977509553308988704434285040217055837028635716522728934297281133929211961122732220330839093011630313411251574398831580652267587750317279718718141492075269531364535351175901478539626587130315577587954318814343818232900846015890526355930188445149874603192720073083445553859682415958056052623753405346066891378311738848339009848132486728525127569412786853231446728087077240301664811008145330232133345556914040180265604171083092781284269861883784045623743578319774608933818720760369136919909830824578072528321702402904913311502952334080608868277478522239290304153325528973434152039011588133649567548550762736294815272698869739085147033193907198694829331086478633832004478588478932305301288848567769108902641731069112743959356288461455938582462823155515838919079734231725670808442956270534724750767853744711602848279343138393376181934624973149011511934974791249789238829927357492580490550391359273775526516161825756747491603658737453766380116269746414044847491265972470933625661589091354756285230492267661641844733438559362560722987613093112717104552127482877923844170676556896458466812415419847762854054341991647918272409193034876309977687235491877762540350987419117534713497918452060425533679104856916844853070335567529605549547732480401431305427160733381669841169204132889946330718771174705615130564472915847104190641111615908326733516496242707761884408185080484582893871133023408005073935858813327119506027057137619065841644962511039082812695996732437351417670855487465 182559843878818168162532316248505673702441645682037298025178600847434354878656462568272027689890478048466792186318378608555817891866142186474496778947827130556018915431646605669781784269655446111131475893319456655858704526334617039111470402882222323991097891920755359859179864787990445842036488644874215164035566172439520382616864738778431864942072049299419971013034822197612071332911842171993929283729230978062556469245417379296908935963667196108743544245134601531715612742632616376194934060901071635634628089213477191209500976904306233396735468747221927676067639023926283929717323428604345460629714469429711823062159766302130366093263840471286357590561330747749531802920920706808435590573628272892679241136511773385982881048926872277973515895081621563712410586312902646881173791398234086302451841627269130466866940802814910290063559989837945052006118102651270624740513131773843745671236907171318256733245021630202511964685554452322501075282657423725992066160021150684571083078193923942349145502524778161110268901877720101540410756760923037019026576043095620723183305827219551751110992832172136060872698004226316028095160989680850014129036497281545229375782973390440027057944375555854815745015445209016960599666862347538196991172569896975153003866299987396249381229729471625153134036327060511549804922926255124826175016582951532749520596181159420369055718464004325032082869198546184901052831639478255402923388329998302379897621204257559190181254252445071378521905169622775210822876077930255809654569502318038 1459030602575404785860275898608163582972032499340631534025364509896237611788358144136428060719628391170452565378246904080014081230411821066099216330181444193405942017123667378744863621443707267572967358961820666403876637224283868501584863939541440334262663091213266647891173557014749197067144416362098310441274106491145799376101372768474859747366428554523638338564035060767713086251297845680944353753527962754806049283620794422908237875152715285196518969016533625188692255833162595905702043288978555264412104884477156213851100807576365804152270806239675593026225679225394392621799558252378990018214602864565663842429175372009582075460154077206318896208268461714675934781776387284728971926819238672614312044861230785118799800326673112600089050883796870701406282159030785246325371458566948292198002471736162030028495617999090640086886260384867740894055805525162766196359309746009424095842095502626545503853112276852292273140226590189473439935628808355213119792402282412245849699496953028272578138948785573900933901836230717524969751843539634778113284072512371449958369811098958716661239933124051279911493068936777996179067724901040393469810458444786434413008662376888172385784898599735772943483274575286936064938041589409971378354291698628663093436973818991987057441502634993976307957176429398640797062677784466233570977820515916802435280822580444767953344043117559150550789576288963777928939085623948413883884179320463685359053822069248973003149606756632705312550958315118884361216666120008289779428788656884095 11660678005078467453529932783065504701137655867948283913889784054342396173586754679349856018155166502119730261096471281148527280744210331252820935179553512688543918640106703167973625224283973892548935841515357116652704494410730235463503490408031563400435474046183306500006732411790854144574697459277068696744534606259383474539409065808445935862473866329270787931921778409311604041194569192225005542966895945010339613104188308918226927831592805431067105639742001437543473258770192228478673438401938522507051500780964228598993731253226469986677980045451141821653429090643875064540674391038947178025040077772520651543121696374167484264448671790383828821437612132667836707386901899057039594491932944755741073830047396830574626113373311054420232858533292467838459773665264114271464778996474352282882150720247621744522980206072573651775936723453571298490984568928629806575907059020342638334995861845155968129532771176853595128691998014433178701015573849647265936891634427783673688136075080083102524685641946820026096416811865863865326240777889719738392142694486570648978919618619715160416974255139568147236895185412226388529905339404282852174497865079403434714398449533888380103466139112667908272518518727121540231575351680890614309797015874094082350890897254209108800266056197245575628346014862473543777548553836870647175729153026373248411954756904562313083780356692187136512790950759019331972567461470786456938550360918321486316944289220316827461534001399177070332039907167025738525340660052923474932819114842030444 93193036173029792093104556521632930973453251865230826087629177967126669355330876303090251649490474688190105776865369957146304744682233349670497058615740079524575924047160011392757405639436979648105348303146283318610203942256300892554019954430897945068490183961780097425644422552334862282830289920385786453361526995845984107747293861684815697667364013094216454384169797999662725182343941965951408051032438995290387088082922577222656459673224570124563151694346507028582081435818931144852184862430469208283282625339283009672352815144197729315389807998162454142690596557493797791130970414688996748724530176820231602886940124468802684178015496733821621811100259795191905240823262396542782255037722012249370180779448575881114755281939615326365589190257923836982479136791166617847949722705237822364871433232160445966975589760105905150318626921421011915498292609680085574493667581882239267930424010855572056117079227040203591017555338635616801771659113930302996257517956089039949367859678475781876035870428723245339479978709892771103748305148200857456871115109023082779723577482141183719925319258549449590406483182039389054029075064874055245436920348652635692867534173431174098453074398786307972761833664790988901069169071767258615532918559801269339590838024120141135181378922978864118051106894273697871238818241857860329491400722996376855133897024916538376839305682829393974171871741622477705507217311820136626282123266484414988197135526206207180323816850818864353630227458670671832535690263892959758747999105474267816 744806357140716393538866682417076461986556554520362518098039717379095054118396618417012236234132917914889408858813235045675511608409046454942830517043729001515075953908223526828784960229187058703108237609469955699842263114908259690859699488163565905541807772496275152244050657757704743595758126704209083954608043205940386637506254786530167228199005063499432691894940070893843731091896706894182412361371801796498031089157435611105242662871129195939570255167334915491637663559942279871602648108635884468702101236725634164831885128824831941263708550227901689803103091533162190144294630356210116319608198080809646220411943458223335881263858210896185364207151708972682286199753477636610747354328424269863580325951904862959238321422312476296922308949661214132098331689275407347434183288219743803870544394210976052622895048232125127894938489291473227020661693208228482114106963879730959692915260312732705416356045612187386993289943475948240640504915985457183614022710160169400351112018594142013058418071329815298700590536282407391759297918959600085297216941261955161431555147505913774982459094438495069377014569959023063161940535206416919854344699380281852146533047228688753582648469056418872669379712598390710785127573090770510141262715580228308271708434899874167779275506208276901570646569030777294813987939122859616043858549335619261891715895196233397247552718407533643265510040178509471400206869468861997071945685114345192130586908815501478283561654615956994924505283334984329755639489372696884405971569301972852274 5952556744367974638876672116386070333211264966209245297117814301488712107175145014666502115302134063503616773588173658398561332787155708141872931076244348989745182546950455653428632582802955209155706516134766967791984616440298282286344664180050237201131888852212514255165977107432488035797185434928144754680909245995450410260642700419315853135273807126220447090955346499578621443412032062931582820858820153662694903282179414366051911012592374161373257329001512191069009097541315885263407537556888654671165120416812726189428761040248836831542253671223155397030638356240994554987016334379110514779663473467700842943188477990545559007474627998977242056358455050068345794287611464987589030568704566446683314747188884296365648632143442618175146971742422370082863369957236712641762045711259969891120266582337459408178432608021239433023959551578587932005777194419662465792085274736862486918179100958042312859549611013807059670299937783466467864233925170527998361899047876268691376872394336741592823863541163429323164745128703303938710542213827642564399098402206610351117884517073222995948763903296181213112195994521514958477641161324072596941867884884417946119097240341157967722792953558884651387501209786749775580662355550840302556058234789042137598917342597643649169298423525869038935365005965830075813633723182218823643291376244097807448241971390316275504724330077957116572283668066756656819939953451574877585244866891376503107171272862279736421100527140402260027237209706959359650122339530769567903785674043819932459 47573375651755355873963604511360656650048479394299284258123096683931112312222825875657942563551865275338824450841512146424942589501956690195216041669237426012990940471646511496598576913276338780892167854625361026838417976087201507376004423786731895618877810630975573433639809642012612436390466260490878714112641383089353032451528297770415354353265763134716935313447277741051357161951669110645099830404069019474703131359504443224540766954552644887991818363778967903935206379010274690421015954742353095436087084846554891068011720453648169409706139407712495951391200053514388200200133540114263698380942283271754763987997122216726607276000824795645376525634405194473031718485641360901487930538121449251623382334174125111333514020267940749201925866378457521740183646601027249119799934439242506251686927418591979317080222047971188315400930327173803904272048842181864716666765381568762567483811072675286008639301683520189986108482901982083506953671830629281776502830076064609801662960788577003803275520605087066663611968648912676521225513759985993000754359198571783609056028184588858442678626384766356005735416041155756368540318223441529994954918965382498622326253328552126907165327947850321996215657807676815178878558006916612891489772483197957111516671419249926229646231098290029489064130445246640537210470157276492465086936827896840778286791682334564948236340408517002263699943359505254584741613133088224325538767831822042629091587047577836993258714720737541799558816122698784032160593298318804406044274192910753536240 380210974281927337389679276528269822895969201423188610692560033185154116587768595923167001278052076502191346849225003360278808471252758902767760169803768119163669161250655018631745380253395244638754154002967147983824000022709306721821605917980853328547268208679218948389238048011705344370798767704415734472551185713397825538511943522116853226077301353902267572421703965188917471401228571055552949368694780311418307085271333797063513455090569000230553194063186602245550755730490390344771415220660792548463943827040262553482941508560454012454254645048320477248413396829908752324370613274375637473268012188376582074850505865720324110638045099407458657710153253067409804149952438574166903880623273555704243436502108620294402126659835360991152244729047136087474770828007662478372420104842704597294683831841586077775044116697441832776955552528053050858060149289599329186782777095350322337100611285693684274652238446567641681421668730187013709328917103071074631375711986391793164453855057300750846547614847283361683963064011732639180842260650175989290898480419395278299957949143658943145204500061031330257911657224172171866879193821659100305764492433199744165448469413561286401148100093202904044632853952233049409718393333946744416476134757991103058509632118474875309439080548097413481660963377730261146639958729045712061018157375709027923635975348438424467003404769238251533717490002982885912248654398976714847159820706520626292750629399477412338288958582043374421165577597721461937886133608325761941557936440942729536387 3038684300393567614353685724342399549962419548986163296589180116976613819122256181768739249652462185070073046216007752061853160903709833931042652056289156715850250672975317892168128416363098590153281984940227964044334421153247016029973146639037274977399472905120270824852785310776334736166393161687378965447535453390735430864024317393314503419912635146431371299805677435970526559621936470872572584819177326931733770153904179496696506708029406784121126563874536599525226880455830958685035638157641625550662016297740307888782635718144536269256953738033619522222665988725765443243496289744712482350330322246753496566400906248154669024272371625747669701927625276604100791233142124677301896750727139133345387707878476175968365367453800206775784970837261197561963322422501437041538505504829795703252405873101951273197688710296662649861281958659090179523726534757664525129723220659057422689452554395223230229353282728756654805317522570242139900518713550671272212256293637550010756113965680734172039975979936145905950660032716908521188930802042781470814952163613953916766695218692766010869254268231565913127373112580945064112698137833469596474933266762028217150944797672440109731232693639605353565414002484031920343604369474789608998363809315861389420287478147685854659575719539862129508019455914925728588521905780633521222107684519107371837124243055001039950776361485914003017780298720585645780624541494090924225017175274370237871251950599810186127363864433962552107254180780894981046585499803878323357558880761798080129654 24285484398426733871231949136808565858502394793154603973832160202757178622783913536827929067949170350298642358802689393323184125330815044606375682681062104955981951336406250892232640697458958027593298691831264180319196224609621028402760726211382983998949135633480515782824674781643458550518091221421641507874702727619349742326377259336264638913058223147091911178257583180558752352828732864000598463580646039212515336434145060623298662972428247033290127790155922779700314993913995602066684927735613852788030151255432235298937933764145960633092806710930368893263445221827736137316732502240744436914489465767988025328263601008868017097115265943188338315411438498683098894094320725628290170653023546208444806385992032267645836751352452109220630428387974504474348369205094949026206378692858878752830866413425650566831334456592130837998190126925702516600961308092931498209098124632778307942408128482665881570497970767812475752214975320532936580137344241821147076422407873264433871466952350278810427380919836023711987294579596626134598624304055680868938572797044560924396327595711804332024356159717806753862655154723102444842425273711622027377059019003522209386510790394648719169114860996009490271075720918821077683730856049038320502557175201146063856401975352601806999550873086803492302799081616084557842732680076261208504834250636206379616242415020179525561199940200644227614656965436638511871683776685245943334780638374410818645434589863787614860032518648571403715274608117154799871438528961863603753334855321943270824122 194092258060148009891847329022365446073572864394646994219711277539590017774666231660304036469296525485473939658008690976388006301419344241565097641370745203506947854605378866995569137400390757581304218874123575383729488616007807981676383876265158243546229851729563439826929682472108918416747191940337944056246952152094680802603207399323030746102474160861946564808869276702523755917713290389012978758730188952138210127457318394951303389586650351641595212266922174650162051959213291706699353248365891858812076296145387436217023847217007152701803637060334404210787340318653916426953521552514348330988701275426705832896415522271901032807999259434379731891678006291709696967075653539653742978137020319419371880274711893690814290556906776405952405252482073863453680683200326671087441093659843957020489120779275308043012071475806133983323631014739942429159011609297603008937620611052192235803608690360587207314106135066142245547466602872627192153124689868039047385870954881800718275562882488842502684341475569469764185977666345022719518637143511496575582302360884533097116130088827641698178206445124196721974836856552373370187083700807783646755050159858769472292421008332100750434665729857883763124878211772098380943688012566161443036515377860674724719418543398023118321705216863179222945661266335062420666797867914996504985981416321684256751975458295571671138683396369335334278541390426461522386522216760811454226821740982886115921529578441479705217588292588931168491548801264453650711548340409615555350652631930949913920938 1551207545490675578003617843158954038242088079178562394039861108133828183838271882444339154673459513257223354250569397194100822600552855454679612710175629015705632443995946263910991689070046212611920205897199294218365434895901777887297648288227494854203397402723747038873563065686865100016394343920283363128688630198645802757676258112061534378345774056696496585256266251649608934090489955479844501917472053657021087759048423132639126924432441544578723246196153042532489402967873677787650634506713723613766045836722251365309290753013011306885411791358766652710953361609175852698914308501494490737527259928354867850221714504222090388644886482908028160750524556707156657810002443908825460231771841021864235994503831724339723266050960126242613269955132011814293038990168929725244080531646886931106696248165611612815535725249696797479716178187077457260176467448698517750979734130332190414873591100425401567249420620074419741731306419938313122274464965385419090025981231988333173834168332269756699305563676345603607604385013571526768692627323437842490929826522104504778373426947768146449322903399409699687102677893008260925794819517783034004255430596113471860308829259986488767705950927570078803913271865808471524129757772351207601881072374275258348272422441410074284189847769035972303544202365118084323089883527829787039048490968065657004443845048108854229574184685803103758207184463096507007823393048459449673598582147298573412354264307826545951836097434835825039493162298465795542486166081707247586238672542803228268515839 12397435514286714346844152630942559199083470259683525018329671186331920183374389261264218992692050737678461367151353387728044583713598789627752497394223930760256630861689291849148580464062684161366560153927588990734595345318654907451761562301095653147393018109439500871989015635613576450648260929313748668376130949129553735630577617747191511476383543778919733194824162887372805910679487471086726728447634407655647142506103087771334100281548258394881367319353931563963498639448187009611846934790963152924149120510044866870246129762879265666700652255308637325144794236916707490072020695299358427742057175996885679909958846090749753914911876961751564967182468124514404176592326022819631681431984035217387276561727057414067302768972439298180556097539733179038049510176900736557256553543654946881926221379362982509179092503257870438656736997854501155432959753395456077188741224218280130138837794815504704589895151353360772649833927604779239850529496311849516954754142057548845699153448165321889314464765844508702612739338813201117176746502158741562297066098553653181502778307555280877923601798752426035981855124872821762453141439336623859869023021471992364435699394690461578873686665010299282690290739256615293977057674508908064099644715238610339940470874959919683555383504410706836657518598433208527589130979794214447788934008262701820202343788709975830282845622084599668810820883868402434612966500217655880783111157911381727576653401590507466547673150651463514453214160196725333463786900016852741326344954830297617785730670 99081839400907819895538947368703225388205722482278500598431806909051983610944592952275404809029747876818162054027503516499963015704968220638659568153249832877266858808339305489800948692164558582985295852686005514614162959033440861205715083486301400980801595604148398131853586477114866201622014053969822880723366194401481946940730975704156029203104108194811334251591177980215485863692109524826923161517829979684508316220748623346483698990162287772076062285470971175045310847143731277035710893370391541849689918347293773703609551596956587182313219340668240614953093479526365158553085921643928300782372981880937694263574178010204298973505993849346082940087956643677898442136655007629020633487014268925370251034330060890135322993713958738035924330886642078887430691950331642119472632248219519847812313348939090257484109733287282833292620681636998162583294629551356329802262554170816228931962925557535687377978909663350342219726338855358508154592380677559851168732842680288247584010831587055531055104482191489395460068229921343385645894428226460223773989183395499070866586158200208649407629822241866846972210155367471563905993305853429179236586848907461909264456817219518648222171446256476304070398894277816574519341162177647839729712583567662705989848410809274785812480679780867975452774383285029291492322719470805952378634895836537724312620092375415103269957324183304031282550435724049054567328561926113310155935566882445435109821111439256529394765034991488883710342118589161255483290197113891044881818632563397245581017623 791874787500865775200381184981476584762098385733907423186790778453866328332759184072224918128218596924847386311714618662968702661525280392232938040572845012418219991844897610426798686592391338882985843140848419735034933076551184778968076055537218804929849203600622858727097962912043090219250164888231881585796944779162766609077383754245661565890315635727375716898282682895603796523795205684047764672167961122473362715052223379840327318206865444558022123826369719720780828825306121526453939258500947631309088884751318433166958212446745948312601119735160578323666315147734432992800763034802744549687696163165661038732377376825356094522790955439912239633238372919058201664474584413984100737607427186771906865813558698995841407055217850557369262904613292553275228155242400112582852683517150953562667756069590076357624060848549103770404841318292884463228027870931843909352175915276524589754612443876826123563151175349616038715133945921063910708309182462165426926611868325383292376851610467958580694526718296688119310673292336032315684373653617058599989916785407535204629833837819576256630925630102295918228909027577053355704913632727308967912513940059821483754493720720379297009223638083046084625702916968636290371364665800610375121346825326782714265711754713293380728541693058163879710704335273701647709604093940489923930529320696068833646401907279362181498502333353828483149273659959041923073946376035235760592873665437584062972592920690382251059837114774220539561163825090969393713008015732636349742930865858284332063537286 6328768697067300493772629477435279778136324681283367273614804823332253489833745565226035770133275338242931025994129225302171577802540389005840352231684966470768889944500092635658099019188447149260425035891900208402061511813214731463101927902147526969033122912430681320856049765682426695230078510172399855653543565458379138724940341179548991257120229261244951618097937778476536699989369770995670698050530010686892880156685148564306097016971612066502294593188416980747144096429779825541024906924891606575454441984715717253012995425645703114651798698279345662857137192903844775871301986079840060099578314680077504859600637379436464910705458790520518623725257280711625648948346578365485984840994625625120299841806489964887428775252205078095689684867261385911939602707143823052148932294060918135292400962245797976992927390172899029796879603534162602994606262785336655034654976824095136903747173412053940679227976239500073112642534457254372114938967082113447056097688322747764308172221421410426923015710499810318184536704729473735805392420563767092651788736341620289521264636291459619301617210480776835068881505018844011341776661689976051244683690289457979500701896390230254122954975141413655998970842850954956552031102817799213233952493909329519146713359765283722267725054328869920614931031776932197277606808673263977821550085062113116966059940698664719431998885436324044695303741526773930626353018373196220066768641874650220436177418560772622628325734733290658990940085673370685647764425250263302812968018713729218007878997079 50580391132830936114592441566844711363908935410320039272543587731369742394576690667499386008569330942356395822377697954366245934575919555263696263604934642304836890330771695623374430168588334681445319620778365376466407114219455937702087247503159250942571569117030898551416557385062114646843293051395409163908434567996469969538534318335214576848137281007797616966781243204005530532266842693873234055446470888329974703645606343081339371124554747519756624644173536850340847809030828369373914653704793250126076243718359609168225473948905029719949979028924084732154323561107649245952684672162636021514457560753115788018790561706305605135048248843731159034512571874393801912464443907372911202192154848599650912612095525351606259922113502196360547787013928673690651432905090822213549319823891084840117614482811969009082103989755278217681067932155705622084789458552578526535346725107395832171664555689363699327849575701592398993501482316570171414314795919777567909806685089733977268701224283061582583150441640504787506085914560263064485959684127910446079172292457351027213099744664198867459108139028485061420769882170196721647371204960816377786645318776834831287109276281204172621413201672451309990110243486209178630688259542256906093064677678861678781159999881957684088038763897520050083540915363225242538407317564460470355605306019888898142619007652959412115913368794854994493354299414661098048267236471009951936553389671196831820239750635704550214045897128372653291831286934795741699167840301045039856407325658401875225959246568 404245687196140268193148668286143367654598601388107407914420726694130644134351998314456698005408875532457870322971400503028253101613265297597457371415376016175074366903675828100039867788492598008620403687919881244515663105481242687354511070311470396272638426431991366837399388934359746286204255244663165106924905286808244296313945861669612268970728148310715959791034108345786552091238985477303669966935066889443111774991575776703491754662713062557444157657786409561581355761673122114876197444895450054609338128259108151147665952451442931508519350031445016617830264308043200975126321607283442936739137956171666194112579294289365434258269906278396092912337578993732909312475647753780254390157122211108176624281542731024950042180474936093721509528036490466412122440167936622375392260076712728883648289756993847859116885620847313102826010529886818405736589455402176072907286572866047413424360918185108068910771185561819049344161359916930946881729365708171658573636465505039048254000004548114161258455404741531707092617612345912603470376677001767874407000118081512950146577852725337668998591938697281442074027456786914048270989265688205452509930321494453612075643415473451386703501326658942317502633861042271197047873486031586701787837789475143331937835269334386282602953440009767942959625811665882498621279894874441415559841499668055346277195743449773347808468060554353936691209599484774458303073366888137497368241898393784961428526778401960336496484894594541141428650973453166206562461434046255027304089955860933575371118443718 3230790957289506633360414653417908804581332080006314550585306624224629490474915464994303937345087898128539058548706981279252022202428127897152632321037488432678150539611040789579094832687367943387395017204316865061969922441696976520416410639439723717980064570060018234912308760905400055512570862331146449125846200481779711279532305558443486981126825812293161447655816858259143842442513387440237714931138035402526575885223599919956311034512485585685248593658839590408934988950335746435947875062602442594154981657321751421336746300605333269097758615347611921462638714951745752857215181322839235322037833503833588330587222482994803326778832337162334502277285131494939421829089193031572656332358094862510791408777655379814568819921708984130476385842927602059040112278316525284855220510086415561443857251713162108870919656516928309244989168541279398414553508257768196006369074957865273700813598685559025537309862953775477429139681829896216736362568653311457523696394526977501301163555637552966689105041907702516351049927516163695726681483554401404147666916010684040228070194611142137452600788742280061494293543065331490187324140343152862873260672441012527068724648216870789239539573768102653680476561612719154273718257392887647394385494819013927601636306432112190099004879685817594749749034078480162356354492715396183700349792938126615431142738472862225266250871177242598537682044233813814620361753013604121287148763015039569551690127521347640037355689020506269305600461017336087395056154472744994716029518729280995077557037844744 25820971207034146340743548838476763630402762901407149697409117935373728308576947031087927571208080814631677786535144457680956654296283120877214047555250320052501001142422267808864163345811143623436456464707344861013249716946993783807355648374051564022997067520982478654484376915427607656362870051086574234159168846246592423740054999309790589567353669874186143545269862293508435782193039028376910713577688810125618929419010034129505316687866629752561723390289170996065398827410325667724934204485016064239963150714774275270220464590191823595208878906858549156095613409527093476927005257409117019156603740600591192949411583282760059617585568229590350874612423096232007035632731769600106880290572375479785537001832972153308297795557539026742846836401399600614168416084125641214279117237010053853785927978751014281394300271181849345393040668977641294526562928962037853853133178620077659416796779369912931531701852369285610095454297563618485764741038514485167242608942834473680115666866917537391692298946850345955595391222169229005463373890966026713530533927943101497440729219735076851566099614858881111795292567129733668693990822801796601702942806478668560519743102367685201640573582336712968749966341829359800599795941127908312381660254803707690524444732090594016787606957892017916160667403353096185123489539501659206327626062755414224844901116406668656008258572622718037161464268239003652340279992017505683669019191317314494489858151205160328612829112214554518895713842100114345900531521977781207670620624788121392311031274574111 206365236325437170434690530635099069809498305082206879449438841312997674927845196826968362403581972914033748027240396702010241677104885846496696553050532340315213170534770459448678032332136472610650003111158825881165753160956120838005149192621596157885833181225953242867107501481796991533063080846424946793414088925784593813624625463921311513229045441962696181425348033075410723049098366329398070910263402191612537960730056258918706186455740364654967500490792512141481282830936846700158750006863315126450404096414030247694180047117397704722587862166210714297348978785509932183019859406678736651812471957097658946860139964088869726435459757065877119675832807230839087204594709735206992474553311144861154995998866117222922280780682606094741315735410164126535897975151530977137328658355972310607488611961101454687385645058988546985727100358604281369210889787089531796188320716967248133551250880921344898204288268494661514627969954948399621727788926817233492182898119170952505230303244276233479822126509485721353327153537387751739513621190203980916263482921427723134284870487733405183276299221555179764219034429042884093259316779593680740977301938239736227505111105964545133560194788514802890156481290421560356800837341002101709161712702251175120532048152606743598920958258601011255968080621510449117980594157124901594658874605405186499469429925592548282986162728895394001530806078605193966627547872943554088247549733548460477033225442360654255899380282614982099162234961495035823556252084196570355798427616331860922296846461518544 1649304164701508007509425921379776668224926367344479823916936564175192065136685809235624795467993624133674251757064812787223674203873868662188354002566168717157189941323261076127368705692020492176874845354475493359083209682431464865520861799699935115343637331724719586422918778079382151211160910431887241168847346896670116504089353067300917394718180282958532081943564831291361066609704055400262690848927732225829155633193254659342601794121563648772581602670875355117681659230105774424360412043926822797517738871715811896867087435592139412901816985098182933794632248722423299366206437880133271874583489315238674611701355431301169416271979471794517889833114390839201008711184028482234998747316577322068602852167265532781160628342989540718682799682004832471454057597877639206571605536973661149612629696884040154394465863176080523124107403914682377660324872184602817141709793873064002311613788473753524703060029762390352859382512328746441739368928413425692937515518544815514041665922025790499935654992717073462502134543058512770474777717330699177054419272457689153536465445139378999933699559537553400711640443579285524596003237325267601496838517754806994275438930554413978538706214442676633651281499641498883124448214717693439624163047246186154643163115031714983919121226601174118544874768799412331426323073182261522206863545996440981661193811632775516764004902248431663510108751262164013639182773418621556464866477780523578184649288077609912503977841718797795032526327242839799463160879252454956805881476459477580130617370260028536 13181511792548986235270495305291619417132076944142578710200484579896414543878490464615432644392537071204948875508456472851697395746303393527440830117175000957558892594003581460319156834367336041778376515287769050051326238619657313497888643696339544571525533170375390449020478131436800701253377907163248196351916191578656843780167609083739130238317003370283583250038170207088800852246053919944821858233606792349806182658154283321042718256557517811882735129954587004803608889242328236684786467420157747879078048697876036735070601448475560541576186757486380950713890369992769689345057562864696863708827849331329497988640260207967145684843232889063006197927323706011141007079815359849637288216908483661735422312293576457117783966335709579712511022608648024924553413298801798354584839022254944388631515129880730483547157468518325975736840863382295638820668510255903835968727861660818535849387023171398660112753761182179268024000885609322462313854032164637066179423889114022403517565981859266641557350217444529623171776032745480645155035849361614520221678763586205021132251796715853187716919066081403000251633742926683486685258095912609218224831559461570965600063057835964701136813925276382221559100032910597170356799653385277854052266521269152323479245246168335094623221230296488419297908881356842760090485567194236770325967694716911085912220364374902996892301553249074332315205921694641351616326861756360909818186579734296430938034905247237027328391541070756881631198843803681911333306110841317589341337890139606040126973848445569778 105348884047632664485091719024292369180601617562462516501195877043593211013521433981696669545985367566861701879602258748761160307142118027728765776063600814437926625524981143808072924589430243406625760004295881048087274371284728331071698463345398008155775206871280801503177088694784661217133103361640767748838484901354365576171240994075885310179466259922592784471824252385390091861332094358398487636250781359651421856876850417352392460868955778529127936104552317008775217962061895702389084242568469299592780159838689693038922268137138784157866723615696767798455983891360610437770112490683040249974940700502781312400303686432253653173767514886113917199182336334278986403287447558384434873034253528722155804749417953972785032970673347015350280060325378942063281502927862187698424824115823942471321052937750795689605701169557560576713047467751105204653488667801942925938832639763488885966430868820459534283790141430797649465052125969200389267827618224034359293677280151064779788187885280072097756324691309400535219465046386853694160086123071201538276118195110629342168512952584504777393647560962457980200318299878800877805013306093731820339913568250694064873103591289185206314320802810046974966532477599487275687069233312259463344536832629909293763766488972322336705247853500118652907429161722911054040633447328986138647264907518117147877494247391156838776215494672515027152474048435332038549396626901828117446633150986682574113071850687558859371878554503239363530928984492340303653696792927087041361703054089370598580323418695399773 841966682512792472174351980761863488020114351885715582919286410175052560392132410134661881492322361655424610750844240302826879205776958807007414099305100792275826282462120947616021610946089939107941129131959228035676262460973550076154650374631159109560532767679028237429839004580767079699130047182744533565897687778358157352564803241561464416330551025786250010093307923188100516545355138770772264017869275960169856806198294760744225952865706019502373007118031883838225657016325268142083840942008011802118535070574470964655676561176399017658932784643528027391394339425770774712582265084686781047862104919497818007267611668943025475047238916289663508903734081165289191759925941356598367235797056796329346198033062862241624518761909516661657223595550094691340099298188570581343136613468920948134048932678223725382380011167248510837188696721306385396558285710090604922705864137693265422891993661641144187332852508016735663718004149080662577843564947896202095198452708192241549768171038014704210037105902922880760796480508657990521143386915863799659933942296843986460647410252597140233028347008888257595220460341041233885278484634875028044472677186865745313234951073543602658466020291108312038456153304564910864603943156863197343925213420677611350333213384399639109356401282607817111213856052300366269282470913910128354789823343431648585966064245809885781334028344786843244672599393569138605424224808301206356517740613266361003222496757425626009386441710672194423091871688825768465814893789388132770390856318088228315147613869327387064 6729148658702440573291846233364896887044657742163265053278745072877176410141517286668044439376927340507716588408492146305206762417829011952813596461306489403481671318813715676327114112330744357647392455141040031712564209585564274723681799020986550655216239803478858248467911362791140717535421221584781792921682665504855468115561227358950696772269269563949417973479436454501107743621296178721707782843789697518061471247957787594085668171739746047150145415018464148867930584937264878351928703741133742261719778947361870331752827120082590999093693129253794598359465846147033969073950342406163419418608257491404017062773752558868380777215219272178199881238469258238413815782042648799968205757283537733892020067754176774671552940403700697594039187684513804334295175597860300853748362007585408396056475459291447219681973980593546047591925593845970848770649850233671198379077644377356440641304603609433161891515801811892549741024904342577060406190009503245181746294400016647037908496476174255710171206501096600420236007499451842381772242817455423661546286923692573821822360013417400028987902139275282346866071298542683314103442799667728732044299612948110974967437063480935189791316358684111420278909966942138435923045146481053872830352879956009746351804202438653812891582350128883012678639384764847282060204805697624360700893169925439592008579051432682984691328191055929319110250706504685014227983741888927396362015020692820609324382575998518874307648300862325775428305674773434332439840998335798876633958662899646344434063703625841652193 53780593221323835370897735354559109815400520767376222491988695291680217968528083668062352346385447549134637607861802795677559308090195767163854560980918822282635276636790811857975648264231475633550152334235656693585733279817592086261298281030453794433912124518740703685118445382074227319276092882020401576425886647996713479667463742942131886772672619839704085461919791085916282692380794141380997757166089036299235491587844421858428595310411423850078667748571614740890699542442965935390870626105907065521594953450808928061119357881057776384533828898918192598823516929242854420516010759030483688482618586501364775781309576272412246947343504355516554446658873968506225830918371442616546546847905375950850551416437585693152450074011376389854061698752647276142565995768058102263738319203786136089850628335217952050462477559467238506120679798337979129173095891386123811225634390151786714289408437386218136280608624448800766181489658532376755518910702294840257731306349966011822821150835598603776385115073220481726448378533787872732569679795109499737215187545901710290096134645401982305378762085702989695991753004888770966114381568582545135240063156565179019206934628752363321505224974735187221186505193503247279484172377606898016326150490563767506180607363767123186028877076813568647854315973718373108912443351281741844275336255969661342915687608022029073890669637964464646475864675497198390977758987998068259205787594527325709497679592016586921222172217473278195853105864489609866862746148385187605631876142164734543565276149401576789802 429824634871604177930326339374275914345520926485141507361130352388744961144683354586098697227148153784962759847997437666020754164949479172556562420818298298157716971273264081098284686285193710723364808328914544084571757571075675915822720518634368043299170070777979974292471750267560767079824403597118924212697658129059672418061169778677014886249149876163979260213881244708153280153926847234215290774042388521742954270083688746924282861052758301482452014668158611066160230749791000783187831671372508423919120522909168395428499649038034141652625597617855572047383369629586464423436304730240403991107928908272086462497327055302752563645786403291158075549906101906447391441572867917189624439059548824636313086145082155481890365136547268823859221863132978322922503869722999333836105466328292916775471443856898037371822733549699902788037592409860668016350620398813037728087260006682512714538580255699054604418571259508770008039252086612732712193903125731835271384876398120932541622737108328282947846377670467998013781892063858867286410821533435346821035889559025319124623930858970681166027181274498859281807423436833464526351816861262023463851226043465629999186666030843495850284290343102113287587937696887521865700775847953270295613424258138016285310783226998225660459101493205818366122161324316742735577207178406161023607009837789504932824025363223495251768180345051319079383311654060421982147541642431042255586064654047730546351916873813795609633422792154574442791106835319548495432717474202964028015913281061769961580522930787797993561 3435241440384142420412931947962752791349224392044765237828301138672402730238863703940455096621408517145618485085379526301667089548067526739539785511978842503334975190848893777931002550539800449827051584602434038528320296806069375066500975622132705858217124488035524160719410354667485349934025909524216537284628388698805518928610462768363835184473150017066408439068643922835385727452144587782654263488598640554061099781980857150813572797103518814790204224937289800409517060350765437434721408919189202799820036112812488995503571957880092791144628410431747777056285851780184025343643709180416723580846114397059087657652515826140390736974733566936363719207069640480264936189718380367652344595678499266582499791345112425282663529483624005839959260651336072385238435376967922322894986289689783690269335975941580083601163438436466823613377675832666131015972689241262915527303575822209807367044091474445498904135195414785039851714587181909404056285312895806391232192829373128644862492759052680101182947312259326700073289572931439734025874339100068111575652221953829831319796402479263254600077227639148329585603889708458931534178796896500843797885957846351143319098124480382434148233733343242047395951719045413069039051375132836888770238251403388558749359384145940051380732988810491541651529108296071365039459387756069297415359471521599109010358517317714939257347937003323629718093552119201561280305038867262453662636622688782066268352018695934726436893521956507102805561857947354504631915798418506984364226137565041664399614851228635313101400 27455128313069439131819799200527045640559639919780057555214435278421375406685512195741823224816798124661403644083787859675175980191751204181528905046148045913208416495944576166436617769710794845347160096438577880767166300185173066730236218233354121731811842592867593644041500053664788498874756832147326537211109215116801507431319956978020593173956384231908672534368129018693951651454517682426263397600211278066916299269598992450765096743981870896303773624971034673502054777429079736111755378349389964619394747024869007625285706266789520783464779615770585213970068834004035392381827671845052407534082196046870663360495687210819280523210439901210543188703093235720944664625029087698038738303732507662141015126470056143512786758334040689939029871983790650441027753743544476319259944859395089145619914390450066103221973380331581474861184880079359106601600757838807752745772648006276600936861656240751472020847713544761821093868167884527851703716969249539404892427114120021962416074566222557605347918955242495882667947267608505903189495815979495298998780339118418908335210497547548707643525192212906999335867143863675912641321572360129726284099671275849719792571980513726987731548161572012624632317337445741716964945017119143225012484712226694272109972445736112538742686723962019943716334022168268888125269008900234706376152779314512815666289093868636331847020738778187302449664176467869955627805434015846718074423344014311047782568712880410192663891403112184192957634838286219590779762466242415363748507498716989581972370759917880348491458 219426935295182683599623893726375913187126850978898952398607462719389091978127700455677942984292699491387061367316439902359770442660696271213594628615233383215268854426938582545173328834619941576771670674266746710808091613181877314896868312606409120252349135724483181224588571608607367033960934230284808358195422978579285356237773803775219903100742440252430525119816902510114020382342351443919991146916257218948608448317487680692512138002690742748997731161598277942169001093964030201740041426688056003148057580046074092954509619192043169085316089851633764757259982936789602800308094318328434534953647376149557659878784020785269577941175139850720870301125900345265702337869100055601208650620693898353576485632672109407350007572188106744792655300036773084850529011509740235336010254262791878195123341238586371452326851246515150631667026428722940108215756458371046564113536987810505345041341417338605926774728497236966849822618188750551188521192708886051978285907076445792596041660881622989214342789124494971438283431580102683896299794437891930335365809562830626078592020162805023056608361295167224826571362472260231952753192639276799673474247868811180880513458850758400612550479495393729180849323904102013757257067330768089346867529803870855627285417782685195719954738087812971797775042349710746269712417806608949855101191192747118490436473477777533395547293600854951901767614133373448645840075672095824074381578466688486090250722187377742098992505231855471152080134513302735655949525060831903190223966906623812791398690958493488796663530 1753705422715509186396946234835194028919605943641460787612102014940178351541505138230370618249117636264778573819251181220073370093949780128998132892915678570978585805390391836248946587564227532296645776124477103287087946416520794947213473555762858863254725685746425879307810958875630688504902516775792140681296813448884105666310555468720155937037076190400987296328186176940549277331200957160162775493166718163381418096323073827503251595704948490727873397840242360530266990085197514578735371862732910407159610773721233091554841775310069866782557170260822216317300336007616282768279431408363453068860247955632337065010402795625000388783437593918780037098166344874668083265063791979087710378790116958332075033815895463518151685408164159935887920231499277700718088348687580331852549993621722702076345261579711205439608509323653736192920116131613199613217445933471746982812543381156443131063740262836447265542163726048950058659266553318723945001472025340483665778524180241767923350624941064240271611638019410815423608015551057500962702010037301134572496710313458123591435136067813207532975231609228409984591000488532009786065939817363477435311422769299785614531137255421537716462097034821085361535691235690746057687256913699954326454006865116748529154969434052257527781531657865386852389561728744845238298854110626295957908675547027285312757120319308492518134519406697486018203174776570039099882095027255463257518191642209148635471070737354898974055964482026413717286253693459753221935365794184651648280255800996944541051020905435339552661870 14015984219024051432546317920759668372652760841724553777199250977911461296153030476810173088654009087874028108328360717382549001645855546854212779947233513358707972899750140348408031230688347115283207659308646934186395668910445211805600563316097572628386835358223741700868393881864822383924652572522975159904422792166425240617941960339430919097041276005102830660536752320171564034501401623014734099532291692564437573592845970673420815347687576756235447065030643833362729879738881808852426765043529166424466793382990691466352419125756652579445245699724137480422481773872971432859227088981437859617794240701056558551601478481183814547109915132466528478083280992895866778006521651752374506054962143647454694013808965993563067550114132185835709203316945892790140783149349373040901115164809519397906949054722248271086100784082194987683024305831130551459897146432316637686732596453861865804475872965783408623612621447103803899998671301411760473024782491331456293890264634982255634564384073478848046995766795249550148954111253375776360580808072886197323670269824831745641981514631356087373415888805908525036782914818061129498607246033529112537338907388386232939035852099595618550596376167120572718667574573892578118325412156253000628691086200071963230869290606575774821010938019192607938376480193000664141715305498200980817672408750644995442145608672118508480756256098594839473780026801013841660516262693372718599559136730818919397871912110025879941288208817396667984975698550329370962428982853959120998815708562506794983583892707059581092416864 112018770601213669948491238198214741800993654386687174180599027103833376203377258745466497072748271910267818209211310644940764552296679110577014156775583270352792229189118485018404487709933992026540582619007182641488619754188559895571778184054557846150388191001514014820018952180752552323514716894533825973863791246781610320310216359664805230829983296735135118105881845191849891702519657790528733465156132650697901558520920551600313260721160255154518364359568348486894250025548285741719458365430235436716261325883623712119654240252855485185432877167992852175029422582706051297845138517878260191086595580699579702263284989635224940895346393138539227018855183939067083258540645117735020739572488567295228035384127123596048444335420272228070314155005336608786937197570638446137122266706551727352538495577322562529008372022860473812545926041488594764664025273522708565154711741866389901207659389709600638867443447043805426533920906505719223736680690166251879832943219033894642432947806037524955307635821752261005622960620216567724268800090299554042340471625543986743129598961810543456523387668105754309363419550224630910081792106884396752623353471132713351132650509185269854437263459084586858351703562065881898351796003957293807188120241615987177791564471800705072807840500605140318214998286539544007864030830720255953226965158749501291176950833645324637662307420011472450697046814355368806832200344199574241927441940172208759263321776676850407140771720551241001690366070212956225547032792635487264586014863062380227914657223967106614626142845 895278697893852531959414517115265936510324548842099204132873824990803560244350080792040404864109577671015490279480993291320200859645540931301708272043940676010468704494982583929992979435946573196675486726158502722982226232635264208914155503483090932169256650165956692267837826741565444963331091908128965822814827585937652109478237104073771344968715584913301710509003232780931792607051855623004474213442927241887412659367356063798622485883370116095116710955463505358098484643303564658647073892409223272372545585632896783364185217287093634886429782599827519863386555694969294456879307190132616254792295980390395020538295635380645767490066183499874027765671804330649716916000192789368934901946510152181663249207696339270273606103146279767031187163628485724882991010466080486813015502674398346329306409005443005714595324246425170492180268521835613959019769599014760296910714473534784677897697865919457976116039881343199886709647864119577214152955789312180086531721487537320631964481258896103377154615012145976822618870603020151092468812640401741788364237511787341604891017149524215089988289457633858602556875334954249902078768013814650967741219227008601706831082229737771912488163496855618771324132824251286728235404780917316657513983236908505190453455269066595684064763895996111201916994004599049109839999350567033258193808319365684564473325006647439792634730070462242118080349548694143188595831476756105144981005195920061494119422639438866872223528686419769170855843876425133596328679016752187742166299951417968562409722468833459320357601172 7155268690919203467520742509126359537575389287251889212266663491030121339769301673278503986949246714901482827666213587498184642065206136602556017432036061479388349945245645789803875822674768586382321861709784264104869826357176518504044025368902258632744284879369385797828641319008466964382894698571223041933536066280755801192581181604748781318024056295870479512747950224625158811428220309734805045169774056921115386221620281824888338127630713809462738435952214569083075775989982709090271779350480015540325319826655842212654913859914143232372980545169689961732677264338560567541346144131035405363716640863732403218535038407351961836544938668600780963301662078970446685913601247267634302684750449512877315658013504019688929316826841785662306146382318152006227349508129162447555705655859079192655096069173429393761305679848493481624900693262429214040598846930982997969415907740598663738420909804813785840301761847731517788340605778885081960508207734963567634731350089022382648654931053955115590972962462709801187732637572598701423578981943982498023814207991438957443589610011037847707837293762191542379949825649619066027918545232744725384312615912890346252744319482283989153159628626165957358845231177506675919524487878491470935093679906741751357788529964528602649849865861206772833214236502553933457844597027122293721565215303648979422093873772302774756904863396034979239014703042891022304632558339366898293575853919615098272918910090810793219222309282697323205301954297953774155301632177023516839365832126294653410980353235695801131779465936 57186548948844063269802080738332626598502496177630162674591941435149333250530083886442642195825148146268397129489045427168176222157952966712862361342472576377823558692709936744964619897001945359769191126702785612933178907807182554768837879679627605269473353372844504493384167392713547294107392194106664176657808613804192336531470832151261838910277115210339838677931756296111474097592009854539489075177458774752743446593692484082309877842627977759477622385234841221727738505513315755116463981773475144291180757004335119954921662111172570036358591506867227250161378436902449411523011344322017371867790477712004157069614986386967143142377922618422974302095069607694698721828323110565158722921847725756533745202314508201552602602429552679110937041247882601985550775866122452774516163072702926467236015246661192425270315066519279449851397615000731651430215188447688070200269710476849008413492843177804673799080993975226701018470203650882503883848915726014550406617705375976808390211979902057696782532715303935195438734550796161349291062275704490646595977359762490268659000991833095536940956450264076724438064697390728330382824134877466942839615554688979799177855044826621860693600720092294604565923084407719775922982247289149428077887056076065832610423980648006192382614708931158279561898710408971338318135452624097177488478584180813546632828461010803220710759490633725795204982073500655292393670573247913705679600903053853946044878492738766397286686983243588454734342021958228413468213521580690183349613763571710961644390843662060571405366981302 457048277958108069763833056627737441335400941764936565229468391225908404436014200564731260643742824863297698301427496678054612093009063111976537848806930978309241096718189904573312122734433662539207826260733469215841764134462060864944134889694779793680669737863781255752112396020834490082480274776363165604014807715457759490228935436268509068529976396994785123621900999082269131999483152204928804041746525179291348847391218159065303134720654569087856832764497864990826713727300802569344124485398365179939227510379967223951073262843418669507231927137765250342847295467042729680496618328342723235596805547951812304003861957331571884940311791355617876078266208271504663936636928191315480992933432933673771528828283840162672501488647633648474000441738638150082629480178187882746405277723688346834779156151214622946371263899136762079471012356720359694998280206324205350936053924064643194342713965983850708276755237354742284104883737506914013589802670605412667772743495530470424483115653073751125183866039340752749653047105527247136211858713806152484770756737009361749586221644258299087322534217348334093370114310076968782023338961314110144391832906639543534818123287914895284647041481069059417369481861515653094926489829663472629903525927733232108951584163702008659929472234855208603737597258385485816270177404672834760116860522573150735912252682741624549756357521452173530595495482893044739908019462437772397167796950935695826504721882647570273045820352365705862500656158108838292986169495115305630347564420757721470477746164153968557292298858804 3652838830764807251021306229195868878313045103752771985209219828950710233392554164455408925279866221783224468247700125028511197550286838117423316868584604988122106095901966655472777000248368547192634738323528844123777237342230064199445674923755477452244432263075873841580977598839860447277737892643287641070553199273577427618330460860126260991322217357965033169521394150230970427503850660032758224388180930529095805363534889818628571591011626486163133130209193760011392983572009165226386464113658981945369480270303575647886868882112501664077164898632773519325127807529105203702524484639522243065842441356388197885963600746790937182714865783656417859375801066514947189026248959545535429745589083862005096960035160033274452751455070768214066528782389331206176050784385761294095266438340157912190447811209412728404953737297628525696312703088311371034178790657910752774010680893658938513237118762734969548081396203402120898968166978584877336405589089396084749633498289454913897762558397044588719652229803747207482592935082858902146036362212930995052262300384466821738604170542684684818551787290761295871498914251190766518301109663741285256499354366994896677712317350807812165705012436761104083898296154701425019583297042789472331090404404833607614640765509594691643482944954713113305945223696753255250458399198425991010393005504406041000523294007235482993870852489661053816242909103651563418651129297346901444393650353408510196512721106246846276264170079959385669861053264444902007240651114501624815224805002902446873088349180041359055733565005460 29194375538044353528058308101102788062454536083590313060845579401120967756211027418464281001167990535529294464946590888646792523920198302849377261209364417322265164154676242728961821823984948424905308810083936730201876867342184544370518903178265822239261930074248126954043542587927170334873542811297940901965809772725488604004079035724563779546792310275017808786677676559961769759381324229974819596277111614251071175462998287076386013322039713696153945860277971809715621887014859171644536161203129179074873160961874106468152761519409461333445605497395654670322960190498659486366565504462280017238978195540265196369235198717665332481059074542895392377774179177199775009310502691815333271172370729241762209916881811985959424067558602001013767224731426949718623347049957365190309141776627541607371894775617603515624738653338254100925622441641566498075619529653054052553382306830679308739203520777305809571429069376721533899915450497821737198093361263247638691592220107572869768970819074004776669021629435360723374520839141633687771016626312796782272504025920907280573887332464929520175180857722806660430421215747396287023548916469931647381598748660971701004416684210859239658877079802337924229389931444146936236087774587069355960352575443339424674143788768149256246752056055969090972445008570521290546002085324780615493924885805197463808348766766191643301409125573890084448938311186958535255059864589952863078512394739669465173325274768823849182771731316572887684769832511466755254242141377211273444295504136661926256528810405553393716179060245662 233328674969518098981902203137262562375844919640174629507361643567349285136715948505006799749871116884314621355488631627307052754003571354300658120386032150297126371167588540171784513041533406857947984266647069306495832321758586452920794619710664783559463767093100945988527623806501768594726140942029857552412692649741611357325754694920801658517288435171740546248025012345030698181002240708959148114855910070226089935752879233115227936358551157595014002715561646530769252631266459316891328098791060381783720740787489542334440706483562047669875942903152667760026029440969431702287427022706366025969280384961076670985876896385471995792513633062099497308756012236083005597952534548985089126241822311884579847475704405807110431153699798154680717704343666843907195832071423759590000993754686820469457263046687392226630195426630131930807933908242105037337547629500466543193908839838490173160086229409833379512809952703987357508653413469036828416393391139240925779249601133009493358512511568542760551217153484638291597750027472430692028559003340043702647530662713604564575351912213800796002904810798600670257516505314047774225388522032095537106786953850795344117784007304634220074623292934997519179586678797987343733741698313944212981913355941142833222983687442083686701144612184922163221998028272605447018909630542640779785533745468165814677724052696922257870601705696827988378227316855694448763675624417068837365926768541637473479626233112782983423415426806596227266499892627629840416197738865201172265699776029697092764626665116287957776028014051422 1864821571321765935593905535679394924017714877601706321414732736128671499140947054938622922461808797835662537000359704064512487669012736109679705942386020934050120086131354180317864344454080792752559091250883564150636645599719101050888598032015132793995130020617649868157613644306041780893288537982245996651566047691099599902914559820485743504700053945057197063152623749286445291723558878067412306426421601644135818710719656646484661415320102486990726732695281215937958966631708540401219010337578078485778270500598355970675192839114104302859122591609749571520733928413099767854039728912090681402053057012620736840770945081924815615338930739812412495049667942851395799511746221093459445042113628030007365115912746232291261676440093970400396779669757895780646889577851218140893555245089485686240562426549542879755302478446581531395170992906116881895392521835096815748643352333287528000003863717000154278580761846436604601144985324298686088229853032184817547056443600417962986207514335881906332790516204114818032407954952817670702980133832093755416844129259650395962752924433315882901962440360095130991217280422636035497022028725534562946342044941988912080039685643771757975622113090133654770604879771897883762779302656299141294428196797494386798788255336726116121738338483908062481080615648017004795592226023217640646439838328999214766125133398729484588338490010647956912251472941506469308907939636869447252569617570492246855081752717083089248136168829814067375586153808781340984593543289180912405225078621736006406264620304122037774033893772381127 14904132345233747438672259464122951566230073575569031822217904305315255288999058863428767448307653919280424582327055775695385102292841961412050699566221089160197987249041341849279080345535631807289282643486556336124926479998265699999252646047878496965333435107434192216913127869316942091817633823933773791678042227937881053623836597906185171230961786429128589499789642217795274085226479617591447192991962609419533705271858714414955988767675998104610089154970921416012971378594828822457013031200366264483538777040232392451961484751461597942971199900615704024496363168769088179807672756698201357045222321117492577116514358368370127843003818926945764260133811994906072782682462124151725987663000356730589480493699476494117020498522234407835387862002094820555860495438589221640616118594259259278556018351493349949991293767099013144890745204341786947616856736343295003885625306364643630108655159155537727567598595497117624781269626227478441756420876020387333264194213032846379304537210299603085481274331441480790549913016740510782120726824558262566478701819504567733102254520059071082794454530199438993576434263872336296525398983529964220283254998578297927432580660131461556393005157323303368443041740486823295905829863310566371386553714804186133262786443221900249157940645291104368198958180705371941118060753078684388547983003728698575931654051981883917276070010316562500690959985647918936654100665420611777594882832191036208678087043416353987100958538592356223838337859806726537570569646339968065524759483392302973750380345876574182530399055817905584 119117715794701787165197952539225740981191997266050680322415302023479087445500725625065738335194222934621098980246517304233503190443149839132840483260506727933131877382792828542858803898132572597749140673317506952831297111261579956928868535348234947681375699547400055466611640064122911217508883346664300225279121295996011404057566458959566600174683078036263704489691140320402361941768721353679585174273536803594022295238951470467926073811783274087696523322825356349825188594086868137302284050746263648962464062693334626848488308467377498983771219298778889219563748358340346140500400043602123315951339461581514629437698869717767784088919459397498195122393032396292750052875360871785744293536832611950820364449650057829067766776878475768727524495746355097331607291596417681240825630562951963313544175060133900524906397301203455364715978913392621672532019502209246692803891768259545788206871193100422407042349346123407729366384767164503626459245147377110989774930775001029223127329190314499918628048829279435120416760966886173713232300888340271218104908971585032147283011908433413732268126329381359578251302959689982793952554077497335767864193479863267935959207244704596930217946009672621381239718416180831396702324113055006438927887363682690101952126214887671676286436978500155434612782769225288826985270858500648830801093601655801424422113943144329551332105711051075308853303109421619406451449188152219654781974826668478879556781837396839063911024702891289665185687750313832319364681754784821823345455035767756258496791724879034423247000188912793007 952020410260794154194393116228774339354233658012018830520124904316695094621443493850919511013911700559967058839333291614219627998014037151645836863751071957336832810208717782774808649379014571034764488636026363270787731563939620269989304215472438188308959587384910746240553774148673035843878868826520345005833982533493512341883976780494344249426539070073748326041451097910755855861857545474557861594392135429909293263036164644364731213859770213933133521986202247493295757983974292019920673116627590170745652893475157786535521427175713226364120144009811732816244927640421684270911362614026730078568903011444426728430925396635930410005222715083550101978207880292315472075501520236068808650057779721270038005336682471316182751838431752603524019234099068386452185474407667160013191202068941194668117351269217079290111136827446410871503822588048635344933741009179511388290976450025565584065992016456473256539782574748439688785024900827661759163414896136027943315920425515566440022422327672890124796923695439074382240824775568412791990838863973016685089006100132746377318474693266706193944162681434001374498278731184049776456914994110853562773469561911472710841334507168197065429914129448578142977811502403610936570908457478521131805936113554910647374682889082525271070629371752544211741552837822713769982373094509846583879819113753205040768686045004553155323110802677782293621677927374138235008458740489837753737124911662730050739871640134083463374137589208815948089719768266460585532296855826948944444841295127048172285758938914735277193059895613589244 7608804150150594648853194615506043016099531645162686637519227442291574753013698323648659195788121787164346301012261767127853211923607484154267345547465506037207453819709521474606147095845103674051742961441193228812455845464349607322096904954983078243806551242964624371714862612524164880553660353585789760264721755825691579867831491547070201089955008686358500357143192065840992960354590506700367191673274788446870213958066452143850773034536920675920322066345546382355501522219459691460062582248149809455455637031679383210358149368465817749140057401575243299697796836487732675980199621088689010527843921933460716647852247096560414051483574526131880140438290893231050006200483080703283647566898387010568390868736024123623580204853950243916308101176284789750651685151330629876876043219629050330385969188849060479530263430714366239202776010348838207429352433134161267741403320383837836508830983023299159611799468745602770620105900686187460110259380665754791645842270516679140191086550589685484146988557808853510033941514563743057937113045347647142835807793066567264124582067453315929966285545460134436373619029742194656182531756750782172093977378601535755545026305053051559597556544257144823912544544007958222887818928590397926001562009456882812269023902832459850515034998227635648626892934775669113281203257863707403484331458744433282321913991573968522124025448278074993259308427833324912207290673305454623860111893461273065574913600917548905291431460693271075526165750517529970314887547463759654354174983108821197179965144273133821578295314933761532245 60811651126671424302666359107988874917039766151221916021364285234999656907157895854174816812898181473564206900315874520429896547381960233846007359197734490582158548178945926590213461462823689558794686771065865810038050410398741504975210111806249999556597138218896701291626005650191003478804324980281719222493447156769628560401980817476899890329548833828809276504724957934801239501736999544591060356844356439596143302416592215676630886116593661170058793417267188713661742709871059652132637388747752980305600818834025797742165604671718165772167685702858092545767894762630968438411559760364931610280608837539513094144095156752883446805666899990657994813255112134495192464920926062385706116734142534116622922008128458763933580666101056828720278951715558394776038730219443906644181626355662504586395514021633488924076750312813685862015281747465540903908527076340228805047263320483441194501702397508124123770126843978273891848198974783717376014003966378175458229506352757148910571295428762424960109191799894924259180310713653933545688663681865250285893554313969213106213920821085148305334216411305303419117159358102044158837181329950584000625996765959334843488073522915826781852750911752721347742980433590983131949857440158024782214324712832272247987215452296204025586203688741368261888707903860135705585094491445414070738017553793855498470892995652475637001525379853118193626521475779773813618330694137984882305994304981126688351419776974429201373927311949625559461886498714226980370689113318162258929269071912727310290465445754472990826518575694780125536 486023678718855499665066585638374376947738505526115727796289262587676667431898943988480317346451127529381413776518314573566199030833213639416257131725592049884144444785647341443593340163678368466796175459837667323236834662138050830945630229046818821716092351083743868538777655038508868881698023849528983555804058714552147413368390340722627906086041178004811448620508660188368173335634882027204662175010858448592226042667397819889106576443442964792534973538055100506450742132731383331391939994594073774774738947377036205100119318229843920672290209052028251049542284511357874492795848334668146721108657682045617932547949851587320240019627233498609217988979282687304451818232921199541314629674127615048361148311572604027017269112447793369089581761884681262801705615738757352787935321947497209133237293189324106118957095218118825061615884816425664359045414415541494746680767361727901676342145931089968364617296318195799596251398001633617753372528346114714941222661232393173862523594320284481680075553158447584202390088789872924590301828787581327870987128094530730422369797972335855274787524684145692734496245656263818072908245049469191349392278214064057450873398023701024745985087435666552628418580679880970505227687943196621406457832582194892601623733729188022414472370343631353111534419923074727279830476355684845183994693022997907886777704326364031026473905291930088245477764193701645896099493536632678117246612880787426387219732815610351358572922880812875216715754467495223316942919464582819493451391969252648216050069290176787262178735452827210639637 3884438985475166932533564043038775912144834007079226346796325467547189998071454850974206541832139752761572370585233345155323237689845132703798849409948716312984450211997186398439431624640064018091259556269154466924039227165098289495588475519377030528598349632430578180280846218436021004349830092748862814365951316668403633334937118581406276129020414638139718510434709537874364600453455571688331327612346775955139795614526959261480941719745029293027372737621729772203209820082055777226086954672013696854567797178133462606363378596261783633262288433486152823340969835364695604335410882752574273138359403793027189559357405248882987577913152586210462753379155061043337955710423279307264154231128370037939543767828771437834290620115770541457201749730271500607436964197475609503551062548567559437688370415583994229330047462359014754822634401025047833545587614886381954589843047106326883046140858919356367691032666643544247473282876248407380795627046327437918752871588808234410780615383267598746304320069050772965731759054925278606985136791995651082191726263404951670661723617106677197237160900531403408715956768376630678168683332563032442125397614672532147220910008608109993473566449017789352366209338391276005165767914665366863510922351519167239547804254876997800401007980009174246708816688417317666938536025551962454067335819988884036370945314954031486070190441800886831146487995243594910837679860259246658014818167555017646655560978104430148071214816910358514717622187778368922241266005891581171253143842539800017748999201357221920359437321814043520798246 31045554615837497884639796581464731850640516810314802789719172191098652773717719410855758623372457678189652418536692941850950931136229541132022446274377001111291681276728761447697935471006591406789343877973142886753173605106002066921972661764295919042039376312753356731833753104695771476262073956995340787271600800720203227807873034699905273435718409242413215240219870267443243839990978275128846556496589714290976371938629503035853082157602822538977577858859350208162780662809134867390341009229150070659642095182773521022553766680413508385291952864906254802143162581759286444156457110140023963906222883283178564586622647777802700301384398816952412782818038249991155006220354140546308861266532515465925673986199537850228026307171068392562244906559064533835851250019350188818389093062959720743430815939568116725863847439957859002986164934916625629467599725249102209125880727556103057596873350553692078959878647822273196777477368837475365788129599474339869853466029741882627476708790794987373917877620621339239593767459026617417356349374589560016929079984629588845249910341384407180191434717849590574742955361627689602802034239804521993977604614575031629222411313837965027404820858972673588204677580298123336899813529141702474109226181453009072855259676623141668755851491648756472574624786357741087972413815588044816190205029580491962522487583375601275532776960245046307256756155255919756977633057405167800316747858894993665973635365992729609362111040879220468221807739176830327226694755151142316971538547374456939954466148870257852596409089995577644340250 248125148287830167645223253641024704432458459571054560301487346909256662233637119205404154306494430856193436565070972235657292215870824935349418746855027167406964909743336141473106891957319605708068354889269958764281245568535089409389006364975527968855555417762768403933204881213388185398854405529823349593959565991340432574071350074036113771686205737513557980224493886347875849674617013595573179000898863874449101046565160707915237401361208049063983717425080544953728791844411292184567154266111454531546815078377954389913936087095692702160262746434499271888061903934597652217941166912663211689642550309133370662004466541600525586286105732190295148193810821847937299440020296777431034182373045013038370057336036476278154288787619783407466665083835541328039491468201172475764999681165556101492207323095249179011267106118858457220999343405341805655969375911276977086926268964344526185430604446794679597069041002026403475834100129843407791362843592316770798160279342466891710969471830867914755447734593045637721925675294421346853012356014445382220902177398070328456121447550274407303391040637251962337460736445566392931826084891645234232288024210188563410882726406145224038850649408803618745965640369189268163624832618611690783959149255480115732832434110149429862946301033880234668180907491020613309068044891117591147415471401323609975133920559062114675676161649172650505735906646715243894880661016791815645435447115325947934426876067175707156488273773626749967016352663298867875829448893985245968003002023276083111910310020961110140897115590636737349229792 1983089826966615688435119680575990213940422879207544505402595052800927306119129728253246383597001572700546175829655341315527968849895030045079565248343272578497798220883137786574755552038859314141767339801855258072650245166760137649988729642284844638049345683140466440427993831310120998781562288852135527533644577761325516120792003861201362104718459277740460421646696090102617753526137447367534631156316252796545705726430703106126536335941164410720997805478482258982589355230615800465533306246374497988409611888804991640909823142453794001970997641550127410486110717192495522613100307448482177841909349020664110680336601021480432349865015534093940078288249951730580083669998312794499169330263961077883091713756351547634584800237759437760210378606267686136624224931362734689597012735099597967035796262681004725352713710817695057713784240490670718834530704327507844158462481412685367253778064545493212131952586910268343107924782736434786962628427994963388489910414934275285556118495897300488059331261443602066160191077020449092497812009253569276427914125632348041891347783948604406161465102757836988304920078350278986671279991145843065846219501067491896940412106860324427018941909414660119340941032425859227552557121988646650267176909269801745158580606001103489315743194841967082044841068983846360060020838959243724977804818500441723726767205012488266187849975506451276031491395833331782787163513654905659209593164352446581709494680906323710073535543532625428007920894242628719417555720333185123268326322829078617396265056337868941756458272240393175712746484 15849451289268904050058049893345792932980857450045897232931731851509570179496516769846430535847204853638577271620573313426896549684748172583980058611196027759940119816919625743588623649697836121462887865249954068695797039129033177201388964257892598219069331601790568228507065076452951846886058129231933511598019635503690443561952091936526904618614988042064443234937820644465943854189700470981668569273608702279829466646663298789374654303745897013856912023245712419604595392790778753479750613975351247769777485107305897975186600556467970194259466109433478033361861626709182991444793506819965032147169020501129803987454363344545052846595903579493103698237549908748251240694637720918601399896709406927040351405254479541890828067794713653402520079287326671207139175604697012078587998633315868607487777178131452779397858024301048560939727427544695518221341797768985092038615691562021023787877869025582972052847890672013862649024373416924832105956303022646749596526161342291196746815920953845085778495086988990096186756421459929988654559204310248678492208473061742599583254770931047657908467374178849104603454922016021867912035431497942645164579913608465435122854574987068096817287959757133842038456133861308571221016083278483524798202830649817945975350426354859885656965942345903251912719163214503100876844592117838337522031280641255618079609634070416212226139217377977267384985975599865844076568598507031318572376803256710453220187832971202057304446286024325188644671927112535954481644836026002891367877455954149080599072627432773521671402461113348221579797678 126673659689507357986405756037441982354253661045986492522745708351940823173718379647938160626791241713607616182700337515608756107831142024767891386445318996569358930556160575376629315946939741666875684231039113027476210039003916664387013786779827747737861620282662631549759196722538654711223837062888498168438944803810549431575104901296991134187816606545838154850903115826014850538742966426913251289906482280054287589596155112602719992594391837412177044898760000819753528148549680365545571335716920603364695307273303510015845320275939858629373287299157478657477055864939419310693405429283288955465001796460542437170785546843109711021419527478908713369694634568441175103134778186098394419128810092170630086603620883710043537589563644862211801106047291976104423870097455106993727869527384356773058231115909443418354118126702857835446306355898242818705277912083056294214773118743505389373010440236906431096985541145829686900748249486931178401281045638014306715605459148924782834978625208710454659158818354110184164579227387878925302850950270773699515918795914421375568733024430139786245894172305832204794573043693689714616340137164996426241546554437442871038856434077941332462719422842598589427959787648304876928883242253122854735289937391885787377425521016241959817703508581491361038409712547657183537601306885420814093391377222437083623401090087192644789611590097797603954340948584437971162502764140361581561408572667140446152227250427822670888452712127721184351084765553870657687303367744564112859015192622973122211230371727959629550181677533239995102517902 1012415173234241177275882533520136709247655923896711716992087156155270577896661045961319045050301793869271796836159729695223889488247036558755466275967449427057002659132990307271206379604647080613016461483550433624646570866542961839943948004756885205429711864805545923588671718175231065457045784973549524800861220952838655829921287604083514566688366109489266629683185907497765196268246380047412476634336431645179353876269703789135742202954423725684221391588560533625319944913190153957916772797336755301961248461700438924980683411392570702249931829465048986993369007633315212817695927605796843108422986040918410591300466316698255029695855967326639079219950499343586057291491660332883928403083697696206210313130494504859352363874821346149185372782334088636054361540867548000646314175271487589206110974559499135357314176221016862108760268442823922836495485649471030772335265910541294170263995871166426749774039440045588994730743762779848789650264545990138290123125580818479434023830058751816446447220834267521701171936672581142111262948707703533527820269593589126165834807081835046602456631081703590388727587530038624140506341706801577691411592172053737763631163454206926620329404847081489172708513437282197064692334078356686177039985322793958967080634763699482796266084204462395976827947309506212839643351075028207366038527677831121892986223655406925328037149765155167057967772055372766015210621375541844082815492721460815098285930282154361221798906110652851345979813514880772423416747406282267455547512316317076714928731647330974087503020956926110076484282908 8091540531960831838825287229724036485647453463231237886828816527230074747356256629109415260207657497991746262232132866481695799297141558760982705418864013184375845404941911416807478372193416777269735280395592403378771408234239299136567443987961394943854929917706470013053186689026322437050069958566661657090629595283639261770844120480295958593281851506301285521542037135456511206952575292306741332101034569008698406892454189379329583408221238767945319607510676138924037215528088611575045401626836333753110890553273029201395276279380012856454180862568283323048306254174287149987181684195703197483330149126653105623572560917337175221915665615949550659348711675571206377192135637055150718482049518057060431523589814701285430724627633528652968382034564847504790844576729306114840549881044363904635029864116112006436423080379729361533780764638837775536224162214383985570296798301948314302942726411834534838790621151012440148397930904298543067047543955002799101707711735051400143403095943163397729334562659613409842714330551292926680072421698710166085539801564456490329337291497102657053229541831671994143720958426696298851620017437377534780619096142478109063126937719359503443402173996346125645285676380598661546702977259541311955447212467390623717287781594932725637848688653453730409754766141574624675429350799653280777472673402758243897628625513615020986170017774220819642955307542765802374587266178949508382736734013297952438254440717031155681395113971504673115721382321144354254498755114388878289253999061110462916513011747162322024457774958761095970235368702 64670173064609711729793116089137566416289739547570768552450460601587812286708469079254481631656550225626292459770576808551321187991000940484886018906215171461213744671716520763227317922761967153878501230212296976234879259714202750947304038442910190402303965192232476237822708699256677684700138597419643979001398520832170896435175014915697096675433376324982786481866323137004506782180462951721737924445087762288806086104666407342088676447372095044800578893607202267011348986316250718742528993086004842117064392467843243220028019560676076157646637344797049234428710845302909872356575288835442731779639437972982499656351619855254946087574940332596793377217444404576900898533186561722883975833912218723767220158392054220662210884463396815136350295568664772465712130988779248455377933451267211186211070218173852079674718794100352569644143073441867274761528729880481654221254102945958874605785317181616944054371049295897161303569450922524291518339425055326804916316906434631368806914348569437432299278041350051323532311512942979317421890393778741100467702810987706990423972395322156207220772015711394901618426738272205741949712637548751135944155321810170838767891601147200461208009757899094288092693362417807728644288561141687971820754356233812089412186150658769454052582055140654063439178855220464490156685245898579655424409453785704286491801423856305573962210543901465988265642222739022949788384933500593125018953673896404062567368005235255200786153547939597820865132392627246513796417125175795872075707160209905085604602568120231034251061889944711928774314245716 516864938494409417788004298534246091128874820294902123505995261710369854573537927701380022860676482016456862471706175822995903150735502072723962156605254265262460471706948117853839112153703931284401120618685390551785864998472142014180815293790958136786299546675429465037491026312893201993165965642656350931296772519492476449028160291268295036510972398778345247276238945649539446686631390598093358900517919051671036747159862026379678696779142351411470404064104147417394139877466332734414032461816106393867220694263457036064340211120022760441942432155581005519553008996927994256211099341753449682240378673715370925645048341693350765306399065001086871939480821621533723303264248594418024942669648890190386184006785546946054934297853921347401280643360229045141155777915759285607406969328140596769249852203370297236289852789511994344553312994172930519056757896832800150316373078620523545318131727123298008468333041124784071624903140990306987661610433869062892810927946519027054163533112038611690258789293455843026729401884760174590913092339207375170301599677799817221366555213213392148218752379476362168735559858557675793554602678898836383717468108616928808683235412005301987090791886603028233516926603446132406473220714202175748922685301362766267810159828535808618495898307200528165839484025690461940666397192673088949902359279827056591479488926594775758641316303321075791272446934639667100040914006409964857943073002874854213761504563790182770947321423051570001953913354813359844445595683647476381079493291097074576541870916805930810453929193247498385154569530938 4130954034934024384437687476570558375876630248681841771886415701278089369288340875701082054528043367577657702309528850034789739834615760564344303410686444326424743774589977592419504162721657880223931170693147211570226994100196416112216196779908952919619971910950077349690226114100534147119249920523125453150360723842999988714079828466190382414047535912993946824740295857772387365029609730839534892706273748179848740510974293924551359805195691411452211884587943473163511108743282616583241355802341383749529009460484473733757633801970502270210096201367283894680137222286696930312648056138350914128763049369964618618415180265042220224221648650173499703990725304228557621960281398255533361960997327689121667092734264933837739578929549876721888821196338667278925714094214443275161921997406306605930361453112481901446257757266328570450685628018346487995891822707609659969229533439397516110805803966417862506776701947487449337876305716277611261155681715741023759748734886925598833853460019820982385881769689160126715610050559639055925977974888937869604347304872779173161799392170414047838531847404422703951924125387533647161755234117623423350295553460187748167388115771655539119407149814488129513319819059141949451638956855953399809962870709563319215735847719082167773629987194155505388855496153537879503697316719260757613123501975898605058507745475240657163981926459647196527102308143014776628729931979079437634548435221488555596413875758280579394135254978395510721272264150914276374940188999219119594848024310499095358461691663055668700744956725248328477148298502900 33015957153721545328850444872434836034553443753545476170854005569170280724193765194186438254169575239838455978123409160775948430855962883975687528414696370575351469348127951990027985109846692773958372481741871078422692822122845737905832323668158197700892446989192366233840573644867562255109047741494344858969478408008582490861382704649773952962239306906937963437228510618747773256945102330294067181574846626461030074244111342536625804630572342018321751550536392401714282844633301161426960314654821146061346039250351296827524043292351090515699856162297703309094455500653165744442569571933960167028975857626938378227780940474185691919887424620190535244798317061820027518971484850002345078740709539774150141954389673513047009226814238627423714655726852449963001004027431905526307989352356533386131691195925067293053486802287608346375025989500216687072545634963779120081175606567680937139099615695105873460954144767679272088873423568810015137888423606940016661808321200164032251866172561974172443757060638541803414592125092828480920778959910241598925651567803943321159736561109262137850654964704146202623729649735662323019000243251849182681343216131145426109293001110290986499375033289304645459963979375262991267970504517052008229804873023143594921555287787143605712151339386898249089047139222098735542164057901865345379988270680160576960037864551629574895848401903812226854626644762900899699928176456381147670723091354402493165908776082131173605152370823537023188295461980742540209136526382295163140741440684308653358284224749557380438452083016463149322130273947054 263874644670540850958703249306705621039039280087237704253523212279549628117081592387115626890752142250249157659893283910216593889336188563006650112455290257952085837863835038417807527705112943981399303376904758680229608141659878180752781607987390200297357627090133041523759937221162635102306012350845319777420607411205172086111148201299469670043461703203112099286066432167382979278110923205851988077407675120310595190590617085317689256726416906170773941493087368386857214791503026369621425189952809159181792638317777724458601671271706548924831566747493278260498387697627616013946494690248512248700672766964166150113307017974110880017131490058459680337495142839678221389919746000341409461622382331537962253411359029257978919840859689857530588930844736224666133664564818914133770466561161759145652484478923796754489239702533163375334906144883634067978783187550703685069947567192483659049685855070765443696364088179814986680636425765488771641606198184133005287738809215167380977070737566201134726740104259201506663460111779759449991770817074128479406341254172127721207876928891847341680276621026363168914051059349593239876165834874900885743304199464745313249318229214144859088682984314287612593916419805473745426761228592394160473235215076448468254447818559973856267658535089537915294468005929887762160347569326336849912262250835722280980031454177361948079273715884949096618752354023944859075234288381751210500083148639261583210217660323375952278490033806264814481605119125466859649361202862853369106622248048330637615976588206253801726505940483821681771494785197920 2108976157917618521474968105214686115729250300317952983163822884075533799983323182665912900636334893914169491484544777736291555526195342004358114813009541003575014567399926088967776307826839319763350245761328574158646805600889430046234753345362773466423914925114012393416971127029318747395067336136558732262927854051409585442776608855772582963249995126264728537067590889523588164137299937140518014517324234186718793874465126330706835170990218054496196970385415338698812769535961653708610824814508841930440713279408621631709240903774142983384620537287746698393547016831302779197506589340434628753994131431798708767871497756072124942761837036761442549996454631418301149882860678862461279763986298239847247872508326836973322509424770982072806094476852727640971962604072585381717116589828941225612778353610633333951364055216234899336004307007559371221175546361939399462366453499619901609126472216056565458339362980822033732726329223956381086677324717349139399999728120142363976276991959484184728599996596668246302025128646640476553477684233564227450392442328290117232387150204095209556069959143738615685502929389122190401195803452097054452767950182571938986313729628296551380311104983202357435467981742371309747388016644741662488831547522394598545146583566893193882202061949481354229201498280862353083959958681867562300564602283563862235002947149218794150266963028037427100283735224658985229088840525277521609099030102256582430331646534954357201037884018873875365384052547452791267892933814225880616381652024719634360978487249991946679046624793520527822908967647454256 16855666023748438400537547163641128508566710523543481792435347360771832978551405827960218272333353221249557574457984315879994570392318151404024393761532943817369239852694737186554808390452335078103640209537996641817202752092587337881860568418681858584043169319639170158349792345326740182441144608630105590364020735554801261231641456513069369381562074622869285235260558735752661075627546039215378910617244680060049109912822236156493060451731133144946766556543098734553434928484464920706063879946116354736625524820854048718106153820603852535533693024484602203552046929238006432447644418127780600598194767261682980085636394874797891003768668413104492619588552150229111262263067533311595603132767340690958119575459110927774487461973259812593510709855843817492893018820012062074022098783555311715303068045234094581253772556459570166940532596477522684819323326247948981634768681174739574908219231668167196834794927040479357713123999184936301189010069263078689482431310191373238448378175483927230283854706710476755452115206215458676736152701532629934551494022558982351017051850468726247887547320099747261855726968658833053502163911536465238666222667042994536607820822197612639427890377098950740895980556714252615323688839632941018577445303356865244645844966483326177843275380771276745148715342033241012472916740774665959558130814051064679215220543595642904563933726743344728705521181871911414720600240280892519106876681659494643562460643912151557450041331632766310731563422502804827527146230581370345419323223556337718201763230706065294007564794070642595732127088348822988 134716379904328049213245304531797090338514052808357625123503414837455929638490012478722403293609614235291736726803316647886713126583244780235237856171831175905250370726339093500108702430120332924084817765057424467968588181454883617114606447354175126537721044407810765410799371096363242099774943249028770444342820205509526031520663005041113802017787808567804339787812800994605759195972686651841648353318965383872071709734098108625712588060191769481406245817817050030511020520726059091654106690268830280552500557899904738665303888737643027111941985374159515055614324961259871468802149674462200400043784721011759451676032512703450051973614274094389354381098849070542374819505346045484162507376158165324424296603214805558807538719092599757969941730651945947052288998040154838651660942937734713016100346977822213303029362184218185334076209882124652841330282737021928156269101598413920251121386758045504997323519419588658859713473685092305332003883406219487065816106881742596436609799314685421575200317965782525595394334337455402080783574544038297102184911046528805777504959327372922277124961001336011085994872944952872885912193608783160724052911539952900132670783393442214358451645270764040368955683433030459704626560673780401983791460055291001020199161604873608245452302165363271302642395263470718621046477799635945657224129403483218406744086685398877723443595603162601069010938662016376089566660523732076455467651100227855264855283567440820254549203935160178474604151742437061700364485592359762810551077883201099079587586661202027485347170745554889514864536279820022316 1076701030672770082263158947374571961972356659281235943705974363931345671000669864164200331084352225666223077728636692734505284973685293447197476099534287524463804869153734262789913018907893898390831991193893502386281633290879050031266416297770226234873171976929526616667887230384004328315174781560590929560422003716516905315020810315396181753576734526854721086632100318092023044957375781220890024411908402196703712173922571084542366719825102956550810201754938152241830526082827316733329398981893256613979338211178388897778141225628244046493100161112475394492170162314682670328637891880228295585508999057130648981007473954586704274983001026945610232237582935452596113266808695033821318738864033844554606421569719339386766469012025203398841212714827724892177977496161288200152606847471136773978994673428988206237748473258272974959069140217975154296511428268183367608069493465931498357184071521647279793135654452309332341707272420688515067448930101080503854668335274035765545759704067655247390063641782889943640551890731011725818338888858665417307716153612895052169163556725560385072948521707017972663795093611839544889613955129800250979076683784436062751289958183357207817001497420486952582706905454734910115166708892605515144978852627198531717015359844741481813692870958653661084616027695548218052011719314098314956297995388202393670412957648537069785500069493587239009722188820404591246334681396005905144476677288933352299064113430903708241319969777558518142194317643766566865904677733288399712850604022308833787501044935606566285167155344619273471113815643107482228 8605380772144079702765788864212654534226833463713877404530365116962830841806169245682624429083992445562233532169998941709917478133720471308714699694206315102857934676459679169116925816632988485172875125163213247631232154223968158654851531564177786449116229369276895392464418592797057644238727230311755205181531065913671927989543198713681415035649080226339305122784672257174215613747654129403074533056006012819510340087889928082881559945902411703889860133147422320488798065226073434775646538145894760310847714182430351774626362946336785940467291790248281259636735015760709182270053664598001580194823847893128855303898834980676644821347113774059201956981561738395961493552598864322399359030580002328361931092550091747810139634624038298862907837248438209403999076468793315113826306720037571640034313919012933839307164737940972037185145008639451573666051217120185589872460725974261670452258012182694710130756323822156282571177114872267249553535901747878814828187242405816551443692613321405395296783718394076168980897491693077353288188444930277363195492724556033643299891678829388871344490572384742541768227099372012637031795014200525832453126755430685137161578542768029268854711026030117856894800579425931055151025787881415454622136625546726390520496802057207012686158799853648092302540261684297483075766694154854658238548535938747514062617419675582506180128514481700985399367705602372806928538725881172106731562574689097863650915922564525585215095339839920642604002789576098141927529864470364740258422824352384544858939668909620736476753167070872644006747435375773364980 68777326941624603901192242919080479319762312832983624415868508005086210273206392753783962428357593986163153518902865656866585171798497201190947872482611259388193028044572611679844388460021170985739082052982413898135843054861402795612403402284628972606996231773217647535175263946936408232717157544102528380269236504193749467132881201199048825796365562368139774466470296017093733355361044696851139015265568856813958121314580565288206604903771970148812448416765583826296297012549803964089974842575621985528770405586721673735061264587545302078350214402843399923480610625370816767488268553453950865431701331199276185969093114917982041010106021988830837032636234638076952028306032816430352485615373803952908862799376263857488328723037247211084881805075242491526801756062540990740494539433723553586067318251072441733958860815000576583624581525567053776799770582178054340350761044693538421705690784606183834282243944894304664226263713379543925853167509669203807517878341096328155287669950508913900924439411785079348355575668508846480991001749797643803674582524270350091732003734720027224374114093939871816482936367666839595680281852973320195625353453732263152201709505951855646492676240064158403181595802069416845978693044776605652302786137478369810191986085946878899549347614858965236210743641021899485213597961375828858372404456113688605999479329855632317154033446085008496521911041815462957683003206952514921093860511310415534838858696688432579804728704043638569081485753140323155989336954262155768538232227868352531800494527841420686977255972255721538127532457364653845896 549693664362891615145558788122378637568598823893407705959867416382515725861817728871289150073656650682130674711512058133438010142612552890824855765824928920345796622118456846673614770385852669850672046846656116458930506109079779345444511551744163261423176354257444088921049564566806422809500928096664628889446252263211465359826107979965946950793580571941023121205766060669018046212540935527477897863155532196884578227494719433847531519325954035527604397438445578357574686632546467275766094854014173909918604775768493605508927569996418600366157750442909372999072013598865091711561169683778812669018712424444547101545770355153176632839624884387375973551817442213332798877030849116401601499092821645210582981137176867496765885115112291872610337776704566184293181400943743901251720109484108984781111851720297685296150760587990619354204676884042259447228123530091914563786563076184093905763459333126012534670185748163766461785259682134097415470646724134039974752338212585136694929318662687809831002381054375618436155617896005880168947549593455607074691478328916227674742449782845756574359116063011986669374228446596466778843404153237828921457015668964607834387850221517303572294503479154618320316061081500191385645632163348503717579239046270637887607538492330894214550935857222883655265750394815269479762072045534540446013956362025099189246292433939117013815630037471831800579309209757639848482636094820290033736598659116312012261135571534944858084702344491005528988202277544423936857837771846091907907377809881246520761828174396318266697722668236575858082095489137245078780 4393356113780178997349546123069417981833699253443297241391637815686571196082467640858891188083504758012662204905025650927017802114903647735996347255043119283893415893231715385153518809866670319101444727242316884955057844440969402393720809224708842224452659275146713732712633882467520993859707822679357032587171181904702692542345060364389364672783553547975488404767320433198619475245561784462836159230486981341190783461071011575176877849891252593297870868761615895790897898793761761759120752610932103075203451461569847727386205780651302408574694417807359604417087392724527050654208978268833402001665734554146334830005506962918462041459422735070163623505484122633004874145285404464658878261039628969042631149255976841386969546210949554185134091805921700890253986765241559524682188510509546025826914815195153643826251237633741717179497165641351499094102609992457070391372294873459894215462601011349915541676269116199575455506711854210849188592850279714881492213230934349324251059194801329822780472460620051297474368186023724784961434513361683927849380205565557436541329117175284280988716167097552990651593375785126473081479182300575393553361901599792938670226605364772091665059690065812589503869465483228715642149212406241220736641762316217369577702347239779575748248933167282734443012369797848648795043242201436586425943810430900645273337188175747574222273226308831576106421532911431382813350663499283838107894051821102864024628056043114836095643012352873302182278245121968464635972722499769864729087140884268042218181591786320478494203191067471272770249318179374772047124 35113354459648140126471430421315068766692537097906382022748180209376242729059166331580304895939365304800667513760592049596355804633139745631066661993085487603840320110118781770657518154535357354364676797897143539738129722738219921142153122240696958493759455231741182170504919512605493798531263523188085075304666887018376965572131354799652504943273549926673802663778411597970141951526561412624086600555928469106760036338642220081136977411265174041108997840697436369942496277256449570932871049975436336644933410178802633168342502254795743099432431317645569234685128240739807692878956900733518881709609776159579090440225446379848676890350450009082660751381285554126246687545323399239460390893023461056862834245589151537825198377555903603879964988148665146977521196352547419975200572205831984663191401814708912225954766695500147027707694535519368353872255295639885935736293689101816430909108663943006440720660311610764409488318550661982188203842109886936435469522083157729984340041077440852059943866959754990199966371629401626899035872113477313154604814664398953023839133204211045205685388979245175868654408770483541593327226168160830890594597289166299286195393691715143195602173427495676108886484163962806511483259487939024234025058669842349226066153258222689546843088487621373127196162061115832249218587187801265190661547105835743030616612329629258218907735647969088135477830240065831320471777130653068542933524751832350599498344796507902671772893244648524378022307485721825481856278777633398669620956209896113343256662668659572005663927716990358942815053637621184934011900 280639288481753974307391408422586946269273219863023402021798316503312800891568228793706437178158041497049315061436761139958934196574403504873171942310465799783357291213134409663570662411526946901726902656532636213927643035178734045121924990776291772058892370859478016599723654322913559267837513311328898215800601127725898438981345527406663775843812513566464627532811376175613583702237450883074463495420773438283883947519122167986114368248596455792529658538295147334380799456230885347558038211452318726804935947286342483493122921960765251127351518314388144316639552538089481494306896971611821256204716174492832127125034370165930831899307941816075098258945654222018022666753104725467862439665521715645080438851112111664510349256108001604210128835552191975551941569800998029093583963088103602077556629264606361595799322780077588731643176616237691187852745049363769145084145149193569771584107215027373300528676490546557145825195375274986835964059855486228994003882328845970948951850843511559324514296849522404562709630151233583297846924274371226893908853241957509257736471100211036408908640969919086783789194125676723905197276833871112157483460134152070918370122853885742825656087771896822132293041668967385894653795086211801345049601657842235741830905021038656383996948748388436761747756036126460872849488314390445467013698838335799888859877647305196580924132819612347859773608773975062760714687720835234237679830983765022850723155450846144258522499178892669847602751864277914019824293460164518304416683941842726684164108192305602506507977185792696321745850266090173678621936 2242977190720941065137931523515039088248380820297105615118868693808155832703046216530333180864909026184886545821852214319148588335096281872538725388474962032436622382841970453985306930584459169484109906033648126321356723892277547212380809463907577136397310732195908442232479220640610840357403662482207071564473762585689686450890881337681563406656356755334233881410701328576304695887184993649498171588256080348031784569285913677242482672057893069187505481173006122329417006108748281687830781633103149493983388296110647164361374843948010188611402206059242715133164213621514790278618886266271010174706341265242171938595160884587943297508726149373453738812834993162887685383918763253030820433675818422232684996919894036894271910182140606111777439227535761784015024177769925038443511209367319044025506618389508436633874642018895637053511875445807917418469486605120003947861181695747444882810952169137576414677246807613398681479371067851266691699262895043108526913408689209126542986794516539897690119174314068097285800693313839070703425308498073691616340749495559591611671032626458529960657781736162733957801715447449407358516800428682023014905888780500220504341203713016465504541024290591242153905840197285407651607924311382484657594240277096926676057263763353965945533060214133438303832091288797623734984927964187522980717960851561950504666680569508342381974538567662843213286334548370992149668785899217034440817921567045328858354798872424140906120870699031936668618116752028003237068660561216176076800339643735976992001471554425911952275802749491424797912748765619956923971048 17926746617538269405145092548188536847207809645289781904444300164203253792574176638259162790764571825360164321178158555320266744459814918321348038378924395500591091423535162289898463795455240298445460960662607374976889423730098194556912153616101056669111363427900269173056385296040203668075316073264011991257709479099260737896954214996174185618688450899840911195717404447559001205109976523351159360387075648923961836301988472149163070144887182476194254175528301242842468650756839794236162129811938693973998101224519898899818577162555722831571020570154573649642161405722336565856162651406608313316704196402991270914648937847752122530131800482314175477946449164764381520019636689824345896294144419603180347512866568834968024925047766163248095045944645868343657197711188742450140805504561321430971023478350238240331327496189740295631733337361558461890756127897694047975835683104249406307977505724978742578146842854174950084925558528160448348315321233125921581570513813311904364108046287826893153679537719536349790174731958210510237395232417680939344837250314236948401495659509295174704431443069466841578975124554378775552166285556345488645747781388594612781091615415827862174157413133792522490970756533424963053907651281800048901300404272217530972098245630942914772371069612103446331112175051611490316927758044439810568363904202747889840473806669813707564849513656400020330359544847577972445247020746327524896806805673615300026424495058448547968816661676491613119443794261714154455852010679749212907846067286865329418541024955284236455334920534381500486832478279287758211330360 143277613469460063620602867063587376254918114928267030212824942406345273071461166968929514948902542377896441454974380709719233435595710404628338947881257384603189990476451196339384911855521125651593928969678181533085701759809651960311920777521310723194474840460574429600831932128772966066408912033673788537750148342415058083230888478735918810420661109338701111152015244830518687921051788099525113064800205824953161228713436373953984118216728003486885042218714401927872310787960430851278175742040904091155033285625083178386220076637559915059706266445276547028102614086400035172180005209093426884496012995157359756864545930269304082883722101795159523630426485744965854877347276118234139732079096666275767660771672580826730427255091670361222106316223696671241272553744195709946780602738789435449926905125948864377629550719158789876163232286180519059479586041132124230813267593678875962403540571183080301899459207856586786384200862667116804395661683232547072544199573090665982335309983862812138390565921855041765397453916725332626235829669483375020501176882060144265054476878488422550471569948512573302596095633437157678653777073139994256793683842761334859692257463651300767961073662402394287855922485443741702926619034986735663126536735378739262742349622695094781582812184692686733536085764431065867982964417293453311879703948028441012543203809476257748686938547482026793102352792184009972198469457746755777439803272448611850942248549772670411370559409275628563944385582195406415861032435040309351790204225340167301830089974950897975652423722180130626472402773379500526091288471 1145131690872527156164261366931960197012447071415713004330374521799186461962827109451821965011540070563380472210174079665573185973822230662851870161387791943320163258773766347063111164350359833069644415445224114890508354747457394011826689015181271782852373189353845627935696320422246549643509483047419665875472071621207754292218926345341153278925856968808580130821298163332857019890483749014814447719363056141396410828102270105481642166737739235370980706763952591362964863797809036948708938668572758283341993497224868534980047352113041780661142956391286842043310107526547545553685908882946156425132809187681303635763573133979608266383957369816615403130197849045312813383818020498794785637148699007581078877132666192479864906260613536937015863457687693101511034341987053445689397662982299256037002359017550525658056213973062834002365785813528600191904429839316631054344373957003885702286749516321240404303011217257365275712343111392428575638921010975224854846753142488925610059855009814080017757939388285420637773185676102231374872024366218655374058913700089778015482270641886137087671963153460430504617410653359538241027722971897610282792842729189458567760235966379155942098157947721150081702681532770329285782088060168943719497134934039551902989785230669879043774328842824530170503634268216006386200733324711610865510184794154993026707905742425026433736836735168385677305246605161293764366698015929113778193316093745749507402155958115733443316322777821360109866909110869428533961961116559413852827751738871011384200294733651766477316233193967869898601243820307054776377672780 9152353035247586336768897287834120451731855467930038840182547776871881382780978271537781542347015540617616743437435436494761533686286295720907984571612135790588134788125019415957315204107719917474138731005421614339135417878582656640599679567063184641076259711012686316025986042815364391419748003520238949311631159805787367256482111458308935735846627497418360422063194567667152340324407817777962761037425217606792409424323658319933273365255793166847282226228166524740376841719083115860338711419895336731620684321095545039397473614675412684801294474443737009721464769362442134072629239462453116070114194028977410715371096592461345826977676962625002417027626642352624880934700646901268375865040017572686030598263196981566209762130379367162829534991177200599470248705261202700246075228915473300519369725993999793528456691811662190749692966686875794519504369009356980343773507119012979399157371617529453574869709465087410831836005474004366343737809299067604450141213696413493833294361067431668487693815167301029353992461983589227659547866142306178189208017126573928293833882911203754611787967389560142853891009364128094791281936643739781415321760082887093227048525975067290915139280899577804670798851235160116796011106822102155489426868001842133761029599736085131817003267560085240696817522315129026349300319490455488523952034274492752752845486208023939382281078137718276068451832666109363539196874708693727093756694405715252947231602868900697892602801902668869592903610084685139300687528701076292023244372453688645220040072894985295333190074398259665543364535623615523189467276006 73149326073479727849812598487467450343156221205044665015185367625342791924139309031565900220215458283152326720631010220795527214909562878189333496801798228123139203703296512316570907731446138579969711480211503963853780149526105679663305712664132371289673165817034945237087760087952901496738270447666710035073495058847512514517738301762839235151687978531503382621436513146147896451298007533282784892112671381930629210581498590466508422647420795895846021127255986188404931930284823806625241512567594202298198123946874940740318598664810326721403436575126147093791780256442589067429527060460541237005970764954811009267839769815669631921494435936385801226185449712848038330541916252329963884483661436503555395055845879409060768263242574989088926220293983058069367210664623893288382330752204849155212377683264634525136594057371333185169579890179117294439699064200102190204199092549396015819395835155717161908070936215307467498072096638569343437976958326381618398706435273745626934676319637440505402175599014405605647819493080016009879399698440329931498858983821694700450638103359780861839962917199215019146705111830418306891973494096876088020629026180334425088780513452590056948827988026492531968104379968233343254544498994622907208879435602541413778316329261264495920557116357345069193721421916662431969565947166022676549653854973698728368509181129159338719427426929204297570851716933948954191262127200220597588360304979837614884656073428320015826030316810552439456395669076905147501591142387925346801119931638832490675954659816778273855088574268014513278988641121273250064488308480 584639466957009578425314221012949349577406779978530635985240316152065300796965342904506565498699611160792881961423213898955064509486598373324275606036469322166031390480550776880531485923477088152808325347766468468255763524938366079361159067322166244627997933010764074059168514636477706301703926865369479177632146189915996411618366316002246917154445471713289867410557173762989863414870194187289725043410061054405672848598383784009657795995581462409497066361394678189218669610322023888611420384186407232696015282670715557120985768838380263813479036558893783986472309393057787110731574921803988530209508273352227039888593287326553671358213144271835869670585730319767668715001211093697352252436384646569536175836665995878484175133488724424737461105759097134669593633978659188442380069193584092484458058530547759036166852470090635578936393297630655509263707612945893934341738058903646514197305216290578559557329865093347658593731897123445530151910494668922784562111273639004285806601473642836891532039582828650624356749865302045209289115721204191849860632978175213773010986229871898439714076477013508164242009635668176440935778419247067876569364643186525655151650468008566277064399321698851014970010797706547023369237072424570270909774064168369655867675103068933481981958583390968047020087838817847205182972032544537845333656584276309203760556265435407873029708555104721178270728374501671523802036019877987573318640768252529374312662112744748895716495120740416132423550192246667422322156555538555053884618697874015456359114937068353895314823450435797953491790660428212909069549248556 4672681340818789197991652846551426443389900595310237869077856927035033798077698745755607071665471066756581864230743891604379990425242740023736462625005976354234312616227909530990073020554456705752431839633411721862345154620642736696998438111810320371744311980743677922878700710496668189762187834475607994039073525368860166093071594985805702570768381966061181779810342322175144607857678404039226302408938117205543544701316368909007129232120655473834954777558998540860105491869479460995461773070827952607702322503924135672205026989806791015381849923295803386732832118707013271581285567424021196051691276084609561284081647592190552844143583328896584977765492583723018862978822322270414348794490160709958097591087567349786658244797910998575304957481988904949740642727456214442811245868046750728372063278015298595755603586280609975790437544578782119387114456514595540709106359674873105030188968232317752987882404387573766540863900948288933658658123417726856545134464362519097910694297414213746002529780907814888336594561474328771735893827984348821925949343610302504865237888853065011134311025861723797900251112832506930061705792802073339124193697581197021038923439236682857114653058745962023401110651709514084064017416605326410159761728544583816003679701324572985347814980209815666484646651722168652055560257010091682379749282558121560102469401668310903195652573590779792617747905545954964507435478130073913123361439377748652503901542217512581375026336185686534695714907382825448037150782169090030769871479148289425892922748572285096114594147377096990969968314379212499231119673719728 37346029361121078749460790218667339140832087512426847054264490744221232282307874050351518545019961764330369317828387949634161512454425931012242131828789570578897400937893056620688759012695206346433726068927759806153801421637708064912556746786946851504818136681503778672088134954858007013265089490183032696285702322753367269045295618137780212621412609290973420413298573683335352899747424002959848150684891815908539987147440013360118569389420657472745657294595246940014064834688750913463158074915425366624313194950794030302900850558787419856909736596962187262149224741741475219713650821280254053251706870085147513776997300085628386762833823849658854186185485296674552964800283391677918435267621815379467949824288930299167192234101233955122433536797791018721794515447720690493197274158612565020267587521901297177501453921636095975774572689283248295854758120883975644370958852787782028557894846448949121855462126462742675241671506236118758749007819128152177095075162524220618440644113749087226687080151948825164894792272551778951215246215488450112405615362852028722738529463466460164341716401149344807506342050856351906269643606137613845372281269916970661972674350413959603429327136398542081168814721522895798664338815288833061288840240713390073500886528586659858875409820777249151708810969459990978714914972605555185463975409767572999234302043209589503451303787113326358413485799217363756279318059469411687369455468625175491856547235544278335023994528183847725588152959527322730988639315649110689537204066626868399494299899540118506027649804284069152966448264886092806741238061240050 298485293414827478884656054904623866971725673054880020944039036984852422531181800621831050446523009995894857319457563432805606139522194700082394500187138180359645171391222229743365260568229147130481307863653469033641152198366539298599769206102448363642099655506227072905898496633515196990443405948205908070187529733276151212633160281474022780500228250605561031639939188598451589216739184969322289285618305286970217957396232660547055693106760405689008991839450376504006735794674430250383688796501630933947000214057993284518840087706998978556288474542854187426110387731992909747411774440881147520384093363537605719397357128892744514725019852692696439062633041092923829567668556072155883112679238055557829757654149741768165595734371759454400456251970504133149023589827733080232359682584438044090994490493549278416131443913466802323857435396715437040650958071025207180664517523168184673035818604127835610746638219572368141545487406509022581279271729600771746009741447450908484810287098887743984580445788005393692861940944745617928868547005011963764223351989526968416031930027665115201605868764433631121672929542163763211829361154137835928396539042409447459300785144708984437668914425977881887198711924205925195385391873094389392762462421295904630337039400925126690536322665205521353032732694465370545258487477110974736396617140123589622414252049798157033554165143118101347821496281953536582961931875341185785396333673485701732543291048093230702457441532399622651446492660693423144678956137860120969785908511275904552527508165400887344423720899986195053395544244084440130912584785402892 2385622243963975569979267937346056875146879964963212087701503912578246625327731013586199645559199035631974399374074154875738851918539441229905782177615466953312123840559875665153213536131263876508873892486279405255685120118564261280763401940239637104175948557792464430459659512264568442385404110611300093921118832174060754988762958222744468410308485261647291358056827901303049920785650765538965413240808350244534758011317279245335493684033230936896104200530493994480316179397748044788900117380226020840770321519099088017457959691540916690334699873874354910681769675519976885930941900930207014413707173994955424196374126593987436131746607744657077881583754389233872872927625150017928109238339713769680772420423537632116088832314011286174783318494722559118722070910490244976479173326594712193918832537103742603933462863765861379898520084471313459133637768247868074571357710910174473534364544344034962886117958653555225721130514654276228135269274287839557680170858706991888579230375503186236522609478353602560346748489578668816994145631548459956631480686149599337449307921212133031113866457673420516240055288782945411151093277051515767971435811774162433700253245365556006279498361503760192723389916760379067898357934219470813215911118684586137951978991636033872274787144940904804469526290148464949578847371957078986846149998729232649860884063404335819748540809147695953249407551178695611214064533226908060242008479996441995136939881360467513241641165944007687985868420532972633604501703451800149611009188799751510592873345940695093443627469196237872848672303713087745495842835152713796 19066924495287356977733126438026420013876129460842459174234432297951810725603488246715426701540957868677110631649416420125985203125614240895784115472512327297811911857839534448563133687579983439512369733818744248546190110292359126540379956800855447673021369809887114748010514135819710638989536942791786271083096956879890363363423004441025462273402370130281646422811222690432366441268124449323595006379433468362920056030181546283248488164362572810637905442443527370619825353645274328288595275544297385974810215227789599628314034655231882610834244458332531613360690547536409580235439500986026957096467441743342304877021422399755932237498556582270205856464529375547657506112057831776730646084410815670843512397512550620515048114431442296520385968549938401400414430895477418563750438414567566595945914460358440363556535205887586046745131214596678381273700937222325829576586374037410337591654619262200314041532299059989073483837188830726205953210366940999119998465825667040278504174730442869210252660081521099159159763059803135785484250429977051737575546925555432106983064852386706615307611171091480859190000940106538240782356692722947358679967074626684820633604864640951199746675900802689214630697882062950003895987110548105292463029399558654663922325311107957827119496351022712722610332756774595709262805829935094056754544072364772959355138167851987610148475403959709808939614880214910330861564298739614962948443124608615446005439988932651305796790340963577519659586752753503935378757894468888050137331436228166442462976852698054564775585217242247014509798055706490478564074237296617280 152391186818653095694704621627824113755876102911982080958619830552089347267894180882547149747400177404466777776201803543452032713842166144433799567409727165616969154606415362797376100506334894306540357282098966179441823260652735492402908871805520013695826290784148697491776146115581119250762186515980603379144719874331498245415858730513770589001179770705416598583096239148920122477766509547413578940180572353471529023144201308028475496126713195788516191514765199708635925517868068689925102065596798649709859669385132189447899076091116045506202899504664752224138747405377799413090015552895010884857852432506070129738937789768889452863679797849935883043567413825443771010681305558627437525824844410636115829565464986121202800844243242208907687076018865693536800379919292261530841586402328502933348691739477170245554211347461646901815719105283895110476617141150106191020834321608475538765630848910509902202579653240220438990383246640009148076519655605470624257050927281560623675813374619593761178979815960554646638371118552950631684414815023675894942002095113191288994325438621068239460783025454480791392572174250358331965474631173158785689482268984453942994977875325991983867759900463348024270893168245812327865939277660148343479347722891841775657910908646590924397211556484270464692376654068437811717605205789520361679806258370473554409736818106429137132833009169602435411338902925618682975066318210954767056192226759600462320777163403130109007318208899645445760666916842850308676609143605353726154011950421221424839079547888458214536291657803094790238113995417762001622812328325161229 1217977565827287921933259595918640116952132384487446739603096938809550113845254882559539847038514521878635152442628463291131642610425165923485912416414129887219716588656202744223361959822059655504996755943555270612291353811884431910156351080737000473447055180136558529469961695024170377984082711654957715045359681221314143133274638782225198049956696951662784373424717673246599076250882510904273289323747476859672620635206488384284909671282117589700545471750209726241890705971277244262332496098892541897134349577225834590114019048046756162860252658297071229332930527469262602007570005622084325693351528262335293677707221432053736564045225648398957156489456979858238805540161007760473362629008823664955590746957067772602492898354129360491664794332201071314279311475109334722174834973350181317178265155294698098304916151847832925778770916990406218938612255089468052928441074506673644414356066507307840522803998378399100240891942176221198576813589393218209226874402191613093514100277577282172868178942917850966308135162134477974724107134584071274813799026811032347370038431547500343444243157844033486865732617983089295334308783140257944603938672303009245116709704012252558966128374754753947171979648916717661053138128659865296858256749294626437451734495659197449942605299267846104994193110008767391433364196621715693356318753507484116117379553789073039765654811771673766203311101728699572341973914336361782712377062894042259259238008260476958836167988065672577324142559108872684560074315118106407294685399578820114519422381922407640779401105201465316108435675340121912718446039888737183264 9734619023259402659421739335318393227442838297380130966960441862381985701771696039306493633508164137152574238785756522009234477617550716019170709455394171101901858042411598244316190704408686082446267587316999133852471810639140671467771151904827653028349391857658763577327533905800020988614305666719124372956334453996093138498328878705589550601000948064116307273455732615957167110615959021763692968373418792764423951735047853513260632469902049868416383488864121094952784035944498881537747938189618808663683005409941546084467056600845217340492218132157409298859640302963568602962737577215130693763216523977128617954005653743141828634142142619361640756183462921503751395998713926434971379139935912123844921176979041789098363742408486640148221063376075515475905094142445090479006726157505883067533599312481288528583244002904006447730436382578520307486969191422924150712459333217660897051965698393014172721928177046929905352458167219525591160653535425618925004366556873376741804696366667681404633943824120261929871707571891328179017254513578948155445555938306050809265105483571047560275369397409050606685321243332798007972382893825622123110792356480181839717894179678180064188554776815241866687110084246609439031417806158970453038211366295334437546365025268071674275798863948870444442756062680951042783970268479769519608406008361170991868136683137732248828272965127758517194718758292247433177917072464163895103103516622020475394850562545001521948381294342683010478274306867504317419209632536775703516925270271247919548239398015124726178870913208990635949471400444998099160835030238517240642 77803451339140191525037830210867751154394162052099005860779327923388836339191762563578150437071148349638628580410113815734904098750488800380238645351633726322564120213717168503764639969354634737630398082706531571029577008494198937097706325072782556961062275743901189748134772072226888161607268791199068619605341448074709790235602145884815932064369927808937286714842672208195361080433684886489381409178556345065710034259364671078016121056684700438649064821032323714830527259140645593146536403391628818411468838209131242177002070383636587115384722307224655645057670347058666507175455137829059789772563618956887888295343887802294056162347434209295742274285629107860894665937143665571454501174536450562056634275377990374765071268701818214947136023092196032605833926685831200081813878717805638250244379513550391566015001156009481234132811905546826017071809263528982927488061520909608553371947468425596028333268816937738663909759719717649688683167876709671651281771705878422339569623219166017094459263520142078784904505614030910615050099198445796984296115025005466465366062062085337615203580810756070589720266992953968862677022020753514868947304090583123573881203252387468434667299677836580099791920110190490776928749814028928125826159029641678135585709438631744149570566332435266312988398720120255323696561299459298044454238702397245110308114743183856387940217919876133327346438045488675857082110378693624144687150789031803915248898537099594887661991058123663810473669219379265554697248506752432255425079777260097571885429207238192084808185935610753889976104650394009685292145050726015551380 621840491530849089785300064431595310556359340958420659710388926846955907367264152496866420074162926870529565011851975417346919398953954160349806011928869369218280353525676424566168868714120611069040105595881648121704141473224074516809594093216514770629977128376171048249319827774695713289140766322756459763698868169909502149302767363175207702472790852294627285001727883716449216589958580532079616967740670324092673019252498407178893180962084502921701135505109727912285555747642170845059677966051048621599020577166172869036067170747932051835971641699775176361802622293626738230795061143808677084214997792309407461524629267741333727925420393005877029117141283332806102681155116134787366511445766841498501065536715891436740999258302371837119224881315709367334949107479626899457999515479662927973199246984068151850602434973025294456058226865498548478501158535635192721553141610188996227204234991198233127638520955027732292454910994498047418322987305998734990333726628372431364490371279157673203154431702006159069919115929938575517124366677525069917941663924189399267848574605020042175166284456114334842266497291935382048094768271904098748351255417212708723057148539817085402225255477255703486017274223857114918238097968942471857329945247396296308444736789390257571567881941604038664806913346071220409579342202203352318990699144294492980560177423994044463133148874951000898247378844726013843275061279907579654409488262880510062515401363137277380740014769688327000808946065311449393890416120908253916458457009990268922163742694167175578963019961953819782097095093829533652283788687082824298040 4970034064803025160483619990378309650635052582350033122007971983609662015938120988452439427022460085054103689748671026793904223595823344368745407912453812333884913905229069885456338597271789934744012264994504776634991187330978850489015648170696712681201001686772161325797971067196501407794769713973070710725998537521792984373314477251763055613660843404482942849970637111559693735153855657294579750467137203675609617579904866055800430444159569646782606104329853516635177799341246693823632103601797259298787089356887561495069036257859860396145926274274970412304909934967500611263906001419355619954113433732553659974803221109303399010957346721765361224042577295119512579564408524447387650671670799736066546177238442486201354003161430554813680127745478038259297652062276078288434305035941997888436892401293560610128715910696703089982321564359451100363283422717621662775876806365033601062601000990089606354665629332695795615678794152714451047321515616573778670120375911651866274669413880574037165070610881258614496790962176293217939589085614323582498868064731811694528435953136824004494864144310074768287832557117207345260134336627044291485876251235701029247946701677834174952915355095402290871307085740359631389153838412119358802768441794575697988496223072780654129798282624823726132008391637944861758933567842040303920635070941890926750879335011471118201194328875777757478841598285822596849445212587967515686683314988754128247684637406535235493951226762406500398518252844220170627649193371958316151913351911894502562286023456789268467672294975881441248184539000923155175061008265112585971414 39722810149450373753241960678170700940336274512691765014168209237751491880486539685495974760185498041632426295795401391088341129166516972359087479026522510986872311972718941317041792804912470463728218974223185620884710187147262914196207133914382805236515968889240543758677734790155917148149267313369255384230347695766360818496416642687426491564227461333889088430875757453570037979248084559423733288611640431682597077992484912427667295809899334026931250361249046255379106010469123944671524016448508042729575158345742280880447174293482498874671389083472221871540901263947054715058396560293054533684819519945601958167713422781061509110430269773794417369059177897661277208907020638555343297664674525444509293686898645522518183284144602681582827247990551602842157741012866587757246548825845169314721492462246239600117064055369923241505835245049515897503003972793886592231577953326993871374710868847162753113925150169307268084061744849268507861537939921529408699341788411919248931898630704342055689563193421833072143195802475103648822625826642583973933280318694392275281130086037216545495790072477436797509731992977179448149300062882374589284265037429382678428117965257302559482459742850840157260727847809290675045540731489971061718102730919944506965361959772060852935989752131499479105553838621124014976429796301794970746567809291075283474014905472906921973849441761523940046109499352680804036758373564918202342745782474036065528298826704092885697285061679327040738844574536550039761080587928027058370242632710898741712913074820948751951868095488530813484006751490176056250908156121186151793551 317483233870591201397494684364948312251661484318441168856707238690060055784578596002893027032626273219585033726422763903864836596725991386537444216625776914118534043543128658422289825147086478486425119364178525363802298675875838390655951187364932901684497144477771941992814853965806145605750354912787277217102744331224802349754772199789919696114181101993798805184145043950528663207683473220051504027902611083152539418144127356190404869506203758406169464166476321729156593191399509459392459141048610063050603821231417298813209301120833369308824552241664397360604977293943404517607769090187596037600427359052811611944367771044634078002981949135026679443126839908288360715547954590041080122565129609014880835460684729795874892479031018326134240506141394105980053940794999863118388369034602666191365436521311374291570092446584084897772081896350935843207168745597743743378042092167086694564372700306017187117007418173524068353127801340855028740676654355443018288413943987037402667825419359665815753794196847464377231689146067464176851937574438354604586882378418890960205478831682091948076013588708351557675822218282501702152316579554399274068577193417037256340164027194374943274018735757867572378655389473809842676495455984509251832380694917295077202358880937749663415881307790578318716230384108927462283246067789464947577580480526592018075952935720012135833397291848452921613783637577858261215656033046853220455766675069075986873250602884907787692967376578856647868781671873791672583585325997544828445898252186794208666416745243909800350227487151680311056816706189977007689736585714689942846720 2537475497895990595642979243077062052129325893355212881448557919836510796422010628594143436450904146517187513296705047064285784647531549895084187555026262788966322119418460684879444866486037377199168273294421982472943933935600444931150158289672873096953493096780403003050052823665700589214695280439885834914486155735155543445781138804641326415441274483307402827197856969707574736860475015229545892004710494032382248432899354808446930717348938036669190049384902288576050977911712623254161671106111062773184365848649869026003934315464769191856572375339575562977470518564456795396164887471664782728500674676037337624726966926386664127103536926336232609660827865665611769712379439601830820643182546104450720467152775737998933492685287481234613762716016419825603873491767097624195501489518661952812504332274770055825258660552376452133195372613979590298801100746681014663640179849019660751867866503635489364126290247669683424943590485092827908570791935469093997261777293198789951745135768397928813864049292818029892015527568482111992628164141805937430118527269855388965779104547164905560516341704296332224363249116871872544638785845028072879162437861513304899504099926575139421073385183449513590837225922078342500364491731317723245270633822435692160379917489790050586486464659543178510745934834355587418591831824175952530559380950835528100618307466802982702355886162611766571487593404828377255195780808254398362999817405076263686726740295278402328785324598918566878144749379739296761090512174253083712374520211854704670023719174093315713927051514219276121824595234189330566027556071962671906813664 20280709783163570012436015279160770388651766648870381564897375576103681948876228195224034071997413347497331399751644098306027082214378754465423944359542508491547603211397634032255830844193810510836318091023469063395904436722097063176595176656001482670801168209204724235521206846286486909443710820707170152070750664396375588767212954604088993432946887885399518884098555656108277866542952867033212677182327091074479975379685671203430638125538214853172952889596458615488383883819010361718787484313743059398970164099426734753906721195995287210569881686255463675605007758874747650468346457767003021154254149917659332847353396323396304150982537103064271569285760205213336014194613102172144476194815757292605016438984884845647370655266642849450918476055646274986276489820218596966614694150325488677876116547942728845840126645364349945100063836539103744954409141965385909074393195869687737474716926464561486849716079694552916020347774455193127622411842112413832551528013469365050889944075938470539853411920856567180753712674956742701204441039209407271828390964746723689948649826762272059259588441089905113992201989610322044522845432995167755602278597262405619395190513353323952748919412087599315921703718347288460335251500389336744862646979809482610638924901913076208234855015298795834840295178367126526366530885901821334314935151405247923687485789821403334221403217889103044880325572696041385075681238177791129770960919226023212721234558227119024091228379432649963572582798215026855091437695467420136598433133919316110508457787726196125902234764861802093127335699808782553215810874596101823891576676 162093154465253609886031271529187174473171962012560489502970828128536667241090500822904687238919054844355461405497093761297666924123350901993556697539004875072209635744136260419185066862029546871204867104900940988288803822172685974509089573442546184756626017891717099773267630353282307585268617452881579721169884569228527480353599228326107819758892082135273500085828130619591999451226645630579046847886273100877880039344115193344908993307470524622244292599101722661327110652705080251972147747833211136492476192387611505606167012820994943650949673570819330524926315279695850547430565832332310198063418571303026952430129931587214973871466964001379373900343857093034884908545679936217711090016144072925027971549533026048290289359641596711148750917119519922926304292610123015024568080593258747718111750879959034845792538494738587474521072539087831634147709471648416121430738714737679898284719925177383235254946776520747530453826233606007720780967977776867209502019882899379568166204317792964199952768354000494884284851462030035999211696330352018463284278646907499066730066939039188321397653670743592211563831904499085968466431709791946121678621251153883028121212477199008929372517587839547059561760903820046978343778863758688683980457789582744599535032549009864376323004696398476351350048941000015998894749398000755944708641893880519466858533986007033813699245379146286558776761262946425659824658342876664080492752121320683572077199087466017847323612605658890066194369482748924332679303404436451942434934561373860779757095406836651050160672841839111652392709685807978156053817695735198335924974930 1295526879920381324677637210066694459084283523306464445628852862987948483969538909197156387133297260331747949577360872098355180933272113484785154188751076599148208275826507921545401366989309552530338854801618145093845429651229159794748235213703325568866633118364979463014423895259044375127350977116951231201485208077428868093968248432519101321012296820347796350180862646114157434408103100388076251153290726741039178920660364803403995472756854201184396625234049341540179595882826933975803848160818344441203110443181204012715818917986811071736876926258008687240503605205187640813939863974580548112653351553285577744238713032604712457255134182314282982303761745088060663238926192705961298641056456213339592335233532438468112094614342008603283029724735374495596009771346820919256871074997783824524866834365754150312384870661498074191081424895566491892635690915157888657413660250583878389721574456749445336152422968719056381447998333169408117684318633823186517888815095400794972023029832276016711057168319592556323884996237186986460940083960004990556663670649860110562725698044675956713814565165482853246296833910058317836542468733231943347007271845776783885358288421388725260399930955632604117924219584677453348153160048517631070559621725744776892115525928624619217790237603364503254951317973550998962359914965305849181388540407914769839452447021212829428940984235270589577126907697258981934593773308803155845861003940574564222723624878417732710633432518455267423606310733116002733024520035095710333893644035900535336710271726833601194508638658930291216300400449993203086866794568916380720964404202 10354482839411809938826578076447433057228607872435059259702702306807459142285305551948067260829062883822197680821540518127507549733905373048604279250168489442181927355869644536001325876237617824426542413662514156300164428153291885782855825145390698671577827464732973260715272371930065740907623758123660748199840669946847725385221144050088739078078280037261326447677748861897512378476256992050539443618857666905987852891564484213297826638354661964278666514035678385182441598751475124940592798104557634336450649519532241521431809984937579420398653546623528170764678582287983528024712604680750504157172827741606501462536788176371820667984885905389685502084555467473537776555547114147141372202794833333870460101835514191323060895375057981305124359170929148342075830402614644969980485206739829347696915914130760532983273157772415961493963745767398849423848202209598160353265622955732449090968371622492380306236746592626691720480714090713619517668845576102403694365220113802459559060173440499127445135014731850752192000263353483438723550492836594901803461580992704866103574312313050469882097060429200072578539115141437486365958027410842390310025944876533724143861471749493351227527037217038713635221005584798038415244058059234692392933098657081034622443854115395021826961816999538951795871334387749635078037431185515574723921320179539606178019574871258307126864451840860590933342535834186111589007147552904278778007706581465043826573034407856592531822508568646343740900956545255114516403027989868192642542548166604171898061968839603907468643045343442113189797001845777884896546300018470590811506742447 82758122045390695870952395305837920535070918308981986810126880331492844638236318624783188912352844662034892818846813280481890013108790042435713567195891208179679043468228070392490494679983449346753988161316321531426860293175771627550575295789680577640321687696695695324287778592190096881558089335693615499685613577105913442312182932208564215027313055627992291295363149040415709433264809973362745761554183569999022785763162352872840123200232062952843756005905453410313162847979977893060167744620684559997236130488831319030749296255432999333534556756144297684126497550044015888194857728521630500593794784417175508974160620291961772297410810326161405747515388825293964247101827378145780341075510316443156132633237468781577487099922539982525961714114835257311971971174585441484391360005928813780790591231310882805066819144570371932513914228881449932729861843721582384136720064064100166874965169178522355571372480959760263096301856272482198094527836028222851334173199603101090328229906541473068139847715376455266462460427308472078192651265847011715778382040898149787420045402502806406697774720307844408744281760314471616033906795527435959794511544113178800620093763378604262475157758526243670519841689483347296692633931402871388896802101923524417122133768697758703371170372210176649945186766784906257759713155604138364771141985345227023149728188142076425026104015359268649640025315016190830016252576193414063394285268316590977842115883233859521793763738589596867608297127182443273067895611700365846335752029589870026414476674195115238224530264433990120799635467478825490714664773892426118301574382034 661443984510715509467415718241528532932534548131693495582819590439273168822120974543163094061474696811060432474062437766949233387404733374105727124383976166668192819549998742466441975065723128395233969832273294467020347060930963087690207814050092361695853347846913064677841255250272408290912725794949108592925553754947069404588206921923362810593187998827830208934057125591169474543724936609026896646278611160052299646056671425373973306800586331172371324670771499988196548615455550125767545871110993694425214261374854435298118646571463921424592712722915872223664777121881876987386096146992675290545344578064899372768028790274558192168467143537345867705355236775033609355078279722134333811304689011146955867815412426434077535630993257617832017050033258003940747800386838329452353937683549286223205934152995242849371675901864259392817064728786332971646271285413664977134222971074692749864427532695479639987124914140706001331666587821126997839530132013662544104810954663030313948866273016070288923578258550658046651582405489335711030226902948087894500506359367069673970810320795373374499117291673915104224796462985844156523721789216643631451303941751165624506082875599834475058081116116946692072926760538678275099480819999713082466629430933217520399836934642350586719043215857772791390074133596891974748676267558643788375608799815672246144395625205592378434627102922785088710438569968228461011120484159022863681330950384329954857460866840694605353227356266816613217157148322032723233701248106378892067402837181779438564617418216953455893125190753440519886728441758657814626940901793851426889271435453 5286591393914932927393167497482176949511554221036673299001727101136924592837401916976803891160656569012391888589557847433625344300755707994022062694254021016661656425361676797017619146608816781869913927268173837111637400673046534509877082702996092788365306684070975028763575188625742625013150828284797334054701969662601314793539068554164752366477675526556472186393963186428164861933130082651644973920273622868963896721846173366584367377233558162938187866364388156276598585264799235826717916082307337253826646422393395560769309197724360999942457533679461579907932875546792950660887746818395307067269499613167089297770734561545130374314341977948827681602134324549024217054678438568612337413595455417611490973747342155332403238373027691041149523292744531153800657283822946186322014619116244859754857325937263384907168922775685772718684404531167034762504256847858102492236109133665899942443532269804113257323530140566061077303896250524396113808743322075336488005984606765793046865717797152235342057867287167710830562535516711046274869802841425236016670883188440003904072334601822470367153030168024473430535522910883928742541561014660593143234624647563775544900037849096664741281538852051191462351783819777474986627929563657878236497730703570615513497692478345573198133330107380632776020628413300725537843723542120367641191476146151746915318247565178312295052167838409849036922803227746709744621412515862030090950571108070609323855205449596565579956702565459077946025534826137967264256845873566249453239605635421687193131169471410136570832924957513412406487948522862983801015114493341835310356005178180 42253106792215907566993524481265082611259054546610273850843739315725003662016486957744925858749067074827099685418605195832841065689876895762133067059589709912148421362995965677970746123484003349889465382299340897992519615461061980627455327376784600349587193902479631403495047689627521234580838986947031200170682400912947029306455168054640308907743634111033235126464481042825215992783320685036952946689148210047341770802605072431141750129314860645322930719348720670849980963032150278766102164904152981199732572701477935041724816507346519387150373956220567316329695847896972153078072009580133182358969778837984318607660462074044491717200899594575815965072202978625800518720216708882844483595452716640654826702321120794123130110165388542254156499875891456925243704738923327860901066229686738543312273515151318236681781622896251949758939585734960483783125035164758555022988301813799261657325037908709073330903099188575685325796642565346567922217207191699180361245636730355344079295777706702759638079823717513505594246694824651402884695737036713787261149569256007450097335006028571580541995003008457583435197037396599901533884674312301628749588331650325046568061063109760674555539398120882729597489431891211299174671235337339604428860822769797759805759865538198099495532425869463675657953516449911597807696227245187059351080347491495934472053188819649442160008919291281465897879379080962362472157205617695050174105264679758613111672559350052518300224256724538130408884250664302325142660321847547637175365473432473961880041508871407233455248883692023179709397299955327082152128995083273137771991160902122 337708334470179133027913810711466102554076861420089692451080020598439153674745796843082640972448291914220210250140459244721152157985054380142783926466651216561258988541637054713794313795981249078707760994016962540254226348172559499112216985237832628032007077287160772888130953717415047678401021462522474707154849639131516923751156433586874247032591438897463655596851389192573215488526335078110763216125508952270404518631375533457770988030750494295667265427639223691197721426847913182826325132110878659276933592623144816466700480657046397184689100672219729101741143900499782263508880306141828826677349368857309405783473530001093216363176409178361103707569947915939859705858352560248682762428776020080823083157396995983201902041650676924873960944433228046352719681680864996932048524729088987823196633589157677120575953769397340627051336249065201392095724258082128264316759681604532633347354089362306243091196902885382490811276617450258252260037082450152142498193988202998601077546741716992110685917529238535962118677211875028750585885377136983214146781177128978760081416498580963675022975289029801014192196171832623349803638721839493641701144954426529497238077460670822899458774148664333059480583129387092108840707181192516504178887616090142613214594232054299829904869312167718760425909721018817960730115401259484897789055275303823015475586787230498140494465207457577809617876105645949380120163332712998879687203713290185434637946971420150096389183913790270639152951857009612475645146952170016424536354360525386303621832088492421992003877075420432357445915191649521192158571245239649583012146756508794 2699138309037284071963433088689287567509235968291891309750581221937491415305239787276534205637269227310296970901915017227729641447993516197750192376587441048099291110782035898619851820543212667583210739135171404101876691365713536387970026483343199332109536130715078264121845141668785436084517445004112446981287514646094169594394208981059299566871249068068640964188738199796072309112236986895917881843357937458752224539092808464776107130735099616784372126962620318566874866254976044509198901590826039684397630675040835430207796970400650922731742182708260092844736932816637018482054109403263553410368555018417646572098316886473273295812784649036582991843720989760667241813237978119171606117093533069574730720310462746053354753454561480370932295881356508993658053791447579367377938898415938978162349772816614341253532683527779382623303563064599587580293944787726415653392792320196233068167682515860799479138361304714568801900602427928758599152218933929219399060386989662041176421931899597747676340344668842337882205148549403892886491829082833294228768810497569389752326278870273821560572926433103660666528337855154079586086829488237102330959526192813355932031640577675356640788698713396767320301975390273001476017155022824954083565191408913043177694441133888086619326753709615467148847482309207210816879103495364855825204294640032972547191378288339632242334313511427940085281216443477467307935317187142481072798792334796499829030769191576208890489609112787869614807298233062764553807785479000765057503861464249333005695683688218637538083785572788864811859836037126735061730055274310604944079483857875765 21572909813790940448231666588748850713993454633142843284155751607411544643939463959743427530386926605782182059524309599517646259303431738828075514112244156425614725418768613606744894389266346828289977754212037945621505347081675233344245961892615195002978237366562652254097883779059280554201767644822279719076235744123020638463277372066302533467387332491349628533616799352669993155394122897328231712721719439727827244463636524359617026035868124161734047395891032187332412343098911927702383402789764501155591180827872052638782414676717926251099827446354017220822132684142526457779765677674478312957978243969662930222727688026461917875965085001552744743404671355526576019771702361943549490113142331550989239217304812638499076621564739398741161501797065392613748874151116274616605856756480365844005782556814245695241147634513411064323342457850754948492981570022196902517972904777673586014894829980025004349884269289379882464770564024499438109853877400634635490717357109663283164736439272505348763736234517985610144108543018249096732850346353923813432309494162664006717209479838393559851530290870204114028457970059925418510504683669614343393866703438050685516200115333031105080364815328294352171203975954461480251307175303405818549122527211452453998854333030740837782662823270207991763135068381963803868281279799605546704628455789267786946532789214737453154153008954315745211977862708882574278306412816168661364170102779425672439042586342346685159211197931131952112003156564756937375503012916819098633331055218473157708290999384999590998049542717299692618822438506695849003666285021111930458746306039739264 172421946946311535862030202819269080819588144438089231506289455056555152673366792848772268993983334739701117300300278669902030380987475314763414692073817526491033226357064316206886449164087610070919113381191059522653006714711876783201969713298680809048617058930264285487940236238235046917117363771740648095693861777507634232674924153907628735675078446241209616160639706546419855235986960000291687460842410570712522854015647914328368546418794037136851353369015642138300667644522612248372625667401620018489174869084725826658874005578456953243695191558390008214725440964858800151320583790712277853992644734562151600676114227494948358997985487839088527838870314286981502006356873459070115968162650089160141083718164155358267805363107797761289059467529404156435636738602681458859702222549970966309511689621647949181485877720436131361372742951479165368735852260048323114099123243030949521161104960939265092305220185513749328223708264182636057554133724815226072272856546682713325919785152404224942937056350775810234418686648428692830496920740988302789565550075823069638686243233005584193392995496733409039118893531217719403712282053753939432319120415240478529354494225160586037848592345449943018436062218698513345747357568946067651650457722473378837251581352496504647595366335798355910005525578897938366181175614135894411589918748360513707157668256711018522558111803034966899905483837395221761664056199052208451001253377323233832459812583354589141124418449729077534015240042882634414808873845544966089328699215143941018116828505917793506419551867922602441682791526915785992017537712674778450655079201755267705 1378086852715182957155253944199447834394275310860670801505021641264921390120521958464740628531045934202251579309669268165575221151136691847657527994476172855369839169342085859038533193016294262664450510130033118381611903355657070627315194152139035783520338634494645727017432595432027887276120668108443005873672267826271115762998101171474559193957014731982482731505297072464916906864213752602952042607127050406514878266271536403410925645077930565910279820340708149690830718873631362472673310731047994502811842010322378534698138374249390326740811307903102542405449692678102562572021499388554387526412464601396954754557062884401097468661264370119996549669967248663482204587855054250022061696523652185838580850040430545800560638679403342655787559548314394623846435830426983591005660425677249224970001584546105167890039215389004225191503164769527528853185155162335322144533729040326673355535462541085305619813716117025620511145596443953720749280177594020601085388479320470369733098805846723449496949467970899563927881526500279064796568193209354462024583297662185470158175862394415216918672351857838168190544776884712388720656095510588560468794098338108846481162232361901675015125884772462093795417643916685224190585759996119585805793944488604097423149354144127554998139757003083052785690443579758722821566785672833119189250812078694514086571069002918807229259320488466939377490184830582279156665651722561530645006063340564428639928116386417835589463800537534166884183089196464399973037923620577566878301122471246627932552126827395807153543129066522779161558897359688948458622050623604401981750451287470279030 11014400444412537431555945472445292352745046823055837483102180344355705634691869273264362603980507939847133083368505892647465847399631511216943529915767027498843118830274654197659144869751597782272779298101868353390725779309052096835825365632727089523196876238350452698117457924895228480680180291932074537577768474894608141211540709354872623203415950243069730132803001844393395466561935542649188417382602248581503378402339303584055918707820579051214531317928291232513247965512003992462570783845403062336681695187154852870724856931838550729122100161865055153953926035988999238928297650887506865948330298117700985524196533594285168742362700334670447260246375325202736207647770900849614639663954127236601647048948035846910805687222396735823693960149655306114492513079499796474865588290364114788739576350494416681738471288713693496517235665706030499607532388141527438731011789387697939545472865340379867780566214151569128776177595172829542015932121807836348204149943172063115070734738273879020605378264329266412185365054456705230509381210666184792620412011638761065426276762520760811800383628488528823428201565844216155823256524318733553193436258297268557605954387978441290718979167162208535422550886143360286911993104385496132697626323856283656593905020090441540731570595333801105822443516671012783671135123230790881887183305974504269316286383471020177162160047815669900057035281294263092903689603295386474349986757860421058367342671810813677979498767764903239620658837200017050366125179504851711364094577607438771544394930148229965402496940187133949216001012132156342479904140986817288350394812535567945942 88032971527992620024107131470144821646470973498537492733895298392648698300905693465116332263130467415139117821671399032569542733778216696890098271117306743949466783056419596159836112320234958576426845817150962365937114308965472654822743887780895103358443743312673554573413944843308193785584518982327277341540975674953346911232776487194172547769386876608552259169007684898064796431598603995213509712801645449761311773744990641942505748268688005013036775420921565711572227209765200716889005336787812481167876602329060608270003545099121061064961131863660008344427850286634107994647229916301685521119170897474636736311783186417083366038811353970215137431089566249630965948890688146166859041570385340384590287416388058114722693257378328837145029305134819424758625642661331897058447384563995484322956801486461220812531827498226817747690994079326415475508274790972625525548094083674498425494965820591105766939536500897740188473129602933416248181172018675444562964933495845665414674839144984741882896986704278168555727843307794008079371048471674930652676195353211794041424709339086306572214487559753910401389711374129620236935574284866141654702690532944740663912140072273626487334733370737666199486372221329837335657707243801614014365656238215846665488086602988263458168086494973003609616583975608202358834064727876114544712113410517849611161929351215757990493418907001023823866797359501785227618125675063302400829055559777727013861423820360296717619210539611139007048214538211145229735223546179902029607325443868757883747270957040904148708014868735577932269136170232378796406721310533171025884014134098492537224 703606897915242031731421023995345307953709769645548171515264466118902128921029504616228107201693689362436535771325308486108667889720544194437886425913569406665549829779937305889620250804184293657342330649827444478181703492484391294973338545305116779765513379791371475519355224319345221192503150261805500184011152304512488658638833830605167317573524336952336071165547504935672657726089561826708414751281781331991136494403220656794600199666385904309488630059928690113013219774323097715375443362298861726717934423548223302588282543942693638876621311831183688446661340091529269120787680061744001565435619645685804130500787542424335215386477137233553423125615019570360490827615192436078377875695375125859278711681421735597247816844646609607849310745099009470360359507882202395998602153712388028200203968832239954864161015391532497073447801990550345444573951863622224338025093167088736489510219178381944943210789211089536607835708390234219595593347137983163638543156808108160200609690740906798927426210363553945990036549642573178372891759037854374379277833349332929727454335929514399775742659980147682085872612879093093408796293025349844077478166728090401198342177654528020290163062752638932584269982516473126267565565413639778575054210028452191347542023147379641886306569425265811816603864435669252674402360835733785554607565467398514992757929036175310003659715471536748706591507444178280795757935491300789615318167422906833559880649424783891754077786889024630102709827392980797547172553344141503920224190978056534394978635173308061149922933169535315979251520754164879151095215659865726090935440865298115029331 5623608028016251363824733634773668013785783398927250147550616383383857111236365077098889878396335903694560109117463268860885073875357417445107794025909430391067035961686894497348513415464644652705786526078418728405989768320233912903088260002675456037329227235351057440302967077128110696475945192290526273504602422523090222475461228674698181176956202293725810954401604425456261427608224492378380637521040642011685432370410540137931644980895614518208397625753303114923722126582869294827267684878403865347358210947626801980014912741536975696480529522590771449062927868003660247421414973431265609170911269332672747318663975823611387396026067550166251832601660865060495988516888094336991528467760071258550694778217712560960680990823878785758688421139937232418146853150805764249070046254204889237654919657786912677653296592563517299766821546091699102948191589022967885917934349000615622901618076550824556642131464749568454984053973692153626086318907363861281951755798317231040073972552391084265262335196215841880799640403628503729299733674836129218549293790553043837297935491750286287283613447935997597401418887814497538995347388677529074756784334415778354552186626846390772598190420095969275092435752916179996793883427559590795861546364756094417936723322248815560647182192594697684338875966735092247100495599509538249803721182679382836004326657700286489758462142278621211158754597263847330732863005067461550480216456972699279461152456372884235650384081280087903153486735627959636811383581832771632896150134215329372495025940216981750597721376005330978719148904544956736894400782842203673238184207308999192557156 44946949566418647839167798262847618745482167239395386255277677261401359923490616203965362065458236784849120547581886731770864522474749008927130013085237538647487510237841185378473706576876517219412594010995118876850261707268193035863984339850379241480382889202473887340620028140312370505947506052012516373654644113142186290629545955311427252990557445452493284729911980383260626641341976674267282123940854212895152549955164655542030384746081705808228964274228762910094240815908644063400111790949027519670757202356937238926234482069336851656163129197664724632508090098525840833211330041017461492703942406218876024765707911852789212291774312509435492000809766606727745570982148840633410703898742505414449056189371630681147494004896501635784149613626383284955637487336381736461586490042937273047984024395665177897005508717324995178079506708608118749712536591706794560923785596542223723176973438649714046591241980008902383375586358130569198019585405823178037345678821748427701605737469946310014138391331410399340237740546581589549784763193446516672330028367348428165566152765944726542633962178425962916198752390203278449378546784698125124863588197113485067775881456991977738097866981870439463828360327056110216200819864222389741049213389060575273718579872297802195552473065258570322085079799554282226026123941236361548536160752703018296745609431721904826092153741215848762593016571193990258959284660517685076185528695258721431915633147973066502044024926436575963086064933224322225188323489795100474315480245492365964808172749326515254252597001538741130323068079705269573427326843437245132908089528442543740258217 359240778921596887761118141968269633411611183289095697383992121077231907811041326697696621826416044475939403551540955062541649320633954992660524920506292969204294419910630653730978719030815087296441341600668582624608336876494536928030651666629938983293897728145127466228330174650996987631009886734330936174072369715796741657655403068755581223797138840580383792992147199345003757930575438507154093646615252251019407400652311679972706153140335959462073372450990770904332583060532749809060341297957415137171742440981522797305539162206187719607366282095088630800703176414207811841494733314383071255253779526688687741222958020084942851131270916281018254136794780274676835339519835739977172492025759354678440174093805899266621963037729180615715776797973773615238279778251149729925640816839708801082912797123660681272529723430023692614800851993148938221503247864421372258631354171413486703089726995239211228302455788869482924671747041711390222751737757755347373423432217435621956752925348795079789587397559027383904261680658266560746319565681710327804471960953684212615548592471069871417289802882310857864899974062493661813537326085858542380842555852307739406313265607148322713201802552769610839031813465178520039996459975701956933194951786854255408377323815013450618042286752869673133409612010362494575069766027866121155866272416210314787049604486686235486890553001630296037261426154744157627646158584974786021658179106230269613089601667052405195515379326778492199047599174155549122054451568298925942800848304884100852929374900370818757714779398858724230124981869661319943010012889979996931408375970789659804870460 2871251679524185302119651851838709958929074492414152810152369443419236771187666136309482853433590815023094856301253138427469795992233339635491692091404155321644510429147727912003162564946009705549584621270622317002407197655601822467639731306130734762630391139279738855513116101755247823616333166407092198021239811695417169214335068279935054294587549586647774185982601490744326857850743243395907672948863366461138747999567394135440743973400105556258035545679444640693044172772174894006341925171616873873943613828422964710326166887897864500279757629818923732621959248040967040645976541319211232229670996173762205097476528235205174652017914292036125870393039204568997074429398236459680318677919031257310955376510724096143315797711966205369347312051825318283185366591098952706384196140644531714432941233444548577687037666756498939182384261092532814037601640007408934282945915189894684622027019434929653686481118731733036530304978599501751708835303903737141218274518369018306551583734189632488883820177089565849912171112283354508590562898150992489291981483378955483435624011972830346317466843518132447670940259898670100530984903728106610939998020740259290091606997824699521360546396754221316017030547635428078203154239718683058896635808375404879439315772403477170864247649211025400461701128421841417402018902920490312890138638603496113922113563484293443072144715948891301291214494789293940414307447059376693288441900212797515511592017197620949864082681535886374388633898912151403110213991986397003339704157741013825215744917877925592727046502256006425006389861373662360733959805529495335980488643147339602055759423 22948648868322162344778968012395930910921922296918175302403631828657381339886667481505596755522575417058461904409193989336944209015830006835970636355279604972147298599871109023326820738257731548204208132201835554322483441168065314985266979738619128193163337520625673883399091779711433793554330930412292673753231520272866724940777409015785271258017192814859742383670103490254707640861128460396464654902674129945262869775310693787872088734700867921197795390776428325652835200613411806382747877799251459897721841981919315254824960380318429065836869529253252879824758748328341215236128914293519890522640784227719176693692926448292261111720140235691779531056931676884091997686070188369544014416623765654735757515385534945435874753549584706086032157743678054208650756741815523877619240377000036900445992204228220673963362845749614688199470749904963897002940905568528706593087139451121431387428026338067098472892554580220146477476552126997998895719895009498771939302439214964999889041982503739874347170380008210266705855429083262889658341797570923050235426824711825831465875131973591153036181047999463004134598856676225871452625854643597541070250639061079397246068361455057768524386984241920502615120187074304227696251327315945205379283120382907189701442731272697289687659696425004772109386723069861171492325768369133130458206935313806705904678207522498764904106258895537733183018078743209679637249427172341089679583611042953398078992145613598990932663475774660549171209735234939373469027529241140901171387782811873749197368944638614821415219935105242369917748128239184058377860971366636056943526706586112124941018716 183418528657762267037084908997336861280714609285976907078012126393103864421481634051503065307230981253127608869168205694876202586722696306917224523527414588462274841074105699136813128459054684400048122729606113121636174282672307307721071761298773359660873660774744491951189612226725153746192067368647503781055649769168382735849161223258753592736221655300009999190869652493188755183541850891277410391425485522665999273699395269282392098290799040584870711514111959614287986397797956083141420590201851835148919358696194751934624557564294186172054232713856544828796653731491427216316176421541162166064314561584097327177618999474178812088942370727159979879223727514389609014132622196505270286806155979248945347809530195937396341383087064702172120319175715127546724561153157365258718507896935192454408077072046024491611586521979194532409224963589297292911414892505951850026188696433854363673527279816647558150924114397170679812631243782360160993179548824518129870336078144994395404624328893533207043770135364849206875320904821613373170180773661305897679608412801350417652114554558613495380398028332319875856144206780874999100598614038819607933767405821868298511641271862047475877676899714825203146953059356233414794507275761321615450048613825833918982514052598519861248253692298199955944532163113696165688683093882124465543033571535490567659952239971022715361179030949236558027723361827874933319338094231188468170547231353442782826303066801670349826698780434092350025598705950801302898705922244321777838700752610830389235292468936776414696236108724214147547934471287103432136533321439832019061429027860329311016728607 1465984960826203121664034985133983767410544943489844204295065038253625974068946100997212007393744606715104783699449606557728121546169754757741798276444437936576674039760471458505379227410739566311533879693649567674816979534933391075139457828034587331671757228092100779256131777817306855001937586478393421310243809689502458482528555863707427244901403176848770779863173985742966166938793092293825403859365397818589965336865355331952750893964458686026728324122968873941803559120707954265034406400185746997534440834417614435691483813584058591660070217005851955453157236810788152799348905344383780850890103682704617387993490735267513703160934257285750114357332170434826831342460732386863026707568877752303074698462267603862443968826752623869054917286922402288113442382729436891570022417709754792165397747588564245052592935226878660497773333058263523173965428861002697512881298607280337243543035250178187961162916724401784644602639085156468591642438551035525102992899944665140189849675054764190737198679491296440086263825569567264776264472019162018640370727097440211559063253906193693718279616576333505437988771107876450277628688050200297276821086686432976069261639415766055815185186077554733492513592787007541379320074188051467508163706985658553359763526502657404565386813334196578432374510629085493310349364172299241030237812744313811541137692465624184443120637087022922181555384251784102960145423372235999704379869408245147208705852739513831639941065653981791132875054203235408147601937508838724468856862891806477905073828378587220132241059340090511408223691866941969869102510142031047222617175168353550820251608424 11716989744937042844896002606099380230969635039329442935176187693941113177003640857879066823695512164819819179621565638452521932832246424682757026398202739601003595839753079230201394465089807876047098866067693610062043188268251907552834567748886388873905063842993155049385834611154174636414008901012632130201983842431434190728107190886025800760521494997170010380523221516262393797643392520238249048423517392364987705809114737078796428950841653621543624608929607339609012439129479111004800890153891984866527380624793482691460529044644484388670304648008819456685579771044124527175675319209638246291544808176491489604367241323107634697665787712476467308483300484194397072193027151431480758233004654368638071898427413822426625566564469421751826536197382919840397092020726176239213694644338557882640322107497747549468639479181638451237487610279824473485337784877284604392516301117863736525710709463474089329945235071569133818993038343863153202886935222131346115512883881141447912068290853996200218197396384355246383248847130061440396880591084778240170510428687972036801091375889267561255371186219732300465641891777845736982030482830857711824864331456347811402940560212636555535325499385714813383314568038764778736590623415478771129343986817750428320339209901039574375335926751446954362263900584046092813243082032415129301497667129069714860971278058122632385316719775094437860863608279954536933890241996091131968695796474982105806489357766733982120685938616987257291904789103116935177107103975667878889074397297104873140957926159473499405960421075676578650606757378829696478289355974412890006189496579137863062045766480 93648927807862957233267646081094943528917764191030845994118717846241020158591955079899702425142250139188919717584795532109830010556922519858616199106314742802624098033005350823031815825581266560700606786139640783208620524912624396225906147834096022080744085323073872433610581182583854909878610619377377404325272579257401395883327163786003709709926488962967693596635783743948736513832345295492313881942513641895928608115451798294131990995096956689860082922366614031050358749769166649478802003860473511093162307776302057470206101743097493502762838168238308232584464940634611912682427817199634485162527724405510588184901993232956013516949250235690778276133374104644054993737985260742828738699738705027088343462460348197444115092362147184882820080221645982467106250172117848110701158226885055687265059951367272872634633610130319059436304497507361359932738693375203392900462886201979931258821903889714369296798266024530673999615589912813008673347506407782539556061451832030882856446205617609231757264128718560559999705467798629637987563220070971510827552009329667980139458455453287333700685085998375061193154295067513168922257274690520395345944807762781296342226559427220058007931550995818489358519165990875570035650510625308710252326227584708417063323418163760666264589431803702270431072397367917841983648043600736757442014442816562283494583108496542481333072042972908838594368040212223732516310422293805674232696996140442373153478979964096776789401252717854269868152313042119417410764368792070434342843812770795768926726242407330235223088124557667787538431760281796109789756196899016272222138467838545980218601146216 748496534191162822505703644584175211178215856914977419101682541970714823856802720179045988569976018353812716165202866800682137594503493343891850661326821925641453485933912353732463989730032904395086271038508210030788981170567363301176183208325428665935120334938235432989317036570363191224267618351616931278978652571316682513914579225249484745682286171147238303663885863143000020245815325597838396634609942419621718834228804969359767582946832299767327650516246799637213887028709856731304222302095984577922153649544522853598961302172860396834100261314407199048030087314362078942337462191371642318229022782071822273036646777327843601668973229378627180014481466301880475031534054420832388185505136905321569232175287331880714785209073414641425983743485243223955849666257307332706033274043734834994484426767667433905229498793847524498689777369001436936269394594519412773939234163368031011064985470808536728943273346082797379731828936384132527402462007635044242874084092389796027897572874571173435439085514296188378921315470771310212584612119746833532831403102736411464306561508337489517286839936649971782667605119301772263002499506309434463756999278092989657013236354725000910358770885830359480633273723412158067630955399662608936833555773425779551855131953678445268874448540250201790097455299403810588630580245621877205478076684304715997030822528055833423903097657848519548189846684113012567349529899760213160306700585915129335412124082766213666474836154268578579481000150007730644136968247669694936374049930085930466440830818492782270216429447314583106428765929916259651158306949009517805528790481263886441332629370929 5982421414028654861811287726999863553404022167479424831581237357940563518626877422418921399281203686956516184588061733287217258135901605592954854903288549782033384802355860858536232944682521263703151970507787220113693278715875170552425821296476192173281487062735954900445967522702817664385848441333146724655049140363182587710868951515920693794189066284816030539261182580474584625242902170171888595643502508093406962578900535618946573810565707106980489469453816454837643972643414724688776492732529307465976849008070593760784698047243274901989963213134532051462448422312692619639954107810564030733515564105869663333326467992587088310292543723024385398403761588564372304669825769376364970670860732953386126560767154875347817040388746095137483735380221518408957291264678488875923500542166551406273606680235839403685539861910895519928749132390212507627343772737872066578176207164233006016649040194420792823889407557558004563143483134497397908550398780813680027724710709875264943452396599087682794670765159528551422230711024999868064789898984658338341676480035266801704098833344699755809493825440418288030426925294061701197604676438141819306746490370315366587294402395919741390344283129061769119843541352111487440945609137555518944201960195417993946062632210350312723671326486608524154124871388136196052364025787238498275573334600567148413352801673189939706407391205031613005180673352388120733374238820499413424384064318125799145854467839194032045340153516106873734152111615663298938852253628503916162570281873778189412453743667435426548601311449530129796485093454778348335690330945795469609722627307747808737995310719420 47815030275101609170920615267834448893378170328718399367133776497887629152534806598319125169883044613089917325896049380511743396220378240173502644450126893543295299790001642093064945174254539077268678443070691549858176150176558585674431208949006207212557172085809028642626536529796065642143336684371292993071926872740383204871765809618742466809472275918430353112464878162516185907277035596758854209740242525559893287924850764668525464740045459369353658633026144773006133247118225194515784635308874686648055559726673512639893450066586736163412441516766762752906365457651317558890202502367419644382944113364284003183595137907800436377898938864385808357398200928543282589589383204315699653480290281888938367940324994857219509836265768287523116722655972855678305783511284675272576161239947927562766490846949000772523498047409963644724816492712640892299359365942940764213299031987238265719253958283856966484312358731238293192700546040345223369303265919756711640624684627849316914829298857336460594833478473403121207577461712903123803724756627154509587940231136041036710045975723782800600125072461849185116477372383831802357058644760139845072342206928015039041163701557295671911317128835191758654093750972999456630704087325901208298962599269398612677916503579972903979079397106579681910556827668501389918930449197868554267461288904616584241494555497793586884411368701392261786085668190031924651577691876736080716666502905038995752755109895781705509454717535415254868568300796231945621299545374680720338275993493893557104903374963979362156426104374289083738361167776857447336385455866624812048272205874225076896413524547665 382166039541533744233250914433821856750775752317841796193035866314481406651660586896006234976374613712335747733147307059908373741776093170420739684537847169014468195783794809687648859669311671880994599700893766117466984294025894033844780421781837444950281634491599795546924237865959234417771425891155265331940565405957693801991707904041218832520855458030407793613087530303972008705675238354138778151917919738029761334809559305584415482858391719075296087963144924654411665698838428414660105130162306674323594840244258130237124289859126030236700925145250031241463897347799383430738185440290385958784837672826051519784278195759149132238368442135871177157777272501820648797433066024311605832273254141353442880557756173107164694145097086139851398435471259452057465753946137350108595765666368870758058656553357842313632635110422441682876184925286104286167827346490778700524084658738864549148977365726046990241619608560766065301978349577911945072651971578701658599399834579762383295438722412976280087381418943109798244532802145428909802827998678429675233986771809100353899490651157330704405696862872595886889889181873627796653827598378276246659872793154566043953009465635886415078614244761598169909541943087609856857429306635525513836574366491297638220759737722917700533436645739090892830207841025807706794456392754053915642648772509343401808721423123261944334649933753743019137543280178278223097154912292392685529036279648263642668774143724988497251742481540933922355473486495129676092619425524179140327840239565971058328261278491696547673390279541107432454626918672279007008200328286180228217408156559239133939991695016786 3054498891596001286758857335448499657132238837564587877381073523377119003308904665037041868839726933883662857525557780250058054508075959137510401236533551503657468982573103148400281714055342382893510165805060215670837533120442915382862043238482593622495974901176242076550606316669705130815909967758280627949637293531999578487532285909830864094046298441829907148747474073298675868628972922992977333645003085563914413531851999819513708879227884751566481482678690535564226720703985432996663615117527709709660667843300506978703302152990455658522075845064458793278530913680819248989409238404410153399300554647469692800577843194656223154956978778737466975737866018169039829130825911080091849933867250528851632213692825436125621381729270363668460401629400160336017740496703347143739928879944815354374856491186164240378652313778980848302952616420284228245321367868599428489512653766468151230740037615825958333155679894806921232291126033240934322821827104694755616888192371766766371506879654480318901633112081486517333406620041513652016314501568380238645706231890729503067470371703382475741173822736004950362651074904637546191533228808023452192450929115757679136553593698508424577831507981998233420319125196439483103274482687928629011339227261324380332458873729362279167707956484630916606866057393800035265909133874433937695333014808951244934015848995852332220342648237551645327517296626637269283008242909587759095551605270950285667222035966579365491225321173159734149521979877097260978619249825293035444063075670109303403510513917814809838801513994486312753436928144431861194636497199389512614364615521570684705658211673429493 24413389238847305728500903146396859754283913237958885465582569012249521037510152736345519912405554830789093255100011935669930429986385459694195671046743801434159720748145815180804541563218530310006349156362524711865555842936929942241254247966725467798970361937349723105744750880989010780593809112346154160721063268620517127051479182322618978627862334664283637610853670650763906372652908880742839232146852289806059869102161938040626311447872504115587915145829451633560388344584829913420263248625044044551711685763665208331108117652119836307229219862213505495069281974530858929288584691742010223899907498296363120813697746653968670250859712500885498608747173828113928605137850264932897107819653179374625528969257213041122024939736848504501495008845846251287925883449921485781040693380626096147419724638444611198764121361869856058222431707141414013573980826938316884772112390991135715010680368057093567228126743360716212972204096334335669237282857581066878237947167636054106463804302800825726437817199284844411357360295355378205719557775851816299579710201195813332617633747679608955100589067433084599867874736998957798476391071541518119318009965397149799860128666267474587303268432281927467300670657358365877906542979332105207991948769004913334747644788352288020668012935392704728705294813152738079540441774088612208532188904968437254926768592329443548373156360387385669161559972608752177803003178577404361787647829289951715953812622392771262032958468137903718516286452617012397781036976862930321037205361987562558705969948428032727439425952845871300344379541151638360153861253017467292158887224358116488496985140238261184 195126566245909717873580688869598479963741402721286684353937688366473847710888589617588290287930567546867880966526129566651080501142486048686525650454115622436175119737630611608138607912007221017009660767767053089613309185963014134319894514799771668361348376597305765799874553186849989050200129108416855024148382566778223129094353423926004653922015921014215611246267658146640715590391684345587187861190372009677298849709657654723531306363162475357238514635915566328265394571532632047887404545320131482731204280759834505833681294775531178496407384743361679872682963986053535681506972514225950831417871562557440189628681019700411596988200009643989333309661474737612628265893707558713952718767939595791020496659452378299129273138601093139243502073582552994755663260370252924018048543295117217402657128058300461734526535915784812520660337542204399459020487221939538232282736659359382945885992243376829929907409252707862653298809376719502880995015066386312824743783051162195759455569728357675013529222992050001731817760493103119649909801482094362472484952772329610542543760607127110633115261798606381489437093974232245906988331935798937938641883158632625374112906166035699161781722918757333599456755083871909456246667090636451363722031174396688333466365846339042472356305117645722519032472597017125914624505241310466472508275407373516376168300371361684189001703771890852733019234591615435258193969539050618929596035902799108721165097994369723909941716352435882903469086711209223820452415028564264890708895187081685805214719570251756892442651980807541809896630809313501026808229533202444919513517452642383954815608172261875250 1559570284189522497139349094890806338498132124320768150183406337649407820109819491698231909091980846240361112395139172570374509012479194268324386112087945972075140948916104353561523437701169929514733128121628121863443293657723910265544372332633845258790492758980477165867899349964798835218177443854832776813311227934214745052609102327137211137438342660819071610304429805128855186555845743257446562290218463954979509513434016222338669531482508560634376164134102950356218904577014039725466218701254004217231952760545571639879168059063535126052380312836957794561954960562252272428431585104706694540639594667973372316988640363980444655685439478327897972846727398331732770282157780536619042328563217147941903472827581618229471725846046150297642076211839976360786936552732423925198160741063318340021464717353148056152092693530579745355452793075486396775604778837677001824080548126308140207581181133255446214254640126195250909549795256837867057448497384489164408443648180593330701497899384602457492629687540051863279904453433199780699514768355776757682208173583821944162555670119872506897790547185736805877701371269779551525335880656891828693329828686433598528656764660246753948407035900437308709723800283945618451545718146030819851384155510620606832313971151071354341253209710598055810047739517058691246221358151608820287587723194105574641753478252800097050604013892709534394687980362998996699169319557636573528144852942652036005298163372627731410858468025908003252145460433645819838096489843508479831963012775998750316624825369073326420375324033456337909472146635755596539870512059042910521860884534943473750739705284946571832 12465041356907473509190525362971291188964902273833632837460001412272190757439128790324711998236769517579395540227971647204695865489163793096515173687707334513772186201040062670841535442789840481963916099892530659675449519853528887885598391725193799661584385308345592662589386393084510282205319696811009219580519293141421389441755845307122399502077400453994941346048608968660796341694306640108391886555854660364693211166393069181396572142063706176044225815617598110880038457195250476065758949151783797318459106848274196471098595143518457527037174069033709140949983018246377872306023190614350933281144458321182511798035051196735541088260122534806843674065679116962385565494428572090182736443752681846409105315517671385809757354357464381079538981940538696589869418737596327312022673253238435423897795040272766422823008836381790103738461423704976701543521403860985648365419331738838150918059552483259391390724521885775072151206945939665093243050085229445490309268685207136960019239878946096277329660294578996802131532634699548942377411402220125279564084513911209988968349214729393819355820091190255824467364263690970863321598805131707017504640304834277773568804814897567147373753341933696785813812133856966805941391268940878837227251110175976052767685101298124936274566192579542423344522356761640950801708700200258712350994092635922244804580116852360145042926045347553902245021061074142727333981199854630288937045650800348546685953477964713190187206962366957381886358041439074778789469526385403357598552764282474321091115080761090359963970978411725889922369188335317478139011332760187333441752206583505703941111275043085607940 99628299642284985773157141425470103810246500423365715549744353928544453951759472741039168986432379838848452931984433693052899707918428152510194962299541114865137173482171384201968017794760563826052466480733425940799775667376642902886587207303280435295102924575421022824752310383512904453613297339399203124567854298847487039617066467697988294795518531952151551631867906088297355885217565064720674840495417199850695590771949904514856294230670877860359041544607064415174117512958981454062017124525148610753440758131809244206036310722626079477134733092727838212049931447517301684026105380198754919885127681527572091256141610931218579603420463817341101855991156942176207654440034058138278205328359335996411171370029187190247112180491901741968926982289370757395729670462029209990136163526282358167532797956682254129680081548062879983257246512179521292382854719808867557676421466553065562703063823454594084865713935170576581990488393625768062403992014656424768686359400623242272450798579141956261624665315759149895078034027454610249463714877712226655186224023957942933398661350232267617997062448131325940487159015378715998473576566722315113157201504579264624398965379908335646090189364856776460259826112247904461487857795832836754031459875416022872932835252178901846002331895837366850428423263141053614639089995210611308869642629135864596092468674004989367446283209183556675630365882230070838878022393508610895958815503620536308996359119429397761338027220306202204578093105655309522975218252861662882645274577232586493985702852590390441432188018351507667401518599935841497590448183993886069505811608064433299238599596151159026418 796291234183271042956055189994856072487012917147924559693494058763790396137330631239439539792031807290032408504400924299998674623147328333528473198014238750325051300863307669959682583045961108872961691767780497839515183848962758697253661893649547268323047921964592157810957677457738428500079826187288197868952449492071738475809347657435914097324684434975295867828961889647276493875894340304536765954914757282419341023163879749240701858593117184457427911968501881451160080716873820719827183145335904635570313593180360162342636750788446746095057380330651825103461029973076869465976636653703238487107315912078920350027263286489649763334888254386675842311025723325982758344389357737107902083584489915770987458792598634033489227386079165720072709188397540939980366735766691190640420034407197564686094165943466240507800869627985619529646430979425575326161187315711887766537877648681916493460938783112567006814363188824993419590923211647800036214451845142643871466881666685025046547972144535070918287535062119705149545569342799368703894197542763283269879501822403257731786063210839991489722464413874951777230987438100170212005524361002632495433152550495423707568114167932196364573215354559412877607427032553754685809298824166871828077003942716754223290953655807086281783285051003813735562250991032673631187177561534524363871394283689804720772223475561436344446565637937191580888504777436606615599885269939932294670217439315365965525769373627196691103958300970183891776436162202725248366887785418561606222301768883424016389170803787170734616113038694213797934794975963741771728858039720794758349163601751887984475841842776035326365 6364457246179120460142322006300513432490562335772666886992282323971351649124302597774742751789894802549482743385386468597274513940281945382227962299159665663602037104656491910218787623979220034216983434105300327807449024569946429043847992806762174448026877091874397060033757838723016738806671192956951872392472158795863100457787425812104695212254271158933347558372058489629592389557152196545542617372029614834368620347696856951423479316057687191457162504592524701015136164042734790717367967165967963041516194937551596155434857129899314342140691038387460735402840973609237628600329733516945507549734690919998360139735979627479073155142435425995722865679962194746220447736078357120871274342089467468167333062825808915539963528827407146701489057263889098530822827298211321447779804471519388851823498569746178855999565484587017162350117012840340934069601509412032978734250552791392353212954063605954895779025758517529275344995041398541021549166262691067884479188553201940072152937507151989525838173144264945167195361253755459795766584154924635723387255562959277486838300194454349921948388243373689158346492876709295713773739957451699205666779262388278881478092788098771449269866897017072834762047977295336927849706611123102111551196712256327909421160853051091053455782467872278994899469800368776817094564235065125865444323112197350335296850975700136823520818211698888294574378860350455506633975438154131232439710172931646858126342657091062702235792684303483005554552428379906939949907227977287787968405203645872566069673075977281346858879363650567045270333653408469239846908942679482537337199315649723764133151273393166380619308 50868746221226549033292943628265226193073587544250944284831543422363308761928693800480935876486693661461750347317744878692007114920417306392909725134553729338909949803768748177743699760261459544085557254528562492914231955031947318289826004795511482055893954644523179298658670442834535181030416695766557050529796158409651080893202289180255300022639487076713214233940666132606944477138459248967781998389745345560882104484092159857684913819559119583559086319808044799881178815219726113780844067492324444380544648816355961786939300908804053485787801980343558694615394443588596388042981720320871091430661166632047251601521136580465743387449843685827899471273073436587107728962505635063601540430125772527700086575880549505949585955082390041988476484266360866515530035352579179587781687955205276271676950877135301656436047070562245997667389490445104346160350853597249184951324572389473967042069759175019409685749638308170096568725400919804538502670840334913398663385348206645663481877095440063558475913243059724346520841304020042059985451018274444298120681168240028145014371323568306230844248376427165835330756503385420676561918154827318690939120849647319400955096474454338134167102738115618773295082350070236423016627667331654379303902568315720528519165489106505622440650964573993341533068244967066063414248221462590111036191729055284758205544240893616289359177411452690422738578986573798144604327285681187420886862164005221040928586191578172054184496945391403346278255862776293753394578507913824820836223437230819023081384804889475234016317341918256114665739175342840742901921736088009279199078192422655174385808201151252603901564 406575228821911065781781287329895627414740618013719571537915256597850151359440630846246660679080998666280915623044949713879545197146363983162767044698067493840615123874390802333539076532862587849473121243824153095662965424249840506243682981655054705258195603280606260785649350485713440600057420629931533933144189929240151335582884247737618570947849074101613675452607596915106008974366768463602157306455255862115453026459276784655086838897837652756432020219810381846015460081576549664637497225856360474080058621770881783297559530231928639153795884811640899500248159831487348267753791131831026969048369224948720043297455706249163515447682206652858861254579638618708769296640095635107565374681857580939708252424682814119816404198972561522880566042300867684948552274500976880431034321588057932646702105506533578162273549904255907353312267681313403675390344869189429166754285066525144495749319595518701164414227634604491506180901391218789348111324787696001497965769638643658822472427050688201372264116426417754859153433798785630016412174341789918595252607082532126506164599657296829596901466323837770269341082620209172230805040106851079100343449633787959857029068007397631374949584039653525189368662266488826519761569637557685193001623645391961185984992167409039852724504059536668194693222740648947233408818376636826177994577593130392096053665944042407194367746071711153693091403806779884400074992685164710243643859240618414431922064612828485830351799250815936172943426463165018794088558986411864308944486551444101384812756210488867146341840059729792824188957066042376001392025328924459261716199730182907800657829924612644135621628 3249608318333478734339969501661471823387483315694612094535960359609239211201977105274629302138485489664539523027750983848808455496679815525511008812004883981649404146600768846047607565985808147563192816488632923845049623983802113779789378195515771004305521521682546275502320693950404983982739120189882352059582578059759864437292096401087908034921115250237025556923920166775239913003104517108122926404740835591904518102669886272657686608330082799022537437186241630570713714935762308230490013309249752980666232404438021446854442964220154976381622481041412351953705974014287727537397465576322270720672439841377744604267332992218765948905357215072779634876492498455947004093378881471505549006743025709463611141222423229257423856894034204555920472584365667456558822639882482745526474970038796412949943343536630906334048751156789833958901867337807711016454377669329756105537018586719522270323736893218782377060629634147220708926891939082242086641521196907068880533782881307625594123952625988573267788234580625443339409564606108860118348914952134307877067733185404142911764462167862276394019705393579835984933993242471535263029442039600619609001867096158170387578487698893213666309779298335743388832066649888987784343327321636826186847836111401138804995378175015751681261020228612089819040041211385148546448461380918329936264576268981273074819835402246025126367967083569884562371294046299448935575245176612057916793171339861323502570638600921922216982474754113374334199131564302061445135922550898204211016125943372489884285079594592547525548191170658328778114298930956572318848893214262687342690100746961729205558932286293452180410081 25972953699964457172206427720240122841812555356477434328182129164449182309677975139260440217237337836051081315813543292932987421401409701040266532232271765648485766137861629546377164055789211411399949386173329341406977991071620271661556185659840244240525909147163962868040497322439816786532237434765512008725292261882130551791731745464100266305302911921725552319211205188922818107380071883682099736270202550739895761367943903123975687237477957632535813718549098572738326493140300149132952968479051498278318820057545194268566228356814574314015928177865636050919796890337679592650005383770107807303767658820564137513849058912249668734905198256521943654402290681431776691090909760919288371250387319459605375185506086248469433811172288881010660389752546236287980624235894673136475438486470300877592037859007292410022246536905219976881779709382879866271783460121255157507815822466043129417735087044655569640014424090451139559982868765839257518110323134303968038880556102751486440682222958049241332313355862610193629495540900970733662547632281343222830827913665509949681039476330737135608986507783119002739026038161015274386706561420889815353849823882265161799845040881681141358199510443599658217768507704690175706003844525777743013630951709767737390369155315536826732176483565643248923786896855280536072055983921415119329065247968609238171723052233107872820173168034072789020297991582915027370516018996526334079918506311688371887916799871507116484794330565357092167744583372673562672541714138262762686501463955956061857874967181686553070890155674221289014156513995336243800607777868491687760042560657309358012106391509030424397859092 207592608265409628503053955192428732966374626251067332225849033095083846231101281962741044745611422719183504567735770375259133999754293059924888183380330483732325843653116707728739631011734309422687481384839651176007037629522177636889456412361087985041916345733820823765164476004105065496124753057143420286588566030544223542050124813403020401092453303624689306021400406238595980704527430349071134624716590095840602232095349251485672672762054340760675065515515703408475535879047547587459430761724717783152143764031199015413054071982086281818158731688642979268805013665290287378035493917171396311446728798766214862304178197029451022975714066732961298777601485879044799815024494962070403371899023037669875634713192031888237680131267004114135550914343161485797743555256785176119411655820490976175610097951935471312150549149972242465086459439675750821433228721486934891410877609363355607273278750593409750173493282840524478069882277004582259401685171791961121226913176299598091765888308414600672603904131985054455368729869910907745926261019671150894100832432562490790011554356576616184736325521413981253074691486439175229240377671507385746097840189988156221579042661791690615074014606698240689332861030075845160677322204369117911275821416330959934650854480120832980838142601936078106325634711140081631729665603898823024747994894111033559886807037919535442056905539656201324276365283472510931453218316614776332082304623175321567760289648141746125772575037118009551058866167181342125285289830462175176905063564728018163419725413928337184865832097862664749788474680599083090414743446228946610988407396834151013803502205570420924145014432 1659214942410919775178863641104675998932436115251625366183489664909811569031257616168476422484772560661561096460146401250960860791025703871650354970335543108775695074976253572005402588099359532938077440229290447774621149880354967211792895675645106759721691894570748425255068350479092410557868228209854780369532431195172457836766124851085527540927028297231630265705760542704008514347505138914091777413530559156793348484569796710502452249631297864353699391040067074815648459428672493704916380934547601765053421691282609746321816064803939120373389743074446475413211867356213094096562363742905660588202239680881037772360217703906779284369337914105754957602814239678826353876925100160267870117206679060380027288610823764984862515546538730322509374294736873781933657403494762851998260874695828052619291660166006638939169987378264815722863455626121266007552336285153038505595767559923137522921359076940864987348986368505782785957975372285021764963375273977293865705405761990527229041009268190989255099944776103129636606042694979772262292563198644525681788063183546965893014006299546142080776727066520801635928728477080570554593082461636199756601721843757891246960943752166682591139159088021808676289869892818763479182491139262057301221564017572315485214918238117305398903566696085346213985935008311828378415634538894939063173524609692871812824940527599059508175441079913221618873203222283605789306409294651740826716170246874626812707375165368106660032560188192919634998835177264731130868021863958229278877073092568831646813256315260471702971222454262822317900487979194356961685992272664586615379932081084826908054702633962344153300126504 13261530088959093285307040698431072654121745489907707492053251335738623467916722602186542520752469184829804664531148812556858251940609783875457989755240862954306365787724636986873889280922456233484838935562255500782396914384010108762891169683118157617508600063028944425976404552232465173431816637291768126939704988657997450664832865409927108944977080690079007653079205766816083672202132956365902164639161988976025015087274091837757896413108784118558636270651229722791314148065362546276719679979039591049953442440965297493121220384437763368907348090764607738106505514528976302852481359951356896304938038379407662969747464309667976962285802368855329998959490608216823980773829702895473990855356642028266559849022031665277039963268415188394183075804493532743717798603547461776319454399807171704210136410945893796064141014638349554617082842571481095064155789019708633994965393132249131495141874313802384651074330898058780076559442440087352043363196689016445331509725042861640770682297232579875467757288594664225492648668123056089301255684614361265097409244444957094986188095010248779174984264409688676416457028320931838537512696612098945961931387445651800850413056101610545968106878517992062963002639377433494087567184818485362027671699520237855242963116289306481597179907441589729844734518450321799727848335125672161440672974810500082136973653674371902125394808616428409251909151162044144990160458088309967947082811969368342313891483613294558917277996258938888728492932472843758765482687168172507772110442899125796075763295934418956279445667657153206358034191159951423786130609453569052170712929541072723043262131382333289466213503864 105994868334149381931497414299484713281897040556341556655827989219809468875837879927691603005646957486546941418368899172628453404725703870666687708499648482931211991315453193670448006795762928384504216431956267444010325652357975392029840679770969598580390658226939447929552235672543378984160409751296907158798708614209858502742045716253646166982332303410344603257770130827022911880394205584797818736078560645402765827882557548396860024065021847610012306386999333732307593995413030423148209561893967121564007977752059136160025789605514786948661811539117438656196116693121759006610961576713099873645186364006154985758076888776172409251259169360893114761724830104277830131469696093530944707064695140817867518202700769679908028792465762323437358286246672774017197330694012888304241422534991020915865163637164459934018555507046854311164093525987829946577845384588381817441636945778942977493745070047536942321182584383953659287838571189928069728896129169993461389515433861301149598301275043717006110363849799669465759790432754461884049971087684636589154465082627537186486572684722479203972141645867190910249777291417911595793226801085336760490591084970624236249410237657042061371947564310228017889921613275723035470494855715567006081638070867169437087558391606953401517639976468108866360044901834812783175487282284147257954533461765773249726588390546060881722637799928310860505281368702768188090451770017392208689810465609093384117008284512911903649956599434018709084483403454035348837608444010142224219608854886859788096430394457674628753408372758106355989815649062234696537766964094415373424430051300102907687874005332684575885133412682 847181111140892316506066812338671566307622730099221292992414789131683593569646909690450186624581818939008220264180425382555828945485478032888304990647946981300328604352178234321605281548604193200577536510257766093472888615177983817094658913137941462114031222689734996943164550200408554396847698027752282556359107428617225091058977418811591081035167525195916587760207486944235043394909663412212273896704852170840555024096424245932970508868890588992959524975182415968319186320175914549189266804839177752938324669578457835551653835372911330675731342976937972345093219446079193355714445387664056505540028534854951845306746234710649544004428675757444501744743245243799027003937125538421665388263514064146996832791897927014253144218639333465398981933132023245909105526720792478635386741713192628336191356697691603015245377736546385343130521365936829226251383754744829128665893847975221211131300158779650681782483126619196206267084167574229402872059869313060756848002520068567290785172902752997037667960216032874731971663299092163273363685461731760777838449273955131616523688781236698145205024038144443899270990548884285986716369846779578830351809901239434456623431433245683046207395421117186018302560624926386526147396557232972239651912410521555189563667354816463776304148479601054583219718435498494304746460790439774059554845221783914103498103311062270420546825674585448051938628607185002532031442248361043876288465726241092536481027429708662887842089054722011080459977936595361367267890346881147930941426036831284914845583396053016874279852117023658547869242047682204009358700623369617676144649958876556363851641907001286660639494189507 6771235334315802919720186866900105228602112843565006967371253653330028569837920496250448647356391986376290927400845917385037298326475329225416365778120453868756342498216883837754482365688286908493231849464866377277508128268231611237182104552587139369902394073734280263835932705476400335861277165571508159531776712221885359718592040492131948372746049856108499107042137528102253644887691197258403549103475261994385119209213546746907430285355461039396903174010065502368577215712141876202068036167405295433608343446000503643206528661125247671948957867974095890704485547720537129029058056197160376908614329438280985696351691364381409264148223849207601804405803511005895697018996168826023167329912332051336497761056617122392021854587593097625265447007893569640345306902394084665083755433014311197821532008661419702610516950516274671685292348523200339289909782142495402785664943820974638628864814319316892025461779765348936564377621341127520332739397126740506956161719459216396598963424135054945763171089937240315894557945187139564873603264634836030581929131667055703891683231087820397881002821316254641767485607525969789920574410287652756318017017692724615208700143504117323407024082463036959915944851965220831622713887640102797195232936601900994107719315732734771039661083645926893647030560046483473355236120574682609145024626599521795368707388094935561952127433213990772922011681068034051233912496987384898154244186695639275029906724054141745576057346680926474306651571675293334998333321671581678166045868750586850193863373942198507129486277799335762925190161498496606165665732060528095099820556826368752521786463396854011883674608645852 54120247124343473694284066428848647851077049301178006485532540464178447708293916688981329242505916933231245824811462179902377636698002792714800428230763253460776156651018917808386391057485755707061218701093777591059808822354915988299934273222118942345229870918389529614651328253967373385488542261415197453223143849664394427384816916704362217824659754138010068164774193679313880620680900839482259735958391976639515460950787934649773426314799630903418453615805525657583289557305843218969367436222368389375187697588723176588288329217143860268019216004802414168492766500365318770003417895449214628859424026900431400500090614581347369691381102372199531976337151370238506975202948337361298518179131061872795786515758536809988922168762766838121943337145028487746077303367250694286259172050036322373879443012561403657329227935309496384580702866902900303935332810422834587791680816651979964198365935382067880702013312968771745658230976230296927452070938852160577601346757731596744022367104652415151256266458052922838509002511875931462882122526113375984859931089303917881918413061395491597371123276318023172025797837937854289075689293210693040296368036569611623191549635589178917565227321820247731868966753132637757515091212877963186766177377933728411326037069608877332020889263147321048504502910458148306971226142729196609498766566796248566183119080674723560731161301290386978314886093854064135361398119451400947784171333543733699820754696990447815960592283664290408469993518791148467900926343129533098815167965541523128776194860421064691810233179264978335965091437480141888078632882724763645053159906731660447444259640606493463133868576923593 432565474524616523372991950808853854140091892845171961108598098783869721772276285525697924418886989867648563757176219808760976397033875987915247557596552164918680561892458215745733323304137055839936196624769909879375734560087449840924697585673459015513730693200147805593161679532895373384946274512521137597015579456302305153685668482666651014162774718807961879311594199876750973204796282202437103375784149440263206162120888692682521215924484926200108561889207836542760425106223861662235655933031517123188157383826790788719234433939977069447393150785125175332013930458651551725460517103755500734259510943674461073728671025625237326578193198476306488474046611631516545165943718148625961209322600163148593036558900989884853735588024463917088240944922321105923571486418783113487087629746230230028236644553285728981434130717687690208287159567339770080032033419173102450217379324465349042252022054117093205088536220540519099007697718442168948155675350168501930143407412928453596986667241865748259305493050986642529579527900962667308148689768858383200484654215590046946399092614059074876734855604301535684313863901308562002853826997914901673522815159106148021897736450309219948222571589596459632664772412448867016407696244047298773301248635825502674236616029519922571849256413794195530609524550051759553615365886936736126858285648590543431981339024999198970577478950376067406533481769492932614497338510695168602007188456503095900251175746061076482342370553270258045887308685262255219596459080387814755707448577218855228219046538657077689289325185268666498509671961620769700658757306459540743441212657924904530018035428738500783918636837719932 3457356422509605756503899694923982567888014376474693695754132942989581022101070760503306353929974585913881823059012422383913144236066429382350642071580335223103855205727501548429252357118814171512054977628574834364356325023550077746070247367827256476827483893356401314257913378524574292584480821576601857242127490850924409803486759146318623501527890870611626970666347270611103690641955560723443697399867064202329359867981982573482412200182475137498937275055118617891310266057978800604003804785893365672941881261772331736892155934568281587482925082119849459385870950027909958973579619028637771200790251108509004589909950648460797324531347434331424811267881836143914254421441357489241124474119053980561070084540017433205220257222089303679627185906535943927010568152036150770511462758205757262942774275293027196038642749831721510281892155373900990273494158616786701479517382243211980809000366806744124464553013738731163883463992677602062950380147270717698091806088267289434151648777215448880341606783727802990716811510580774924052127070208227953358833612612256227415608914713389641662586971295086267207121980977746179450363722369124056912345899622746255893492621243853849212519639037639043807806030294619828312694770973993313685969103413388380860613836400995275135214427311239174997791830195866208897930131534811791533931664839661676303283204348820424135530627564271420180431078391505784601367279293369619676327765889327831889240005535277638815238410701561649811114021330619422826919489376971946227221753345448395432181672863574598840182617571989827016325712715041714319323185544595851658679635193756514443123098188751230524978644404023801 27633549484344756306883781230353579862068415252391961760303453942478684823781607812875260889496721507251138173818188877295230812373644729413925853951487100806799971725112781982252174563574226133622749147771668931919188216778750518943889220844374620572369035366567059183410306417837606854789417098879442173374179255258007455817588143656888083212915795392626685385014629053025339489198194942459668097535739315607575426303080066620056205688061828011614995278177162140256402451185430473737464969075238454942721941311945781470860890963122813568932041081524118036151305793154150261699625764439333504545811560594902920734892065851065639861149466672008050835458816215239108299443364261445271664883785720264255763546205852899887679346712394195754138721175432426811538784119445041070765864611501429608440963091289815124109668762878349504352418275759655478602401737021984114516904277778092719821027091839750216358124235662475408868166503822309703970769173587741525842347195065027689402814332095370526931762848297017860283681850238879821941685198524797969757297118864776964648799770513806555945807084593450308825456778057342943411711207014688087765998573589309911896753702838798214459803380284867850768237808976801875651484996054638810509362197590263479974567182792842602875846199030737668608993898580999884786502663884319550639553084895722955245065420975271533898004210590554908099002959158454917365661142209947874590268439628904418716465175044519759321004710968817313528373461809984771271768596165047947979223865660159744767018540238497862319053202557178698233409019296335926614021258479668645259797971707966081597096482864953493685920188890894676 220866276861980274631951625044294331702648727721826055157606969329643682123919833227819881403485042485679034813896442710834486560920720538804056070572254778090329601724870355306646870135602418027847379035458784302117365717926007571108774092714462882545041272609244994503191145473840376319684124499707149233718066105886295535779347705071534646161753122396702599028619411411369667658721511437306877876335971165239597937861467563005023475109858770796295158707115780337304191681298697979297271063801389308905988166956429527740249513616899621675057324490975937598826323698451508823968879605228034063606679659529140065172981269061763216605326631283362904022492421965068893946026277363950974442390506821505305050199030786943960900476227588891795741130570084483033990515555806754503299247640858437469415464005536348367278476271361249195278249580316185188039476005135946435618549217986454285957838640823557350826934754760805402654502689234910181358635215523675611955694931442865952726724487974487781691310689664503374633106859120246225954235606757830790035608910810662112318893370581140012257858825205501389878652617112136958176665956218605304111856834505008597408658798052817913604461185969609573226092817837527080648031027584491261846816589866013443036233163498236373824953404706753090067120307917212454570360309534516983365965884643260827986268771830418020058713519186296844649590064410980388702885851807048468845729243584668441620791229631661271764644654989156490628910217633796119395982828460606913305280968063645216185019975661719478407984223768746465139829727971027965667598056351312784087690738924705140396752783025892853318867790183209933 1765315627254050853680182543283963061787589678710612653152302140170242942412764959090456046380081851200369642339277818490215638799473811757035245713033594021150297055447233374153374844900518342890554671201179075869097532900658537723773183407420083667076623394801779701811649015041844011876054156856859945752454885571802171532779023947786825475672872731685971091086888494712516133392722173646545032656649549035565633295127328626353651724464901691180562991096355711661028739005941987588197759211808793853554061366680234726425866037566028775234647875617967916592137158145898358831709091364242198488909841687732184831198148492911910197386320744204300318474654460316556056035883178611331135899575851186675905484320764741140316597136758464462199313469393062111408283975184138362832700543762060587916871762544607489983490891815036432397922395999574594630510372001936602434871265597829538940287139368108845033764189050416691035553497604351663592337181462192348953272571320821323283544853555118316131070013847934700310906481868907311811951319770009736402014950719965920196453247452245956691221651789922437235552577830975964889580270096564949629862564274501524941090534664132529227237754619730022050013256971692476696693790612889851152306485288841802565227157386494254939981556981302943319215325074854768880780525907919407173184542133631426357070987411522374382275804282477260550295757603412178037741787442025080244222249621994777068202656977181508819771319950389027587753179128940792157105378242644145093668023676398497700553697475200052461547255295788550510800720815059622242988260430534884393474509963328250863955930351423001127647155050640625602 14109627194565415206508018696919079198640225551462146236811093206866439389285038235902988847544932393543505125684821609615175605974375286480492052257579484025729177024707926475964625390884551589944802019202003573551993441774571763738723697431219525958995687800072258739796619112501924828118556094486603025339958773390281187269459835488675033064634089078207134922242635782545790508613065272191536687748344362093689541223743876455015378254891411862920261631993279804854681248302125599964372002896784050217952883129752173944637236253907501253196634453774488427982451061550837076694350351604792197208912251226205471777272372161758726357000927518810459966824839124764410134064856643710957017089204583322764696903842833512002051404901111312455066565124827442905510610716832575640945645761777557102880775686678182110805781293669864596837452320843654649890812750135761579160259804909812325795075314400852548522118675677682874127584275628370685291428041766572967954506376826101858693249164322593874713279195204019497774520548080194466166522978493606699185709765979134946322572748599849320870863818965125051736463385945130278902851255503833036414222735018805702991502175215407963746853860435811660803882754457995060417945513772997768599756888665697907202754317947664648383037712472289635316196825986926088232992268364470823386680343202457519489170391788657420955522759550794936058938530715110909877212797944238154777004302823646140908039700565336655859002379073474622352480476954729034317852371444807620516556618116201638506380844246486182430808794233627681091537502822406971046403637075786774383762233978684105548722782493536612128169764683175408654 112773985686774798665348657783160631901697878586814985812707796583536139179200789633404253038158915614744889423888146271408895296929489933808227237645749415700770547903805704397348113611807798108425856992143626937442649708867655903860372595572682856968441395313584691617943940029904661235533113320914861983931753092177623845619767783860502096975435905257476459672155586583522782845959965993271655460193789816362891711913633156770623945731476170159580745776899715578657222088737105177086544737413011811629655212187529931135960896598025776305563286387808201234249869898075576469546770824550887391048333442334814033888689202536211833741235614108936589548183516121221035242604038206902636433972454838917763912079331599097647445721694081092850909059514963033828852506033757210121677652563046644149495041362528470324377621454347952708511662334349372072805491628323663018255848615353271514524494370443815934367301474302121564991275053897624567621682531954404844452477108968426216718358628601940050947803186624519839867668452134744889162224335375797680791686466042655350582497167480795997536753510384362504243393533032277128794820891336354139992172365669394009487177532050535342629471046976339960362367701672174151301755038784281453931272109922695496478370031269002794948666548395199267501228933183898522360338495090203400123043569827776509322458595794528061508631606243070423342263762138889425444587977125158102687287327628284985688182917409518514901729157611056141319805680137826803846051921579248505066316247646616760217712600721680595489314867472801571463757930209091979021217746726047142680155092889462229582479223230709659758503644928673974288 901368833859500233264165171649208870499671596912659337208242358093429552502143472356611545518506021385475811397070021220805646823246081427013600294548403174528517634916176143224447457212952247182410826374417180444452776112809625859973039250551472756724710991957225451824397450998687098914884244584982613866549599720040738095158355226700924418288667232064388791847411911733401982309123415641043343714168472213699949316954661003402607893308174299805105540228001393138539359110315080482917504558887729147880590444938470857428966447881947420737538533642225414022660272363701519189477474578557457394784640686217859833819196427584631977059596823305555985465058064502420962017477817438976369380029544028262022473753065345301214813149731841086292245324173115078127991576566637075058093930907147504902245289148130702968624617464534553228522739711435162698021108788000295302775616206493007539590806971504724393428192181681186840389626732561383590538558147722117239459640542100946918982864409124983195672181985281626204764095566115052967079457665079172880424818190083412004264873587354154884025504516501659216706211403068981938191592159991249097272487211016343399972836919829004751964075792322682980777240632089998544776160541348588936996376598975469635307948463398860927674262785090026155907886748164780324549848953767654012420430186389981508447200205891323312957167587897761119362026128723965183143794680852946080017740259500612846458304495086813235071047874301484990827168050581304499941999546015249195285419153843078628712269321589018377163814046864914376003130594646500738640067683306377710638027730860157699505941380489190252501111574706653906664 7204375865069318343440174748519704580443662168781238699549964692892742765540021384694850664586621081607701511247849145608040617265014756745971229743739792600269119945923540069679026647455798700894329723715228262556630775940885231362695529936308081054084417152469699515385567010120161463834492249305014807017963747367907609874032369015505647443070760197225423188428693748329212078820970309525572800581139174305607664999750184488190712054922957781835044921642162294405207546383536962935205780705253397122816567381128039098035096288292564534625110311323916051874609361278938696683499450342055197041843723194283696807748742619115241113526137144341671587864828580685491778565713380173292984456076188314373555025798394391756687389066832619028580245111966068607892463055701747427886405931786348885945949174554549207206159814477004216739239511849475765002459445058325903435717374061782930080273429647614359165895669327021103597195535078542986279010704209855708682846274509106004644759957446391955544923188281766480468313572997317872185750939505565870614661395381382742806442474352650710655988881157897698611366019292005003341827529310069060123212256485185691205761601082703506725022921756947767122308766978204539030420795478529273262060470385350457839470080364167188781457394207815677398011020355769575051637998425924757059155482087559773556946780887393641381571301460466162724680294250537976677346620360368672412993526302360524054661307013596078070497041858138292591500954010219988337740318225241367519926277961489005807070253436637190458388713833128702224286000728711639511006278276796421871266857969750068614853596969794216398165724915475682471916 57582485178139362212668258887678899231393648865035510253742844893029207339305285435516217820512994404111393321501810916046774341429347693122348159311892495461879904727547160833690792131302000417223200363975488881301014831444527650167325207771801475524997187126851065601243095488665209531160342441107081539866532346494343983913014020970723659098223967159168217989458950490700727459101866919510582339517111791265418445525541804680386932573804551755681796392333399279184347139307377185433563031047032049788761300728735774408448268076547487085596915947726740446697812133683662704653817601465965104698415967329272873000120624919226290700571025563633249121448266531496669630976466616634664076134151945991468767853557015394919031840615996050252675066218337819336091528651136461550331912781223954281920738419169483722861171237331219554593028732763917274799395488885339433258463883789465477577768300215447339494181361656494479789824311111254630433125508965451535264335208074787944902579016148832564054235705202209917117296942405836185010529433222413965600943086940898980183125991235591703577138713448296205072103492276816741726829773219076091146560217544134177702631599474329517091388393564158691701733426085369595848565211951518034995922272137654842628493142179612533384765306839512334582240379149524850326489889436401192703376735885608687866076475927504772964958380652421688528196182571982808469128955794582072469597945020975550291891346686924019195585364393333743484769283075061291294415127196251791514702245588450242834818432148256097820738808375195639054619361926447620088605072090602830305685348203881863611455578879531462339628818318647278454786 460240319888213816823698861057070262297053248985665965101765232421069439894128378532249575274792256111992226410075980450721952092275202281633261186693199620476332116691767597102769238616882835009186268037195229392304660615573967642926079899869620607225624053386337782357483346600957366549155040309207260032086403245392170374716860851936034703335673959923781075512710620496798244736431698240698838440647259600884815519281803613783273617005718377541368263456405756939276449084162275946416306806379818845762057129717783088870786992418044215181589246514796319119687487551511244529968599497356071633228363517663468785386626171241521300397715860972886195603727005690809339016414962625056638385458894791461210008014463253927897434714451584227918679445388402904813984845279646961401675833400633238833559590118513394478535678287840128681513378795914255918475229805634614513849260739909715304422626112119352544939996384786404050702175168103476265902776052230973210895309430086040842261851912929497460561023095209244060349941197579951398659424272086128422372510842235615000702598297046416293540250423054241820733215885339856533770078818464316344423363453873755143756568525109633814032527738622497746787811150064670451296216963492776082564673511967000264310709103206250003951906127283912956790247970446247689945533233076313536915008607476568259942017672933445696570344274158406171030859806728685211135564174371899459112617272732806791270467288850084523975187290952470325912881764319778476742728347631288586498634214853253427261022141168306141115526883284473016334126756769351156987220819548806708102758279360801799490215693153932841221333975109450707071228 3678570956215864685422051171672326928333252177906761578207424582802786668756416214601042643381789029601432137367956577888603250777379480283631337878432442992418716650340643142425979557141194005061430186874283373735412976206882530333594438773940106504238892120498402446023692862617122492128492884118028205221817447584019804552797498994834123346640185091829744296664079545939353103746773376549400257721139849392860149796545757580484027319369990368329609147465378782818176906077985837627752835177370620184315188416476674698601927981443479418606725474758917755245990670055331028390081115259975439636207446229553301165103963495125182470426929309243302534996252344940302795884535591773561974956400444356906249693338481568532113254757121943086134993244384904357900374113925018312730081136202696607067693348085507158889901129646525239639367354649079858091254865467069751359938439344452000745286812597100567472638104792814536246043054229288367165075270412458361956316164421856330205056457194381918981387648481220723039890382338960278576162998492655337829946103611399300179611338979409213939118146934187955567719849446084561873721262637706164686279924712431566188098289769763385216636825459399508785865347305596598818328609286116768620869666030833147728901862936755129613049505615125620062252048180349155158586206379430847374267851636492066370821341360801418579762886752416385208880881166375953585821029236009270902785622666215673873964216033101925296557983105800350512809008712517246535496415103372059200841282770682356267584799750826787660479316804583290362999553360189296093019645989183479488551232578750812810421759177639390090609910308663148377542484 29401793863539122095931294040184413222878425633346289421360737123736247056337442309885146183685167280867734348970208641299899348183843790727646898278333704202458317201815951054806003586542680744688721076684677551850224079766011436322429453171793618396467075844920418750601069328969012861894162581766308547049589013134649124184176253539313395126643424095782697767051013250968981564680164543911958199080461408353535081363276406825898110212901916661372836266629991673103203599107266408525803043765185218506324840256935208556101759613196129255537838141361725002911593042900405573166958143636070256767738435405879120423033244884609211876820911212454708911636088774597113690116228909097970860917190307473368878817018218829265415750229505446167575698546179421912156619192384055555331734953123723818164595792413002659468718500951263996828189993175134517458981123270312658457020593102338006155471543013397539304444143464541639437684750000143423882791594250467050619059761069540583282978892869240856929812729447403370634482513144474269532155610113992583891857833206884892710490657034153198484115591777078888500322749914470364042521392381250576871715531523994558261725404669859905635095983402902480196281544423116109473119202681434959964464678450864525993065161382281254598016189514609436946083124470766761084917165082234923245240793959250106536794982563250145338354990507689604978490379103554944094710838831458409447765284570884707828441409792302294503133412062286748738280561496609689148767234765857889676270778202490300829326650014355965008380238217192365733710360494343394860970800797193995931023531859804069262184279102453589316129372420609940820617668 235000472289358562325326691706355533040668288191284305417784655993569068887417445971312719675453322885019930601926558979839056328462975098706728403319666432007802615578539713714307851376734755054032206221639449393775649645652873325486673275789736058303944050843395423202264694744890742939556457273973853176853771997804264873904345537880057927978796917782025979808029591935428753899059536779475203720168832204795240526635987486803884912202498317001786682619942962300098653437203029068458710897824007368883860186307038848860774704602060059847707407796873524138842472740703358929776672354211498622505128106800773296203865240050256484847672919461389686044528541345889835488548775714783900312407587892074531463581821118008642949785166893704815332066594564006293066971498981581033282272988853874950937371958240250865049467389957950260540931490554957289142890974684926309302763765394905628161885921064692315945561939172017734818356718796301534970262445935391471642596131563527262878778958249210795433709269831577131395221091974575187107915765239667011825761631107252083962851052634307503771510946931455595728402248986513705836235806281626221523601692786470532126020267543973376699775105666182932953248691328728299647131883305290928644835020129459502602253713425669506837631113098240684618280262654984728849718862297103961830844643616651299215045713443596846719801965154531197869631609317066711779250744796708800615021028911101527115378866777722669759722451689722223538648478054807509245794608844948251893828939775862162312433693809925975037999769816942429895025473445789393036711532371231088118888586606880617277893315192755384539182088072920554683335900 1878295237741143734709318595507563517701584559952868053554993983598337790352649667099673261999928572585911413008714733377631834305065096398223188631328600711268562286521450823587481616625242616347852706820504167628133228761853084953259911242806578127641336699250532332834856192751544026297721362368819473860174974868014116182238674694564403874746932969966651155993986950817548564865831110371947674623265692863795487909994802084291468428409462323707672978666004671080391457203337268465685986804533380844509363956462980416658443791876061898354834293312902863993239039827822574095977964292024420217815777417260191400330976977025042888719593026055681557187347931559985776460993063737627923768214866000168363809852653095412033539714222414800000072842499380201381308141879616768121225125247425810076999430093880458632445475582849357927690322790565370552089355181609917691942216594603386370437068220238204650668615578977559497450244801460043345840786967199205307613502454623133081016214610431672861064316611365156980031966789150231197513785856915907792491875306775674589536722111671037850845903491298518321099855988764947591063476817201662932686102820298467528099512938249019131179596929323245582315078995329745803405980846343479862295310740711500862123852058257653092384111056855304322775031028131809930015011774726872685629617765278384765464579296830538097743449993284712866330757080403327596548917310500157180494420247161193059115443515423925881229528568454968850208615829632404094242518567761598266283788226206121281608031086626336567581864449136809412877396482002425777868946488035523134698251536770332280079589992186190904749504094221846719191837220 15012713444572341701346263521548805571816100658070225823983798339593625097701369856655891153109112973283738054728346492117393651950291657818061280354564884736072711308961872549535922900523225783455895979244995675112883198923023239947106302379065221774334733100694658802353120302335144388140404009406936074012312867420618842051971694086478419925410014056288092097920021318478911599797443494304736880443754547887050300952428670876205099955696958833827976053531768249858671416778404916355669731997816870293314917735903581490569000824328740601049012763223794359950180971405183328180832372104592179381779280225436921048630816589749023575229147141384061300021448866408417072706815963199212928739033366028690935054026428526182723540369288541859751124260045674077259917024506108989468439970057350047198175892124898238162308565664392142439559703100454703956416216637235930101483912723220459441106799816472958795255465676047779916181646068158918126334795810091189112294058140826930248697385067269343745559373956939240050675408376283859165934547090994033825724174047502179914969787173184352207723605895212797513057887615730404837730701810948724973913472604596327189942247536789694856913251629878636003070094124109820540482983960347037380034464010354058081274563348810836299551571739470485255927190528210203541430912077201246579965615257186288012836768046121492676357085159356601302402077337443051944594713094225079109021568241616494061641846230413340702665219712373587653614389977886331779321667499942058962328831692550314616282728436892127187452595720741154213539866352804093272941118065489379221635171089277238301767178635621520346091331082930801569649521230 119992678518075243395964810313215379843018730571814469023642929390029122182813666987817759084780889168383241826522644895614784763464381040254353699321689865823376744238864611490450388892350229887944617539929300284039198928344783632515143141968286855335040084318169835532211616328769389582635227148849821007908744365009167516711333503780286403907770329204021039113550269923562218654554777754876633111273582663558737401965454545806755453440053629892232093133038453223717056060242581238538389012198388394166899068478641260981030115636487081299537115295659169560606846852954435056304299181592229453548734271659110523229087695818997308315315843101716663386749680362360281789247021457151102263697308392455244350113542861052062075569751213957855593962830770480253875688225804898445482997154701666883305656899013507949043602897347348096772629805205539037150825002729233391092143330637372076295607577230418333332901227592370253502382606426608749465852988398316952949457695961640971467259915215216820536974653611330560393916690018878398437407705097768833918337734069788645157880132074545952143394040284308608398637248200839890582583454112889805465859417793873857924465568406942249752442014238000353622253594988433780904163026856837895274407172095704811055127141145290105377004352888462529049256630231226395211667313529004600947116323685789373256795487241334200136950320242203830858287707495529250909286473551308530825845585967849590319279417772572318583332925574867021044982582122370786148567959846130807701621419851472235078954354900377265683307096622755803410241102761793093089294942363781053799956126682584096236127989171475796513786409686375063850003438064 959070462265733581632964926671359162248968055770485199765141549313215281635155230514225157046751568248747089954031969896408166347810147553046642223881215608760361582711149092172145534356840532592252293740202720585694731607523239995506272585404643505114490179445034803010503660684584842032560945099283656387681109273487278070055653109738113015919779256752363827754187594298403097307934756469970124089353790476353277281848238827111656946847652648781553672566396419285199119427433227648386006685261055657872779366974644205983182604062885237871752211540401756898659951795329641319929928682475605581088657132648674396411728171517804322115983122724273087971041731237329982062924808818158957009540233026727965277792132536008481842555309096639006628321935369578780601253901726243556001017713545839559461817222213995180474833178526258964287564745947002731227273730507283704186076853934885407344017808020296944917493342492871118011664229956236016381483725761244432740036728393007314508864849624214106881833071666132505041087588008484925885590891665052007777618092321771538192283663112670797519734554005935987625846149586602159459496315259430214011110542489818805603177203101269634259347792126466956220945937822821356579528549357982116780336660540880895223848717923777868268650792091767021121598047956069308646066774072831722113896332493094169299646680623283673303155797690572069657337271218865728615929549680954492723467620709363757486789035777535059637710763327559126651038262847511902625015565343640054135652396714607694118919560037355284609651512356783973311516564814995454242465710465390661707998384449681286526723179585269285582785784380115325444774192380 7665606082310495398589068192320209666488862375073767474978900538441641184266094631296448511357206044719983903825395228751567430760644520845554514000660377759639883645413845229337165588038280191534937599262474582755535727272495828652809581620931170925221287552926882530057526590376861384781520152104199298709372194457541976747779937446732042915965371435855243586833437582517150447324519146507743009371933127648993349695998711705864184973630157702385155156166293340402172714458481331971490762502228170685999206599598980057361350034369318754944415145283683842336629782165440768862134957013014958523329312626467650773357089583109642003091512377548623321273588168162419157440974464622157399909442689821182164843557968884703303036131020455270754765098478321148164419068168966865703207324294469178684716844264707256825604241643375783401270481176747233153794186944070791191659861350369063264862598165237215496131526732463738915609974333082063937132730626160016943661294533046098402092717892971936079198522943701733765108681263220655658981443784253288071665053622648948054858988070078861885817859669377667394895874388106954973626599604843967795870709992836737496481530366912266227843477163224771022774423956215513906289071101989859789146582439667918927978603888406059811895803131095238326733664439391838312450506842012006498502923575801301947403666910544614815071138417910969483691210821020753694185981595493476944396940719656341604771657622424858947415023088449553097088192884434049850327721672111024203558158511851017651013829292672773127925150218517159346996491777167896083578685877441668318601944148006806504143346391838089650284280956840477176773057490202 61269268460354540061920503967853635057474952689647336801360523026236334594136265319068360477236005879123214796112940818956034209688595311824491091701766328781054821926089866433417591880720419808101522302410461812680834088962732788614878847347868141339598251870243044634579778251611472621724876416333644925075005824382508882247680706234213771645888298276519536691522552296437122173873377323243072985004347658242147966824435513298291648012875572542454872781956271053174667399091344343554107032571274001158516195581910697601089516815697781958527862180632713000467272884755014325455049939310771004902383192466664334822618897768719687148943263301018573416065461826020294121813317100672916464497092568582347092968264736896525768084055160865035944608054775924515038154683310758510077058164858570044675395736341440209142108909304558657376671916217808334350029584680703198981660600717895040008717997338011080306060702639144150251453191601990441955449611069071934631245771405974134547876057739277018653379507185650228528556352980714281607558364734464535883615005955358416125318557309464782370672430819148054159076787168181967482801075723270502965895809814250517983712619333484940738196753689418401265243404103378616797308748745123901320495257051821767713693994749615967226316382127882118655488314533492898130832423281083702944526025853357347474793577659383008318170554823737492812972779816192695347197491412174099943414797917629782326659709271002191150217206770193687438853708371773602726918697059300024300219326231987740987388595055013496940070192669154328588060028752640999226562093854363953919188566710514346975548425038996511692881771824281264834061882726587 489710150637575872847123171980508603165793516475585767595274288286943720511660665601728184631634822350919337440622685365754428161013473283941838147808319095228602171941438602978734118044488133064874877941635687952145709220473625981961450214614319037732244667065987947730484770605711601970171835221524039363611396772518874975697606199864264534123083438670425699460752473831556124876926720785249491956663234175747710483873281485739133522790087369722560502323321014490893365400675394520812544357842088332909935710091463017855780702155452087586413579322927126084159565786751713432498814438845825687644945595233519010670959350848986219036175880775305540716084827731100214682523556847772360545930410663068670303415830149679069950010179303705020561263649413365580909378029312229423635648377759676443286995188052212391355595559575793145607624250582702891430511413831887458423713728385027070805254052813257945516127899074837276888207151013506797146702054767486938730743970972829108120225271259551777264492104423253635434259547770036327415410708278847372558769593279625854843334490362223990330843974114103746980014786453648347573062772747095742880043620525086789214373857720309308637002224742033943801084162236312384790739454372547939403396312928156235748467350793695961229016901214383830165257089863441372264027943423249691540682086211996087445679973373231596128952315606059885411065396452896846807579978397815425575747212317828371942394814198123146405593790818580255162990524211836526606395638018462490749194688559886423499434292001392645820354268780993636435922877344365624999205073596794652921899486443301187962045640474933954479447287535993227915262369777148 3914134374783850867212252082483694348496441946200725971703720657406599108899239387758560617649921847930988280375118841026822635102909662339974965795017308411122367866525104295145132389851252920528147685456093989384604762728025958985189488862716175612627271839949315705623157577463202139977762926497854653696045530050520311867517731798247128704733905470917333939926411549558520309431285828141811193251835809948715878210802718206934414643895709514609423681021623480452201185925705786958159242484843513284654768815856891705104390888312090037915751528970913545512293309758592495242660111560097039844369462857944606000449745932703410863868804125088365802144375138761475626986115709063366212281371525618048772387197024200572396841336592552155463898919884305675083695196545990985897617914844632945525348841342879260607927764495215802424820783124389500981123318183091084474912261499122404589423131005562149864351535763812637704553914200313221928505354895295273203811550329685440806128782996490976447976640050208727440726732895082953312956201231655050544302154142527865634525173756808261295697026743268767600528769939781372736940020802165100750123267484662921659605961036264479062385571186475760449988523541193535110638545696620740740361659489635109312225259261781759744656827286611436741688960838096749166579052602655996864567971105315212647605492065341904996304847535472320536243346667085668611777657100052524344332972474223958780290836509744141243928560005485055616376030773319602654333724822312627790447423688795316855415656002388306118784718612076255360550157906744886285973403220630152908782679249995832014490763243379357368947658029214336079472880581337064 31284741442124690387514833544275305278026192021723145517404788570017870117638521052518063591044131590189748027193399036348548619471584034075477987765134356842924510013803539098173399687472615607252696178388944254643448365538595358899390055304851761107376948755842012921609063102589989605981480392592945361650901341778673068697346143175357778984637864173224271427654330260400177967405578263291114077655293296154134698463288774668082132330024799226740838227861928933482300525998117904251594720774416424123509402696516381628395279846014659562494945153234155623781337615781911517461115131825404866045722100527727328004087026377934640562086811791188347169060629560330719548514478555849537193307854887468921484948274265690262557778821706798435449756746780844366773906558299710236385347748205866682053471656762221426843600745125818548858666530230608579276018662705944546480233379542956663626065676413623039819889901770536138593209171697431580182063187366542337739960063856296044283642486480076326929618772179780274022773001710996166218100939061193418334416432222289647261597771035527998619756694790346166877018587330731849772291414358944420958725609744825980248884481904900114492667848404057790324213933365059029967703569898754024704770200144690511397522933358629510168763532814999640022795684191723416114933729235744362186005723703687068824071211715969789184711571329027041067185324257769851484946410023288324275056911218177656160167728415792803245869292368790662500599557790971606653394282205815669240317183090123566134175488981235864882456582478844415141087818365992446506059411717331877698321788692639645298557215050128397627832540865199973953564890926093412 250051591124795736546765570438217948549197725882530952057198600520990036939196702986694907719930884789617160990924610717788737619684980524046709689706250730104632958074864056291098119919294306254272207173958079847229019723933905979677275296462391519915279712848721790658778984419123516424587576742757391831794041464859683963996358001100866978575175024764926806126363570608951441612239528166942935471290093121884131201366743994429619650414486494115848326923919866902403190226835801070920094016499222950169554663866986053940212073749889786027021984974246112004963727788393344417754322916934922298165773887647496647677887849105893509618305851714743730385151220678569985069437099903112639783748258246437868874056766320749111298614970975322452375971853917273058100363234507964908073857904160581203939763271166967843929385347846972634449385281053828730160339733250401239533980034216452511367280995146786060283010094966489935561062258517536901550704988216868954300626996029188714895020199023705838818969341714433073710791836664437160832228273051417848880327699393602153899894417317746171688818735109459608778785845413741596405890468946948711651978918398896295896903973193443707851406570392811061002733166064631191602806856527877769508929319246168336673923694672381075239810499622011161362191111026473569267003483240171476652404917040182125740606182112756252188106346402268621691632462109647205207330180173346667278222738275647221441027108045028304761807174522074878844301916285177517170514125069179201454236509838402936751453660857533444411607718066865544386606619911375277980247001237872035645334424158996294989496526833581742495872418317326030696157170370146364 1998604624776646889803192828298941777947145646425551887956821869739654083057546858523970353394774626039022703589609604494086345153844785059546176901538433263231465099541640110298783200605861059857260073637859802430779906359046439730223320293597934148834246006822339768362834717135971688970217111325830710376973883419099730377523585258398958388868943206073550294498405388970095296419668002354962720680737826277412974941446965499551233129591255903782236466701333740635396735985314186173671477892415317532331323377857627113494638793553476587287173999882307040935595109826336815035300266489538055699840039140128453092970815482927322503832037486785813535143301529678787206885763018392414494393494890658293642880141930489588284724689117220453208464701090428716290725357495687097511154634518282536267417219470075260800743336436716505367038181879178602814647248746032516264644867658188934617020468587693447278932207833068708827701457206840693162400153024071917808087447305574121217304913520036830037905608011042275195437587518628518639040944708955688894899279102297377363912103897371107932173459444514255012005868069956233549720350624893468352747533175619704957272214471869058482993569296960935817511965485619431288406826260279840649523407841690934610763550680590761347455154145668984768843692833688404188776673737493191275675426326912087027935697653629834198125782883382018962489939355122907430656046520477754958093247924355831384312156247302609384766245944410978537444174034970327799373394101695827733267647819990174220610307318612545176281438706682554855032145663725902004355601356964613196161915164014786193873101813593191615958154345210492392026530017967880958 15974393075393513752652448587686623527797101126688166768890962330374046933457731785779690664285975880543100321514331772197307775570315398565809599779822646893202978772435977566457986554856056974199527983864529572686467849959640648317435499169006530628713661685308291775873148949759764490576293884226072241772567835473634813127416426433795312410767906174156547461672236356481539931456905835972300726606946331052430502119368227169820559193273197257078504543715375339447223353576922971322343970052967878979727687618944044353337062506700186819772266554884010836324332054049491091588695890649844832627308563098034145206388665064885029012258322332903394303436316726836084564018847751058493045121552236080653127859220493481928822348878706881778744073188445401602994485130269182753803175260458560200808068888198124771952579142961515739939928685092770716101470490194692993142628595531038229602960921547345610383795248522875930561439118418869460092220909056680500077080843994209505661824916165482247512047020583965709540892351218808372696996389864499438310301545446434374833942403817901423955982987917009867571200928780329291141276707817431978619904630108263833374754145782662019899066777645928908353078237268383848266037887141283452105887074208697590504353103503100272358457949149188907313213620275740850135134648565946457107400901163381388730703214343487359453476578067304500398187860039299802832695289160977564427033059789977670428370950455486406771382322448161464072675916042708350592321343575523011340221596245494311455278181089086247575717473872277326744011393609883787062909440003883267243109229053135505494909808103531252347201201911886836219112757947031145843 127679760175841681849193767423484683384886318869611391797731451128105619360900324026512865779503330538732840783666558357871923333049071898064947993802632483941865664269397728628179766351641698441695738380179053870226943229041157128198299591378095124577677550614460203693714844169649255274043348317037082201610610084105337139448072844801211815738639685847417597433326104437787840598539090698823412285514463767853961086218611419973934867879374472891087821570662556835619345709800530357942098890793055681535893527725147547121129310800763580123393745560342526856311288393482339744246502226343242593532202968060507881455061220677311846226353499916463966962953103646847446240607927112273252968480922714512131156954371161182333724791547430758515161207549321334059578401987724376003323532543424147702224919425670343799053856057781890618453265652266195328182671851808159700682275256734021068416611347432603986861191010973376215859088597843101195075255443319265259549111903010462765215251662108370759532863351767850991580682650184173388048076260244838756639484297857383651624475366731710824254512023497795537865407714115928187773075004490746448459695925268865003406699998465836434634695945176759063865281135383906319292006149261128826993415569464206999656813430838822794192440661634035804403022137929312598540094000074823587622374560107969368856050287244723328325719918603078647639162478208414388405295660912440817081575349685611571203818425846733062970884904178612377945405196683035110738031347115375538869301421573071527231807821843978873464434487442794836186832925770113066843553353007402455439951199491441839075399193414601847835461516908122795015105648292251314380 1020516338977955025337574357319777573304695368974425433003249605921614625657090692254966003675601378367313942173307098125856401071273003421948738808128222916478669335894440046258398836159184433207404011512198634270935775776887698498912457045802823947390658585486263088725736997049937353546982780405742846793290287689537254592795665020839569319285461417414264077592519500185694432250132080928487128062436130597400855759625898612494459576279753459602526603310963381820155856084410512091851625339623474432508916510025370131047535964724638817015502527510954620046880017768121547177674921102883202654491698351030878599271227578830331466884373323568963136708043912614833636330179826411735902151991689579353164135165964132323551004620865443686495921432592380704251473794578680728660141273709140601971114939255436811269332061568742693123026492892590685070624379885809870263463020787226731124597528110492789871335441347894109390145651647185725151519191611189565944968932383400280386258344969794084817491872675288400856711653918022568670621138754786110243204009542003740601886844026221628608645840945690177391904104990937828927958019613042656807463490144381482222726858911248877716388558982015424005298710204940533213488990967523750196983592900077877950496939811676660710858294369431231804225034284487448887384540694318168108853916122339901221094418653903224296351579048699564150042338364551477262259674027578273155718444643451734018471671290898476438063007355374872381716375407273330683013086704206709720030580649147315484605959860690335840868885125016088359415553019801389945088016708731238695925202488117539881897625350320124178111486798930276610516081739799070680783 8156767415145728490159294511566570150465449610948317569245819638154038580979928778911991176386780429755930315508373505259387496996688466126114095856750445097661688866166413477152646113716459786351081675910598212550513649468083881686215912891176592008842789205611449091187101605685230563152259971607438190800485576534202655043801727373212105567020037946460788415865972953373350796822696591496739170101254755138667390045034561285648527025183403046199403788297742472721814067968982206629417812995182531344853264072684304692728696421257193610339049145971420247335776729262292575319928141464208736428305721390264469944041321336883878525754498302573514520243022164966098727965675802669440417635120549257006948252107903515931567788337754160681406443469718782978167800770848291463757273800590103646640488927147898073140599844297759826985631479367006929435589701050903755115916906998033174597360062980952391567908915626277533901443328178565486202900204694499199127244854469722486845525626374433145645631584496304544184322000219389014035019200961865889156470741224307968223117942846809186422819799413975448885102386352920709425847780134290844294856375534214698616604610764140330513497837610999538649873578668262258750647210050210774659728127285923776508186068973703248702931273684213313578491063299548557487163359874938928244873384282175158841727610185983539604314905884732102332487350889200181427743233120421381967735476357990278897011431777355607210428686429939597949378706174120143981627328737085692291291283219144404636069294160064658402256317874796589816558974266554978554620570425389204619642658257431117489617720695303414552659462676362357856408555351952346995548 65195317920868023285529953294025677315503354940045362371534009442913885099862854145878810362296625200221060845184900749161625318400784013370262422886521201085573771156393688353005619789030100758196705066746160707488835435017149880681585019428972012094671172762120714161115079885448253400114694634393646672321712312460929853554485225844596681554115821065833781528660231947480637986501689096280156381256746769646465465175807476814763517959150155352613737872200114684790546492444502066793555143003820309080073213280029980834607854011542492197722062016096437626426985857900287339163592242111634904684140119976482113090931294781233605694615101614517013461945078215503348896995643312302443738124257767790454318671079974181705540225879121000799193834701719807068575277688454421673656891144453857229311240189198874583124711909062145246315266651118107291526667589370134449467516516828784678647301577997057138038037906649987174119122253319536953084738334723747129261555989063631919513328773821925594240531948257016353004035654015035056130665444664985734024343803678751922284109778606171165344193794990977941201683044145676503591285847858904285660802411251889227368523251420020580849931070373059076109299653814934347867502921578457117254446197961387962900005032174788669274988723135007792320394642451911826050483822577676819112346629409170901109977076432908731037714376331252175831785342505854778681323898981905527648151883420006369330160952845706469342686263597338333803649242507811847912406405857063801784607914577564170134655760815495971097553833045563474536148214301163295028943408284840170892031218964266867891436522414399880735253547018581647717167964105907322638131 521092650601830961318375129515683229116778454543394801403367358186650867270206178038360509693759676380533582293182611590058188389759908448719159801012235455569195840690532374189970827774595988643252606595571339593043127558448154236555505417027359538404332808085600417254401600905785790293249642250983456286435605902591416668201266998800201244824620094956374545581576208066563926173132909582879926930730684709892169857537290819291216705495284504986444227769450987075989207567090091266033114494554389892247408001587238187372534601667886892497741640548762848936151117170997176878738765031209454523628141911717236520017888082062573369258565404965803523940798666721867874453822125386485677013781441562924108707181724762952384396698448352899737050354307738640307699083825277127545118677859259658700853869125902998973151447242582708030925704099035225781741064194857946579615332265129779436258040495339557909669442118302190851169638815645890156278810646997872777394154443287603713450147362936555650760241230563266689351970718100778384444846062329095301638561670869674146879077615479397840482441597788137236083519642271428733413303947973759543949121663723644151702996986889383439527118146951978468472467640787644715288959093518788465540029664239009976839286834697587150614817122963631097206428375684553300572107699979741916790394643033583414934529952145820336617990477754011598244745867112988528851057890958188623734324110945001798099347773377818448981376494620061166791447223039803833920715524354577579447646682947984256313989356531227525029216459256436468116510897909624512537930134831372304036334717623088222927712199204424677205818443470080137845642649334640427889304 4164987479437211189618704791463442283369153701072571082767597685369930589744403785376674888941496779181396676187112174522143592377950672525237469391265564602311344787704165410544444347562537954868590973393962977763829400501801914373814448645990693519124597509340619850902447482860865181177122340851527506315972449558275798507381332419145140191687535363031667642713513567252828729083571909243178689404463226003737853189604602343841728128691890065589293330971688004119422496728093966163358582479781961860941819394449291217186589756442704219775959622885259677357129931652839839882412468926387840019081442480525698835895509240090312283904521493587391799850056734832101633225862327683603273236660454992891627631890536652371187197120292672050938191687587754465731781142694318002091838737907071767985791170865580605394292802832656561302918646487653263261521907207171461793314811791954769675183518514532026293247368473670472957862716627971205884777991028872198063015508958926497676645194448436144009909185547291871440850333307635429426471154036542968997524581103427478055674636219820833557772416529249746636789768921894668640033583818399108262475549055765946937938868704192012652346497605095375419033863294731523698200435008633923284212831719400152979822957798369795864699607305872235074620677199834291696277817646705279015482781811733592337826193955654537926745090689748683940736013016770843929424590726315936681783391043360677147521315753835029698388812702722042583606669514697152641574476208867565715460234962873922863934861641326220030217326411678336532826245875226095765662097639509700782892687864272306739598268151816027904527600618500512960623718938833651572678026 33289913280605356426372424687002423073068868413652559689461027881529329366416488038593082163591890521200862028591650802693191131766018924677257445795216408058590560894575996547143891659937167578584970761838840829299187535154748411793204116143620687942637528131011718316306820840466747402531471950685357615254857446909303107322358768311352327491917417734012644845176892985589809801268497397994934761771183088518823803567582847975270640694223529627610785386112528380912133825731303859504390333403188150667137768495090190099683550597120986744965367746319436522922315364077442382069773507300082710710720254372881095881190924162402177943624122929738805874760475390363584550766223893506578244337449206104112437572982883868604883716944341062357031780669786616533136703379144709438277792452144773188163336512552585683258200539632726008867720565970828813932982174422119830690793121379198389866850343141602341666952212050170733086114554975641506170942987291019557495776456110262717777616227404017717752446127149656809814592668709532022495644912179063707096120061816370968635250219309567167969304399985844224021183627016963153981765880247850573515220126113715888677810877890194062205083931670004882636118847823127630692437240233478242324203984836967020158956207646778605360397836944288789694202341032757635353745286016847382258049885201164796276323247451084753147410904158578441462962099502864782128535779449427903235141737780564551333300197099216121640581068701192599451842913671606658399193936960774442844479952778280984109242736436494269034999993950189059067216235758040461882707943373640154626093585685404229335529663891647010217994112714391238366865270785844368374061800 266079759105886423676397154215919392107802415517876033271756996016547376777441263959318688844975288571020753462484707181959048334260139943475660203008032945662301481504059511514956893488875455585476630362618133141424669343596567135433791480008671613416754208739961264160762899668002819482561758158529061597879130696991465145687479595147338417212785959618504622355386242115614727956827494977769345154343466795072850237917221020588580389588855942913867331138101785170176858132086022734444993224014994943977375214443057982124980402194961116598271166198704419270279162618426752756440851730668162725222215153008121431024794688002234363986974596698898573560411655569126471100423780941108568057812493470155501869268256983594333767771687933548524646144931147281694397512863308994420710046999548187791409260551426314707036628477957146287694138241653958142753836051392370392778439090999809236460163820159773177222420555393958244543226154191873264935200330255639429598359397299642085312977582076097378124029961609986855334997694361202485540609053288355625424242994735283312308927991513646688128863213013591368073381957146751346063873218735968118776974562250145205850586549609371724126198272606997796536562904838968686568506747934734905667726314137739338867701038569468065420949121899614641523174848668342462387779457986726874439639522379445615911910048953575219017163513553653225449565823200843162624713266949939023635367454689218097631261255287437161301829083476805767548151931628384460546373157761994793670828041416632190965019542483133799800170425828877776388811526673985039335823378698514703013719610240230118249480704918241238559122590668737562060223120445619430471135658 2126724452672013111015598432106742797345332107265729787128558665367636893142474743283154647062624891512964193535270481852023808463622564931314815633622411360155920296619031909150846819357384080884824768316497736572809675727125812805286425943506145520400388869730000338160846656946193962190001099287488637044011938008743689966830962264966616785292969490168554581611292639282273566750444450381374958819321757981803854738651529152093474839020442754769757493566339029603612823303216309812249172295949798039855736518633082305117986276958629626169326650466352011027431319646886594632959700153136546578826633643766215280786475250576459312851449519026964652028739886842674340768041122804455740910072910052175435249313789342242984022061426035541459248628585340395225717322325422570034567048356456279733186302981817065811271282529920362605840368016701375258382300455978391624806337583244219186206359128617697452605734055512745135242025404529220096497890651164441386539873728254043746455887611540163737416170392246616981610901012244254469159502770896806975602445113251615731423773178237236014860819954786728480799291933447627770597092239589120121886848084329579124061882816795024632469645605399963185318053167164508163547077736533226103461940143464834676858244435963217719262709572009278269005030677765978743714394788327972189749849514300815521495522600805339487216963872660930472319523682741693825605256311991144724806882996687971113044186070271221457364004349680094073946020015340036531422329240819291246642291766079637624953887214892024068809300394839799528499590253935201066171441128957640951206166344345098155343320010449739052325984736565298242737833740583724372576553932 16998508671859012679149774441040541153628318639890853732767190871319985615743605689195951594972187010331004531674784979624947244868789330045317149195721556935616455902469979724959046376673767925954568806329412896800251776166551218580631919946719431580833621177838720521462473535840217481078987931826886314964317701273093540988276727115585288126734445166155284768684089500579107588426314397998446757969264004673862637730985382479290394565550417829195254309835129004668895441038624038362647617696693417611682347161997693012003145493271295278775552692940682851297909528951441452682069388246008969391023370393683619762315721589192839226748964165210984253115930009116361525038158113947424632860924934810687676737202549781130821718110557362763353923306220466142996637589047842203650045095207696353505469385505630983538718764096454720774713923552323675335090875953343635195171766795614528456980459097807113586171091734297651692149384071736457071239590346142275040037296752515505185178711206789948978861260755885044226327824639310643425042765450399736875337398706360199263895431562461394440186216682466221796014296583508759505805220804247375517716136190147925144182154966259493373759971417512434022356569555089705075710220468955698371628809524927687158357821747146320616356282798065166583425691921552901041194187361773973856549158158138935191275680374237310330453911766409800810944009064721138414939537634075987814420985398853905289593030187245364519613118934682448407000834607236878936161026525977785523167349593903546327459270470606281071908543230084421284287414033596699202875184901900597502440337503978389284737839840799236952039353877054675780263488559690696364723200228 135865949525808753375793619737634135356230036294823650233008972573023934114649104634840753738847708363705988590039240715376363170898270181615476351461510999651647280490234512770297618829800073948354037402176185597354538356572846060066073416036645747178295091008143041958618127283667006570922984380296835099420501723889543669508164699449043667467026365494330379017021253105375195971013326827808557768276978187599493679377430608884693396237108975893875116945003867995447854707855564212071854687061542669932822156025585212465053746702778040910416246525830965217605785594140134031107659884506055048052788709385808827692662130818962321606507976150646381721910002304739932703054948244861876358567313297102114069290295291626078645458042812614718473327391928663356665932145890111663847152120325635362035086798137207388556288143111904984866908533751973098697291965482908872293374532778946059695253262975442974304847233972656450204313100427503719543452546193767738294701046035803514340280341565265098050202671488050481033458057969680771799619329874450370443557564322422360418568793204121850435248000605049719638211308967767529336278192167028848907297374953280853707614806080995536314226075063527664000387425223890560004978889928858205628818357334399884341225468798168944138998668689915872507067254510302245920656429528403908961412640277920646937760811527946864247858750676341592196913785669972124854284278820563479525132088453132499218385670027464023301509087221707630743206594275313669565479592671672590901499531735531949569952422938718994192626010955194363252141319603768936260518636757177192563049523848550543666766844667162146706485324828393487989790707489325227348743378894 1085952040613590079615653315594934444584507274453306244302672069343139271779314984146569639501469422692098286700335941687447641463012804709285204182030849403963142397814861572639872176992341342320607413101714715520467264039379750891120803579705264970986939257101550367889790674115727674575547376982043426759957805077717662850130947348419283980804398469350037695504563521153500162870940802573625222540714534287073398579719501081188278562494209413160936581942989645227479867183798149519209078737385077728775569496540525978091502286727703981880568935073589453469828761114052666948311913008301208704198593609104384784033730806447433306515651107061162713551597569325247261444339934381539776276589404166744220416119543492141665962041353789735208899166945245552375985518194265970062640300390975185610218731174008734702463027785604926937603525289818336280024693998204169381273638388627152183599991690322328922140388505163844324055519638086796753032186364884798989952660117245454569847757510155428443998817747400750387690097316986404711574513681634778846636787883854476867612416659062217944052377373979960286423846653763391153767316727512094066783051125551584716167225367686926604634234947153782054288503585081932873790136440023852921085899068201626746596201525240529299713348546632508005926072802368662134121207033675996569891168394216498835953344169175516591658350570998243962956873754523222355608753233947341533572803736300987117853990613682772803302240798381594420747669971183780860023396878384845525948956341892569501095937572592533835577010213464549410641799920884905189835504606886419330893623437261320857881591247662621631870272572115080170035483589790504475117714342571 8679823083602832921104451665113407123530524107116860215784725895840821233831544582443669465333329309106246725921678014031247135236760936551534395996811731382131311973446082643555421816197297682231613037701501454590032253538276746571345399473527773141059295749761413695007288175647243384519730402307215584718309981091686079563525367490557064574638757385019044134437623394872658691956925834573939812079053003282019217472057525706095838339252583166919635179958043324595767930396961031664121122974457185880358724089693583568394562539425229745268008926893652085885254695964919391244381116837256345334325850402366481909112853823643337730942034037613762361480904252535325443606833116490029486249599743000034864756411557898997972332720215963735828169331344030726016278821499432196639785332579584826721202492876628861758420129301534396477128558353059258687375949814310920538359540752073192900480980406947046987924804917110627409332284332313538101085943672834836109621768007610283939220894030216459013340674718732396496143122738817623571241473253593385954536731803246124465785148411992268208741028150108787677734323781899361648446978696590514741156490363607342580368801903837757866619359989072616709409556868155861153003483120858559743824029358499802918481907632968268392576605313995496597807911193300792563912241905551416526591365265533281819659963148638899111058264855197928839066965632740912970052087630064319630274829187425851963721055014612410898910005413260937029335236618988492692596157450831525602888151836834471914164761395780636692621449234361857845102095516530036771173005660167643695209131879492062257166761099952788671685843136570055490894590650523844317728317321384 69376328189039067329047505469941429206767364259916659032757854873810785001665856756530176352418243370746197804464764177255954241911594483141801879896793269629847844726929554661061992605529160660458232920853656500502912587682560218974804508982535042323308296750102647330302150200164751738365259608362525100476844428606555494513933747602692915462454128152293872392973753314587971439483014505181054961882278544099105092352456404691587562685220640014671343043903568811192732108858699212526833719887722363796462541716321560350721944914921823666832184974556913514841278403023571942501194193749785385945004178548494795305377167376804297876895520390039094856681828797838176034702000365219323264461849114003098790714058633190817676765224665794370635388631670529856466447052259627375097215242941123014760859232032848060410990392466084404626032986033584443136394108216769691162268342587394626565168262130611492401989884527078827341265256727169122899041368651801871629659454513499192141896124339075043302943385034469578551187904760277198324727203429081885151748277837817684814205077357631276046748217447807299332785780742519577381958502387397547963006815925851519047696933814023382188911613492644130298075968866261146051014789866455058807022955950500376024095338271817740481900862977973492068271091163005648591382606234454204754749824145536785677068176080933161292763084712256588023605596747682473177206668440278095950333829212482881472342289335098570461555614420940440012049225369294420829046160840675044940662566193845934841714934174493867824555819463871474940245352803004595296690818911701476912043422677397030593956335196944126336353150982386299394261684923564648442726266988324 554513287868232834304501134273877201699943243471116790476652711079845133449153518193988192266906170119567116515163997785985074015251846194911631493215701054322537798549510149686131065406156459866870117473015096380165091762271330621086517673894830650485995859452153985682062752321140642472581293946929288832789014671991813859224367582638432937218078618126626012545429868362632701788949029147215387469874177648579262855649236217409182644207697451745264226228843777946073791273887894799818564142460920033446375974266466819327482026597631003968807245190434531702216814723527180763916478183717482631628699080050594158820901133351923887517901439947191828874449425586558029490005179540294791358458463315595427558121074216146212428886570134650815279890309775069024271067057709869171959796524706839158666137456451343733776798562066995752904895769404175481801448077459554245272628180884502642265598086782716952872005123259465039951932406005584594877179889673618201275928955784626067799484759605460920063132438763919170413290503630795068438926741460227352698244432473666232329606722660955904181049706928012744648955112492378525480438515299535305917540523065503414521816372555435171770567779723926678057270124745933304077410032798958619613367156153010438508032627272543536652514034315934281040222863565508832198457609769635884867744935851294218495735052294790028826825729530524397565553374397800263997859239951688362063684671965966506447920085026862971184692688699101662877784306027488617057599189156118448754815559171886810679229570241306394879261104167418867730887058973864745962273977963395370747808652652375934514299675133678852354561785588743282924318297839410775275621203872484 4432133304086104706445159305205081268512455184869715531216380900051757800806562061668827468077076811093668353548884031448017935536365181179132195066807564072788792587714946720428226693392838418050602359927209385297961059429721545864759338625043881353044668512706034759164417049791906715582064400991592522441996741571142641346471746543104443325191366712817195538802972090225643528944284051361646929165189284656597049855212952465253525359588970181619253315452426341545090334210752253886426219077676254725316338456658685443811127076612762203718030976544664931306241757648124368443135232244552349418413908987712447780691728329301268352174894184911273075630357307102794492479003376621839685752292321840024606800569383901731662109249406887624418643825429274523616934355033515630260395551768637310497714547566086357576998055474574102597995126175019298876948142786972566956777690566651060287785300906868307173134585289781479627957482589213561400751740292624567019962498355553919147716185629916158991230412345300225506372765864100278431827860946883144944198252954296815449357081148371359359518529422601056510124192134030431951923512996297432169436105392047721506814030784181735128466518079532934048916637141074101755936675786578477052801506671753013847446420590685134576737848183395577463777920285768881992370662473450991937745177645240004266644323277161838466104340134786641917100883649662280345283168532902035993160176300282745791051855084965284176307030594507366954616620662051378814643327714027524340641742996300616263312153766241385665716297913734609819455850451943026353684928889446803084969099136739712242536100066754111389384689198016769592852081418068881548552794358719416 35425327970294610761675204956263634845521269479268608617478168477524612055560080098966651011976544813819350225603793039421312939347609528813839471487150972460502461270670692475014873070810136567469961461588662721906218238184553682953308531811068436333847963444175629560150104868234963912600079411509814568843013227198562391797848140026118341553470574060403262502929724867566213449347476778876149958648703241460161748687957953834107577946742370794580678244043849971996665280600714588953690557958379986528214226168295750581727256830254567446054153956366965521926850447058278870312751406991701908678183072519810838628405321019055162695268138654999082064368322024267467087852567129139690651875949680741354938139696072805424186619717118721764270328553878496549595489091522358361260913074583054242252786533006100100626784636674650411536174575356311879836616989842957653688677505769853555477445105582492856512819303278630168043030366571998683300433265639938720220179600153024792877317709974332332498993356737170543767529703031792742323648112686711179165084552303594461937228289444852134692081845871365033937304541708188186890091627027161962605432959704212554376416859131349000736799596663095468011140120913723355967214392452418691919106496283348309357645083457791794220550646487340629169994959853494668529638321952104106538968775045139086578835510751768143573997879399485872134850076352072945411442643057764162158003023944380562504223832445039980088056120218944754164509553238533769166917868410465582591492762417571834261711284292557855744031485703272967676788234103242631367818682692881568413094970524542607385111725093149582678108204867447970690982414592876785778841188056055952 283149079574001561832204223171065893366869581771420120252283074585874881693344501920383005350673145929325291285853126929383912997171331659545654935000449205094435834354540141946914727751634201531957977887514390781920399110444770595734810608371959361861148496387353472881935984716056718723528643267010842429144657720165461662064906937243060823736214436934511576324462382210922407462356922743998610093089689596587368702508673915752984141646034516197952586520164284053066475401739871338850056138007049328068702434720562233938340932953523041916891055216192382011878137041469394519314228569262374264045451774894829102637583669542690723735527070080484085178859038517487500470765878067638505104693109624849241867418500724658068056368991344777560620073594436973660725617673736924036156309180979564599055184141010297734415780376523390302403125060095469661145109054219848133018260057339336144579600082322309421036166279843099649094100079084024878216404756740326713103529076326426192136040753598870381962964935885541777855221555323627294993348872756375254610426405743723466786227188965279281459386363534948607496325101954753448041707274068867502325508521292934109535463033176549500429112764838565653278081922049693594865540889841274085652879025657324320912331353371725021607469673760397598203926497837075650414226128005482136133448402240533322725405851314702568658360478406584911899638665221441267299557569495893348203916548343116532600311076429966685602185909822175765764816823745903549756303807250252224492833256824850616619269462149949769350066983241658008759675726298989210588005796171435242668014208611551816105711630317523075424190806503301927810884568721535903836053095197816210 2263167185449347564624433453610787031623861056355912102320544951154657636358979353465116753784347633928184637928152122103324059961321339504036657231096355659793718594507857440618436266155414599092341321050163816880822624760607970588026473417330959278193444331985348731459222158340576194654475349268983547621877563812081808491157308833029120840222910438602906983199773180629915994718893100279542374926651588326488179207262017308779886657965779817275759850693514241131576814289380578775514889696890295256498059682955426232339192964481445562526084764691619269449458003257083053000417925514517154345112157187213154884048332866602444563862915445291558203567572680420081705984314888085647376628362026175227670936835948510542867795027017131807431721170421942890287591319236317441029205347840857906471737947822628098687738407277754240483674218460900510316379897172499267406676560498510629421992611500931881519629095987534222937492284647389010926565387267327626456043483373001100847255675899922699210420921567603781066102152213712834824055684424748984781919149378264195702733717344941693663060756520985613412583113257925611421891558865449783201036705078968405814634085627189876010493250143934476913805821181793293341158936027308809724260596221164302436981859448720861583756823354710378830403954139128009736899806822608713383901106205722299931567284905236912226803918075141446090287460662985449152350002539439465138640289248400569679691491713924862930381194190076674839190057963559973877272611170954721890103456539867163773793966527910662079415227782629106758515434305502992387466977760701949528288399682403551354001388939841106190366863489433701683433123045971802539804589824857475398 18089157047703789853655495067981310532602168300622847289015509825562701793722281882427224011899265601733802624840887476129338011351678829535293589824379184288440479209924022407189554984082504128707521218961687706693790011870843192711926263019389692506563832544887428069517439913662730964352983069784991186761071328109666282048946932772354467253264396423940857555020332432368726635724238761532627400486251710841496042891937616273849968939358233309569835042414768191349429032929225295062550107037816816967181516081277504814327961390530451394297342118440175251549370890279010651157105465670814191154754461806593702218060777496711917421809011963932457992908484323345470779673015390481614012952749377133513610398829667118336680276756071675685273933743550052839635937151007724836083590053239412849750210254179286698041104583019042251744837502128304361442707876767490655641430935784005866243939367584841875985667474956188218741833344606154047710736760758352379547667789997592882499939955347199127516034424307413078896390788570095354971565706942947116003672794911485139060602413454630901708587901475213486189620134789587888198009801248736397501280171443186585265898861535983485927651533565260604245089260306319302312644291720432115442638077309310020083077538773846170320300774952770169240785048379821759227530028131775841443530435233550928315849397735118576498343913376221152907099885327086398380285360685736844642579561714769212038483153066487898891407344600012261767690490280826405895973146009965024706800860880424671182375109650793743821245297987540126698305544640041180540430032163212987069991029794187779198681071955088239748307262891722861125898019311245618649418444793099313043 144583997916114214900079737854604417039831742181147369916340447971909368193636764940489844282473856260251697739211880562805416380654588187843328912143650777977239958266477221144852771753613129922843446495739709135948958141461399217910927130655449403395743357305139530597788647507061475577388784264848929660266755069518966149280988140701069371101070891208417416329052555409108020784365586034431427785809442997649586453466236190094883002612938601712778154380966243238953934965597446956624561902453419230656125323485989089798743408837677374096285859066582637273196255217889854042398033555911232275389422453936345658125719552286686162932653165776154716280454054828395014435481791497850322374986820044570838425863293555221470516249646282510214066057413164358554526882125022399800754652901670526505426510341482042120076351937139993092918031445850802013865902831806159341873673669843289296812055083987626053652435394444590657225135348277796555651992277540257413706324451660536737311944673971303639880615602280157603239348101737862378195404757965220941886280518841020075529044121202949587540456530439355764062590533377197494054771452888317142399531497233327446084732996911611174520579712557310297595560729840824270563525077637223442569813751014679303144495307832855770179625270262011058224737504741418214088752719001226819812613722895605952975953262257529053487414431116613587729341407280277640599927979383249368294478846121368768113774253221066239860777954811432107858083936333169881401227473477291425276986282087486074177187425452450032536145616125887187726328735592320182728031771694346476329653051320780263943702145911094807489987603103047064825775549743145786719393121075524430272 1155639392869842238541020651671422197341761900772074238120442261685423376032171206673359511768145193131588436640708639458158368081809078051905966874445709818393008685767146117135071632835643411486059798413449521841022471148717546211888170158828467998932464645327580820112907453948734997300504382468188077200564568116350626460404358042253912936941860767522113726774436829284334029859235444345907704702452340566591951609884472787550368871097791961020709170807997868445835871155495875669380756363010934195330254635201843507911386314916429789094120749297569947591047128743986750047254417430472655122825671989915744115489613077431584864351253945619599858657995036104763679054908424191649473371002452422890456219449922145003259121792535029042641440601010190193275527311567457652026843317717551437127057463949363400418032312067040329467753118427745506898562529570006940815025617090727747338424821035056469651369471487804523332160234833324364167504389901815530711324614003849041440811750041271365542820049758027865596841645525442563249184685347736723526708028083619644334608212553277214207707514327031259915661643164281469650216435090193087595564726792224274963798930749849041728153828958790274571013155647487369644030169015158351488735132573643902767232540980641339580804018465661709324283676988703820096405870749281671278477582939601839376910373844822765787246764069884889308794188880977474259447046823703958738581506688832020622632103414645041403873017576439016288129320098660695191381606651360100682299998005171122204275730997564412287245737966521142356972508692265776659195412464180666526230336063827403036419923142927592240418502065276493372946049520860208583424897257761763338132 9236866214202064136164654828161082073401124868629700544257141596736945118831601191302971404867439525185038443429697967264227573226303570921649967528776332919212824971048688912910394308831059605578557939645955454910993483502069544547751012352558985687342042007854067876340476082371501894953491566340188780726899094610871059309934690584662583304440921700129820248977372664535744057774059350806479906138070898181184050034475994219623894510748883995542239546367889958739882790042785776061648821503618646970641298252554974689110056109727223727083729676001274735761414558229047250165642984207922396830517456214205672315103865191362302779179791066945185619052315978037717752459751292026806170283771224272522134018439450672293888638298489280328826766727545846622286896969035243122761202877436053513786723504730848532058158505209970440536568018709083381048827806920427031571529043206088539243128527145369956681455015732105207709006394123961381555853999008696659297093441297216804107729071682836460617525693842003967269934467980601290073150440460098568466407241048973330573444522003816955653754564526363771010187255097440359097101401285114991744137170176262164802267175111382956383124507553419855419512924510377275385126637561734720458742029327669438648674497835362140854064277228322611726586154176562527748654035766979620966581971332746903819445324480704353608363495133578467709851711530372875509456483340515723313538891611781415788640587278638077875452438610777378500529766846560904595536608947465791224002344254331596912748853714374902524130247859009599646144150961639670108996683355498109289233014611166400040116079835929709683876580495657486082236490552344048049528666583936088731328 73829032457717507118005813246303289985527861997588611699213899144494728132829176299348129238988954807651309005572111760873707566036041014776517279962405435831282044860629781287524171507367784188046510784733809801585076792062156542062620263221880797330052956388981165763481346826090598871701491875662644144563169989964837589751978649047369918652650833738780655729432936002485576332426699258174528705385254904155514953367866053187160381447305506905016201668540109936239210139297965549719072175686385067978356229496897570971081343539559705605769350507137508101234163082392155091414181619538432515892045851343359646256601851284859419299215490733692992871120293021134349844563880722093370686596009238307745128186712287414060124504987126330080809151012950758696230472737670746956032503011280799337111026732388469113106648914457554896227424388074371655397696792295421549779613516447531928554083227916651231808748385826302790321736269944333870453895283189274730732689044111300451772207596108719889131222116687812740709217104438479784673381283554584106901122787505874287875188731698999921544680721171102999130047520438475598594403806355085428518153222978094057602666962209470906106036507049080861237997693576845123027423589437018424087612995093050588103737093325448908722995392570423333406043483799646029802157115725811076050682132816889708414332977572955594262409352798535665432584776912120329650756829850051260667913928549145834083808162796674401220748420370890499838074743757068825318508032238094968812895311624429881814726732971330091825005978029707061232325918339038438705593643462896283704550721035233113655685888779712887714707192256344042324337511945578323427209660077458197110628 590105833530098917966314436805585437635902533836797417884828824332210239305997032084408033058423068522953496558097181156360637374987548368594302780806758344440797041323713574300717900301808390896221322215724073566455637439989126303340664391865129965788634716041285733586473378660171180694420733658021306904159414350911407668915017080883530765310231921332273317357968183927123372017283431166255101275319271848929992422291460073747287025845931081123768998307017514617364434203791341291120226093177794587985568835680896521080379360560774247941320491291585808530956566307144221695449991683711390367760776118449423007484848350514528036269110928057400340342382698599652596876990626375122278980359763422408622343113236626902087402133297647029651348706475311318264500295699449480237840133502802510178910897265472321273731859348941206080363472313454937230974079728484626152736347358818762698544917309957061136677183669934717529459185035360309394707168361926060446759994774550746193620246424142095623253859183961919079620673993294885297444444826587783874975746736320034563059818264155379363668356328889308909251132438871710083949794482064924826783183911023002029517149124981956507041989499183319842801003214224887166349021026369323699192919688975172412816418581018592293934887539857076325786502174702733292065669644451798435325694773221840117921622353348132808914474064005180755630776864952419051354098006713111266694789794650596200437818821759568051402373353061560220075763724726830594544117160455965752101462195932744502128265909327895675525997447015734309823597110592213182420394500894242841022510780605863490593668187460781516659326889041562435699436507442480720467126665118374390046094 4716641262720092443856097757380315631473101537337703262394660275536114777148317927911410169507045566982854703548692874612805301883776182648225363404121836776661138385634543419745806144578512514406290758456051355162699028419115829730711258614053032282960086511177512485622163452690801726771208870754865004046455765366397173048091609808256211115370137719646577583401182921147965412448951605674681602445699737245889139477234338575988578760597272079296853520516278691282892341299020295896079138607661188638232892046606884209390609935898981059640394474320880192312893129018114034807666736168065849421007888474510821118396382681586352400237259481529044237659210875062647916247741448743009886351213067055567134361673212352474023650750086563445881197587349739709285554476223966353916062204809571755513701003398934842447359737712486052509434574153806988053611569592629436372178844654975338110184071572079397675857692723013280966218017777458306939450555023435108688394532811781484607483439957416168599569686456136160617978007752398021569198650547711968832733513611462250461115250742553742591610472263460764140596661224814465667831114975833229425682150533231397078872919694988837775570135896637816067087436631686409852063709664554595995163813485426116143531779777288435865821242652234199539672397383475800131306385535700712907309604134933676114267253622147317390345291959956217663766658587873650982716186741377197001983010275575350624074398234419601748318719974236964800260854789642463387513745372909621529246095533977616642902901311053857686858116808631323515925879397159060395038243032844047801451563674825347844775315471196261023318033170071346287345211362718011718298948261532370355609279 37699534791754029059364252929734604767422019097334115829448857121130394289362017068830921940646229424480725094538434661875032672924965810152071649709294037509953208784004175673503957433345619153847923847564454868614124431021571732785651287572476419156384891196730832023017955556935717329161250153287439241811828446001141931788884804306022234399825629789695774344127074346007559711679602755323700264860108551726335574854412039591010494266811896190367645572969636095628415786213304554191226117340518891951744788031022004362178680197984734067914385223403050998757943875074673879922532613676274051369214187492872905061645764926795433347307986844051752924751171033935546960298118780694895933124708884329406222458977372471814080765411297653444136640017800254062340158389065132593157906225205120577195612256509006761797130145814791941823718589592820571134673526905337022367427529672429761399390638935723014268602193913290074193932545196595184489690977275914514531222052414551086786317662989848958518794840977446616156583056909600374161186627167039225510066165279442862018386925937832255386620097937697581104055511684345961770800502891684503461534491593376764958188243472596143386633014325166900217182339767029120342012255544304232899695443281129514419727952356403923966593518245550432977514476060362790506559535305496661008132233455436938882212616825844213191764827333757770121461609816036615503852552745421597682037062436588190945043547230316841830267082689123190021484169285701917595761481012731620994391814561987300905834657089903681331155725616174330295832818645749826945691304544879270104476850088146981536327818952323744026645929865360479252984710984903967851004907994178219255525474 301327898576321453653290724268378898788730466634553279723068643936356849591359878732108261227000471513974415141160053376602998798364106227266155570499839734376569455150245601977015525660717940873327425851507243514309219192405272900754649034878483238901046079775690182202229098155823885306800775816267817241675517533317242630331234421604787880863381532913567972328252846308677510434440250347330457756218752172029848754876225400114002643403538623049503805720768700210777137417593960177042904074274273264631105019303090422097230929985443268103401017454193211309599367669666091486787213471547489212755332164404844060965160437429793474544257837520321684271407589892708160995333444186976398725919840369933593770701359570113672348403776499938346185015549288359223323897934512062427220949029747496437111547859914951353891947373352900874133012747062973586676944195429318779966891534893980559399368409341407993274670875367778787694351050296722661463546341188277564850666183217041641995997584837480426854770740105067211668251320090128886193495274626240801586144988597414036045029115683061679762053111646946921887925647630285713872470163651162981716426523027975418257368329554915908453293904544489022135451102007374471489324785480553119701309552263082727834787116914675524761317192774875320185304206306371728402566161899021214643081579572156436091535467601791728282648237938499669359797521654023417475588817483077186825657568107233446659080098244546569502247842086795690737806425327463466496940849907773139312408465840981194654564666627045513744029111055543499355915587293435060394694119485888550295155625515022552380917956096187997882587615756701933323745657851338696441192704428762128998249639 2408479206335168884347183444659670432101096797179590954207355506041799168189646594060142627829578202595412134463310915712539939552743513720579423633268536920942733793165018020077590740957725507476503719130772123256484150135496729579133134802785003041743054013964404281119115889197509072705098752007120238088918199072599689660258293633539283004908442297171471101486723964533159212563965386722496161736393946923504314967557076767034866252851670984461894111750501919741497625664284536694016264384816709561498469577021287081065194911276559545597108786815609863970763318214419036402269000018347850457707053487974787768468075408231356661980541447871579970032636537521080325269180832515047989383897458874010790851893428861327716614857659255347315294817669558646456519360247651879695850119825538745105878864255703129641914996879243225429407046712563795084010859921297200773524778105469101896413874675680189783805560317538927866397872668426234355780873979409860277560500203016979012486171448161098045434407014671571216198395713570711751308321493184183798498186428671186734063566873911775389233520783545534633659230743886526913203142728904339324860514892539799620292906011266808410511218484217243929234839596894950244687289923994342627921859350955904266432909475174665189444867352039496486190898086162181306881327666885097656221507838826859395313236190929376010105113024870949054212698826463567040844048814963942239294112472181894670346843534231733624047204661180141437922173080643275918050629621182597133654112929543366378753402783854742681874040213392407786816701882964374513254185832662320244790257495932468470649389889992937035638392314972409170796223379878486724256263617826576082613051228 19250706190948079928720811311857520384238692542411360129275065691835856000643275642485699250228639125463852597984649829653940146920468854484777912084858902566459015556639119346665776401733564776829266178479992638847925880280329395953023754440086381551789364428890777008554899358371217079560570833513037941977419358289185454146150500356827509055641285785438642068940853017084955757748829739611486973280548565100183452387171109110527817085539346887485738319446465316158768873542418399490038470894023176804684591521521505162124123234881119452192312923048092318923777934661709558261879397053311100773651592673253240439343117447911441355362965981408595453150172435742128346750880545618540008355674831015880084836044715941239931237841401272396000153665447927108046529704920888654575127181231578874503834895737362934934094287483700995529927325936171364159996766742613706880188379566199442304388432524032932838001852023583047630350965643944702364026698040210407837007989113383312540034820775664753774598766834003764863682608848520283336419047569338247359697658151077003891019776235140274500050077234551383924306887845530202159916622069348599271315071092311836218960604159681220949819445753519789728333629284444019185047289567709249329319688609068625282324966817389746764543891284057926867108858223794990472574513931050706162069839911135906259276591134893074349329326513286912171818920582423796574186412417274565591208108189423414903962596681691845066154607704546060364064685057789628362970578901400653011390420907975479237248408030762144325677146004808130986437219628960106258287678034437479165595032879196491585448729276036784338807560498209056891237259285938550718929101780864308485523113986 153868824655867542353809068393576569617575368714819586886074348763216901874890317790950757938169552964449338481573666051454887714464814312270972481433585787151407736292671040260464314619942134016282045864048188538232079095041818167574686131054334083193763087381769031583330252180236085827002564165605052434571574450176836802210330248805247200467907607771768785389270602092523508997440178636727403272148194045303977275479024297194350133950617040998792820555550885944967340760974395556165557916924353512042234430826590198397845197536129060164934138339898913977291734649303658676564101396057571025165268806191513704694500432043968262840401265635583168045507501715362681265758688480426588958782202682194270349469034296852527633688242345163274952165204143121559719981433790386244835746974632063876838464819975595549321897042646647226316692140770687903467518244746481794592740956875816456950143947352925524633804722067177592819008659686395855483756173149592088280354190164524459753855965293840749244251819149201585859779252320948178496904381788799164319525097691048517396265383529498935341168537624269514552490555356051171486367811392565338532593561516535165312557142731609941040925302921644298044834980845022697254819953447780074142655198521350709799758441836118538456079234563533753197756216798575347183833546319901207385655969250242859008485147357508930493821629804554433307753525812678445235294856545500153052508991616412656120628593670553677774004051879484984233102853682169324725263786989407615669185854760389770548091711615985951673113191499230522449570355559628945264519613870094777235297748618468228015424826188761786614739993295529741166108594966835721855398493668300535106893111586 1229857553677104878399311141092059779830892586836030048550575254467619418458040753673312420093038598916937974235993103279787192846088713192282641324294619756457282277030794519256300999097554625346992884716723272493840024759384785066261809291802522584752323589015665282732468667294280857963891068149675687093495183718654457236065858015328982618618230420777806261617775942447326455821082985751798094060016709159187412477416663973124247520656431946941836833720152436149361406091509485237491928395879967637128045824630114831107273297025624883418364006736292401700715805328623601537593182193849465320439041183080690798815971782502739969958420958386232522052783126627509151685910719029600500753634659390866353032833251390573496812540344892638210001928313416491010716831588744444073454679317917131631272055498405043898373508909627996102107582334647373700352791703216281972252647356302298312822343036489449923898443361043783778767463327972585899189873047433955501097392385595007933970692705429093912654488936888392376563389195323681487031761451903432456496036865711733510174225702038561088315943782013916835491519051331356293277267918647987331021705719740291067371034721588720501097312152477564952207042121186024694774219766196229946427191958539605383795386853889780258055316800955971595434195550648799199145240421184011724732305309968482848391114286596487252893359521759674083913908249178326882700874402500184294064292769053490650124731648125587211287566522427444401403042143401609142867427904609731733411284014682301675808797819461691756624209684241725572314027877328545223136569204920969946884325674764476629949614802166158411658209628985817022543293890054198518355167270993012689006912834331 9830128499787596539009836972067428804779702942513807445542114976165659498931837906469965451495646511435711684218741194363223071220720523609739484133434191233645866264338260914565358604403308634979550654943524789796948259655221776711548193885774359929309422769803924497016056673348796731931023497708530596627711808544808494965158356312197631543472108808344649463250591343502851914997674646401635908763705139687190757439525498761964487412397804094127832981052941938025599040309892789962034925475206363351391924994559419887363934865162359151954245029273600231507857675829682878492129639781808561392818318781976502289028139388736993598817890047093864902985228160509059234204840383303077676489283277059155264103904043296682344267224385130147803999563426959645135627702810734007334944534429118028752271856300784535828144786102080293986920589253386060813554689012049295598134617462912139285675336239545808335382304916605461332958491014330733681755878217707997224736019080669141932124403444660741472139570991902948363482999568811321887282733345738768123030851369983670359614085116025357345920994756074276546583759828502164449266071602964263601547150428101886297295096879795029903326579180939633868519211861625300829447641541127996745552030850615375621730470313706418211811133857664504229516048918331989153983399976169325926638408198030275823196697854768562854845670134051523376878675406753342237656216712877564150733378976367246445797774875526954670006409384861902767529658198437769801988621969661125279384459223462289377651123453950563045364127614149293084493736808006962080616177875852948324591441405627046537878890981437908944108555145896427530574990057728330238533545756341328937285210843540 78571271718771231565920394372143891256109453734644658354727131753955557655979431491858084248325482575438409685839276890584895611553728493890761853358956722780047841638230983412691267723165420318583083300412818415038110124326299364969185243625015214543744366960180328962507175109439143808131837457484163254132708619755961580690925776446716994703764702278627020211508137907131531987873138623175304297957597512514372574745364981566457945058443073855127513133506230237207587834556247545054360476102993249374803143904754235076810102433076845501815878981725629076341213906514960983740208160080483777057737022106247786966983150540609598779399822912581980810399807068040174981397781622282693003614012217425721081814757628466598908751929779688787794394280207324668473233927073035868097591759407102103081504707490786605071095688387868834747613654823568430849637808403155914522360190604970141422166509083934087828919910704867462728234389902504765155377719960276134573456230048684030024747888066424429426809456249398123460142743151745493552008335605319512412281440749023223252366859654002798621276866469486282856647112470323119157939233014645192615151282556507911105057658823216780879134062748463035787478173602527400562199032248756521984913680695580150002511285147324773498788635193346370573305367379461892277187646648916170595738507778358545345710924002884870672860274619370364079119271816844071726603347650895008761800781075860527709865359013471771724108923626082307900287349264922572392689768993207235246411525700207406892128717887209777497300575995823898722617879604642945049928312188131155231083099273586637163549762553564531506888889640472680933213571879948934247431328363316253227978839758793 628012915226372218400487546629780495414377560623148310896715679679241078809971263907297613357701471214581065052272100679317825572912431164239378493666969324121455397093213976297986601589948513359852684822357828436861406104332122480181010967291941156953550241695402189856599315183182976370644918568802095997386952848431671773197379380025282388058943302743266392387806375514299932036378778881759445044770232068351836363770220133699389828473569561467555054854630341374542229418945772462535616777472784214417696402928130732189188957432141541512127050618104886927605327826261503864749455303064633723187733727603660928073594071939877459886568975974068393404504416279075567212063022444381645168744257426959633309769050938819870953619088818924902201197103281004497303823905394360324088142878765421789840138316060581023816224663221914778926205816830988499632184071366396471221636309048539711275557291745905136535797731798824833216074851735223915288344970463564109689129487993066809968120628008608027876023358277370714175411836924162900588401130016869113326648615929292454738960643753004445089951980928956982677535108788500280409945166076668784130066654235758425595442556411449953879516794538385674679598403322056102691393130937951665643435560731127066914355004750441405473117670358938303990139659892606914409698413904785154887619702029840613652619153363085294871551326626324377023333873122083843601970332567933008345450494193020559031726035817705732116336214848660728149728971647488337105442543201587245699852748186494441072436708189172283235063480952661258301801820316268678163918011207001041722621244574009738563766755034681887496390831308112097046995400225848410931472828848466803899948187128862 5019651574970061643354144773519562168780049941101821758311729456880888704135265158637972861172940863703242719776021749066490911092867406827093829945014986075746006211179464323938378769565813963613125782682515316679819902128120692089606585826854574183820913966602660749981078863359041242364622611474921294165980489665257316880008230539007684307604602536961485470271698076492488635138857124006853961215755538364480941432986572582947796765190594407251093970804242694906677323606753513907203880856375568069338538189377109643435617337544743486534122730286984431614311797385422365630856734754779743627406999421142515584577261746450178436488134708444599789379360907829036876259966209593614593138366530172552889651580776388090603835687604977399390786752727966481197016519100255076677203931249168431132480459331026080934862321948845574679663595708928773306716169836584822231606190576567554251661137762702869469514924192504683302997450432753339664319348334735708662067770310958757544918870179112749176001008845380884240091778723313788372370350568404901000033972014442215705708896280230823179680408169580092791624835925814695493260066586643190833233152502111902593683821339072820590454871858775280061718852515531426199203275386356434698655738465168635096922202307690825860214590592870554271783346737775913066330989132713417717078260607606158055573743640690871379597109768647316755153852526477997386862146634618678870317276466001327941965808849440687857466139710315483367435983086551538048679574535697097139794183122682429700214030334158351609751600319948203535141706956276939555477889016911329456335546672355742491154546658417251586336377000059630061259418959678886538507399947996199273800420810719773 40121649097273606637901755234803983119903142940302938435327213494696628323080829657001043091797117437987872222918910997870081799703913340455757546577483879281059091666804522807923347339302310611956468428217798238220052184896130829026771984347359845959073442897504250932796866023869629875516214410088375977613708651827130944847098603625124160130985933408452520045200711152171624549514538405889699730227977882046168136512451350155374193701582450682351817219030829903858706067214639980611395807107734662584527833047952406142103601254025517867000623875982319605106669069287360906147019472489917649690277262990661328112586179520593500079369398303204235026624452734513799826510703354867964021331310684224267745866338380445899280394812504064574026696004779435788885309990823487748420296223037982009818447345924515487632886307488762841368277778219506646339988479843960806914345138222467506555941951088051522243920565697097079741625255903929163040326262118294153422653322381575121248483409284288652230278098050216903575386840226920083743699127069329546758598360638934165810038779107100747970765518055609088825828586324010417615879382889838565121847578612403832302406117257760150498359897610041204439411765190780045618309243895214724008978654523532254264885444144264270188076269270282816544241146064473879404193551434267364474076850903842837017840317043657705602392393897135764036031026872556947105763302522071759806679936170557541234295251938418638400529893570385414183784282316424575945151746549573721910886311019608013683494478891525987337139502181334739786068343200948844955654351028871343273189095310512020172797214915223970437832611005705797304073798021776560829616533262121525822771991173139048 320689087749729810091465298871282499996138633334676306040553798920616537856812094884106356095854610792610236914806844335670994259253759085876735730740293633920297591367779192070829104195548348700794386395580599273903335679529310983686480804262718479777671188848877029123802589048363214298503645587615316978902122967164790624531312064438482178811121690954798169667742963241844990916814657176466532257789376234313224308089262907510320674566695432708624684135764879378343980579661980621239474374506781970253617879963976485953633318720823749995329829376647210787991949277292464803081123125829047142052462560690906574235921522614087097329023257796726947033801305046837348957419683661388906461357485642007166407727127141809304536696442396286096788901429634827651584556018087989624488583738711186710544984602063037336665854339569031256504802753609898032053359183911551201974352020712193425530145975785169260436303920121767367073226425388612424666673750047143663483663036643596334402397269374062092795289690686342950082923690048983322688786006224480496766283779182395994024992504088846810575469578766764250630298751200916036174323763904115064032022997834789129591304192840936549007447471149395782474718896609180720235403544142720871877770255787051210737190852760652058165758048157707890849697282690938263822778251590334898599933721303801193833057760052030160029137075096484460074650109040030909991811793776373960587615643654144345149092975058046625571809645914794134643177880781325102001283287752381033349233453367747353707663048463549551776558374294386856311361161054768463155196321746622114088771830221348548237041207989422844005659494101737680682766988408638483604869287378627979265668499569419170 2563243079425345397194216931865400978751086651519511772914439620817730570881187290317379916498111824197683742127736989894486098579270390224852398390186653399816527573193474048118517556155136654366441524299958697426445977640244671417261936977512165998072419863092221693329979201672163253064336030000329591474371790873560917301945490786176386834664798492403636796715133673198761827540490157558915723308747159028439703611985500873860903478081802688556785937611666517181475122848927185277325037384308128028063286437687363806926019820958731269734162226572066742945502462233361402647136490419833179748713488801420552998889261834708185781851749324963433373825286528829715574761115027141959017516742840904229314769959558067882836314762245808025754017359762890798276815870289232134164554321817749719131437747872070927957865536310890476351722945624421498542634519927875761161716796856269531089843940574620413851423096409017537643649304841898700273755710990203735063560905044579641832798894107897044603532194003884661142189285612076218310444207668747835588091275774119722650075231744612114000641448751917626113804510523399500543612437203927765005895294156942821738813684989342573378997439986821187843530949277977162441708297621472352176145576611184925432659875140573487661794977193581499916172427687603792886349516068501420028833812234657098659202273535298308655313762275861319516565705742158297438492827057723490352474773717900526641397040129207620359224720107631517890131417733131442450363359136966263560413474252620643391998172194664090733061410122998534471733654490831173186208139235333383109125057176208324089379826560558395718452198457673161590662994885762682557136349972876599911423394602642387380 20487813345978130701605487809930773280790591003572893556936588708788750665226663080432146866473920100434935298881274646721289345109488205941557226925351095958425494666222774674079138848757098089711859650464056898743289740744310385885253805565418533118757477219354325109034725141875880084646721632834038883262127733145230077233534351975904943280559628441062347488287196262944824638439899822139864555148977686941289145182676658009107116628736954507999389275762384350383036279004911396502547032844693018726693619259288584241717709314327326301223368216066819597477377293654018389385183535841942308762369824677163204204259125737414502809510646774216013790310571105945474888909700422048855919323275438463528795974139396420552200015755800790272777256444305360517720798828845960396438225382208558737481758847021827820892658964484193283545650052938074224499553482185192683863327407530294836216899038759563771214417558698813068918235315779456504156546044952460686437113018411427435913616826119589218683916620686112866402352084719751054242560918123855928752559098064591935866720903487283162215745384802211944090475589617693661229922338120068689028462951038284232955652435614396188757390453367628807675526944717254194208039116864842055150531692396290441906584719285590663317482648032681818050463865803179865639359349446755809011886430733746211419106972244306956515690987442188480182300945442435905269622828743640500763317864763153673384448076439709750635312856340857034539251536029476890908398611610885332406783844966445846733615242258333198805761509572483804330671729560058918299775199375526766497980460976048629437498920393750976540745271244808224993667576548284832107835311755835439093696436317129812912 163757661581973327243295765693881667494569252424706410130194053968921135607586138349649163396501918331720272729599774016297198209384372682158830452780323792120872121734424396000575550760263350243249238655989410356182809246353776605747004375918171368450848402938287279802353670763216341626763708738330657613117745470693781949154502013510940434706814896598253859961773764140663488935495669005215413897129730354838917995803179597259933975179125418248736545072849491916852489668394111876520297400087633963586137515824280476658716593910870183508567572406146817007606898320347669683569101185897103322679776794986597700770579282976074265619055957917976932002390849989524266445679282251334313160384683390330325053362401751695522394603925295860723180600081000342750988020137680439024055558433966857436204117713908260942515951253290359233040362528285506487217372150515722652598290458785006152864416705464371740035742062753592318043378952422196290634520736864200670956835992636390212851815956766458401942839077446742343644534537371927703701418878834546405955371124503262200167440324587139552704506490492439420961415294268924504736127257478398854015757774351702430823578313426510275407652401034717348940523746104626005189967144491638916322840953961435843340100069177019784782432523930121896771252196917466160754298903160091958219765906246931382214749007056280065416388738913497815780930427028413964528436565705199387411548181464171551763690472571129591922156217985330194168012272708007009763744531798591293116936853123165054855134266818584357241475312884165159718908159701358361945651105602014235445790161239147684351221855265668508787615416452617282161553047864259575723690043872596870582439695568098589364 1308904169015669068370648942677015593586822582380306075586035428322733339058258125310142508555734856238094553277513728777137202469352024701315938705432177406256482851693466915188913575812838390816416424601628311979391781719395641873473527094338797170191336685632974267322023311900197828406289354134559590590700562295965310306186954935565832711776021797608201900927663585416826180704556249359074197291673162494957993761839320397324587426575549297827401763626875746080839443095516698449872350475484529891414657309623095698341244270211106623053294269029084517729480832307742639575312978230924822639863949187523560749373605700232552955971552469708500752681887109758798455137778736388282048561247893798945450336799150915817274861280244250307646801878433528236874485842872398228770230077699831229904222122706263836802773287878868994747558982286938451976054330965132160646824548485495553434198130303924610446288220699389953002210971981900625329847464338735831424473640208561831044395602344920510347608409579064524881076529498007447187772984631380839559522896784347645029021697634498558692210389140756144363798174373246441405128215255437480332479566955342063379634675741032685786127393928096456183206955161668190097093065554924797688732782524811971983725352697399751411297127672223267502162702179777609660687871567367839508166298530281071434977184409242409812273958706405335113456664051682747396517161937848574234505669067922617076395698637901065472503750619412957643155258823439593124372225068328625867630554231525892273357165392363059962240270176488496358179264846918573567156671621447324032523170899413264026132728263053349485784556810502128082522823375110614549844271466196598031546804584061569435122 10461989440323745146726424738395310498348229659477870982380008289346454286271632328786288935388030147024485152976185787548998359198580515841450279418327200694457698889398315883546008430304623099807870899290463325284892348555752125092272097460879523843871092981047489595272699177042967159223569144456597026951989067981519622946424432097209987818720478947091451693407651416534429963050381238198661357532571496297246071293508000474180445598458384785906637490131098157187444734386015191966190888394878322075184568749139177535339567202466131462209904078314505017681147236015394851745123404842644935410750228296870188970137382333255709606459968950725853982031362084111210921239724595730762724600170943716259795765290357511620915032706466859519744555362615140688959996634723674225513023777559641280971400760630447654506356386963556751716670183723646694601643525455644862518044755940067009064732232537997430202186959760441571387297694060756435720619390948718995487222271138475988332119948770732954114618179595818426170126412782516647319213023141440387324764332765367147823586461107626008502053235868829782063222886580561555859544076551603506115813620369403838213964052711106580049433340119649821594989510711810062748001866969794395396488390275247184975320171106659651639354701839793735686294738547253276596485103750900808298695106864778709609727004220747608321118567461660180231440202338314568344747558963653855766930971762577544239817777398945840653507984744846759919363222212916879096249425114128207692225110062836973590502242061302710105278092820267945868271274159436875574786472970946505656722913144702252722812881763185034346173928315374837978645736110950241043366742525120567149115892198694461158788 83622068643601123954371418499206005552827932636898674215509506492338490279362216156131766698324206051959810900279013511936512965608812806205642748605358581129615200413403267600856074019202916254900664427970121947606701418647147297731123342357974903219182979471141676102760503000287723969634945165608085601881078588001592927211683724505016916521680882986175667348587981432705546995899449291136245084873848208663692061166236779622670624267426624435247443257018200485712171291854415181732238438059858179946897872873579749952478987421824056187382069446462794172342273402696489587291608394653080874299358355484195216883360372166588848505775507914882552223082067090379876874649971765288438317070014139660820058500040094200892764208970071244149589040799204322816976985036182308084107407466299361009849641936235185165953967969244918248443421840409247866338242341984115655740893387404504863542806759067789130202977598958066846104396317647268447369573639913358630974242005208802602977689959589365542308119223574025153826484243880577628880924746035865026281279867044566513824259155917234608836048527071155830118870500134721185175760663588233143906166013673156610323987627079218295816559436887821059724230390085185992299754169342296507914463900675193839407050668038940120969152492144281035882645531782884815747681273966637858910141931215340135053801815794620228524987711562883525992218703825693978978639071414995652235415607427323442813633459925002348922835030963797138700891837675613175400982014857720206368482237708731459346272792857596602628730391382940019187008102878461977582328016138752623816114038792424027187932681525555320877158905261006586515734658068217410016844451833944416074280402833315880396178 668386607819259263186107489618192124264938731121588810842700530910101961482332063348910159241377342720451911897347406762953759669125327619188381506342694627188436574505065615688889638173194024656971810817682715687453012734162590840652687532746260351931656411587626600119922724809595815175527101166508823644716053257998427575773660439999117107333093045144858942839410933658841097417408109069903497917293995206531292508084195112515952738926394099560947192473778744650693054754592159243113193947026255652877659012716136358675513908665212823915680311921671126602677005292041561841452919796370069471809116056493278782139013912060429015548197450887734068551241273889524077208020227295827674648034938941920513159481160104373058559749963790561180045134861411543510620095638454472492795407870014271826721690566076797384480454864528522191945558477092357247216268499129718207058382734620816693946594482816658579995734536405614650222472660701681524752527080727792789736203193591587498867269964232966949350353551560220784248640038892840313504540641401765503518978125366332976372111935673996287373586865509748040857553858876768416876643901571615260585419401090222519209061895392914942591109402507452739510073699128783692263408918872207073957770850729425590837848108683447824812512592939315693134383806284663541284401305624209348566075618679799198646164093970008363436599775867108451386383405735234928095616570013912020594884413469730472998674908643088651366135481706425120489637095957379164657313067059592076101684625738961361389768773119213167851531015223840596256191835927973530099489789122395956181218368484423084504574602600220069706346618525559131090517132863473554953761189057935839036291155630088448930080 5342379988600329547279898790863848344074605993001249215353593740252756049126255076271476828922593675727447693471122987290356532682242592793411556017607491406370362535388889149039445312055427397728647929061977405708551927494703594500123540753313019505631329025580486846891738238766037732543564690110835449601004180299629286816456358255511491593333144713737149192210307876851429070404523395453707340212555394385052929701228199164121069983234811688749670958094628328328873284863616739339837443823104251886186644012430409020305013784712568499885178847457964510074305474307177691551698785250941630682085503280280202501775256765498917053064134245047869185070409218113047653009072832436663015557872497353858369749857417466820848149607795276454614227444025963866016845548081414827459755446925428574792624827291180636663733768065990655800965437699857089411895954688277527806760939557746380532505953266731913169469691198171776998501156770035531508703361336396488410441417965795154780851486212819512605384499523771276601931003573985099923253212253247443538266196398602411144275413179763572246566457359233569764940088130347783153054644969061350417001110306589028613146788371156606596009827565731894601855119647539857106748561931006514860987417532527935618354696806625477608277736247577820265523239095447372249067165614476947091511741640633305166289486855545777992042008554551802676283294759989132663700989344104331124725385854755160318765693229810406606508396941017986622234497295867087543670970809198672156453541483876607936960465341963842473011090385110461299616762319592928675436337241151034186268057370580121641491814850013902524690484783399388769928818872012430931049365665770510367572391193436518948950107 42701390067399384100955310039700869986099047063251153952550112683539777995317163100994196651721663040132992128938673343473285435921458829705060765430482089343254879362371756132190622628664024680192761079492570118945243614611180255916446734071886498162790722725770632098418564310203841725264512415438770399290013242577484682890382050497693673687066724658983812319193982240918546064178433550026430682067057260638081168980730256735602730674371591505780706541705737056416676991562720618136578682173271130805342430027760994407610716001827517837029000187383864066329503619974270714596246440588884873073968689207686418246442128692245470063396132078925733438601052186651370240048096884355469168985289853742612870977356567151435849439302592049864425014150567540196921436542784700908034673643250568801956832579234607628561747220781156675867403323601259340287824970274736339436829178609478452173873308651910814262814657855610742800323233323644732765273183009231529207551372339289348142096201399520557543391539627248989379734597467170195296450256621312723276572526041430790499366722334118939691496766783736194113321624946244147163896440512312084502159782872790393101979788022018240725352962957492421294068300327330517466215341559207822341994746401829086046854746774247105663861403759317163566809084618219856245496774284569713122532543662248476707973909522474721002768313413501769483893696179811516790735109364027773942700399746014680973403814372754184931800191657471876365524697793959283406703713310150356288344354398799732082043969706189421034725710929552168563817726920836080562081753373773120953821590109099885540201804081285780806581220615100584310513181156370641468407279669443703639038566729173405349596724 341310346185943225906469942327207447560031668294977073106362657068144109211785427614960548721223467624968857876890944630021357762234652885424371391547234181591353157108199900382269624939267996180872683975721793810187439527158005892423459926540813167991444019122957138085953915745350707905598957880212441539266194522692394509693455438324437021286490994765550026873117319739536319288265536037867241529774928753840424301908592297005893612793062030531023807546784422801878594164355047181450471027846332084341919653138725378359690009507656660706599305904495870787733247445620208941995431158592450921614234238422232787931562893869042276792448064341924942591043636260136089090203648033264837214556528314748423550819172859579200560721308007237899906414616759231469896132170986789683646022774141349532190319314776997088053465199245498010268986633266768140336732101095893872532982215424168078524764477541572596211042518212885368782669137285185018737094849947507831434815583607550103342811778497794991738549263433558651457843222470506028156023810422189788800816102956043629878800541404075517973965512192065147509835164511347423461689194005184454233214450251506167742107623687250101046766039911939523546239299699647181953205599270448762105373263707475180211499394106791820077502658639431482962194084495337467776927550139500686844611460647758836052518669703446743340011896045434832571491253685886899404579008362679217560827017189626457523442970483686345746271476897698352904131924601773999924616256876830687735586420401688641960904882946608134893063362061129357649134703217475681416714602234192400708987416892546707957967487268197654350934447434794670122051821485610135515059398231586949105815237733100561195461188 2728079963110853643614125725122850387739948275258444647092819737816371592384960300404742436951266639959283127807644307029019863443621758346788084621790219041960034612040625899354661537162940562204335342142567460989662366214940574529675693466408202915796082235599501735946676654299958177471897199661738516345811258918175150718245546073882805987861238416133184102285742426429733806852647574612912233745537350445925957544260181241638435121041042894507055249013232311101792445200892248050956701709883964602080611044349015995950015186501057456570991176704743720301276977774786294452519347684771948764836604115981766444567238427374313168436388508518121330039563208334815941843217055840404560905798422844945496985086329728758713050082750771573736615209235462616403182365268940999888417625997221761727354224240699961962668246579059361429985069742583352697741848453397533647301000400101775663860629043765678569549482589003747524766659845308729815020593854780545727367452717594980619258984490446249260311595056998839128562289790114858781362181268102795013612628832698257691270960702573854793295179727147181687231053870043329518977081512903115451296878407022037457371233400694624054031983854393924604042273957676613838298638991370128525916277331672141877665638720200145539283525240618679478211291570128179373982951810274069091173981568204080125517971867890417937470179745359971625427008890665479208192244384363424719332455671340870457148245543348706377017368927214284759081105658652156301026321798762071357849450431991392543783257080874679090919633795945687946960736075776105332152346155112518350014514108502197930059471219997411055260448768736946629395086626216607270635265408614771369386660701675529373785638420 21805444309001677384001389879100561653934700845649280926947632492393410859398974534865171911964758016422530442901046116191093524875656517944624981625316870875431226878641982707730206199014224429450570244622328076585360297645137306325322549690353329879202945921317029180422770450112611607236657895728468092578658128179983971510979015447741579101958370491056321502432398096301072104577089507886487216031441421906811068642927524760577116133652395425568496787740865181546265985863841234965679122910759371115253296376257795762192077368261054764304078107201588019267775396724708992908818106670045797490958976963678519449833279168945798581385650687813180678053151751293433235586198780596309879878117530385560689534399066505203739260641354999166978503166297280034689121911863584029087658956931357846222441608206711462090021456041048362691675052710480631349746014283207555820668540102104443503335950150143293898278219172427213464147164868675277043159901002909666683894417957292551257555768001017916195827897617188622346637306831927937417811570686867550518263831132204177022562108794730928154119632747031298778422891465013958843356611880185439836355537044115044457040753458269440902923547929864860515035816059855752264534932888408574681075937937524829356368537047267107688998939405193966486914868431887254398868133719993941782568991804334046926509112897956753530999084446614482365013617626886856382326589009282168100826397756429795668731630204018937477098309298600567904328533703287550304576503652982759798728266953055098739470977421492899064668921480605798481717166276442511322435310737541895968981778763439075304615620695209624790775535765916071678251937493929985521201922125660486221019460441001580546650851110 174290207327263192966403648203826368335396323845713692214064887194229155227129884849274460645070327915893421018431827375812592748262719935493809133298197276341245204535676696353410340689525995270415120780684150135381804048658986347122216734322443177743339898030079048680706714104271220620036732330283383703430425344349453972151776414693611948495001050660280286377490292906560013227976465963059885274609829020638345771093545498324999116913518847217877114159399395917517348433928201088992694235096171591320107907887780564068813336203717303928292347231696653334553467461293522913982905649521777102262620344514842311018828905967794397446452714039434475006746741837185712448138566854210760586096551168241186200913202838601065703017799514661972785509709277198841893807347666397426737041755247186186642072080426376543257171994300694355095574165987244392202378473809495931291280577822628689205047986713877591940002167631488041080146480158451534800901044793792915919975700332570807306218203681890136546884518511090996454375511326196692719381361518398310623343228431766869187210784458733982946657240321527900532606344497880608084235511645721726502596902467773893008865064682648160635005506379182891449762515318142765235141592732251235250602971670184745350812260889273553190573869963455394591620336698325632043539609232932075322259191337129473221365709417305438918849594826755226764808071835900240311292080079774573426019958680207382793532917437873812670112027558587102249553211726038000479140164889210599274167409103142639625614192835715828945167907058902628229025944904118592150318283629170430489360046942079417976903308406486584292074169812344155949097378179699833675805417017689502480002772287441534362455554478 1393096606297425892316860628649123482844728008221929987373383091644314315706333281976682992497886117421154487033278444843117583693383122933936975117446846373373064390903554475043640456318862890880181548259614647928375421405455020042715486495737336465698186299105695342173639449793929030674492493124724402567846914981345169166902000770719611160208715786571824157962697558353748241097637947513204480458308876127359368780201786276702344478832003269289987091706114616784294052487534480381348758928009958603728102783050370172637735286681356919107478372027292994098646038537690956556466813083436505611947787580196592061975605212074522227096255653731789479905527621247850481816098048372415027471362104953689978267682318642529695580713917664326522732124360409015966666553303011649663869667705666446865829596655620870058313130689660441435103542911299366739848678903489789674831565295178793387849183289986891734814057879018834311019993289730262150699375073636395655048646197262265683393544372593563435497641012549758526376175471953718473395833462214368086594616716311158871624931923876422453788882585009265985705217631759489031073341070601592325697040181098996247770554620075845202249476517028024329688826447830636146327801335186839172200827965404480999323223781197282311409991021178556283423105613935046522985151219684084408301935936766175142053067493134940139223782538323615426243568366610963962422454848541757871955141380952420636919320475326251336202060064348027340549458146652718967633499472519866207991298288590701142456877431790621979220117618919705354536141418079218071052692276306477311482598780060320434281469172619747202312021217344482987922947874457691677707916475143464313458550558081834947253303078249 11134986203847688439841691900698338898464691806170391055089723678911050980255816299061750904271720786915836832887556157678564915317602489747174375968094194632487730489433400542892284115461749461842751968600989118790364929060697047928482127988279608872306559269707828879603560950472109818565017921735245376057391699082747963045889730632626615686122271751485278715750335568148833804029603634758206378617838481055525235343690122633450525512015812991447718776098604997543696900453010582658164497620857564230919850206665700522179556905338420500903963167261670034599093674324312821377288932787948067515650057583387782768065107681557668946243299558736703868809898656449011356196507543087244493855065275858767627840007664329654884788538066030837501078944908337697144390714810505081512362803948332789273270174303136474113176825808254701634229146620227601730835361409528117268479162638550662216878310856900674181517685372966556259207424965178600854756930526594768827980067220183250322525269204379775860160872542248566612440028762399598541586852653220032945017792070114495955004928632902163948240264378690267788201571588316713950055277438527228732857331812982828281743801156172153304132920467233416758254632851062157158834076653745060908128433613379433186520521738597746975935477120610902636191658511896074658591014566364416847861336384642963267485261846146401773212562126585585534442370499132729695399404110451607123171645586886971956119537703869954939593558249276515256085415365280237507145947093761261540687183361645442995379651143346798650060087875838006867869788143620014107192981374605665418642653975869614438288957404932744028246762499996518787101218262883923716593122470439704151300498991169175952385350037020 89001706422003043677151094105835121429135957787170550288979541661712637401246370886919534172632187363715626493995024042653828206491090612142714153304101518287428673496644905685951663266425701581361596737501049590156971961059724613710716518771655110333683482534794940609505810669793251588687808019091968605425094509029142164629120738882156547865022774887779296660939400074062175313656886339043926167650654276398419439927073885301167380318409157011626453597458487739733205919703711147218881787584642128853397719654348285554531841222156631482410291854697881802207171968137850683784911677114019394829414522017236093182848013025644520005336035954445463388262464607479992493037779464952654133899169653919451140072950156779824513699441299035499286302145449595542615971698519929225357799889174316558736656043769112506087468906220917737620676474893830072556065947039651499330066259771130164397515641680156689256550497083518544551355032530224578364009257705281042388404905304458222405090340133450852265821529407239664831285421200663806568951331397979971349712846979061508061230463671767034487231755670779299798954350583403387995657659380555268616624307120784448767149303801363669769296032307109128109856682232072402428297364827845855517632748280197164144826590421648512491023286464193493399282297251789248302299899161983040949881822536859402269579262155982940130803730675789560853368286365757217008095081799730623033107999276705434870793930015541156274285944844819749250501020133288893685701222764885995496284211059782560398320992117699093667771076840505011234840644218284569832401395343689204025999108226508590833462098080778066125500690958159816215600937347446722623805436461669631480229001159317324561404914409938 711389063715425969382244501527063437342915068079091003778567994504408092998423448049594667423674729357831602959450244763290282586820242577303174716661949850619295210014436997466875522502365182307439754141148135300834123306156476494756871651828309540757113930679858276109726423474406336768170294849768695737854901758190329598287389499461584764290497001837740453279683945985999604811580676813967523207889267454156648468846180469056949975841509006483533571278914684581926892971243328177041620485837835158493668151466005056478811186207636320266192361352881341314208018358029086286074152751084060189994184357586976284457442190784071739977396152519357110305036645204450095521246546041128008345521374309214083659510275046858613004297702153532148854270801260272638610603846034296259765774451224338657213451644673365013565914710695349372335227963230072547356773667636518379248961579234107200074528892322949651075230459504760508682226252594218142280829080709409338740855637710735056327543494270064468236980079755862459442211268556393830533798718264510554570290154325937906637359788153271230462269641705934968003325491744089920581924539721278405857124373538206302285257403556350258881881611344761981521005340658504739282240502524965588032845470816805116329646430077354440275616597938072994943750370239263166819132737698796360109391831335877731457485242965337011236242017459056433701540822827992361296190797752142795190923137153102497473979970596057813444970536955564784010056655363926659553479773457926161274325149645638790892417953716895757090741794576961700414903735160532330284262655383748433861098579396160603140637679085742785291595276666704484536366209498772884752161467867740318495623407946662307168220161597552 5686122818963633878245622612785322303676025219015543546596766785756518288400959715781018842926009241087300641708063939624679783032084529408268785159300986449724048266448419667054559498019982313833996072890086194893833803524760983824995148335811437683912332626889715268794755070112500137882886235930128706171985656770996255593234456343607580929779806317944986258647183307529081822788444948637107736769670039418240748467299091044314886588970561712602627390729209431896367427363943369458213455011126462480549006462154709345595789172343375167648777320093708598267773342407877757833337870635516967467403751132315498676551541502081626744868033420329497688952490981760428258674588630013779052869699655864028018449991880422170332467823728944511194420311690776265495141339960156118299236844644198161571487270969634991620576539154570232183249644453736329692545004470356092929493375544222695144549902726177515462249876918019483469215354031616037832754483107678114828364642216674993684552602778122792517578222634703596052212148495636860719015663119056480401879767129614130291253948839702694717140576878225280051293780277005237295665111204575386549143603185267409645276361405401063890036373763310679840427921485015535670407346183875932549525550388198696023222000008931924244575474280278415301448284645524965271857876926301252106565656249415927106100334093491938015708947620359823570003572802529164872899122408593365748791002599187564340635343859752510317090200574456832975137396962857246857406308098169613322659855648255259228634334517453626863709024742233374721050603661880546749951134097100469806536760045422620406282309565211201602875107806229709022726438089763930204498169973791700860702140728393936696401358809847944 45449121001680915238061024245468137477671536821676290828700404691808914592000957468950310187067840371664565743557784868277771779061832703982870329504293468411048324374784113786348208401572226172601306755578943713715365511307597377256725670346628288613728787702449818640357408306900210931315416802521542170780296310092741140608758360583147885404607226370272498890924184782957147794590858751257162525513293283319056439240929380284501016274237477735045909878570137422292063073160678936201165598202778861323399909888244830827316574758032856538582727172458511221619813085910278514681226195704595738717893028997961140657718214259568188202993226928168486888738332338805569892668371070009458656839480702884902015759681876780557448458290256688638324756236944301877315158327391875270654590687611342352800701747223945155215792157573746616462541154648923520348018564342041096410681453235290115881897749516143425394530782206698935338277976134560838042091785557186313271931290411039460672436623427765260749500060607998123338789488574630170503769182374578075485088207961998496385027130953816474344131698592210480192627905860559574815826012926391293185429889561751602524412177934279861460855200334085829179136636569048168134809098952475180585942925441716837966805037614294155296935589513236744397821092303105438024399415236010391167784291475913329583081524333855828581520660432551617746396988714778754649372963193784522308231799836402027874067537449252629306684729236422102551606463630978146259980301708512641512142794175064294657211949042319166826715888057966857642803854022025937664239613682350959132676024933521270149551750478424157228179902449511224869867887130035365946540459015956797389774571704443394955325784401549800 363274522558544269231156390725957637215215157919659560235075023095998612871734550249096705922570757232047238644330347812570945344625142067197071567048595460634871421482148633270267807572258587056253546218590851472894040080577995090412735282280948561798923602706457027923236524158964535980187181951061784048191345233725061668302255117533427697024959907075537278781019508206835889389457333960788170959951439011552263583078191859299367166244690730777281938049548023149640832913889852187424354526837395452266139562838460882841115158108218236344032849407915529557177514019434320634572917439892919878983330313448724353516162680772686145100588712480797825982691248788534619440320753473342495725154588610065764270573713076741371362194147177091153108284744243415622821024088892704314024336905877641741153717979351425057552694968350497985848574727987333416477618584996127691909747457827666353913957609195174590118801705518177790766866601644328411067931902764925082933765581655330449846032078570184983824374391355665370115333632030606180290599452987662252537484424346955917220525086285509324497597601206066236378250536972100953307043467032226908299630127044799489235525324424964197564962496658655903438342787655625603214548378262507376793678341621456141019436816520086868250660327695548648452876812247069299545994484378338411726447939828007396203821388008597858376141937011774314331844977701452824377733969689976285707777996206146658236464222917889623254332361947720830815726036149501698341568045467354568960433383435299824542644050258128698832010706319277565593765035773082674911455083560778880845363430125271817367218780412965258009815270883385959531759228628482277032839872692150861793242345200859809231801173838324606 2903652185504011799572548397983886511484521061399776410580184983409729865493077318331063770629921636628570925562248371683380885836553178363883700042473618878407312392201780848800998962844156628487969812030587788090905842446613259409299013629557412758574261954075659691316180154121599538172496239829359114423711341411035226073231956250282822924347059141737458302545315583524480865847345527975247915228521692647475832321855997364660037723447486985452354804007808606544522307332907728548683348186552442829707392487957952460932951902082543676952864932240038727605072403434238521230034968612435684069701578705747863130714710906385083316551877207706613658628044033491530169021171715174456977300989128743303305470296735489034083780134331420102092584333328871711902127952128084449542807064264633139728555337416221861753291985453146507010036242417919150597413069148103849117944912664878205166622197119789397005401053252399421823542070280091054062129129094347326473372965979973980625379237622277440540791747664504786002953265298940867210603542674786696132080455076230466381345877800970287818068347180398031094908217933442265574656627205722848171882501494090322238739229274885188729078778195647282195933726335434027727601260693377836451085931095012434592837287175634924271352746828223482378640923130351223833643753863277834463416749754454528201935310192300868603638584602697615726224036024498471214601659356723208793684156466193178247628944940260997214472748541001205890244453581201873098463157708634506901904887194877785991081546067428516410101695908843365277750092109972845545626114712947522459926562113631222764599062092066281277615066361319652101089520546487488512004553943516298661255948472241410877497348931811100922 23208894018749878998559172801282490438765992372743377139631237556978198936412301520925061334613696566228576833922683965539137544135182845391657006084164616597540612405347052567137457339871564665280410532132455634902430641872810177117972772440603010276671971619046228700726648811998268793677020430238304603132981743926115209633411185688552949609807201752096566226523169344328363545475910239795353955406896443835884925954385379545773383473866561273494811878146052453991761487994586198125890819564392937333263511795591004215572613009848896330909826918574463943203672519374791171165674371541724000964138393973714444542517102957515532260821225015397770046193729846069584059638601216597758795308525892794673805801064871645495379611844233472200289106135733749062277918409447596225467312117976487941163635337493984891415351876380452798269917598978573149814844101203098921842912821609904649933386473073659995013726721922499560341356688268366182302698567586754989161375579869444504029415303284345628232300617743723360364178006561686433376051087098546936249417742288032229835562943843693714467862910609461215818387744308914151344490029326488573185535412317871211040687765255753942259265860764731170246105946050297334193847467396422539156426765925673602149305583205332808107827045329383713229620240841717118910187258267698931220726550190764135356091406813108691230121277712442542923167809786383765423744486938139667265868641047229971761988140961961588938963725769598577288693277443272286826696836554381484631974033317957023412256724803507851234179327733475569890226832036470558555949647944626629273694193138139712132280144914481774114372893314703498784220971192834090952192764725646549122213072859323960998952584357574848929 185508791944546264540967537307501165114982505531156200036359125346851427068088411318763308705598391167992563165869442230847511801659019918123141107166189316555772897122502613299977399887004100151328201917350301200902144244541658421814666241527040242888342858020643357326287794209041041735213928498915520380145858695911870854677363935114118368908377220490103284300392087576829126738793798628548949061886078644043337093451827050085262086724170240494960522803589018361460669308914791085797122582178084393096757849405740672193433204739868121230737012277230687896433745150668368226126982177304068031445313065254088841645593709276509132444069036574409101823877684980443191564622261389268559456054847813145334901283150413275857143068850754269893509963072842340668939352162979074063956855402013734681389173206808843435689351985537793199494636719561824061292278740250082132176999654179756457400375380330031602389687660269805940851638533036689528417175520772511009708888561473291720896798169058213526825334625271229386015954918060685582160055769587321388057511794259499713937114437527011546063967769016185861804219430200235663309973789114042509400114300225679713562792105277381391207440194549653254706131266656104178618175088461887835760546320022185464927988190526740325959211394444771525025655907402405054250534062104170301879923798838698631599387919324448596938564227172999464846089202794449118511447873263312564823296132859910347535387306324362602919489635201149924358668790453097011130037762573941234393485397380014445819379772541138262336443360093224705571150645249951694654754189830512111954556479166427502752785527900379196494549046003356398310154090782521371483104887200246736805109746389929977891255245515466912960 1482773270546536419055704992594423037801940808386710964447114926675555028627160349342605788424963633052329628907916372785012370230111791477434919045831228685852162929010556961156793554798772197878667288409817325889653313937986110072616612590533460073451387355296200929604729942273305231083620066873971397090817575235303397851934281670067829239091561541702542246162906612898366178533732266368376045510499597790355765117797987896201964895204497837019789238662435463860937557044701580146619522942550665768926067966682712735448660073156889625353491964319519324632873608931364100297174092455937608731168505449146757222993145445176910866160882484239755443169028973489705989011293349360007528769045649551520632481736434194406232078146425707944215952023765812341286291290935470444398648824136582573936560053985027775025917761937453252315073754469658021935435741093383831432848517727056830920216787952958692715107212023066374440228469670577786700320315692857893529965362237133397262905657077407739147477920249686843086063495587293157429099094709568892579451643006933310651030726284134513042781211915988953378638758856930689436224784926026547371273641008448275889005642848403109621724909964265338895177771482343889364013599204894466934591563121828862341818526109415169927681052576173659652487810400922640753802926251182902787769484883138288014870475930418258357331748206438898572490105139662749347646762097535755557572691744089353281661480474284607492142468849526145843891565851494048717878198530019701713736596551081329844442173576234735413933110314229805637053441300331696320058544283973733349016099157993667305834620186625795483643286370256728662136674562450663349910074158674364394067088298670482714087745154443267096494 11851824149427240691991517961183240604950983798487401923044710839248606254068488049221386294614499542204693385933173678640144285991897875383788153705137660589917196063317913942311523782630564928540201774337327133381596267699990900885191850800581393486582347316475226803594826990250306125425175671295268620765796311669671725384111999924680169918540048829626756798321798458546259605463703018986242093783028796767455795439807208578615549571644675260599491075249278819201735261230900688613856205035636891905207277123585899442978304612298976841510841388102710351199788321032538790265724146909207605502703811876281748302394791256601813541942162590204019918726430053507432604560059226058078090937802369834794243446625364773548369462709554199088007634913383141265390710519276542611527399254975320134144981462693657099218040391493524054963907791050849130431963273461883461385088501138904500031580652572754972503079257942458658232833123539404506605545355500805251091086704929656171615477406025589846629415405453736818565974350714019032841690377717983681862539886495837408399664804336852020301956146584910566018490000126903191920170691337561031297263369209961737065035277829760723593923077204452854852557198686897759140671572079021737479982050906413730279420036141522015072539342271115809740803031729594714646498869812045491478060225532015466111583784487768832085182473702055877524724732976823920919459670916685196455824054926711806111988202813669752668467256978511161010135636762283882598249982348547613809460243659240204211023522708076081902100366482253182807686390447133964753521357929950630750103826814576847257487990487535651272286827471066917633113934037988366279871181332509294737720940172169470882236961472307546503476 94731812893979502834590371093365408700694516093626286082235118802914818165791978206679771902653097705213122024255741846016178849482010442172604121103888894896245912106456230564948493904712272964080332796123708465873277716986654378904475772272357166961011908182803102340528182734935768428185638755432252223731692209441502354578699872056447825850844956404337406302041798505581351600231084404066362718848335292529277477512614007493303975152687535630450600919306574647024107899161551456353652580600912788428526124619826717557693347045121132506731497682477488717502147569827776903465920878751911497092018854560680737050468132071471778799273485065462320434122822442044524536240974688360535814778662680189724184153831286701112221566227981754665047362518400065274362946985154192223210026997520763264837682706646598990632305169806363327324617789804164982845922864393783553036374863034187411917824954868534711127441166069237733899629005731887756627035601832136005289609083600181430204492861245030378578852842189840627290490756446134710278896960595861626666364448338440850390502500963529522368707152705603376672825485806794604125050859730567342411401512448120523065635755600723049428664832163264997577278191597668162070248775960236218599750054811518674388377755122766879708418423475247223940981805814274647937044731439010366479277889867904150244749626066254027738857476398290060617732184984128052388039828834985128700117444565166399628553542803181670465240907396673025345647957114062662739324315431432689129327588020410876078528503855631173528886610689364906784219209760451534061633239540860816623845985676582312227713652985404939779795464457479352348950821672121228726752796771993776903254639082649018714074402193142785478818 757193185506088095919383552204989374245368142020212049747971648679713042694237198895879017831120482491672333778684186230324136233407474647839888390330782557435891392588114566308667087145330086319094032021127641486563972426937238274747711330948911697181923827298037653537855776330515154935449225534007133070328728450661104700867879092964505562705248925397886425825974505701446606433459981415073157632121895423131610662069896713305844965981532435083344971065563514767440204852306808409094461108677205206760188032822350223886221525220164175930047859307165147965536191406334546298815826458779881094891699136543840486178026935337891504111772302635851196881042261589131730631870518916144429082465369251265127921906276697216986004703679440430432486981641184152765658012253999681943206376590830929892985838602257296384135810631822205796770088993975628832742331070484009508769375381674749075479771989019244233407481935498453536056152936042660797684526629495020316213216405237916063010740708940671550788904530951260597316073198802996428233232646716112506725942255310561163228878009062169852756360457362423740026170124291962620977330334416896056570012867416371009459352459743426267625095207133134612008139152096758625999194781297686052138112574379912957526285695389151750393205160640887679492365434876321697264874947348634905721507741513995540418427898129642433706775122765817783771478809946608402923206548109774751000796493114524675526632235285703703268267464456353438696132020439936189045714914849210782490409949536219806774631412960865786993269858486326404489356886464690971121148338320515543354357819509674883153710206439602203179311256918506057686284573381606573348478642653114600740774048168683283844448659911312023430324 6052262326809837043153889997150045067525478458810878397494399579804881742560046256986231695788435841728036537958922584052068212932048092804756266591681783634847639827290785209567988244246493779148067532964383685984152408361767365639076572911583539258483938869315327885750297713902922672867001133978707773057622766692272704213372003949548362337282337610863015127850758774103032115453936659497860233406240220735594480224278091919637569693078525561073907844973189753296555710883058494041091133134704179688212254218347704612120063401977193099977665278522739522882593610316059960463701716128223263483053927553436229422210195193673410582165673942064927333907993956205302072719046030185734136334176465348619015598333905738878161911071636952296446563004209148914667189324387754169196830560030066497321117401886924393933569536600922158965278668663337730428883087881322079814038732019747190984318968537837986403882459506397478274157331391327513186867431659972180569714329463411661756366572837209170151344489413767951993767644441211896393699472510003134773133906888715432381491656250983942435190620889366096373949367292197792725048526655490964553502160035885503561354290277565274651892914612596157866212025610573300104186821070732348534420450984826649559126054400510138145151822198260811726631425427901324017989574657028919206117291802940907219891538059342913739040607408477562601688324128847758643941852162605254524820280500995120030670986227275330814327014646689889162613815354030527284231409233237051221611455474377443500905931644429815422719622879747352491818784383567987748718490826113872926078712678803667367612878027811074168680267955324568798220625674796361129884588013634624236639995588462728810724582412133735134862938 48375892314670346092051356094827954037716766607108884340294107635517041790024999581795828397378677248652450692354753764733574810590072312486521040288901991243238330613183577931385725190192143966806482039141120998278480391976436946651725193185135391331101323181684478206263572314127077758422593970038882590659209400743322739392272084321219017062543156138939999548163282129624155539611178743411507598745831680705137334358274269883623457349690537156566759799880389960727254676722136318630406973734217926196612776174025299452335549851951740476417453045110116087198064236353790312346845812281209315329445211809696920097604451060872100208943285251846793416234097847698880840179386543432686180233802280112316805768605758814683893936062827372654814422880515164116496661568151797827312056244044761347359005862469762378596499912472994816281382035307946753917011315366452155452164097410363117655255083806438151925523513613601662806279510369262571602797919393068141180323149975635979372160021379383034817495004630372694527560685456361552939690879305434299967323819796521569521355899687338613257676134107560094871645332862145894958694105189940646878766560985622586005604965507892699618062406933493230014271199984578657499336378435830768045097728299438716294598559084391105369034516026048771010124707632437554860974252994555703699761977687202407103969752852163060754219963151918647616697985797674781541203247664423589644612982548245103546198681472123079197817623341073150582411037111555486335660533790914054223371272170299673429080176498179287606249056929978983676816650960751970783409437070748474991162345568284115088313372245022683591086905308217481542405908519541390754094645159497007684029201138752619920316265966854712307001474 386669958879414216986700880945503467063824871119410238311267670250405050391546797658315599358423768859732867251714842114954981993678698788869913167906180293232673642069044019903275270125932787399704700881663575106668435855758717668098532764582892920656067911974655506985372940045363373259259739419218302400705732001258181718634136807032276083819762398915452589090656504792589594058661386401086139143025100667831491893621902282967163425882840276536743888281343999631980180063951254635437228650263810823062132469743721261667187143469433120943168903156482809792442650638746400035895623926450106385106579364847501181010604739193390088347412651679469135924007136684237019914809383388328806668524038483102473121078016368700896331209579836207150623122896671869506336776809991875500423954099611533352716622797911259553593721781266258630944634989996237829161988388262651636764211518868191506787829071707393984003926358479244684192770133283410824745166459201073983779962680481538700754436833428686895063631120821880119068745891967355276941659746225726225100579430509668262117302294431775864502561866752166647629661362595982396329975922073895672458171484129675606183155415991468440795482422544142496496721188610856568721946408188787086569129021119281438560037998938037288799236251833594211217685395743333468575450634994967525641229973352037268619436109731313913408970225531531624312134886242624870875148039884793826553893098296672902882264816638304072044682451060393802268159973964016406239418823846663701281648529654965545858245590313652435843795970724385666716952026174726153930163805718389388281397213478445618850756659058668699702236420766144644534927244689557880779583126856078002413654069526683995966362198500918144038491187 3090665992799096568242112327763878284963217782457408233074511502381182741155890438453869285640920895743115070108767834622176757180596881796293827627859891229530139752944305956128870815680854008055624472274965318507938782315996691642522957881509585605485349156045332988054368514724343488178233010580273204930745542484302849204665524265485928899525376506998737159032053382821919259236218617098090950342269415703991984569134457393068032382985741214234970621752841388814513829423392869336995089337204816230039580677015114511750678778084912484253982821269016127882551163124557551185912966673008607248018867800978518169639634186320215105993123372207538148683330109229653447920616606671937294479322637264548166578126033316618160506727396129184133869229181023882280487530887356334725747963277174608119434453406249841932873008425771214463829868132230192161196741583545245942072322549536536138191852128025584357198977326826707223950036577535424861387802437102690596019572357159007328449230833260453809825694002682554346321427825219701014676381010852241223245751764554934708169584493368306844381712426300019188980255238895879605939276794708265087146109585325654235601700178995161735840238212734127735656538207154016045555951125741505717559533533661377095992543024441234464580195933493823470003731981274168210229904624713766424640038159508899712664514778980795100658910085341794188840999668706328307575983578726356450441502463967667880861270826034312193536901677709743805006133106594910687608382954216791585568808726942845084625424589499110738734762701853436265120601250387284233211612389784913217332046419723454124965577173185141180455657769630561352359058253174738723847568210204763697182460002846101170119826415019436277353472408 24703808529848550051586300206848266960679229390820290883696134711326528410970994948372211206347306919031272970900125511826079589001746191994847415105596205786179544710552847680853524962946504038177399015830095988102649232047166063758223276700973388773148891047799364216572474468597628055244942669291002470395027372542926512666055045787456267221370547682508462044732496167742425721022592257586178235433541496959639210175606056528418256070276769094359107641991452409712478959476497011425763469030396916608910629832881368794690352322672326800495127179411772311295728452118630332464764174936977272078232010559761542238022711239931117854928512883298619455472901970811557461414024245678190433700328059387175257008124978182119357265285805136895268982225196670037739158486266033811524418998556101025016230785583612325501853993449057457408084743560146269414315951462473879639395043828167035817512611390844888067759821118909564957965586912084216631105921578376129130195586491784372196512294867790550998840833085170521150184579690995494661934817933656877435198565881749191913226545676329395336211932011595303823680658452310801798475648081712919221194081520827901355727125354285704132922147805738158284401714446924462497552035657780923170315861607020771670731491510977969929275720264914696799561825388088197937125186103957430717949282107164230120615594397245634183192483847963664618629202915051989240751388492678991872814723572994403625204053779201192463983914746764807297846798328209788046201496505002433155918473645613806099214054841724345450599809292818286152686594109553121692786762976340442085232097901087855564920869068056712421137532162480712516827905780898524766834903004875583168731372722852300666114845377118583275579354143 197458552585573710212985860358780842362742274185119342399793737586905845064279915834362174897900418040897229801900338039731934104452659854656472736153982765484406293863314056390984847369121686579985419139204054517022565669839163348078587699179323065940414300264198378083117990574123591474993651919535308431902126903536606005481964260608364911434420585046495717367999114196728347448963919379156891730282982051062877852896063153899254592881639202580632112944600518133367364651033754837051964862388705140920622694908816205899507321089988754584281423791721199530630753865184671589449265719499348246581155281803171915664616603302375500057220455970248826031701554257581464573637920150181449039593049528652063639935724300306682998544148526332318866525036882046417190898998169618742351120044108221929869622895782416121039624351336289362500870584301635785516355852800824005331046516680620987810752326658385998607430715266209969949985333435595239120618077628365263075225263922035584064056855401302249700641291479411143511251973411532603461755645192749324763362140578181361539871682576605722346710858104086798422150060012827320357322259386995177023373874067662152586939808080018420645646108660103654657980688139498491563353459504200888032800188808379848303087019775836067692946274080676758408571563739197777476169438695328450352391732478707616095107678054938008916105971456151454729928297700008006816107031407312914240432698936232146250144537789453006421061975515923070995291390153419635256970848871781629665869173619734791412266172564340326585944736499247825144861137791986638461362863315149775964851958106037633316705172341380519555909185570682729823278111243755713226204479746793161081077640086750504065213647034267433672022691332 1578295008967938983188828695719590277721683561612545725509089111306450137222884431817633745542790360668455842021194111701065043979887568942754025392077923468092333361558802620447402668556322144251382466810373065446625721916099316969666892277223112611101918800733669875712857450983282841311136968233167689906335439070364942663767592033449182895381451590353832467187773354422280808907291059308051611326965764123372208982805339707088347956963389047089031081271072680913667389654536830018815229857248894041008767725955477601709724116144979492009194417533521058261398011412081921835851574257585545551771159037656510758011859324937948621230536251175731218845857672402955954613911264417545716726768796905576652305226594356162003985622242174901799307694553691907331534973191275481160713818465599455732817781801904123481609704278013079909845357457866382131839167684238883630018740128835068995340488530648813490959046863310984440886962201457507547685307381559384996985695713119699319475918170356204474769703842254089992093504454667604379186762184797437021165392047865472173614566000812855992662745361644344669973383099906696265663986342766073337387404706984072899422745101129498434300735208146775262063851030870468755068153555396475194449230203326122597108877110276079156182111647701891609306036835590260556241128091314825725209923977038998292653559928126627550849301698219775789208700120042269495859901695358625750027199966449876226725528348592955567832394574658837554073616596420500214505657846482761309326979826158756848722976450810106590635587564499400755459244269340802503215034699238633061493432023584084152942843093050298358295793637093560886231364244637932876687198764327285985682477423674528637894795479242428955463545838253 12615388056809896670257828797164760974336710150511659626482651709725793296713062845053175715687348275708738387678727940012302120659098645192589481828721850603182588414888460843567737425868546508314722976717573978282359088468525785488833925845614185578127303673065413501190286762692893368426945671705323384350601537194358745894520017555786038388548865262473245795478696671815937525125350785568813230553305660397328189621255884767555229285336661396639773522612605087855236257096337399414649160058238206909792552718245014471985848884902638031338102074013004848974032502219878806480150029960495245242236995618549015311362647255528909429024231504596414490705397917881632968955623942389081343701244733177346564729168353299502691493153668050206005978678413213181088528254623854231191035164380788872178412664035014630095138853662418695838122382735011059179994675725225786097137623913937984065431287810257870347818449172985447985926667157984635704471913530806850792231052406740189947512856235558123007789136154146624738210566164211778743460398633900586604533225266150735892285223183274647987243410608576295876071302616358171877843817508836546923869317934689867217826703906035257916708853962078516915243600847960724818885590891701240290970114708737504838208482872586428393487436753123567982330129560071392535163223407596477158056411966432834112812677570547165944613556705382455925984941574119459072418373352636612041191225322360596888869893970252339368947539030095751364224991357856731529193303722783084795012441932435981492746450788439832370463968884538510261346953581685746487100196865489373203739978806193777322235327014312904655870012741179469499649295157340291882657315830835398444193571219499899600970541075204351573454005241232 100835450331793117200935222905664861933704951586552747053377579733706446363029785452276326006734648930647699994902887027165197022040540110006664799448869538042541703719613411418450065240862872573376057064976118236569004888906755356952766041028100571958075700059650487011127476255038363390063173237483189712649982615499321791927124377546566411763906625660252921958961645514445034633279022508681103825204273108869397199174762721161103403257620783105135806432234608161978528012432156930679941819322074055975099990589925021889919730434750156581739295434745755857357252258552092702774545601851228028304138636051909709079899654561544499273246929037540644456897899958102360612882189474162619953406867178958831676230023615607895920931861332918886602095663583890409782430719816844578050589121600606924792168673852770049986133537232791405100447570180881339996649341426603527349387035270851982057235716486639760924098735592246097099537465004974971269330235756732825464148903150345060656179717456744097125650886230166466785114478430941123786298271136334705155793018928384783104701857224736317852195788234163768529481525350137875418053129710309221921846360167587900716422708239533240941472596668983098651785101996990633166337486108885928535577516338489345496178565476649613907012459651198929996637793694739218188485788377332472471565634384229994514320815394936546653169846878768493336781826142151367435946168745782653209054576787952316929135292142135896663799824224819132811587233294293344784524253569698298404615321243496543582995349923642641332105939421481557516220768172901444587350024035229446515045221811203878901930076010903720675459799257798463503190379706937410886741253024041272987251092657112544829529847756391202975047218210293 805983343782752659231102811452295660062460137133555526924690492484672946412770860373130093242623730183284092312137916433983805390891573380935755863661122067169323798229218680474778393692908420130550254763003892186903579995327690568058037301251149519991116951027179379788342873350774520987005199593202171859404477631744422182503617691418504820380381597150925117043616266400923277004506469547648914504353031003067761250310028139345551670188664667769881421002775926352196489542371660996317117219544415568089830223305964664347551324618017400624396166815244364997702073389407868967103284389855102607640945634680441008016450220423027791490391901576870349637835914759226513673869643391418658649334659182489555000057841505932214438875252925902389129804308697053375890882251933860249432726000255542482293031576619428161180181318862957561186091542923561394527210546684867604726965558368107781647674690271170003867231700316384971590366497703699272745267284680760871791518553623803326638860124472005029969641242177645803821565288385002919245093220325060456180122577949085282368576904857836660722925308444549359914031168677961548325016639451222124162348588802412759453312785135342517011110010959521886403245093459469042322364413987866360534423160492073688971084208891073071575397222161686004599727712631067879200417669727796493787881488415350872223410572873177296359205461987078385318734080859386692526112162053654808353003598144188250915936961773671089390464000470345762519471604982258169915872943562713056795116597485597737519990751403488542797100107251059791490406538944737094684156623451989460304954450892333876846181237627897632505440801284017103273217748420041031713440118545095107769818289536683077831605065001783387943610332966486 6442272457289763993118530989368148764589374377342359974827704098473180218967584213766577750551789122966282705886348904278851254919367060373938470151147770864593272602129398469518143755199264941853522938915237580912357258782704045487996313946670380166123011534788517975982685343105541671982483057080775977288031734158270824778869411002391348575147933963334155982555175729065839603872722160736518447842980197405057498422187780937629913405203083109243623305009818945786896418932829564489393804787851556717557261274708427962195242099517928392629733235887555233171988337108108129470467719420195617926968957454293869360306482071906801146182874782887455344056405204891804156429919174226592595385597837519214185309099615180733935973950510217689721316490921961272415827244083679172686937253822768171795563411331801054442127418869375247775868039394331050044680119881023323682104431154082045375238428805474421613003653279617124567734266413456764634184351683047490975695426756039486143257791439132055218533483182039214920691882710865405713595294705833173746712159915620591297537904751231935682402994022909864095643477613779878517783170754194780191840418533042003696701017821666240668727721456871970732538366190580416054606959818737811696946855604353551845048900282072256329200812879206022113536993406105975764849141956186648311013815433186188933697954713604290162171216254099446992478658527673119770178330472970368840775854425168169512968077487993462898274895326701856219092541558682874515082108004240133618692691788787729906416827514908152942627930695914358421182970480404138480880868109516281152103055160014329284211110563635776331564906795749906442575113953413488559623002287267649263878661721683723482631612921709962579679261058982314 51493487419803503419734845100335457246361342132760516514021934644861110870587847330820179142972693601132051587054075905716467853298080472160526292547880996943433969360557736626594132513636468338587200497481769105915106580688875552346972559769646855983972039810013125719581834934026788878931414445122026265414173651194885636775109870125176951256203163997132233265121823662070736003190943517179885195833157263125648563315074884594552223586540149669896455852715378703805943422216252226920321191649487797685046537108871065916305031509368722617652649310391571046662918833840948582592944734691233077501935333494681785759192884505592775877545635260152724507197513074602342040894617224117771312511541048143604072847035574022808089425172123652786118225294595500820766293348592423694722847817007603004330667340314277053063041686555246479498677703912490733375426629826999389184830666985465112653989874082550529502587029047011509697015508532542046652414372743971620688544028101532055503877033264760690811662692183933779303051660035316471909781228870087292967554046232603354319356530094701913642829064868445892895738758282908806168035230042231544309326707242329163405495304306296369966466637049933657945451526169304166818431182642724339969903531944002528815692245510247747745175082781780400025480848270788745392797528845586340248955042460791480622077598462749008796764674758054482195067345581216161624611899925872289646442053685707069663083684092101023692538497303677970679652037136440160756273791089977433077747344009187447384917052319850923893600859554773035205304457593205013213878740967624358167104507172742745555963251303122077253189397351804776513576035170543712183764338932428849796953760195015607030503498591453517118842421506518128 411590857344801631922494254217356290079416566393072065288946768616816739444763568440866193126782032358848871589376027968531438862855872098167109537376941225351900952205437531081993557987973630108867357865817399289191077691933258216998813891868874483503766686180921839964627550062450076058465001446983150595140338831368371998526992917933603776971660218650712830934605588908253830246194462871904487198686475767762164624855360385500019335789518899033740613998800786703470197114965062795404482371480373768908682085376238820078608345246805613790497334831130291434318110379046918179631041615288998641947199493222429363708803037644433034551759058269463009253084158553204955169209523336519662212310277578631250485786657992708769163166373549155247967715182101255791252170607893227627821067689566258106127749230219397332267257708245390674855181043357706870797839581819889934372809956776957739759311456162638886277576735948882548238129096510841189406940949949503938118394793566776884988985379333340259380530908149382072460199892857971179764284326808197757517531704403278929075941363872791510122689339138864229668111955719096958741074556757109396685223451447595017566206801573591889555592913615399938048965821744542061714800502398415654159747533866718158632874784921804152059381918377983245610901429846496121720628866851121962499125020295210128637191893219232760210687269793195388468588098925886648348824664658967980986247806908249504009618144876558285286468432186544783928852691865909817277169598644003100304931740513173286241925824798504857987925090257648722273403652493373991741288058639305863526185219853681074609349470623534746899717300105130927657261353744809547368615519363310349328734384512128153193826589297038410802433378554949186 3289874482242782778713446752109298926166153604490921550131593474738385482798061812487021042180271456318314454187332109748596603769863265007096691694688519993322191604571432283440249789891572964420409918722664479439145814997161194525438827578059077774787808407612202679196130802997939199921691759813529848726031951718914950395301929897394577172443251801681277475699100402087373257925142294288287836977612168748068784285749932099321036481037002572350577719414853681850748279261022298337920052949274455076567098603919454759307105239087468595803883596718013954983546718041761565976229566885363258536829765604131990520024870117658429006621600273213684313064144445114124563955305096984485333399130272286436282254689488593148606639888772421309564063453632808147639637175128095195061849757017358573860303502861665688870707289901661562716348301929813684854117058590146734306642859696941038611713603431942515013298956468244202679834373265418329170719721972844562173181891240121000614521991516533852571002810822112177109774061961225601875897971433717708575973543422262160066580939219095705992368963081771150181654070265896720848012932440278183143393197774656771178767785087201197760650081444029473767378365686389882705413742189603670441445073126773597690762729494781556654215114263625286886416540679491156069934599733366169343389566653511691870300488969788487956832078237486865437509017210290720799530111661926167236228923649138922770394947923704932799161968068448099951462572179546447898739635467704348820127725763431001112945092082072048430698971443053485452053301072989567579458222392743432592455901311599277778817044465961362483041150564993747269653895058761863874201177146766007580751982041776989570952955229856507986709283433329709334 26296208462210643430820000092771610197822769587717773177413677541984218584730349132900712583416293322154274807569683862243302828047435151957340008177952916733175572160297815803672092687478800039841200677619187210832605675569505205306158239294001830124723640326363517377752539406535665680090304006084947990184283570827100235898153303450848703389707608304359059004783754784703168970716571966415419210548118674409204084736533500627076372032434365246372741184070007768569037219916595129502044871397437357495127851538200912278109619028488879016904388757160807985272615359051680886498695290677428053412036482018754271661443382055748882202422323398641497424407642518598126078299259250608133079276230933483553496577969531795104917738280657763735843756897298852423813013327810355301111622567336284916629444044064780384757287253493679685131413515277689776332581480483743214172432818036743608677871849875789962024670189892238549643590466624212183533893441366797954457147133124932490225596524964999111430063064661412700079666169961006902176016590188582583376210460945700557207983426435929094203660028570024802783715063667956212616155437180231063301039434857023802177936498119474455731699190520366092468803223630333629994648004602090425945128675633001475999438764709440497006245722883990091216664210795721582669761438113176126203590250167258035750157682256816332593755643751247399740626635346886774101160544756002688535692953820398078942346913484817193696311288397607260472348615208730478027310757749376572325358874026907105424603436701834039762606092821618290000663071962383315614747179607462562850810480633557037145598754603256262444679805554355772257524443459949356874407657209100392594797586065157849535789649821035345859835920988528397472 210187620981320895955449547280991935790048815654821799556135109137280605991601795363369033893488484245328969640198090478976846286586924974944228400200257329143200434634391706005338404551303367068121508729201447182712471328112667834735838600726386219011305113079148868816948051683254795224892405963230815786113497977467471505901424605284709307438927168477497608330415591173400715893261444368557193865409296879175903467000103946831678505549781238961263158311385389377913454053515194552289554639050693267746057396765347996579029602036549683993645389717408090798263784905195468130644780627645638176609264590519876439567413307625781672550135513015407002045522584088880379220259774860679586617152049525412770401910754105497077554115431605131035528476275520242716205464679440244891402060962426160424938444880875175382903156990374013350741350514082820747634822964499673929726642263703055194681327610029432634198821820642799284994771987327549853136099807837655932713902631902722694199233468287835959173913762733053605567070185259981100370674851096215823595154502984305073203028883983844648050787547407793787662061568065201643691293986173433225011943237998471296231297280844744724739388436683249162187240512839141940478432149182519233300316181972927558329714415276175751340455895134499781763771165791537393717214055920556450506905506100166014809793207379856169802064287847458202666932877749102486582309107153383139819914176553099822977013685714600616916840992176298439731966227936034982599648610246842871321947081245224844038713325612141053621388803714264356985388783664480805089718134124462152724576935334188865307485212859558109052595159539128328677618784866061179140475956081258750821385803406562184497836781898316559101172845884820921260 1680046609871628104779653195444918655080298641340333201560569121062181358391933232896059727683062536516482441161442407132166901468601609747541470539853230252950128376121143196419889719805841523108081185108107756825418161289510985074092000513833323852337330769811380534573916242141411510745985775625230216143705209118412748249677538427278849434344997794219300232172339608331279788763117612544343600246415391576558583344015576300068270679586781469170764802157751770287314186638814043009904540626821248549768604839598694024013660247797540564564056269369695486901790684506126249485639414814248156581203803181023882246199699973307563525570934547604545961094995928563630330466344146389567081391020451247838070288331723626692927749704742701319139667317820884584862513353490931429812555325146043787846722113105191663474657027819021453913914605195634195891583944470445824751953785609729433277278136086020195150987666703137047204714261769173218364071388769419487591200315605368644697423845551574997897386765031528244652037908175179615630054558345096932611162073491188291398488391207697045288884790844692221301488024450204899735865381550305619144363674926953518785971554457394084653864969346849361318885232465154910016509615887882195679982249205500828010773089524046274549512341220195916454827219565804463227778199515587672430515895960584226836544516365471011428833279040023138792019765210849117580893353307000341005187838995734163393250345316135797391215078961905192296385115430552094203063409648422804724373595673479280651583049583472322470800795855774556279832663335805396670897392284808400770924638883854672834503596623945738282769708878431356169504719055861729644003733458505630301863265185634850255549468311991007319700799435804538724416 13428754110480294130444205209832381273748969145103913384933376365362373662007061983159410328490751611408037796634234452489288185466852967121624150129248367664174358333057817386224903284468390414317343025019444320036896524634315141841171350147124059042687882620788102490761691172361939812221970809085413284406809710221766623693514718531601689338499316181972805084753538169142945335012394237437006936710272848682024056023907592943652055870167493208072690264546532951592327769498758884225395736393270804642353718235338734870153554884658106318054767115784914395553630918589805666256693053675535475009058935206664119478110759849397215918449801289340002698192441056984892395057371871070506832699868459270579184341112780835056273249534585209415864427202088650148666675087565851465178992266165936278266010358546467717081823429287651901981006257445027363364680184871113602059033190197352221589812346644287967772384837951273764913599098017153878569491447077768830494106363560943673596523018815826132452571768705929842809823038666858913633609176803567717749227191180652603608289144745682961684690137670028559980636466134783528211919045206691040022105864353630189011780097178085369036395935589944670426332723333590657542252375777657821798926020378888125985218313797880856175411309138371600859956564597504491630917501879108382512890047813564698281336205684227260556082022808197578543024307265148077518488664869643673942688433099669946716609905572672299850144677795797296578974553344337783999089319584275663506398313497512779534302781466624058242256904100854631575965359292766938791558342206814358499020146366429945294343137915895705326664900919018338887449354904075281872285884439375065541595237441126088809618681755011070190046000330580317321072 107337211253788543499472294700136280034046673919262240191960955220984990407962158740274082388417603818771431143660124920261554159988966228213877811094111836839288663354244530421312136880877325834224469768040300315422986712185942962341254824166238672315003911730548900858979314832419735217866100883672523755962229170507841370610308414121595710002647258140935898460053887964607016961114532265721183392238762650482536526080158018560174744199564418739674263461312073276157590879864942989433872088601332085872006761417710142378988268482649399379428104943713325599441742075657572542029438080765695451626470152235329247742347590056085614115489590011111507575090415026198750866781736097521179599970730651326663859620244963522426338722665879624547520975151426932996262565494427994045296865516421228429325080899201802363518943702112235874474029390350157259334669026922616985435766079858014686640575021208406078151678494289354563840792359579103860196470445948565565800679039788193810859904620267486851668393502783444698524178178997614796740567374789506154800233689641814562849794409924367266367147910212322197432399611188394123727846425598907474423827841594720716014647354758915056916998932596072798006423551311277446714961965321526963588111607290530164665348234405869230981504291547921533519864772598969180034084633449046252405219186262597263140961151850882069906054407882331267992188900254871520203986538665086160060747588026893460555893730043932013398492721447821517127158688960339224123835087821606495528667826051536298012226222548842174411012214423879283469646388835504716780647964579516353918217134433029134957324660995417146054203335749266848979866731970495054714051995704685966017911888185304125440334850415611282202000026636283525494075 857956143179141851489884833437133907716841937235654277854702103565371399140456417453112055379209754154183335209006368382686672120215105352518710080932541698619658781506252217245674085572785251090379471134759689512716012846409672557434897612775791071278736543955535008144047247818591688653282270628548691448248955324755805759237269910075328845713046672775918635696320159481217396583100363487813015010077649062735275960242176589043439217946353600802293428888778400705468865086193643613128475701081812063735143036050300301684251158063055991876728331131312043268795134033404146156542019846638053335599426035868229177494037241691344656880976020539646802159069688196102964548757987059175816801237253613047835544050108775648617090072333081153145787977328995705888097830734638011443806443127378392638326967537838676484134935741054525351932314762999930389926021467534024028708428229022312899519154766846938532840740419583104646608847597955664502114001118117592807107250058920249450117853680927799467220805520213072574011740770461712908030813337228209860978244289833714113128714189330808918802187856467420376119258701951404714424029245693201940390783537791326756303037483163489978592354659530012571827882433535543257065098083309287413337469096465464191458810355061108815944760318523042756309135497132266465847224886995671447361186926297228156352399615473852286723828201743000887739626637355224997534419519831845015108465471990662455231783083008154635954692382995140176830765992825977918952823754731693500252168123786943061729044595691547177898519651875644830252710677785297688519872796754269156101558956680379469141834922717879058109970649092788382184918385770515881189204561371654650035011627182256559043155154472500507083986992922491542309684 6857724964544980436227795075716373122466280229344010714652917884096371765585604373866010301863493380828249242607649996101047982537143104633892469728669056216564154161703275337438785213712355009375561440603493267213863216849513373137230268956531090523270292363149216969265071742982538639793633915948566215203551840801082933161321004729684748563250467711190418801773762497314277026239549797085239919989803071782866891771443740445101748532764474982808407265806780798766832999739377388420393121303057746571822854287077606308696365660806105046861000958981127802614913812006402529205200957929471190925905190117843579526744492803378861534164329944796376598458713653762669498876391913006403213342300502538598509053453514790825360228346564179224149214397261548657003465801700569419129719387569835184068769727266917422743251996675981740329971258448781497401722589100168692928401498725743427142362786028818899769967366164477472352553151634245716837834885962017905994481825446186389217838624515772855615226509350904032346139308939543350134690435935417344993113607006750205009417101396101031350991218598557701073809042889633236252638496655476390286198546676692216572428769213628123454988539594130977771052694778646202022185126003541090859283205367101932790637263355871762390664301183904320253504237411371962040498622288069388267069499440914886417237982464637771605832493103620357236006459128159103311318410241027249849050708586506236270664167787680582622528072243787097926885312690016545374072083237740147859800055496528820878325991326745016910537299720621713456717603710942557323322972937696976782005204067267999683454680922426629293454156622549992774565128476976520142984618434192434388441607191711400911380465651201361653895375066917363567199520 54814471696181974116791700584987634096396574132468914567368090857854833298526333438927997618645821431210861029694627329849696940319975845905726331215263318162645739284760757314773586892668354474288460779450380624945578403132613900630504702024208914085480389331985855045047345269030747106194601208617754494950589329647380748456136590817257248098700987278025961432047355967421209710921006305889211419572203116553289370662323767518799685127310949129201489732686376336884375502242055677467425449254567090215040296869643010778799586267870407822379665589865306501421907295420214681007550342083735428071483744803359039364223897725943774548101288898219173417284484805385272267637156815126668835462582757350070387844696142655201308860948894357224635450798030812767426867434601604699497850835604481658220006915044711547318049174026731640837823493964450899397495688005831778144293679856212627946761571505709863851620979166801211920707372829503547371753380276439128768955537650181279662081586993804524283467916976852441982365959926787149669988599255195166274395406495833196637206035320165155741480590170528943344468510234361569838766099543649328873180365882378889365128784815322852759274430864992020342734912763830987505090172367726869374107864818114065818859237487304586358363582010667025587375570447160992375892325705711923759221534113031496330475319558607069338966776138143909753991961959844723033007366069380643728363383784917877176221971126300566603687857766179936668056362760588646334475889639379233548254669282930471441460791728174639410369250535278007157147478671370668698758036777614955922429744691483039763966287439525007233424541517921852979023409894400232989118272770122940445828687980140166807774535906117794194069588733615731942988720 438137671830319600460589174794342647390006196782097700949602705864211738348826067046651562574497011781397853127791265511622215022037715403387634257636722846255299057116663976358429988445477734880889637738624783118895351874392056569974871158729160872563559798330622614937164408703164354818456912545440804402276335901263285394588445568671499720271772992298068527757734159557942740115101777671913344222480116992834941423111919937080804711233538378674042470363745452160596916362562638797950319267834894619009331190453760433384822005752188941400983706775700929801440429768183693243962477533191005619561250866782522892210551937180357903736304660324230919215068018383685965724739610625100427631206627262820111291509022166584341178084371549800164936311671989125702978077168134807163814964431748758944286218191277044696686248673253267019918331072650046789154089704797173187874423177797442505400737457034388216605981624906533418414547381264195703154196289322485703599827669860781581797996720426981444719498321016563129120342117879971026089328812510927119216377312389291313954951162257127097777740978240725892580332980101603188308656796493008245133970199296719970647738817487931862375168885073316908307407301055330086163207939788690436811666757839654031456363901725309224759103912141931463849414942948160848239299911391519739052090756206473139443057141564939190271033375350387182135515022480855632848351545915631011368794971389353505621195116527344250517018006708835425679912706999020936691138342256987168075269587609272992801307805656609809542127100219914495709246401436062020805362967375747978527202405099443486687479481913526552257969423668176878841468724494314029305855512329172303007826404587375257261336091089416018411362116589816797801088592 3502080732181881912341826346190007434919811340379099147487875991067259175453569765455564858094653422703984190974832663607406291155408189640878658939803827827392426447681802657165689793141756114613012965069638417706918291077855233272281883796134569780605285897171029565962924354221819262509251451591142515878689408970632873188319634572148012861556327710411838730233132805260279838945217485045205946274250224961460648273109107328980056350002021430718943294942102994375594816092102002952881918233304012768785787459467197284142412073792519159189116161374274645152494237931727776368945849478225525480157152818029818256070140740784277061109697391345409637751909339168710879165229860220812010044971866097339086941909212616924666253258911998124858275898154415822237333610788225556978875246447735225379058767596242449931172760465971990139766400682584556204126983521422920002782371005613139883127732254818078539550961894133733670323604350722744780392666397610122898083872285177884227387383849431933064915159790807616239632991475689033970439146412792747501712902623431607116766046364839795328777917244145472873076052939230666301958631604720726098126347683166275915755380107346894191371623009668035067142041675887377962927712363006721245714824297606734616941004261790050545488581293698502101233569371085037456754979137826730584495083605370626142048672172559579843517374077628808910039870812990714892391741979190789684510397881976276900051812255142732683609191198436522312451333163296468759225028159083007439755806106214447063498603427355427200301321048565847869277124084794422455330414489623639109459737281625995865444162273772368317243357763843732422897698138961994534345182367625185602724198343027681718164836560803215727948669495350865900513022634 27992514026134911049614866253484456966705482834110152559272260009123369250083874947622856899471706343407987018114034772144620010449782179280504554719396410452823406929821367485858068771449378179532967940077684889952083680718679265123645290754483871681834881085498183943031168442560680873983726214449741802292423471244177719699834478595856677830278505336481707601187560748660176329304778898411664539320857834662350453534661191689714793631926060569837792392797564657561655543205583709986306580278017505635670944323345072825273755881825480718751124454874114693720038540699592206456494516346376386447839366210838413428143731344192985568240086819710586891807941379318441791899912719391965518697315868111580772463384517895611637152678806446784589034557914453069493530430169368645054602462054024744352011512606314724700330888369836219895949309272024566544929401121750043134043595212938487700940597636610288226489668932401078062206078555599655084278247966908057952217790993201638353303486498106483335824814250268870064914445121730282087082945512820786448881206833775379513866313931855309582917305433099859065722318364968021319185779261502591914495648262007233663838896151996343644348655877782871460223779912272983006228858912614202515880053080870421112554630954463838230206968491617367799531962224475560797590117213292025159292536430053728377025339318290938952166542662468098413118928462249593857939318003142747514071137926429054431069011895866709871646668180698396468126077283852628794202296216837820473219603478680414792849585765080568887750437911550657201287726847661781152815121961744338375611214991721888050807715105793565967824370921762437170292819047474761430377686546223700879142075430502926757050341541714952525118638181691893053706084827 223747323520627877991056153529836477109890822553334770796601819382862155066131849827110845902320723867345737814675640325234065581053223476575180975196307362888655210861960575469790492191440167170130796132032367399529103497105443254809436242761583195845320850832769432614532287890852728943785389092812225141175402151764049153836117937264420031428895421130934528925772359232709949960269440964033462685995589332988333435401194489027607121695324300673543201484125849599629410502372911312767608189033206745791901125150998379687906268609957222895889045149619662118634824254874841600678821223062817381003906616411018717107847519412653308395636578442773122709785652302453249781922825441749535713669289531618087677804634649451873610994421352621825489122855201750998939959470786281805382172407100281043476951633046043825728930605378500382850633739043326099477401569891202915686308069940708554087957100178068211769033367865793548309642119641799577029138632325598355889489679205720107865833364635060968158410175198642188457895287761019298298104338803248064464183776618049980138570045252031180291624068759081806225562068413649587545481845438790101978227794645740791301632803593421126713925469645707817782721842911995013757698366871193234176980106049626077503774027380894112867645976990475516593716080587403019831196626841830531475368021996784115329731355267804262966837931373231897217382252155198018832341590634843970499486973364300143158596924728305517365726373466851587303494842811324977217321145733369031750647937137744383616337613176197213290481121899837568298860826348877229003743055823978762479229673507799927243824674704128901289016646288600560773759577395095389675404795989166593766048404160766314888925811621972490045164460503607543152725059392 1788438402325524380413641879601514582458331421217386480849412131496560037097149510106829784637587896320349833345251229796467696417058236686580749068935717829401662737285732103897859575411696675897684444475026388889504519751220613392703929535117115154345087925566665360789853364516508577093073499985964208245651182414327601748525291273261131019302688539926538548451931791371730444141818871485148187757970368510571562364834260356214153624423738053718666471421245697686693185969101068918141476171358748127595327139496508672281597135113022381769943713790252445519947351565800478272959057803396590350836834716749512788809431990922279335076847251913098079914464721441328092772058384618366628673571084637844755424307193074672894565081201276915339668339291287699979725880068480163345097230198935105412640699130880388073337183235481845420758448223399039586140068973793913362178208752821196084803101481916713778527867456675423403564376583121173259756336636383780940722122872698332250966569577810492303102387113166997627638789366902265827462001170173883059155509289320220262588442306375222031887276773759684307699964142749791654345713557811813414884764603174262955461471210265888476459485231965300528656081185398380057830354568669763401652067475393049292608791805143677627174538728512476588292186283096463691407272509997802155467733906681680088194853720182385313796686164716591786711971803577886523835006643849116716188176027900908133202920793300094089315135743333572406102050516285904435305278137955057841458675019260034076408697569546914038726555856743565606561418235264900080011885065449504622055747091223574081842596254949398389078737699012551089938977938740772229909028429924207597708374181900074202594038721536911220802702414401842533507962328204 14295202689080621213267720113265421724026924233950576134721408365084210290163198190901772105480170073763075094327377408935164486953369445633168998814208573479207824091342246366324864445645821318489228305457304121963180751419676801636470580798325378113750709164273199823871868479539317113136963994549059665784722169184984696798807840133808804941769303284697935471853440265033332681707946700941759354626622074151624958846332226259718668270575412649095558806872767377306688638565250999255163949106687284391387365453750934473321636177433317068381060991496545941292109334094779852329613397952380311719590816517950380055725827638201463394151847498978719089208076811734740477365357340375506017641260656451394739669388926277843743277537593562250147072757370917062959451354245689593525453242408902224824856125416519273462332928860435078314275806581355486837204638096108767351427292765891765420868310450874471479136849037603109037588556116009970840695774531656443356478344534059087203176266111304795085635352592736635763002785081647903770890001820051781376839727409031861828578739881115163707362705810084183793821651026231565842130667676092775654011719825127377715504382181380675054362012206092396020688227536867305997542930898328464876981464597656293871119695364004384331482065079172187670509747016199395728815649906792754577269088990742049389588832528993847185984096519072415404709351542069884952511100445490131091961323339117043433000752025145192156223339989661482192702605049841912470599917983213051568838492707365162203775652222332057994325995483311071931732679558397925339527658787145375479776868105938291214010561778130366601422139907133409191764884257685627819883422792963422121659995643048519046557078618220668283910801075560193529932056490060 114263320677395092726053681595014909966451656782439779133634595665954824540650199460571593148769107228088213521311374835914753102415325134250121579978245211636518962813467122194595669085875019650300407849877841119794594820678218907012414480169686036476735109441640864529142583496919162258829699156294106117958560000201053956715969281104062735949061500865129916707054886423590173728453556658151587616160041485033985119692135575883356664484830917138200126484715335042340615668176180518922798089903614949204648885486531397447079946022924275773030542407635989337470281449851420960222218530544861337941370336403315840635770395704184128888284859889172573959350563099994826348718637971467208350014411433804182118155624302807758815177741260144375385757122357474758346842706019357766636010292007823668670817033295686945803753922425120218252088492798009874904396330562543857617770648137055581751943506001101558348668573041918640328922635892551874927778735392469691354714211418897141897173908444981991557258660312473586381610367620081880207005604791454519972033075246275362288571480337036120683243806572065971258473695299392519090271320089570668535214513579943812286633850195446885981977788590982447925729097436925674471555376005111330615598612945349552218474550489414801293544258701625102811439001401198168550190011620763091467575717619886393005179852540726569802989130468718180297538653328627525754059488944278760658731846934297753717148729726925366083552772849712677164417189235020952517301003305105676316602587983326650619383931382419558752639469851693510492749239630470489783175855468133457411156200018432498543340440029931193795056469689123131900363032868173705463045436437802147486219783697082354891184523415498776952599421201127585579740630601365 913321239896806307335547556649948978593454975290921506792593871590815073856265244063726295540290341058471126919371137037494469145014124542270942945554426579356580876725573689380296395854055061817857142321874036174009434971955723820796237052391062777600126856927755399218221201441003930851247534994741906680431967672082194382216131294395211618279931342373444415553853879797817454642704033638730702021396140303003790756272342029295091510008849822728100060939194073909893226888162065347297963986949458759758207285741999354426273113935962621010879082743676936286486183124955778585657057852955701136808336901282229454945059659810039127361821103338229084699116173027919986065064731193534652811224321722716811483597143099506665376913244263735021960294818382972288868129859968744079369133217961123638245712627366780996523780460347740843891619551715219590347381111400189636114604749174356076754697378078604976175015625244191618739526582954627185437086120040385531691271447352866536804814921917691735318728664952141138432281532386827165470921470005378557447186678883748041059706739516445559907586745269543040239403641466076146779478256046798055150777754634219404039077670890159818190562613123146957249835349507527087234755767645069200442739240140455749201488437138560990379747743239292858743492586351938383290355958933886327543328281158088484036956754541551594993851318333537982009303888511129715712664990635351303629589429148343170089022345321968391952896218286051540638219909107911572463189570387607678214610745745910569515055679744020697762370935161600933410568395072467453066290235801227800687175819673898012655330084000361716952951228119612539593150820420414864032099541834803558081920523020517129038122990985486413493268966566036055340052684368764 7300295947929253138182749353505943514184109789520124077090019598655725674044517650430308654685676965452651684139906099951858939719188010183788368819293531775644400248605323431272001535911010444783143456853788214863347706038447458958175656251588179890035290919056037945919830144397313452520429352626447855061371372853963335127641867684930516413505959412327785329784753781406071624122867601390641662563995767571371272359176294618182993616711389226631088960572152466220912739550122350421307081740580110129236510077310147539353832905491317207177980149436156316973007156049735597469898845862674829389394832484446772589671662818773658500901536717708393524771014809009989530221210579930494033649916685727541540385031051830602694334733859384570301561488439037505266423153347976529077137275993585206713854866486220938023278175572384718281419472619202533178050227482590529659611177477382544518404513457349457518159518790958600017281470573561256459637861246882145773302824247985365198774938474006507244618075079480341271647762298351984064693121082436671725813725631072264494734579093009601879980053850735373139760011143465619807198294435140973393181399380685426288184396841790665489262638637327998821376297995119715188962387994370884056717990788885743475450368916722424045679238291298647158269459550718993031484759795939373193558377433627037207945619692049651738686562296366735004010973248761443165081322137294585937861094229735719939189730826751979962641365814758957383788951918635007622616574820746837458443727972294049988862907272224999589460463592154458509997024155331239515715060497923357162536219159514091587575803029080605915655774224928496802362711437617548321613947132402951038163044536793262690146280747496071711598841157419107519426221897064118 58352244746507703869693303275378678451418704899271192064543648876653014546737549786719955964448775553223475536780315044801924638363822519416469017717792067237763266111720884216429783726845771619770149135116323254260460593489774345973279113578172465307844300051169649574703225220071513836216407382360648459526824650785502572961662667128320348211158343290770950829282660812238889225436861397580201765169760206127235237071386228786995237394066988817435215421730152481765234381522805890578332951016386598294867405238009637724579842486178685562648350114099398705587091347069670794961930867186357024614538835118420333934248758199055596024261990481365231278568277688338377089012048177655187290297574988216086962794577827394157458236338032539281584001067569331534502712719986018148783581112921276408245989490695060497953200608399437820617918193530356617050754695797000899752288469567993008751327801872157111221363684574721426323482970179780242280477484386265734509160093136008120307268111542360425006405439545864458561071527543720437950211592416767835068199453594482310876349312731888170280098638757993133076396818974029196584245110196517293344316596703225552017033175104270189836284832462739642584881438052226909372571801612749689660097866670948863474709664801193684570420287974953487651027977999895703059305730624201251084206689283811321292986939935437137616706351566019216216661628323195350504099525295686660400807812762856767839312267194376237010922552594806010230778850950426697025261088302454061391513255509628441437289663540805582180525361222769739409860130580494988021200061102341609585513516349541504243974023886810616587955546860492734965747088738267765713260371725476670227438180037033405709465653202695100778545935599475959295353989472583184 466417525699969400705129219071729336529906428093205578765588977247326031913541298799889387397130974545553018083500314033656168138530002874371350909828057817762587959369118106931998195079242731438144400186764669221694335348712938165826362273369516687794434038771180981827809311203161634043207926874499726642085551808188561861204748821367180772962740909957082527192352679505222005944247583185522192291938145321477837974581693147637462878643590468488655170261233108457621767418722238697575143742071816552846400805994367448012880907918566244984214714345850726307949910128247525625985117799309545057598525420272042757497801278043854622403921142808317590372646973017489395108139209093280807745598660057167347940277204115461191699909407354805705766808127678685644693431546308195649866875959910466013165512307823936715144579828545743969977788838493426902137581867559355097350233327806082917775351434967300623602931663367012708604005984216844481647557259738703459269188848915565100780262698194104968374425150556403824539964016597543331959463741633492085841657619966932355641856547602749978390400269669345011665844824079265442031617354561004863801258650717577814259708389085771737338778104424071442658986953626316464633895686339361743926953063636400692749868886422976868199753585171466942722331378418926751580486352075694931639023186155359510062515285839463306962285038708026917769065838548002897796397578814723982812915740359446433640204507131590862293605355906082879386152533771978009218996258276033590383456797107116064982574536385289222142888477205596404901737999743364047378045875906278012252947066032077834378415035320427927241240571600788598642560227302991774847164504153058642366012252549708255980613693895669146061498586788556142356109687729486042 3728141142501852355943706256521497404378335429589150020181336029402256425778961414504932042017853199784364073149096805277880956532134561595815843869675208977832503978362886043880488912564800840180328839542300763855665942782517103557006072026097413329260457956119911151355097000835300191043337346454215756855846880473480612677505523102376452738351783413934975211641601870603639273886960147011515558111222342627887927784505282265890731604710055657421060437201813091031330490297058837476267430977162334912371553457221861848885784687931103767874961682382232934141671780682068765082866382104940037727745460114740595122396024500058401890107564867431033381530226318210794608448271856413892212723325284810050003345375643323988820192056147673030539458892893717502770242281488412634614412711586204460646282052473797824997904726057008753863582421959763095354669570260671884576158325353495549184974053000689632663618357925382621731644559161866144685105035399797546871669301563797715130843366774758555946175231470596800577672327331257325472886152156992144006778703482659776264763196609178915628445077804474967183453566652796006094684390851673227265034859771318126116679101470797338244018151142553399201213905559994030654989032317750244662132478194214078265915429798160770993600104660178253684311683137381730959128651598413455365878040413108826967317653193316591043097190073953371138543551871930894183242470571054096204309380277189596086102165082472871722290450158504307035999853248618528763487262224391748607841907699150252837051762055187904469935478045214948567420334620125843190683498881737006859614513313727059075362404343535583538775320688390599636050343176146042609105908272916704621077687798139563593505920467414587111854285239609290809683947835569002042 29799571729560100113618545534945837275695001660006433136745712351681683030896872724698081511210585669758920133441923196223241170330014294902335969343876634220554107225406056048098251141632125880444222449568198753535816743651871449286086365075136020554887657775531964991534076497432560442972523588907285384155814779858459581512790221199177236185867804838294851124784955624916728422471968329558006386458823848637519042721553841091986927951189547602280055377309618817581138333466461316688637037613991581223974564371241596633761300138827443506724700227011441393857624997748590451659053455046992036926539744919224339979687535209601676142468235987503758936730232888739580952047591340681763981272866481382989910632629547000453067592696299955674696435123671901095796899752526949201052599421575175174747765601073874322189944988383816877603795832791859040421200790315149004167221919827322749047260187567059296453031815740500189504591837319164047539825170904334338264618457825750593163918996293004846280678552995965968242470068399651321361689326446978201459056791411736686298309249915846713104894781491191357507231258681511304390642444628748181289026952668761810726478790268951080722081106829454993777760917506424335706210189085046316627936028100505481315521867357521527739199984421960281426006130689055983830311034548467258288615935640389090245240051744248528989328180978449777121387314657532445476213417463998368974422583291713029569332501040955096348433924488643565811944009113940798798946287676150420214903697057297743974591673427850398847124304028328057023200467745038807703146428866398730044454149734626661400051897086828757494263635316022109973374674841323903711048395105500373307670585923884082462079356095674685850299256740827672911605620119185667030 238192394778326102361246366278561275881698699417781024444250836910000431888079891401836419375572563376920310319572367796010264507007712696822151367108981436650720083529277947031931119800271262087621881318715717309793468494074658496025560807099283944308131574242024263152511927216386475934573373902524448191730777424636516660937063890229398147501253003779228072088589900526767834779817679233748642825783830088560203839893948045307177695053734349570072946590761116628951007660657110721999307952461857112595566090106965226138532991076984187923657605982465130628424419108602885249025518409140621193211517348923079930410992732156900897844828347698695933942924352127322398612596635852930241900218891261013669017815629383058421125926344380865152670151377581292129418849582679217526599463767325737976531883402181516916125709127980627939723375156447627072703702366414510607339113347798370535228192453554441964460136909776809977172237097915534530268637244683053983660879474281078802054142101757050609423671164091806619452801675583002469412446230256065294901940656644700353565257711795815153454967895749953991861924460012660951287386969735086362754805702733803552733743472364171506210655797227021001864020944676445350810504482769388023461017148662406400021493092467025408867669156843932835266446063568559107791770275564616852233977422241014329437545402469312565799343656075294100508944868203188431310058281354033971973422930389193438406591001525188748344788161832626725256264440239618287734390484788243878128469115264097286064845630879184166158566659040146590207682258324885534705278215411975043300103318493906758190392650588068047177636495350027885523446670846783603811944314385441021122543962086534614160259540416258131939868303378313065846550950392714433080 1903907963342225559442633882994392758564761370351910489729029055024310940923851278688174116387328865196157432537924206159507243164000139539425474285345187955999195861876726701825992495762846566653693674053195729785997280159455726071165881962708338083010157393796799015262127595500838157185103974088349935961150318153610654573411308722719325460347527581649536088579537059481096784569638107816090601403652513205811225488156609888117574269189722307942725586759755548874025334673706623449775767336514271677581308751052876202704557021086981448380066959696465069141973327589513512599043097984280663041050766569016853433402279666865451362698869448611088298210414153558061055244585663607741272443269213589530422673212895845609384231995560184823285123472965030276508474257130238687809898754473872200230232201109892206912618726360010208869761851905168994521416603668820287981675417182772290735496224455106999261857615275997797946755521847547044823619080701694245937156328499968245381429627869096532201075517726721424099361230721262522035194268108380550479521570456277287102024187718933334897570578682039142216250648923000863029087684732557138758790222509114551842170715260090521349025070462742380882032092789806446825256641508122218455109793586340095566979837980074381197939031821209282345127634276122927071035375505732844863111152552497017350178645344261127439487288082781726573285183772163485002816866923425379187812283045376234117337869678611058107091705104184802598804844555040311771834723010861889009358934390381377306480067202088579470171453956514588166374361790708584218782805729252809845544245931391344005502541902742418939439696911765417313094244679452936917279469977012023732818692111180033310284239843156104544588479927426190151578689103767969714404 15218232014606454223164958381994823433447522670431251424479302528272853292308313829751350159541461754077572373579339160875505484384052541925690819345819111969176394037669563654146104764799562535797760494381115506014201247302955614816215017319894869568323828296467641412399235528770679919394588784681919761959167521953524702851448726119752668632671031860826468407785881591946782596884865181258681796179713229434885357401200003064462043975512411612533663848124603193459038053399761397576389736744268108338458046464123962984373924959664800579992560437059951340038518506745836430567906126285552713207651362109185132629732260791485746644536782315242581316346179001509473555744214348793166427080895811089815568134027306264975548969035004989975253533475748539904547389516548309594261945165858255900690998707692460743021481452909755495684028935508363125436156716579348481384393666324839145776781677725100506499907863917333828849102319704812758777566247370584568707601075657605289769104698425266672572465842666701236452628753883422542702519154682735433363736148299669712752327296642446546526367567445026916173469201713925248779775505357670319398395569334808096440779077593958609897690128573891579562039761492652195955345413733285178502316788605400267237381089531817665967705681164151312226442307017150746387881367087191799914068299587548099703303271996169392956676817573107649705817963024990578539360137102832814605758893014013493029844706793980553835765227395070133075638135836895318953853265900431601853666584892289640164872870334288861738839696751538779127172838600483650988621661917418452298339208655790824364549813194578533211391511476690886150459902970279094550957059262749417852870924718656684490392532603912871044855795009626408415571752694526580521996 121641745246371418733406147800411874104812072060604110510551098698555383781029476954726445892810411851465222657295948694113854936682735840503216227325489829753326623548889533137192918759708999211601994174354896543893198771174688262223816876931600801309051062594648677638994227993234807651826079624151751678252182288451186432526775689101649800181949221399190105626853407594325212041067000131581522972266965321060833879976218909311057955902794113671057328796779066888812125217630622186098310613834193742287286023844072772261820197657474163918710864500316273610038267093782218764274455061667209147058758003708117294565201056039115922988589403804066042433749896161156733414867095355290713067798239964573382227515020189559500982401559343517362874276847439316021358076260402538397653720900444704737608438569339871185731243421015892455560537983056943982491067301013770265568360138854119592398693651122134832962036240006523598799044762293970486976863227356462979176389312809907575718408046555831793601284062337116826154790806908949708319387896994444737674947864768466334764976370595958891340284469189240545330177534124163799097860610855929643673520454960471748400474450387808207510396302748159168675063300855578090653339795261706820391226341464789902326169057623553186518499311495726798648539613154139341239780148177914057446538611134927426093859743178499697887121401208031504021747773714698488343023329678274528250758804410362820687887122717847505400386316141281992322188164831855374086656939884663167052954344048289456982359974581899932870327138469863230962525929542540699235526818042417300065744106398397618460149924354012995594677383361021898685323092021373693979124976733337617521775265244452569214731937038298734306512362690539739280562546337374910872982 972302214193012675273308547939466606433297172620886444891675694253519511814769869309525662448940498577098412877238726110975851579674965152935011493317821603005576709781935709452310730908920356121293902512188981373088006946273929240820263228504272182428361107789117080114509465053659151347730472800782884078340885874224503868615670638431553909076088697288834072701164367946781240718058437942807554942142175417308782738849694517805958306830047182096465891622635198812077053655370185788092375606376795421542871966854282081819432228175140986412341466881525748707520078157674336603502246438350635178480589800625312214721538661972613310864146928035086272675378858497800867733867391677208642897235213960383444106348438961415918096443059934410906579179034373478578020377153458722028456959100175568628456954802711145049440357316341848171571886421270523551034427470660240401086529574550436778312592149625498776926898914287543810457176934353350570714622720870363797541758370329251369946578165805370205306285729691499288644563431268999401500589759303557842687437021842710122740814546945540121154348174268389844960450696072251706282566917877522228167265675867274578485085880844453885404701844296319766579911389257547737698598005267628057359798574091305476238149095532846974954669963585096452613130854464513586719589351649481405467906724816498039574638543536746310712194279381090589920626903478360533989161010881088399550059001279658706650269939305734943618777305069630091737481053334128206325384072292010845734592048671269331841042341466405303575142752030312468224223829605703951217835850283249855808191007266677351527613474241999387374032584611027524385036706242337096559833434334855181384384760939049475806579980299543279745127813639178966741151246269549888061836 7771772827675135161727018575219532770408741526063288991936131656320519594675648516570846186914098302543490518358732619366669830779956478993047305750346569376168680799607459248611203495085180209018957613229627737891714711666682131692101929372375639517450558691609289679041887010920449383567202968145367071471880659294020797309145086033225264507253802705842641313026079028261425762203104144130026339338396459199493175552370121497282640539793520470931017408125936861949154145884072380102485991429817568398892063601478078996918367461786335265678155200506620158451044691833415016788919448714214565197355153502707598726487547997485360194738168405043563803740594267120419359979497920234039510098230928571388598886355631097245687071392073090634364757910863578908589832138529363566856472390992600393059448041633465449377890279837512125073523114461882425486980358943678238510415952594788140091274109621203754973666924038506231681274926873403595485995072464491285392599947332635631460274903541019783062764388034546241396586390097806973740659705793018898998596909917000047407953299461410782262662065660748801795185286382227656902216579049263806493757086541891941386647236817549379226757644252405577059549678792979798034424924925876294041607212322170040909838115334347564257062803311126201188928319234546177277185841621517804167978585000474842083220357773046639899785139081930940990516583674282425445674529132030973003590911526665950358526301208128115866994216348418653756411436040583959406912234236019351260904009106456511041246373893150226487543680108549917119005524107511247386366869979785043825796323166249635826643881281563737554722537249108807801477847282838707556971505483547985726292513583710986014412213004227812153230312495616292308969883376238935508516000 62121096168555868146093354840607817231816936837550430870803950505511011246828024266638120794975108462773662573743151743992190184800786847952597275939116274749445205718733371352960416279481311719284529660327863476306904738742532222660055924813070170626738942171848986976531251894665367531774032454215580152295278293754032499223518302624255226735738015480523766961602615833452237348912242755924298314786381939563527224743367760947321961790313256220550938189702555203978780631265723944019572826471757656522041931285314919116154091728846860221388639460488940604803681827245459588022062988530757376056640848516548486190809927439233058803668007281864968414560283749211301613964054496242298728637942972600673653969361682539710045245895061028086059214194976877294264875070978333237021427273074115512229759443242730991821968441473250403481179264670428932852375169542413891809222295118242827281820098077260347123194358920436771241396894126120843686741469336761019509230901605452994712136298523707715815294333209413541979268883697118896358915658353931399321014674762304327229086796162646642349370375577935323460482280017772776180796527179952972223454619273908451860873830191804199532821341893206782858757932843064924078794658625859836495886220313628335855499805286269868635738467311907121475138638806241513508083012149265226945399202670075840521991479840509889376131346755151731054317542273584604984427522314008217988887448125119817589407618397769739563301969327986073520440992262974758906712301276357093567645993647716183784449991117156636043825777811238071667519087276987894823265445518061799733188451062253219934714743216062504519270348945481880353225954483108606183115466979817255807834200937040624329171408992097617675974985880645528270641904941191768859848546 496544657707303144509294588068994482067348365042003186939200214849845019044090819127391331308459138543636673227701598782346656193045272098521496967348631462971330750846588605192134544319826325759085466363885281834113432809799794959498154481003609499601176874821814585224533313624490343513581410471047541395959839688847375169117764220345220185405880009555543289295313426623243625444708589518391965194195914112727118880347090357789298805205793574326878658781153851130966355029909665415718678404326454998332494639624293074742733946641552107556714292199297864471814321990726031924865704260684273934092846883266590458687656621195032311450542652682110238605517433411415423879162952139144195090029996008552097337986598529034518663122847179408939992740928081742971989998256733498716731715231132060374665443052593235564847929530803248052490161097430405192400976926360627533996840334804896854558653012603129674212716700000324205995699008535157705307895418241652500202521084757723858420266883761318366687336873829732540132045553746995989657281401948199418732423070354816924895413556137071065524337952170469125899326444300418644044555571392888445605733855261093183014532744370387820177799604575763711338178115721040353313835825774803042811011555495661193381843211424210456291625634214891718067381915353753533404060251649968660761865206176280549399661724063145765914892458349832797553523346062103435652631534022537930643813842732391136077470819587235862435967911181823435195288799077965608523963640393927279366820255107367904526331637471997907534792700762590444722292068849029695020216606803830208354980851656058929056332547606871325453924199128492272915976438929291746483337145960553940716802087351904142601467880976760860505500704304669191289045764696935229038559033 3968968999673200569794643167597772651696686698812768679984411186968660802901293301203443680906881087417674087220713289859888784684673836265281997817416506678077239035231858987211033184331801708896180186572474381364996151379064809014492771453802763792028746246099903257529463908640304994354172495424875989957965516662214056888114200380665816444167689723432774209292128855887561502957567031765732413887345270433247338370050804132787535673549207010193673004803541185270162370258577999693138281149287313525206875076546557241264411197867044813755925445917850639673914729989884071325654227902339327003581690005927573643347150692071341849982222330985591359274613907847292779189648630613041942471359053020923579717274534135364427442919205739134172009857526497121952898348877963650965522950638376167532425127513277607554565911697107787265917508469782774344772859627439689964896490046170764576659160071413348228457462219609861290855661806909436437421093734381380835802157932338030752993183458809606827934824636695698100335192873033461453221768850655265636268647952591872017157642655038695506115890937886923477669029468785990672614824978422137553629791732113583312461747835611091015589974193861878985868090520124996590356973121021849084567597725011415190353506327042697215704197084891679837970703581909696762058308496979604998514499068348332113639245797346455404574183257665203951989544123597430160676579320535539499460667995545676042921428550059544129040760732307681978085147219635349618107922404850497765007140813592388812578175223563054812180014729386484091254580678070846572711092560524319976609524246482370861590803769809967577533002666829250870457061329427161506178786905654740601998097098154714681058741026249433545940322225120450925713749287748751197517082272 31724682881149442624631809326728283137886156311918195563267097178780212419903502436335048647613943226379061806484419942771604701518265202377548813906277951491715163889921268780195176080659598797160531783762771116284085801970650219335472315695081422251428099644022181593462240637124450750662402946864946757725833477963236809167544884646224796270292477520495080928535690664320083835080414200885990739361213236011266411790960551819007217587586136733690807081774071992289742115638734004320721295514939936116039758510705291231251798129039399130279122287781223796321762555835565167486467127290432781183336171868922699430647238236068402500473535333396975162088293293327875679295556134363213510767823447673147136048347864140741921867604885421678709291619605416761518983025408392502206859870394736593826753217334633939542947395169707270353345111183427678973577826017243123659304681222744572360552818799833842003136919220276309491563732088981712597248393781321494536304450175764190792236765695618900549646630014642683293664899393060324521093603913831546099926018137512476757089567184233168629734418609610272757193719686123845933501273611815960678269035550008376522975809631005377379827579308291119868227619261232455152357711691769863120360590796811093909695327985820999118025940924858934976128227938455091625857536595690351741495967171277213862547227378468387150703687814923617071631048722373617494191149719113754585884985300450920562137175463710143420097193848213964233152390035808531174450854968478062543642870737121922492647597385039765453774517391395879293381612382132221926022188407717376925939494012618316453341069214613542792946198226123572503861729651327988824054680830829995996574805278730510533966612783152680878133661983401407297352203622113241559629769092 253581205401752232186604393696254000986330730952380516097727885343066963768490766389177623194480111084806325202142089105470727027015823241565325973578489954536190048659775555629485779660103765906534309623388147243745885282188708632363461390571520175107710438303594400641684045834703231354485106738297460962628845032248099574562099611927428655638795855285313489577271260155539382173797458866504577221330180482990481775371644597107223400160374767280494935756088562733918879838068302306247834508673207871499453297053194563577378769365680073526109820554137992078844534868418954002541381423958760188745749460320467227649772761186138532665126692308701222747854709585634457485442604796168471051792933962268675117834765529468681321655770812151288974678595785396388622177564479572599972110139439866955362342234912352239762430438193607300975719791147459360518485177521775637284148925194853356698601674351846709784071389213238313641185351861877120105971782590545726678975067247773899197920658136590461166495277369395008315651677492770674260276894473475965520827968135099953250058103655142868045155390661135955546056555391552427221562476649212266760848113613116676339098995146784397828858153123047450301229186982508808229116657207147727824000025976757463288509578663499906808898499272601138583451906045124992640885426153534453306121102773482492516662769797210213212041713563156925994380345148572074367524309358787090510700092017791723245371129513502315002890629961431755681526627569243428119565297249674879863461770913479668791351098022184285381041755388304595956713794485185127388667561092180791496398904777000553921436796751506828949885382389685781536614833814877844976464823499602501815556129844969856397482631320044631487331208438642891874582014231022871614972906112 2026921939866872459157723708539550015315158624546885241603026830733384537790684891533702987887096094756961525503059866702191476572400262557041269895077791039171972350887084751723124066042238636346600621894756545830838425117135903201803007717125144435754740654901708026564753741713105510948176173378899344737521663364034250301826898709946016461158280229471223590685452341014708289981222583703041995800698593486450577305578792234352331421467515379110546984120887497157222006659915467965390575838510546942155781596235654257653827108260614632339752684958014814472199277721707680360234347377154495187667544951591366380151657156701454304722988934190385793449056140092402447279112255128688023144746988622973677848302346272484707251020869569436947828304634464354592063342256894126248435139169138858931963932448629664076552908344668817143682192856753174599828259997956631410033115151000791589367909823793485423410285407426107384716510557208034817627730060098871095117245477909428829330543757814725198839956357427118110497314678244592861742185757624596442212953158723514098237176966634832023284395574174843761169272870959713754781663292860638995589499070732601853664266453584684997276316840711879763464028818243518620313648857748417588104286736160094070745383284324995124591390529198116685607571662959564296716745064044374568161515903757222914021758701303827925831201339264172179028415452446286582342268910032687875250246549257304736964404011618856377182961846828251029702374730804824300358466943714618942719796063579389805046445502309505485030733551992414691753460453875332383543235759546677150188951741183130135594074722299353317871129614530978676045056948172121367842040363321378414462725159856612134955948884204467294140474814725965559455934543971109087766822176617 16201572719484132582933764191315132906120920968390442695024374830998219679576021031609609977113390099369594765674983189088292057825704018663865582040908540868607606296629739036522646295024282089516718885560020109311443117728101152711247210116777379545077137803220929901742299516586650729758300650891744366820601193467329854805943170906861985759192823120009702287462833085437727112318801924812926115965683624191198233698946280686626650215806803708904940052948293843668082727265941404174285478385698002075983875804204492303614478352446479060239566072475618929614902445442838414177612716594295166739280045270807004235911787652741344672631460773276492623099479979754517156129327483079742405262708775285852051481339114581507876288698495049986643543690893160919910874505744563595745519249952891739151958844288289372838423125490542362309181991430329100347478698600223464136944803055615354974232433441775198209249939635525111047707605497155337453277613796172988455177131854810719815742384979891057320419915366832987393946554975847241630329544373100340243437878536726069759519934619244592384544609397583286767646400620594300812942048030121567742383788831394123157714305905181363365155273187450646364002216095861014297496267160818999988450014850600222835005376101459853179571867258702850917004618745919993847659164840477788463946994432203007809177132569423449613325913184706569856878479705226895572825227997733907411015282173182249125303494740854332754948029227620260737616820491186517467296377546973068387001724678650367659779200965663503710800845299749190947476819474489545703393742851941740514303251692507806693413580490687014052705555818299635711484176187835834440959216657624344759956967555993724299189776905726370675480622334789395364401347248066120635999547346698 129502309696887254713046182019802856840871077266631777785441944047232285412047957752310645874369975242874105562761896029291168465456318668189805221500189148715859694419349454653600643868912057575766565152820788663932112538233178705391149384881746779048721731608283793950900792109294282223647674307438745433035234230879113612885751418008120493649814414229729679945774073015112419899520070324602449064346143063382180479068377898470671120310804066196528410527032808120893220203544687820434622774891083993178191591775731604839856997350767309241099096286811369768168329884222884005355917893148299321426643655480155062715165252906132854665777215413001017757228666279614629403695885316865162667471113297959680433078108215599190864432682576764240288753278746768214223779606792792301489030136054641493853928441628776150858250343168909173378896027366850736058739802822548649037827066240184544591858558232745051939617745205099026306051087867853672649888619528949035320482031264068428492440269959640877049892193185560372897792863008236329605672333075502814237758585395923038845820068010286052789684983026097618996097826568797499327217451600945860535864550350155105037555697102016705573022389569526865877191528469979619070080751224873044861026813712541931138129262820977908089257136780821038263367279715758813270593974811240120276885380852550405451288706448396600560897661756922375841048936120654949179853953165482759504247598586066897118325524147990355132945624148181594777965829078956263248901553132750840862919200767681938822772685323385714907985741075314566580539822860676523465629185521236401990696998592605287060709123623229983667288151820537230870793386036785486320052430762112021573751305521626194415975936750527461827474438712492209970892799522108823516177159601178 1035137501545635961432196142037292786926990349311970259625088115773117179385017067031293207368540627677293882374937127853117202636577059500982368276532116091082738800741068372970149249579911749411875875386146950215939931651578475812028513512156630033329365768085079839551364736263691799413513953548466504559919691320523174174091973272923497823777796444346241208692474119414356667877434187034983591651376781871406981903253424622821617218093135873397266250121323985248503760258173130686213839674899287767711650903322499447320822786006401465832748124212749598504486787792091435883757174800912435969617840505053280052531937451816131303651657148151118534595330175505695305330119167283741826817547077901210635348882750235591143316284335720673823855538418960607031113425828016975603062316480732457719240164824990170889734269749058923350831495831268956337721042442036537852880276322142235102188707499857452094020344203554716249516142481965300279785854291458606021257361854692440263617452515835114130294821676433637116237642536720672546760299089836945121934635787181505780319509639276961563579926655676085245622594622453155951640880749343860097845755650082488810656854976271991517269546332595310157495849531153603478431518053260504527374828143610065480315975427208919152368312935893283071214545524756372997195921277296950440169513303509981459148413043911607148950305055699957948167982469379945053294585898094530806205915480344887580089594819523076643146301322940428832012353418287859955797214840148493702384271906929133102140659689995340356513520622416257912599191051381143224658113845006836137205962085102574324404938858724776999503926614943795389740390913773497257858979626488729187897235811256682353154315558322978370633052175677570407647110136358281610535936483875668 8274061789707299185234777429717376457716752702800835687230188440683782349274896226663977393784093315120546636732422929144102050313233970080935123119242825160553639345425189693659518797482815256701817941606916628840516287053324562402847605104287862778692440363320416665011533598234312823773635349015754279079333753797642102012280618997512464302641656738190567202759968302975272878213006894903486093850381626471943742803930255800609931693316122468473693444471730477920922918406735920753773923160138484152511761077301941300242864835411419954117367866784239332905267682106070670636101163737536213272721973636327737800340636593549533549859431839179609131691786304427787094594994174649093681991872079831009635309378409628162294354273421336413216642771178796674364606855789285078694938023118463884233176743435352891429363640670212486532244935272755153355134914035060970069568749618620750979143017284284083896656132628612734886462461195845327300570577288123064642211631287892340142951621197801726067839553099897349507367907405963304186136165345164944975318227841341442196256862635470090571950241764954813709607723828141946390396234889486826487007184676235439484343715113070133659127281855940875608713663543669789703615866431691385429539154439712338060014897996802043846335520471047167619309402843609804733751910430122353782984628908096241347987458993366491424918947241525045596638090216335719002140252129960105489024325564556418717800044035710165995764032791430388390296612998234330223597108810139028189023297035330534243460147249756277578698598065432511541602171599549786342092077828224116075027187740229686518800113582543779273792458676854045704260457575252505635471024541304883836665642233009454067645447407154694817159198662890565012816952067169243009858783865844131 66136265077669346957557434541217608076097783481308769122208660372739791681957921536850826712326329970136006119336277657459454696795115199293824122337561406009427629107229644213771690126949007636638805730493438730627376590853301052527336181615138550873356875848104493408413516228993746593296851482384229742269745515828907899731887302865689110994251368347330537907501478774872225040521049748598067966948875533402444440047506423724974144247810094244826090125289831752381628443131382925640438971012067976168363334311963305049704727579752106707500629333433013331114509196327504475649521148496319744331751222130129445265345003942156428268415855511100383971037473684101733769112468654710882445452053765696182300239665771191716421743522648449174460347158211660922620344974778654574815355308160506675479284267396857369142198293740487122485282317249772802475916878217943014685809283688645981477519963284140711766880601992639536930886556609311598608546746127925102480789587895948064039968359383040456050892868961626381568893962579838409287350583849021170206559619148458945344346937600745634081584569140582197864457425246408274766700913327529489029761358957751252312437010637756508301871640407129044376767995770622019612996669221384820492071063585552210533778674614203372111304552850032057733397062816811584011741462098216289154167165935310332319467909443202540113924304858379354063312321614448542366580739460493840934947626213086748486813132060542617167388826205979071163315967402284396081609755986185211849580439713105305533853365440499841130390694673893214738048174914839931330010162444630585880294197121091640006015118449122853069788491762049949407660378979028673159640014341192939592822101501132099024563866598793765987132774577223281889046456213194647697810039504846052 528640897887555703494244949155431084152605354381007161389819683405697771913206990932203716333263449069094781334406076995486629268579962326218853837797165726704492778536676253571119928689612268801991774142718973788964324376444679303975914371824886321730801201171341688966022953751488714369920495454111167878043711071813684449380880040005185345317321100704369557462371539816896654707896329656010037532596122247411727982336805944967040942875447162483444684396892537037640487319292410436139678898563994735499369252862966371253332661164606763339318852362680905309524039546130304546315038156281727825717307890969845758157792208529707579034553688996479194147546705071590505053541736793647938582411741234971740315754679804815963863725862754282634818586813091922006571581086227876570319815216137782140869319000383770428660657258143089112874514546362828003414185213082900153996647618829346263013933079376445543832881900709503502270134070059728451941636060024985081584721078201024368205797043965898196353959681524990161607557266406469443117439906460326995932117993459999601692729707104109519531668149224999234883938550650441842290524685536916009601326808589256398879474911090658715313127535631820917923611472512222425648609759238679531021009315909872040150353905204499470431302355973689860806151691913173387553035747260767852536760870833590978866472375036443224662914521336982938867939268751427646423905061336901958252956481480382980264983597680274178045037826462067822772477163717551479873373077833787124811151489775672289123859907820361906587190838976197010342583043887782064070466377963501738199429114305812147575475647786424607019524723722238351242438627411314052538003126515995609089738993744723286769934516977053257319975500821772678375354612448235310710632361227955982 4225538281588132012269205556582392736783921912885123758735582733061384791547084071647726477646162790724231512608440110269284993892479934217347384462109633441813705973495785236818196733929673281791730407476059432197513641631446377334361883179112373207170432977942106759845945900108314832071761884989440589159886671906828759463157009845895143295260707785098645164286255464162858691233800365451472847363720415770986477000336069009386346546675302869081091116302071324292013720180905195250417564734478452387802094518396844472832990691739501361747417677989496218410671107991979290528223688579080680493446531532290558964163888183204012924931625159150067354333930758581908245868673693912547728105525432087074841564217472361154733009345596350624163069916793531848130739872727073353550505634148770549124507412875362939559806058378616609421839085804670340621006953149463143239510382396177926273715033169208129585690003200796319993002196864050583877751305974262798310725450982119163142630993099087387731636876275384840491741769766267143981276222888127284787888931695133401350310920905917448791674942957678815786218859843477856514624745996747782098633599352232050433246630776742387205489688311628014841772617158100237516164044233292577701011864887667061332100675741812813902271935298069697194918643695165762941488537697894275462161037733162488085894284813311115906390699637390072031403235212619272095751221598782433356607770316655556171781633358871432688310332722561592712596479717313016144241239841912683948188075733051685394054020320091163409056627841019769105688464795755864361681382487800345729915042972445113156217644006008958067310686961085084362575789831764496609895768022797083319312578585097017939857678330064254442249633724148478638701877856354814996984210397822227162 33775634010598096454782238249961935349693568984131991239718696263177983344167263602095795204828943259347819031765533791935113224533474873246422612476188758070949589296353275616304472678184244096980584985176441941219499007094132691095950242598536713727853111443672207793404352005539898237506463971929940539178855484118889829253289490682006039532804447213580044606338146727827941986407369985228685134196340524750878142901160008174915733487839297210028733437386895766344719258460750344812604736240039355590125018877249821079598078707801658313853171430967305593994664320696397035395024504260122038721405490040890184543121824074909589810185424155848771069267337691445389578172964249653448143623029039909983887090409706019366364055581536011316616307826254082490091352390678838283752219894170497767158322147906164795578479081037777736133828886504050040130679164239438932828684790574389382306416427608724712223415509945291590036717328195679160958743166023292332178239856494003023535176055279008218878796112025654133763213475694432289277211593435576154513344938030577955376153871845834808676801243128305014918957951423711769433530003605167991078783886516450090908528124452346168817275225072178118544890112175189371784105865153172797672228689994160576401521222238183972131289196372477948054290556884628229356529774690660899928394801751999320848936589264578349905296760846143373970354816747692190738502325966834433141724321986269666176694187835599307139468180869877925812789356176972544922274721008087255997779993234157909162410216460220460763372740458489569165678330117236335669586598772125206201237737871290473363256900046872623828734823471811800794113252126988792145991298670136721726466389550810946626558859740612669165965740931827759720879622860280945218811946445122269791 269976005326261123123495971211966253113305585125678297286508700282473644268591947379798662331086437086886652136002662543712500432973598264373052257837256532464038656790746425424635138235335843299411477987672446942135986159130674693951860347832478729378077258498354336573410050898349708316252291033136098062844257554181691467008251319919112024953379930880271872972818114601251307185206543791706531276193916617064146140280316001794152176299038054287114633455152948811461040701796307634660890743356383408517761762020058264169266875285718017569790292059698476822933152809645904596702564659992906521249451629683631264490244534009492397320057762746882581587530563267651417036580585572529754414254467062594733135008245176229322994375266342213643854097232538788777383553717551535657979368489256784483899192310212654009617976646526026287710816692057824846268132715530242076183603679561960058636264625952517882304724335902612064995534147644057767438252845169718404420574465454244220932461234437680793945899630040762722258816378500578446722428949167933785831513701959224882040768547125771981590941511202998377159081961516524629418971868453084388011558291376155510080134849569367979606655887505482875733668363780572341330579556713325873068114044535314543685150137190298544875900894214829053482241794874671416101904707852747656371904894237409926074238841311851267315129135582556593073780679065514399466692671290704036312743200705323038009367695626640950524497198192661263610987177914396116960271455915360887844901512249193172119378988576306254125195479875026953704575739496829036085698608335143046379462118496713789514194657222877366949941275423042272093475210691735068443364987115772883191539578978082299850794632158815276877528156866708950611043682860428902754987211533951978376 2157977993326795533892792564307424941114760112934871062930397177784329379686961578077385306462722379284484023914925937256286409641125741804588402652383467805828393383338271814390701346919390945746306292839299579429323043359901718015452045754064394233201073782314377558556951162720289918998636258862126372992290422120442399818433257258813816483938078470436307288365396959642360504854171088731332847877977953678927560557079617787661317325281376934403682652948180701293671318373053707125929038426385874044803877517845492225766138115604944450646700608755811057010674366192482214788282752618893668340441481116337619498230078883946263999661244491592902709901322682526736715349296542246509781039930346116421952621703078987926246769745948068194037763497929304983856617851742467552807437383754280222758427357520818632786104321391612368684867635604968029503237363616205751700604970047080329842135593939110020195274531081826771710731507276845234941212170341088251769489984544252474297494894624637889528304096637197704450373067105426142844671284279156690609921967466013260944879393281420812078975614829154319074996243168534210145247425722894161392546073657610588230480204168879565113028384749736125533880064825729584549493575872170576520602762793885635638922644031001710964885718788993485665239222473769585473627158371128181801592869704212347916643370708044545100056733226204339319089094036991420755445509065971364339331461981467919864711272666797834042109109488078412144642534340641943402530900539910788372479447005769910505013198612457905344333954993688906071189432697128463556896544363543714164883379671444522260646816718450602823683639325277736124331238023108179950006080526332637433539474755869041017462496862718061058348577501498864054531312710769460733446084532535167090461 17249203393581183620524117474683770982832233633833125350454190446487279745692760555893342179201474534565965730822407294553802089730708644754092148700674059048603357033480281526228911094178337559051350345582758319267917215616810978021849572073567037387733603761314202113255695079021826862017708775045412541634290938031560613557181977502213408099383731456407598817924245057383114187813276654351452286404599206697551515662905220465169372541882324715229756538873115265082917251271567256994995186977900024010170163439295006939177716477363839034613570655660331281141476843152709802656327991240841557770362418736885767051486196231453273664077587758509740949366933293632880717701764005825350930375558159073957441737052382817762689922004592349061604834985770220439049201832818947269740384722415459630946677057954042875948600529846439795718149339997716251437519493673525377078355150232290188605749066359983222246437415841120211637193816573045415238997028160283678560616291273155098783459368187108657113618724070945913170484260299406808463930443904451127356536763145117460618093004704867392057254943037471942663382138305427642364457308579743357741761186995714933537303997082324428032073933125427435385796894601924496571102587759454114437693535931990599043475240581711135126915888092988096839845271944664392376281281517792376298042160086148621076190264062744386863689049745741476059961032476379534330542487094654018920484586846365217394938832782290977343393500933388566667706542966193330951263960306238738294499891937818412362509856472689075177007912528671737522927031211916745047922154285018941394342707098927405686899562226724901432808596518440439429347002974017922067589073060426801113829169278641225065750619949103244242595206819342153108970709403594647809374619516662049148364 137876821158584019077888308801845873530205559733962864511906095082806580087653200973322414312819087313876552260104227689018183718067008162505932190591754668191995988310036968038076599853560675648717447480345045111157623909640950832273581695234020333177127613743006637056266937672882515948879094310151609119934586608531546290125372565833685721264537170433284279992800219506288967824112816715021217198899885097458451530656177426987174582778362787898594443754887529567709188406619645925748661565111069544063281361455189481411434126233552341735195984649832423401869514314760556977982570506712447607602129921410034646468518786671105432351379329059786611609186140627462944896300909401904751987917400601346759992683152588603990696146243862194703718863259014062997439043889618742451499847188365648509541157682865271375178004148884275775220248459961304668057556010762634324439953608874508928394101113657941493703178316323321519338452884610534735753730347397046069079698558129536987547401736977665562271220632168532008986852460538283953197885156456773800067238440990563440012251612950883588171832833972389291432562268557720546438779843476799328948904037661287909685491083735596406465025850404883735166412298587105235951585250721103386008289413225847348588721815649722408291598782901831812522173090169845322007251277333189515474648846025700168477681026965038456392029467892722420471778400902664172863280182427549180935529877850392980669409146007382997502538875502134179843376878623270767964233103638740239874638018447254944856974199601493736952208576864902046032424088117365678623496053675489989837629698331076771177908255572320892361250872629902497670312115989797339041486302843888582418208722477460809055883400815318767788558906016322664119829834739084789498979648783333840660759 1102081386462030826897668767202323693410988816235299169826188028921050971616761102446140037488360224511939568036909160817313318092121706224928804953913636260819364754686566348006121182943501726360267835784020227494858387142907929762061393899794379436589092989410139116037804059525538722109771989673233929795019268126469979236553118033299552583785299573110510897199987432546213190607235832890304243529868665299353519862551213377351100845901730269354905797115447128571738183698507063563448701301726795514431636057702726164673458227151846646174421841049675687629772682332363212216807833013609722034854700808872695044049193917709667983582316146521730622770523368497886353963779274507859208697157085475112991268112782035509769335722229332946984156749541981913782053211869426818331378923048933854997519118866689706257339430302736879167726235843432467239120922880951239352787165057203315380818000782912221178329808171801538744620759811331673547935879422693045709925938645844136927299178267003986581101561906916194406398945663830860786251953728002593412427819369307817053886714307835159532262151940860407067534705189526818191804046929375961133015206895418911497698350443503594884778024755181487740870100578360135414919946591187632811101340269856963118846720333589435241768230661826744097678526995751181001747386008428091488132173605754380110578822840997658994288096724879526338275755998213798808125040571607120955990527611477305052548064075991857883920017782839129306969535173165684046309768263842504996530087703457326853682755247036802609370101892405905852479406647040705927881427947125738062917992028586676726759136855117072228824394899166534080297646920498897980157153758519236357345917664369973093364741679507135558518734721892133299340548316705407903997672823381322335818992 8809195731321143984020646118303489287229680320410188206983745999257269252667090880355245960296103008627074945476999704793588856266875624596960226973684486005999011180328817376858154289323853666274545018951035523535504262520228113105496831284648854354318431706379505165901544727517428985755269666769827142993214628496191737346266544787289411979537779910779823385400489397869710725909027661339130571297564517459778890684498693370854440526085175614390396467485062081494939912917913533659977249888195329507369657946637316999801097742838253560070471396022267110806506940372699746547190169948756596914120275549313430547382312657968846940487352271236447441263204248858123298597457817882136449598979518617151635289736378588053097199098504401375314091261634967064576579366182668520032110445260285870002713718285821287721424494091159664755474338104342213815064052942787622560386011899805797109247340175293716031873536747012886691862780096670124675864416746813985212201171484554516941882451721460184217269594514730301624152374635875614305103870119923068827425867347326199684645136413982544981222200674234433026970640744112435945583155588377998177281492966824882139593814915850202752964772218804141118598950685042539954527726267274119582776148569513213739235739487192816519811444319413848536336417251167218019509816923407663498163476206073868166856538070046866456203274534430304315346557213053110258122074019141409769508529174591556230321769275557773087438987050099787509652654961465064199203374164777073109131951281153323740238499224146508230688679911106181075695029095517825840430365240917457211494375636487586202392583289663865070900783286611366751922303723356487477471939590766771399673708970084033766502935219335661503371329759891348465068703373949969496316281236782360422413478 70414003633884975080803576051003228305357235565817651338792110334460932616503155053530578405906107460491351867864160947651877321652413569823729930071262802527049555129871153708190735154761549162601747039141493858522893096632773784221360239496942999957422479385185288546861997430393074321258169979363132677859657225276835529360730892258836411796335288549353636189129893410136938503418103032382140235343757308590081533414012275919100674671300468865329038583470322433684028354848320249805334922496908909417123308855006428017697204417564087174653966977624592489204875625370341148452847720637487051561874131251076944811804497843620418954749319940392513853634837377832685128273591440949116499220624294372696015173235254363561924223272623694304772519087625529103024564485863827246416726944460089506331946309467247977390200400253890178704340000603837250177422144968952128616498248603288698139076010218688652020050893292758884966926422510455652875862824763964027561025101426565092924127746189255368620991022371706797797237429319428684186815810334180328446993209542010047797831074312624169481133573032066793158040763071242608187610274035704077927644260938381561961345313401426851485178087356935992472897485687708842652158455075637674362827098230377831557563009264492258220828849240573765940328919623558022136932120972523581601703226895353778698155678217959491869779909930231421135801638056574660821173337927040685433511588325393453464487848808279374593567830626860975489212790644171484098399406510415334724070734272147183527283163319733446487170770265329621858434695377297245614727958213069287628405411240072928252499240087484490722587566450989222316362955473768829899943459285190442521691644150017060942096696878829240290414688935486278019506844032774950642904017628409440468033380 562836175468524003140041589249187053053550169306882059285227784241315178630598419496370639004660714329175343286434575495035356543474779114473072349053441742724960017805452910170482894829665024660147350947183075903034946881756768758708543477944720463801944352397818580939763101631601708168057843377247355876784487675686383180066409742647180492073703969960720453133952290394585866163693462888128232726829913387731264701170098420684037916486516631360878521905694265536826039117132996565428062342824357613675810416881651008899173345149377829229262840715604848904935186377640569163907448282345455197169123956016845332244846651087239527873653941621298341890039396515215478014616688882418590586181239792442464534224879757402364462350419298902543957204208122576000018595408533124119210660860911537274830689844878931037053336854253999321848362772187847290265662761079335881867512885837509152936403158126640584103781808808007941433273647817533402056622348105792029141183393102157410514900971078540565491297138017465575584046167696291025254093101050858735976968156723241661075355288894345518637709833331027740598145208646593829916469504966873450947797130909674306215149435013948621378874420742337011070933664534886597380679371977384683574591906126149310101664401832067331132621007638162810682423652126760589914371663137012726203406879274805060337382387194576802477897836452034412466514626003616583413222655689915073042985212146041361425454732994145507505254239270036268994061925826911552050933505226248048744090436389477875498567346314795627131096765170388290436673454841014121234831317854363804160238997255261094181895855359544564515961317919271478801285501139714544161755296306799983308765513760159401490700603607998164944064549771566976806649242894157797392400578414562160969444186 4498887718400857710370849572861480745951021549023817669527931694767965678602449817135523506650805154672671849153808004526200757766243132005596028455884742871460415841317640987412589896166216713955746483947740137892208842066663586702384936936445843296090847293445574722014578314406613557356146492270093041585451617913618945757065522519115129919022503533057338092778973486202798013514178137752872702274305503534600542447199029569773749403886816354536781520422737303279008514357736116142132410149833684103289565493245982406906261785038189314494297094210247865848533058513160258039335405463544137172346720467884966292484297613178828553158006090151323602133364397404931897179530390103269274291432627865369423245821071987427544108842506917426660060723793638948976095237383963556124130925555496020448799096192195916980261655426847675518186533006948540121539512922784502479546566070162048976618734635774409518330753999433694107933510527746347954408443131787678406244993242727781544831244850965354392252183620561866366095930871536893310865159528292127613731961503704010179341558574991577527413755838955861625774588295272697180685695677581079856116227633666377913427443990529744584615983032740317992554889656394247990620492888278206407962057324074195237260313419863931558718672470760266540880732810805086391813677759002281871594969022255884875494078749651479095436231186775098415085875627490926016955673836927398137739988962431440558596201081793643386286259591928978638777138350007941539550014752403997921024522213998073748801109038124218364126193883968550922525096908077399745998955878964012549194508200304097726175124213009236184055405007582210994892673342480126593048144815517163089649001109166373105658948203058543737830600406823305812066933339451335582744248442364576664547354616 35960729335800295015977823256824475086627239385633680814062575376649204362772569390839836667146047591306211672117822945541718795250931714574626817010239988412922173274707680510225265727701202869009472305149921268511575875553034850649254306925766145769623103357220891317676990138819105937998162124199900058150416604678633868623740005939858377470151812730551641636560314476162784071476736643307334687946204863290979460627551852006118133917670951773761773411420599207041298091689102945961489801255411624129368298355478892410859689265906566430867853052882035602062002500483472393069464757176377656829834128665272652937446673465545968496554712290749561592165018410381765395733744650373375957351492277184144754680078140275056710620030904738282464557063507127331368598736823158567514153956885870601624702918807942557549135290539740503180439283492491987882693274055579692500706069552821973301571350784420414757886428802837536036936487738632203348888014300825131908263179438485922149800207556433443725513586620836651948913735385439442223419180754122103734543277730978926702099085230460893166598449263330993642671051120184855432955409043511998791093212875706569807059327875863523286384234207378663254970559560141450810580798751487525904080220861291823948882727503251699410480639353326421483800717150981400828677693007161005428861559516371802771382645622906497260886859024498293587199625101253537811783031474849012615695878357919092001828685866232238709397027367506961025197451883629104967859325394554331688190902879771956542163934149889886720937849529616579441742700506976298942430348210383609489258502333059667570164868026808072930555066989673579037519025435749365988407698624309281625233037543644309623408283354288380390636184839129814730583881064440529129950305503128377369716618088 287443183356268563396597214892253796995558248726093583388785329502232393946138912404810226342073519342435401526341914763796462950030315155207103066277143670482114875924993542363229923106359669332827676826183957407555691820618098834972584478854853237210892965468190173097981200279839523679774199847413468512412358722902735622088177888382499058480230582346009817823179332079577964667736161649169726035339885419307916330539577242800266089855633472547081417384962772536568691322509557325536605143477332487022994927493537590125720710016392536684175565283651466659876432386787700963342471915033206971326277239210723007581796418416380083316405168292532694219680958427884012459683554291246894963809315510118629042182402503907718769957504935520314841071733770773823072457765032614906273704946922353013145614131750333863312075817901723119643675491262793651710968383889392670241148413664143369141686064438987594124062436670906962187764056572782625006025276067690129782142672197022902133671066060055459901231990703415383104314262025760237948597856123543692083648179876945568692857759647778861620631683707508788334730279108096053401995521210011315494731223033932400196992172178478371728379721133199540804857622121803963383253168080976072725296883882615425878781302922583799409841909572433469865301286340226018858208959988270950723990897251324230544885508486644904021722137629469473473579390719711793119743620772707649193198463876731696600669390993437681412379928932781765456682569739686208874091045609294454714351828603474219694943713776072110426264456542426353222328028564153854339692990120250227905869260015042042622187983277794802015718094273299058520394718258407704857911211822955591885881853843595153365760619484238635348535759732686811132742302819897599216862390057963866983171876774 2297606875030683353251284199595562755803513196834353820973813584770125813418751345454430768016546274048799513698265269550483504085205419288775407432088836613795030290667430916220172420370839323017731785122936512267906188095768873884786610473356978694081059267099262552153707893316112701960911707243058520764375435523240111206742473242559819324880931370521706919479608122263711158666669224486788055487573103998642535591449673812674353171602870068074921413333388977920377890472291161558451793118064423623946253005577230034959807762232759128047685750465796614864603424531391254053347835394637261185428639191225648963533214881930268158720190004622108346508027373356478419073259861819335739823956629562789074620600244756942672016273089911170336239129361610512663664700976857103458110535631804649007065279233733561994412354701407853066092117711953853010352874086371990193938293461826999676973274086954972700783500545408605370251095009444726375631910534546122335658411974519406964184863017741640305709633233895780511286930202978889734673847024180473915117656067606027535966084539760301588757719856674004558453196862914559380495419959127023371979248930021293062763087450563111121790672297118468052738363090344931130545262960049666706902528461804744586017836979048488772043097503407183849837695337103216175845255157122214481316177636241103613043360454918007075549394662835104438550970201785896978887061743150922742315178778223255397287597694787215604627785036509576550069526369589793315545736865232123065106540105701303837307502491998335166077560801876193443994492075430032560526964666698962065270762701831065562151008815682918509840884038639982869355940338427052924067016723001815576263760242006314662493109640802269479491868996968201750061312040478471968701897321811796924732401541757 18365367177415728529176188391396534359815045708194065614152899186434001561437936227119702125646266228337395315876694994156078457267039385365056855647555186966937416505139769628647290756821664977313382884394868368958308456386150603020069944685861112688981897517732673445919068387782169566804248448466971000908259627692611726754879574739604655815603931277797572146986636501340385225064572916964741099502642477311456687247406333336088080818221474422120931998327012558289057895786200719544439033881208824022689845234988855683121052095725782162699451369264284192441365636767496527561006264339347371467393618383887802201825823939156374650574623500090141524669252949640336952628336384814558906686692750846040572458681992087495637326064466368620784808252812074313922249504912492819839653979671583899302211885144286920769817055654821095353983420388755309667956233582144604267914416576884544783734556042305608012541198729799932327950549755674179719411796042970152795362959665331820800930330829904841403438386131750022116090343822571189549166626671563023601382933652790836040090307966566082954164151924959903120079643265674148488145682823472824880967231907433326077238969585848339415324514052181664778921670126745102927656448622757821164079070591143108721044984571036948184530407966048421610028045275418221428567359655720354245360187614658572515443431981637083906025960273757751803982191250208355182356304589252410720065792418272807727787333737996831227133809498665034089871404591445633640325466203485062766125247892293561770429995447314627602984799282884390832115772328277848918453178269532958356018940764680270857879427765373940910705423596114933931811623728845944993572404002894266924207736975930100401670241956775646413820438759763003196151594390596031555993600854389895974804098110024 146799201820453997241600881312539369919226068485467845665189228831159893339500374532846703670384530322449882188059069802865423728668989515445576734820414670330698482310702906646342585017490505658997458685584486214748619037241513302915152958611930060463647273639773280609930248083753384453824337990836429138743101823004925015303227074778548678819121717147189071894204144143920484328926330885790123777740800638796264259133628572739615385394330960179280012903288041234588315548984179071987352314831634378716376479938787933023227395144319731115590377311366284836501251256222910321205470051254903845047963528613882366036729655079946210275931501200870887514029473550347350424074033351624230170005523204172148597353437362704223069208601202357722465603950305182936227805853617453619501587297241470162705725323778721442075543195919829619240961635026287625667751284751538220015508642936653826880691228292872645731865449491527757328875301994862325786000720600826979720087966373787147319564274950113061883221159661603162812993616086634781646340670108136507892875495301412909525124061156708013652338404725595792475823581995831338792868118742372176402884606167196749532453189454865444828686259882963258582524557668444866567352657263148818290914901012029007777969034541761249148626956754782655303618918321220124011486418634814921781747467856362228394699144038030029728611237013398446292950994051472188541333953150212950932759100198243779168262501388023481537840040166537986685570357624077273857321575521735811868533217780310044098587837305520324640486828699094535921141659250059378820142435530027691303280930619603256138033618987736262155953107540000867514860626986514792802981128397864232320988745899169409559941695088828988872008406839295531667663195850919386235528034356670824534202471026604 1173405063168299497418727400591329520494199455833601775800006063354667353190873315895975745445972929070663333057238649013178193799264616389423536460577201109801848496943054366106621063589308312827552597038035922179316407132225903545808799394333114487427572225031257284537336541130680593860266448362365576233671118814250388315301060449290524314442600861147816342963878792238559149990166007500759837986762653796236670066256334754995859708353824955855609292696924854137677648469634788637663437101026242497226621260008596226432725584520135396330247590360367378211906599932546016296906939199362962399175855157326432999404845434971885390833534190268660524936264418682470172177766162423204484253183743195524318684955698346188978116323319392621180932786656574555821101247757303557969677130258373889650763522633541639955730690096552101089785058427774916319278862029398810164023947963801000788323512087608133901657644225003242289337546776179587282482660745831302998352860816608507245641398339119630471431510255683465912824072995880729057823568513987311816826136526341374808028790094766962354823143743392210750792935898750306162775968977828281029195916940881972382710250601840008243340779093348495284440939313643447147265906087139467740008583879149767484177137405668287380234639988589493156491658970478881507559111497437633850137514139979353175525220287757427099534548893791113163220375970174141222573636841439773180652488801706070965929284043381099486524503343008712222741895705132813000264115031486249828417659413696658716229096093889158005372493613874468947719296338486830677114867751397608504919166044529605327969940749876984025103421366042827502974360172309811960612278886975824669382657226836469216502563935063964895042245582730624739859029538108426165851818132077294072356306204107168 9379342741599631067026325903603627044432062604855119380801567235197674324033399533887787554084796573865103010895426332228048783295671814857688121770204620848331649134381623068568605414304298302553211464659421578708649585601662868792443070804212906841281449677009271608005559858286713966725209601806557300109754147153092444216426663377560039368115805758333083071392303653216265593569808419862719469255163547725720551533997668171855193287094764845706866907710018611963447636148803032710325779469178356917320519168052226707332374931205770792984215945451055234984968133686577670229308666405065636467582133190130576206135651012329643772485329125431109631996001580982839361386600680407512884977689386075267288974512052476987054503189394505738684298107832273869026449751198432156340467604080483430013663010861646798692485902884245047876978859587463778034224228793429376475432014119462442864120040861267090105862033363731021445183790371982423572368855989815040159794376502860205370994781752849366202932961279938008325961135083223473312178641611306762694467919007080145046597495802493254011902652388243078490792729804395983283449685718872885972573498454827260113265107451398518552934249156934497728715272044815119840517102679029280975291296745737570919060494083157060991050016225302388928017103514180876107849307144502027133000802268426563615992544080285977409632438384022986468009712443640937215888826638870621679904944266013558933873228576489019463437704780802763241148017278885943239908062564863852639031946423648022713055551860740496243425413714264032341283139185797118974353332766985563526402492824224916672248265874104218418502588940680839925004885938372830731826378999111650080371160787835019031942706641875937993767342189811785882501469050120769027934171905593397322747666868068432 74971644844528274653677090179715172253953750218035446113382637909482369120329922705452979856301722276201399798542956581358585068189876905847278539269873740089913921767312944728044512971311498151665335476839437146569170011218896739087669548114549060956796284900410504216018038794165515277929953727424891423939776647852856208672237156591179013878915545967316902690958195673423918724672651762671842009114375124261923028499024966089970051751699209879938256290881389015713791250926289646789514328927186578544357678710041249709120299033755573152183211548748162571030150303897942363708090095601992162756253395701403516593367001915659622115407076558189328014699872777499854566262243494452903900072908490947435570772390910444268609126364969195123101092609327533959812881553373451484149418887822723081713732660535531127790853859863405527716997328032231208926444448351254361600416565955365247450315117811592189646124304993383844176763805882708908842243270871392996170809249607604831091277812784767054867342837248085042042636590011064584399680648210944764158435893863021838831738202286338427311135925958696195608783626466903219504689989236663487374074207665630310513541581311247315486776761298010808396482212649953624726791994284765531047891211702531536821837362310022756876069992643989196238141256664403578107252742100353466163328356061231109161910764630913269033978629465823800025020930919029601470476078972994565707944580569679160235388042257464473069552137423922901406498327265336402132469175398541485579688276722735051799214472384087446395228880649685605079352752079167406947901212379592490795311529407190120304226642823291260723731724233224752671217754491452813393655320918249923641190621374767687199248641016494602072998067549088076128051325599478177426376598692826315073063180754926420 599269060965712748505025672993388646892694692672622407447305599953064708641854450163854085165571265307280785256283582973024936224085625279693450662154093615413358463332968413218180421941429299609833182803563251819236299282880311164596912803368784396078701115996453027663761722386463592912257543360860172615211597057272126074988594645318322725672945197273963145329966071553902243124913917290719926983018920952066509010816609347721765139401796267818026445581552687222401483548674792062769276243833212924008162025556047014902022773800865580439936548272787289198208275562262255910242391859161969564403246299033073062960794417246362906397226655823209790040889620872065619290773687130626235856642777278294652337376078278405296306139894201535463929702919643044229798192805427295719232925692723896370323244967997633966029893552684674668738940260205141210110679263881965797883748484530132305966073549651866650442097018200220634734067339072233170414608955870572040764816777823693482974035596625735566369572307215804244753245568072467134425145353145870609197419789936626779230811981011387296651069176184005305253589053191080649070844775792456264985669795581798805370514491084291028118921148922861255283413009050993486811302230648482532603997270314263724331426104612174979622150789482953600391584076746576848947190084290734106289637076396392553863461615499019058289776468881454886056155190978665386843459610960161062454413592366977952842204299549253525593976568064668095671548424264004112721606895629249076783963369428006572568473769111238086014662193528115662093011716333359463157655836440099883447581946269979787764651864369567771015289514504829274009999029550732542715204396618093111394870727109891237001411009457510452307698018058096028287042111177586897618177261887727110817405533704867026 4790125126686320244653578454736534212164751939683398272976151805465512741316029248124842814416941796878345514292179642581927185453942077907825573467519887161020723725658555939372501974794297503625689155225569930419168426930799116828330822006703440829586682648152283656849149970297153539817528167943491289869064490092391604954254034545722216515291893498412033593690019973552330547785925921451378741357259638145498008840064711418901052765729969678191253054818338256398573596409067329901369188705352491682513365718868721584073103724007160291480066604612957180033027719524824523564335404692801729173335954619279703587925763222297040117874397753069524873324247655034317016898948650098651125704554983959320456036797266217351132576828558926339112126163764507937117241241930563233598999766118452630327482444922413263455208102968855703505842749247698960894702924520937253818113122305655142484533633497812364034371679603738908425618756048852029170360605097866346905262685272749244645219363173774939180454650349412351985676095753434254454007778075132312034187881805886754544035738064858092968503299284867697630662921164563314785383766476566128286445714488958079128919426333327300316118907466017863798204528603089873792461122168490843676930445837954382591364306969735027638539863996422496470250371122417126171160709768464454562973988365111804861288278413740934712354922223078988847988211025818857580956016657018344177039856472644244103510239581974997159823021965825161562762762189859493939271330244149951731168089413369671607153980246413914371671421137809270179400903959997939111772746575318618362277616502041143770638303721141780696069964574485672272223652823778323608359221592027801620416140254674828145829204143304332712242999232341984498964164598906360846139573733214533202063154773650535266 38288825415319269633627470789615809826047737970873244335536246997098530452429284452557508472563231755913389175552576874492914005702349670656027737156510399797209252642615923406667491358541694570738745546378577085976109816992298618650765653726771734536056453897614771627861151699530471289106330090072175465636727076262751727863102576153465795974088591690841910700378287136393996339323950982574026628241167328723371642799010140595455134861507700106778129947622805484386017945621996350882066611321552214161478814037910891925864549688828551627772964574356489751359402525578221336560641950663597894248281626761782350484348059447552789401508772389367148886153291918191861719947702370817970500942389991839694288504083955151984632477314663551782420258752086855929674625864453779703805347915594815461977415834628740080612423008780843353705121237181395221992048437374919267549022921686885250304047915714149681829978398649422182322754849106268636065553223845610905609441209004468551498291462364018576754256105716073617343803528151161359402056012487885220396445493497486175992625286127424235623295576247787275498684150501673543664729646916903234072299636352497574066475136845549895522502366351519067351870245902582120596477324867531370873488250401875869373637814369261802688547093584579832789002981021964640797012535118968684875449369521539915746002177525297149066382072840895149785148210487109791510273600586304798534040970092706140579738106865716451568096182802215612556420131443571370276774165533097163475624157953583479878715752554896286029167779156597932334401849840264191129927120423292993896315073890185658002034497962042141946160732999067496230760905422668393978858870472936690805228714274204774289049348376039342258406389482173769242104038304196421452239704449203760559811025251563639603 306053544218768433425852146112002738748819578236492147935027437952915770744978962133721877232356603092924489352742494222222071994142503406581054165023840393774567888469905023170835055656332658651303199779938007095048307598788935960267010708282911388754340079414867454962818381214015651491703570130409504523905977473080064509329984062459235465487283998284578894195081599496593069249944651943166555503644546567489407736889823697835393771581416688199741343786372098718613302776609960009471342931493286641362419885733404633436432505072634821810776335242987083673267570885796911237965553332803127314695905378136054305209740995405719616320765649426635118450894920077801068791720563159030106935574381402651259951111714786130459922938205874116888380499781490063816463512997115289829176600774230095840560109282068006703481177279467669471013238536941926649877138564502542121887545786358978231396500013143855707394048598316333137062255685393946423385357533899715675931869214488989573611858553460800756586150289760606371630501455332901251678013336634760046902516461432518437741630449952024918034235680134238684149506941285331428286244847610328087601521017344978104393453782582570007801571684751477858977714988760745256315555510572045580908794336749647516935955613299967028019626068602837698354960415471179036043128580724555659107535530145039085475834197085747891310185502636147762634397404969150587168395650904569929343514103938911991666587431358947013071416748746474096379572954708959484121288569662946178424041371055378277750719485187457817707425717716255082835546463234106236390701120455038650748834508512675889192992122224699277657039122989486168103894627770440954054351574930332371025985771429913184004259764690377212927915867683557320414589063868397035537200144848627519439364619258884108440 2446374641268035445769520367517944109341612057515938044818297301502980477313712226956059079161398413031135923227982800011795902240632759403005064608485636002358749944785885187789810598615440437363208361756764036768548024183872553199378700683502314257211424306903516823347795619672780994063973149022816195985956316048294764295721317547155680441295812167344776795512345993283907088178352175318408211468324005787180016078297129632020614913161527064308207743809216480154878733288224251383509108754164469212955911103690494465867861235830798389314395007314120029707062417609275001041387540459529154021936991120565309652897832760983021988357283914786929617271573797655876596392699823769425213757493741349047213890991340236107434957960432819095637659157306373986505334014277316840231081840625678247286491246078622628262251521503732409405520670417600817805702873588260171684523887577447426450016518775350005100705194932789693488345409474934672404348404790777308214155576965230715657451347429977422440742634603167530748746429266897985792457401429892188994950592420012128859538673623595771389138709967685864881128815102502451871519750549520764677584297343312184288832006952887080122057176651917269708467118160840852159951605379475799203435786520833341285861144785792829283855469271999610254743654602003032459130093089050276790860256386565609646998133545735128028249605947005227723869931056098972649308994881822271880501784199971088510335435684125376278943995035497781661592092976293280101745087090472019237662778052033555859307660321148298755417891521211681602517432871615983086706275969435147274779031768935263459598151954178532197364502286914234612706139019403898628245120752087555873882096140347919751084408120249681931068426928246408556768877814354201428395484065537357056828401144070484939936 19554589472332643475287854006600081210392335075929526608341342241832896078816446345903569076781794212860838327879903863154078645703703392245725954166328876780917725135198962793850134004492188535816568087595035370804711640393615130048186387014908998065033772046524983698379171785095718939860341916681598106058401507626714687250950512537137111664327872397535163462466044134128213415632340766827030401601849166572604444007221698737169277260972478190889497703343325279802289656914436924959092232806881397873888658953884253542088524138349014875853348027996251915529520569078505540912729313096596535325444360126349965034960551806419264987247802777904056772585094519713203867030788139621607558089587938114432376843692578292101537821627850519636781376457036816599971565693983211810452957460901285064113934762180041974132757526697653187683164941671521217091504784334706725530902435571681666344960022307086111498080398317637667760194333692907252429696828363308285917072953761409356901960849997365021380805903833821662465687812563803069481812658260113622077934263757580341894817726797854243782947828684902384248671936319728251574563043070867355597989203092805016330711398468264407664827787905072366883715400616686573472648355013639738358672201546490129293490751630518989414169220853453107306307749738079534403233051366721241808156379120989612576776600747542026480974548297358493785342076782057662527502533305690408353400738713358993557846333245021120528537062252426962730460943675307852216501599697652971805132728743766841396896879473444936221234375577616053147193156489718927355467052765163845703844697646242817345945856268667189308805190857276202817811934304597889325198504058356401628566545833664105386469116158905286527940292895791158196974007395035970518027333131188848978439973124990723885782 156305630527373946138618838305614043815579604996151106120452646779516296403707251199992841879488819976060499768323553715644783781722536089017069850115366131358308336667104564121302616103849857644905986041017201365346825297715475728182634244546972847718347895964522567729379551811113093730046608582654899730610410254598486855673512478822898916827606390366203076314367493416530215033214676644035145194069325140504159848600234745136622427141465901293539380951707233696672025856527837427837217429988032833130889125658080621887124564567870154305490042965191174920854733135768426253107453529629840297104218576530378408448726654297180476371477393304101889759851263589996556670010683284989123320252652035832597238035638784174033367232849211564391371179651080750786885110711371602783716062004121256471472151517211289696017223486514790808451614207577708934999869264118081525345827506068526729388957954135609798705387340042591816739756270759128872639727500118870410327884149900051339628319769834267553354514299926464752996372022221304231550705070119451730122162022792957091733950311354049590172753567557645430092343192251081835281436230184417218998113021644127650010860664348186752738663966607724092943638463647472149650301257095791064114281028993674475441451970660398277521634760805913483181807966923903299838045833896466117487489461603140237648441912040317440677681052416309247184152182403288464780617190572258921876019597474961250972018124187894512768980588471298803317969460376660197840614740129287772207546539735775681438619056109362018135501826768826230048673909886396583272247695779622182039602241175026271071706110978827966148277603572260567490239393325124790072193019093384700278230328325473645158873069729935127017666733157899410225408577617628163990804953130472275444697584915990081408124 1249397767703194381908934804618885318280225928155690895175242003737959066348063193427702394973591189514365068085227371043110259039420903487082577768674685196878305973559143426465989322923650777641936432497094360470996637589306098724413632434562066000704812280309674006614868374682750750979641721167106087812868599812332538190475282610499727881349117938333472266999851377893154364782197877129520533149576361810270479758035112631354512788328872721447620993622831523530193581535353724524569162648298399360925822682356613108581205465648170020341924089256558529280658992836956130134397784202542720633460147312998500363410845016375077574204255646188602405049378180456391921823300056761493548245273851088018279606750743482155139780296354168286221701663750468390607659424521671491223120932128670469739950606361868121027259002014862163911846047278319239818982131554313461468730960053183631749855359377420434640097033856540946069948069682501051161422094087158337708043982484048807075917210612716638815178272547201948366599243912541047574341302978478409972618834148542702277473039390147523988409152550556548628674407570621455888628751403563167987731329902638401712583438808038701418594680863616692499029134530989004500320471622761509953157427813179652030017141575305667435994682909521865904313925295428311493489504151974234771322073913392901291063491787655873656982723000070842831634337519063703317389767059015301897536041846216770268039819146227366377467222043090625877762613600660068766371664867504209610227384028301903895607354563566955588225708759346654802936976476522629106590448589445814587770859243804928733388988601526901983089111402517320363826443366410752779950249518125379040229226155442535425199115718632638894353102207192507592988679702108678152026558486609488826621521898290214849003536 9986815152742683444746863758193787354130813201942069533802932601085635962031332848031736308671976109374669766885817711861399597434333865526676010919590502656045164572587994669183291889260037875870258126689634592433458409092056289681006664493211736976260045620539888424325568743344767345151631794082937770141007281282170072354668079042818003679601209920290481687537035895870369918418073150763466882977643208963839297395186644055288638522085846269841889908299236309964724085773054822995653606174129540859644760567251909583573463132264962774574755470874952554120447606520669173325830817720670295739095293929856766825036284263728874687450174038396587109491641261358509788984044619079605951515603880402112759845895589581967981905786508917596452915149045477815287504439063844942545182103848692808820988644166968340459895375514452572412269523412269199273273309529947180046072358872096373905886275427597432907970137425773166151222573200540976976901129111232281254759701015280658457286422551227646086669911460985555675226865593639557013874133453816164688385650862801598659426909297260598692739603057197000217280568671492968125691713769676086058729739541445760830378756171377627503516970990241332742322548701939830331692252844055615986818802007194042711568319861207384626370031638162478990033470207346308021943076908296345410057475795318125547416607257829893817546237877125960446684785349047525251515078670917069334136474885954321793919772587282101491241116421128383912011909629803753611120582514564473001753223048272992709626999528536807447853900789477947962209091154950488582754017321791488627499074542015833704419787270822837243266029587459888446083512582573715992531736852803138971062113580476890813002238387738287257536155164200669711341457987608547250618726215098400487264663129870625534080552 79827674931514876485891518413459039603659363530725864391409198470510530764837344432068410208550889275645973243003554803212595970901123035965298356881502117054715384208289029710314707493692347033196926591233269532829851087496812807629891749249828540950462035554605455215154922264050166418262888652796548813428235352750774831368621551774440430638312759362077140211814017902038089389198351922895009123617664983214081209996827546517521333283765595565317819021885371217708533408874603292112611670853073371575181410830283026947465489511961804716756184515820984334748673482721656948755771719484505305568276432981159546611184149255375273910641675874300657445129391813902572755371933804989246556635252040583063859037026310292595543506914472174913544843974047224325880898321340206061016114302475463274467158833348487354525544132663436723134487219951330259382109628815476969388832891077363341616135510363501730838784676608506199694260463959602511624465653447740359025108697151547552255930693537537208955141031059516366059249894672085033284253710909643920651988073550981765926419130166730123391617378618004519032590664309720262905876553163161878981239317362742483114225407993575536385586761086435207162962857844446315797364623905423037214173945742988099342177996410003900350021518065222741924366647354506150821255660885051881004121642491457904307257346677957814905649162650963359493683994636853794209704008548445981230372125416415171702803676880852702822490692117998067545937322822229770207764070179396624622671362392088848550710029673233157229177580989904070393894568707870670249193308446989366494370578853736571726315308552751018280661440073972801451617267516408010056518272903119879083964008698461631392368038611051344507115681448187951041862658334380460086268851092486887402727789560954441732138078 638087344774401698519366387378869779542068372446894271164049687955838463680896843971703734391678010849396729132768544246840319744939547701640247728063177147118554510635639175384924753601229370387975542364547134737794100247232537406691232160931777383371992086008804404502469926705652741453647020514760083154633491726963735438201677576922460779942973936595443929039882398247611275006325111546452481519741915426715747635632434887739865085632654832051998800337048242884517602807407531891306722299462815733442128592752085587342342501963021106117711072173993754739297257875921244529736178711509194334793342984871099344702245694485219205164740661532922754551827955213902738396224674759514136884493035402736112920222145979875769827360289977768251627051310741131521377233142013355514110164668481438384683018721253480753250680555586766648566196515968027215538171481197773681177147584286876512676028777507620672695533163697982954475868268605373619386898078723494334975570607515253897290579402537572013581275455216454898596608159117808427363518408579793616261674221372234194227939869695696360981603914934512429873016390672419067873412228523238595367370800747776107483238487411911612904846805666849628016047524269103093138634848234087782370935602084766008907255078179648794372250115566303106472079915892654491303426696819163007135339857585521085626374255955668729603568762256567192975334739989945090484675175630774553916360737712315411887712106528439007450500372146041738846992923113691829541613190996952362891070498349461545393821182116972454989967897307711617682381301767578728346831289695656247911252779673885920073639593815239927874861392280983532711438602157746995266481500482866123630604314964020119355674762036920127619314796713983378119959137811403538206324333120824120750676728003253268299629480 5100432035408584299873133526051783290546571404220834254556430476518657094554599988550285023152388480989877344980001336825995503265538404865709832858409444986359397303195694898467215695684784336711437328364674697135468120562101292303432252503189893165610034220318050256194969631501131659149554064017125345729484649247234381082678197595373583665977624554228037249793170298009808929720665145853955635354109070975279860117005915624619766819799892459882777734139225015719177509665988422683454460756560103151444934163996101323575311453145939676964285678406236803571918537881982186730707178229577666357482791984488439909678898304965328416766490885847395278160716505268508151006429762644627697837085408930505481140675965730630365801662770237617792757487788639655166554556120577355404968998755776467557260866095770541962675969379597977471679408346902163596329446281905243738674166728558779723801794857617393733633660106636603673448930240315299441777415416579442692481625899785325629999563411797515067821737115568373982135006232494402563567990366942321323267561494068980361594022023777993298777271854097389386499991928059569269752600955022435670416893545974899309252747519297336483430890991971678198492767618634685209511072947040122505049789559414023943813377451049914026550623352857117933389442576794370634227515963221658885847776003341090076051850178146400340136794156110114001156606887084655624922332295596595843475467648003069441675323332136005466095046919761012487828479464119955313639810512873154047216760671545613615829057382706663749094675845525567696625526577754100754794218144794738105906211672812379069868598716027478674300908323047679755366417737680334800030852765255800152321968133920671623732915032385610637401459115131133237014032170052277679842986252444863814424691469738285828787075908 40769368134010007371643953493305685085434054704382703491884727378326166780025727007173826949192036279624287251575732633455979654616014069624451553729068184644529688162789103680149422001446299137922645331631688417524035833713605667506938458965237973576315457984587631927085975593237437018927222115357508132446881540191674901934652507819715731218961261974044980059804907181062740060368511236953216631847897814293095557154175445246362520699613524039975646589355997801040925321935462725558494045176758936479945739584248071357675400119144704907976060586001153889278427553402098542707896950221957928998152985009424596469778084898687654146188867374131452154479544917066011794814789581142050512260679685853501325038002702217444365331255765863027363416456898170360550754022002353373470443037828233876466230447755781356989841745919397337990217847537940682441923048030816173554546597509669332679268711369382171607966219110050869763376788309381371819132534911137069883839110641346747580334201884789096666373962876512556096044086732088638869870692666409081760054469252362450515416495439144782276207391626105941389205726992880471467489423836862993307462153736223730227871890269278348528344810065507426217350793911105525377367583076335418971321184228180219138883435708575638860941505493145653438797908024384377276844809280761660838241163200287467498987192997505735971480217292923826154738684982193335863488524089410896333667198809446155035858140044842036261707356496330760908823061822997489885132606318586691613259259970384067054301718093623735897029880654927577239494952722517843153706260358291351192712391056101776863759370504163932995243080631262010488360280009929581800614007731016515090412016146488087339091074306219169519707228313487866328489673454660269883593603667690791948618045988141746898579564684 325882604271486141175597007306221817543131290724451342359633557919212225076417937411528642169525406489653204837747451058442308155565749000591062380695886132053683077565581504911701897886854057456424737764102135835386608229705300757223860633399649467749913465101662720158683355770596938430047836972712294692003707017437277444285700027483741598041408265588264057830098507533282817980167250288725346939919718433928888331716519090120488709595141398622300932781087337581397162238635079084922121830399510851751889315325306357685008230457578284149926765840044602631850906891684352781798398704389791144637298797101843251153282074787806736985542905835880676290399302202447551015189839059105785913217715680441616874846936013579340818881941473318348155238331940069310864446303827507557441611029383270880010663189043227906410923695869984617519456611723502253933560810176181937773822649553827279179076509803575817405908871063942482747985045998865031732990924451787022922135670014523425426395219934434330476727214345650000434625152633480707389657947356531231067926372405954715110734261111098445770201199086255221280116590111124255084955201530156884978259744473158357362986328310819576942598692155972217868503922544201945102399939469839727039016564382735674208451655963834501935594772254647793737602719522373721536339855834488627724355434070831560113035598763082043942032022971576632671624744313164416856783076104214047187552842368952801967865806463831242057223230283345457216953976389553547556692134629297767204253913948313242057489394863617511339646927731189501639255922062428921126394039014613002676854212519885524326170158117416215517282329037967245431404258991513073625926790715785368263173037737950287912289721570932069213847147800583070161027346735754422956446659377072837172611842526776392432135313652 2604885017561089520187338700353665588820962446841003273095187316616980897076369521587801766990119371920696943928961629234876659422875023597913317995302794808657125561141793021042568544060800657386006636819980650356327388133504212926215088993588450839736809885059601621332201968747879035533280318789581042788727867938673204978511249430442732885930765176390622130575573726795406577155754634828350712764257997257480098102695184982294107691027012537693209626905687750446636993935385873740569264891434681404998632875700607519031963749077222515446577313938622810397551115812319232756939428351437792667080106631376625633231614420776017509937273924457746834511876602348752858399589744233481405865817904652528505982606672966942214883666013714093149294890617224792019847521517932786344104537117150117256784997766348973857589621910439044098640120313321857648066754533934159017383712872272209257992449682494807763619710669957827847488973164815629571512704930314057492556919746905094894073390767788651714591938745302793416704172312186572373693985625941139786592072964913268750400012594250553744973565988794320500538319158434501082766686361606914800653519316844742231457453721080412155474266430754149027412694995928487174674111530522092182014318513563109256056232608868870999064281965418104795959187011186006986765298175332348582303859305401741302139789721182590394778690731639441427062686009290995778965651862248608213556395642117178654906204895297570525185976614793137776697267550517524070049556094915788238963593738004955142994301993928685544761199371875156600780413954362375655895452481425497116474003071018110151581054185258378343533359480699948844962684397361364616413719914143629022298113451780769829660097521784712194846950312111707831000284712125803685138223703883964183441501269278816401839578046430 20821696843223191856490137969585887707241007465974082258321192319989832727981446631989934746365117779438436853186472323252060000831910863256787911342453397773144676668340067338085440314947695003801964475428147783399537235649197500580081330411127810656001595593493153199728259081637661509861095474652238195574705028813771492374638230278834762990563540883849762389421743262281265239596106732381066177602303254419782167943737411703731144013251156192790029504190941175287507623214180985741210774492740635357248236041064704192379310369538075984796196542227335981838380949439637752809441559504290573303255999036506441903996815845395315417003589632443376429402843805040085295965939957659200919068673074860724555836905071871791440849970824154309498749096689452587228553670556413926481609709101550366990661170349954895651744507919274427930108274792536212227993895444887487453252556704267770137124448550129267841450184317073763267315986079119861469965875727407987600693752135169398435043101653730815776280006693440040073232390699149462009526587878074728925847478343629886782990659392870116110252814790184335281571901537720079686311140796669996521698591333933557523743545132876102494022298068846172609783487635930116179483154472480664949852277938745017480911812705848799125101117149502747466929712880852600699033250691929012499028691685590121189269408916690989795653870935354687396671101466338166474444331574053667260260743842796071490194577842099991718781577906526764565865543633352011590853358784891941436191152460982234730799723310053269569103732351510726689470294374003041235115286856272451691982565699162850794407072453784358385032588259908128919635631581346193251051064616963439755998936342572090335948919410232608816513149842386961526976897701776096682775801809036974851738351484869313134703920841100 166434693911580693228826320624515808852133611394418889369445288166850789002812217805892327550092470491055243925982845708597800742821155331441922423000394280347318414768384210946723295384989763485640544678032994343677458865080949957062613580167761163946092855460010318846002192331530247926766841369807623195234959696529081418450040249056904718320651561447419452825736377847174599487323700966111538272211938552280339813753358183397282134066468516170047383995411230574461332028672990346718642404633681368335443904541577238349422382401516712908459698626243900880878682655864829864340432153899397942696009920837393316174650098949984815182232707149245506902120954521481764399767227837411909711915700896689452346344705649730211490844670302265334257240231597512990141766686079224605171305714904896601434006855388297641455829044603818158802904407197664069402631908575311267337756144002858535854811666420555035705789174804224640844153301166554558459467655158159911784898053097543701754844144117667829310977257102474232518512690399669522723468181126305459368429416321091945624564888971169651391877934722127254786602860076143158075208260537006858750418201621564714483763691436399516558193225281840032031752207448868153732120951494502188440069061319059000429040815117448331941812757996597360635536900419147561985894609231399055597213139315956007028924536321735470594041594585957201997185736751367064568336211914359649265240332107816981167908257086331867563704481497053605152596975477374580114490488125776544062229910646201600891073482009563897920692371025252886568796131455294320434508956649367231109840882757767248957490290393622778319723594903657620097944695886656090988936641088418881546447859445721603517990321055773537212816871661446121032393860659386805031450294080370234336510314999115122829104283667930 1330367986248348932828172788176324190025809185307316477785909148254880916250926314412089169586132315747877968826492210877842050970109232339545271891254326656431914443416059279724039619495969112655520576120363662298707416871121898731023787898776001313391348515837965110338447789153273507851088211328610003127998799121572272422224797851258809677169084085273294629163488316471510021162022762605165627707889809446068911203968515624211798035530300844858056674815424523573412830479007226078409140182974875491096988452909497209767194934309795015129210784038946300968595309261877812758051231870125159470575242507004312830446449318133160298725870838073397581483646000126205317910924777740098533364941892377265782788683484884310593740004247913021426424390483451367224949148118048082745503667022889125088597113734442037789559900465781913886438777843583713124302796644338404870688276886753744158373977237593895325665106937205980063566247035832023381136916935992203085834149338694297075229913196343304530659628828811218747879678471969236184350084510153176689193454069912435372013261339492490565869591851820062680961828236829369090020530060868691306350053315400611597203230019207010875543592699543424305953999055937139966947655216948760705377260055386552117529985129420764050869847056671157056391041275244864277724059000434709453945760134573000697531992725075741603328423473570572417581859195175609548145893972322123257496101439712011393984441731939747210645379843012139404707345070659786494194269261240904156425788617110690807092872011426422810343819462464707611543216102214131704375251140581518000685573552834135375109524559866375320466355937520485941392155293476542131440519144500717148170079332107998486880386446174563839555019750915044411229034068916951829438820106274377228914969629695234162701962724092066 10634079200941856120727304600897472992999127312858610888682417450926482128766240078076111584146455182097277557757344892949027488342696247537481869666673499508821100358953658676274667505379175100693562499872822771736390835446137219110580004234316754965340119340917849635655778401118962627957424341311775490173554759896179005339141948315478862896968613196330156171298262440635441507165843247325220315007978983432702613841709781977783060363509645335006309745477717657159425382731996338285852110316774172126059611372865691406062154893671819533355841669495917610868767249188961830810195819754611479020332268260315793899192363587393631734525780163122332068043947202587903209389009302374875245472009006195111115731425138748493609381570989948714091180547468127011952663329311029740295577913855359468769909286494853259229876251540511978618759872843633228125009527940663204008931521934462886443634382707092974207222860698402363941338126330850190949349406174820500754517699572261966466927881679549619489809395671433948684209061512938529626636071106515538590433937958574476602383246963984162904388224049014315958489904511624537799555490672083733025036448553504598875530437404844056646462671085023755327057335177078097331577935649048645789204876874352196039204129909961122888745669464041949085935219100443093203478131267643694812948397202189961388835061839432233613391988853787337124384152476835038226741213806823903539698872808870516385098488878661974660283397234274474525307912076731397013375400727763511577392313711698901458228597508498539164195345791727818925708302324707580227688239144580178041364325024970979455903704738074131616856290060792972514022983372684985551486451274746613668606497153877621104062698193639336010334141252278334940589648371297678123628595043405851805320655684545162223571986545462781 85001810572253738519593029225721336678781872588728555830131429385079840919269698206780505691863863173954829401571396948965230582478269901531564659332610954744961947540176564146673828619329386740475763160915294563906242988719993382629348213454974177301700192586381264583865449692112721669081055416448775487703425735342916484686514008146003639990012764256700235308269649239676277029628457651318590541455632635958669440711503689961099023973995549878859690622031809377204431469942838471386953406711807853194158786027714375332209178508736349188076599634920417497313731712109596946614390376532396618256497676198513142784495431175934021033918072392429764203633758492564070815421419887231379463096733676918459519909728788855839851101075493384980266891879785867400341768381085362682480050255057477943338110335258433285175982280937890650026038629644932272618145599080883010567575249736233676648457142266882671226954781453853610944712216169778164915035558465057034477773792375282332592321764880329286690552399316778071061856184744502533559627022762523742097202452155810535066909878070854105652201876442608838192962197583908139668140123398393469454327962846528645922434121181726621307369801909632761085764475885833806268332971482926534853116868140523250727228891250205267194947707016868498774418348641237831497823898507057424608243015945756632160483741684627365178705410489632349924198214979854301537277439908321642173586434651252444564409860703290510120307907616732523593734089362464677360403987178802993422321876946063487583726464159801977840011566232558528732360022350950696476133267666152410753943528075717094857429179638358243258746876961630116164972936515096613591611898290284036824112756558228969035054250760601740269354121504653378074216427397950472970827676394596375867975241520938761519444860094790416 679448654728463937219788987638418155232704019838244166268679478558955956740486038467807171584646609271708711538835331143878064730559537511282903057011179861341784871789278327260768855262214492370448300565419188463407020346089837243478367014106614017456854746137393264187332147295467274910517686651118548198893093001052621364747061764699946550425935611095194197579078851189746666758282793263402983091770003089063159411684436997113384935686202765828162412892013280305113753788831768165758268390259078250617281756768150213388770192805468988133039248752742003411364388118868938645122152087665725570973188244872514800169834801015924982254337917913999906457713038325550042465633266766680383986324778331269747256142717757608265873808525168710087022504906415254986877127958597215881650150469635438492582682707258769910184940366515167144844551042543805817695238797563655264808786561127091089136725715570472564934011715724960736537383116887692927223097369596155584953638278418493101712451206429824746105402343775498632098607099329533438062046346470018638144119301317871527943695194389517625516364799739516341912307289634875479061535601110687664604949632612609821532304965670688125360595419045745938526990989696905554462074610977706174277074584903738296184920674383114618790304115104532783507877437835126784805620013057515237646787761501287938877166055851898939287963446429670353918254787680057211108708577008673212496349894248710890890114311440051735652700692081289755859570961961050093932901596344464531248368435234363553337604917296988831488169673791518619760391500819475794974635707917359801901398251660161762650896893305897962102082168407134960229746921435944271206036847638450441860563715768464771346608990757543329812396141669157201745425607731266042355401052209248579210226648225764691104738467009503897