[994901308398016098879744077339925299190619298162436815912094025639964973067310045421920510844447947777466674842837257118732152374567217851041453906166892927789836870829541278318950182727690859105432484631017283753895160128970205260690194283867266132482342059491732192562056525912721458604874906596730773919157192539085484908148320996521820511906860489206656463342621818282121053473537360876483583340112031106473916180492101169557541705858486627552460526037431644121510727935443035432511149843441448942303082713257352918859887279925046611193679010573037850858086080446849941597719724108015715532983291095564120442815953178652976230327628640415836853858311620541374681565856292322242120073291078861509895190713662800854959191488801919131766153571031929133529977499136347783202041330238307869616722758353262516237982712548317220870811224553357689105363603336648256996470412044854253316431052732169587871892321609661434093123214980689263767083940296664902706570663801616463085666303671907340563341519354469827177009920847230254084886782617851540697687134238310123142236828209174893059162160409239387618984317178988828349058008715159406528900484107171150646530603515970740133897198572681801874325021042890775243843718088180038705917256351412949830119138470927197300173006016032481578952130500034524046139533091037287245389063527504975774664953851287701185063459060924022654802743619056600498233820048864603340603627437182249855019166315602530503714304578931879612515149359948688777405082705673758517702378046767821947115464391322487998813089932941155745958555544673693040526811120610049466071667022034414001235492839598482841467972617961109421418363285271655661849807182720984496478637029136265202548109811753258753018363215182879860195430961797692882905317211025200351865967572141309989369960717128459761831556798601595187405972868057185994067150880669466645304142531364312467607555264073569229534993152686450015935001466068316257261113699476453447662417840017302438930629654634276178934586923906323525425602705003470146842437615829421583672830320896413709942589716647446584490795587836504117544919214210789811702896079787776014511459208961337326491395899618123817676904920995295270768242325813342711910270880030150286929320583926425948240685276531417344756455399542483348918766550974456293061118830539099276023958451038212553992112723275151085415890316503464658487485804786128902466507564117761213349716128927350916356992648394582900906963545009856284373417854987856209610771002016311534256883005641710353258402404646020352680352037651533523532330058559988010994752850571036063194372438054567581894641654994325816746312520228203469917697849475338256756946145132156510146249076194892271784807418471537736245435964246384143533034821821547674413422107429044557283378864807700279280428013926535505705620373534799306012425716478980645836510805056821914394553376396908630085560947619375382593441439707553787750169733381292626336969174598541947875134375826326048802465836826499597370229671924700962822166105201187135122215167327273567008013135255937107628897767500112768965135265795047580279377209606514364452508651080984326955583351922417806567752845990548183373843079491834769433731885034355513192519477903569802001824320654169143074958651768743000315791467464744757648768120363387620042222019549116030078916046936104616282994305875825902233708734589297026763918185133989049442888990413539219281626112947753260392085660567538739287611150890443209177880430228369827080435664125813890001655489836937982189778445356937687923965653288283891390596394500358628486625739945752765372940577874797923950426712373843909156825866272490027195255276447383929657769631318470652403241234224701908067951606841190229235341211645455894115126182915388584600176060260774279855017595637035663624362649767864851893059507703089794086620531516325245199443439129937982766235549796414617365671178898045493876522388373806832502245068701374815008695554736958660261816136534469862539922613963731042188770549749625435239951809673365300349630260170566795776321595236112193269955129688684451347135405294612504566737816782574095932299760100708078528865244215548564659650172215142654157144120032331841188435181215215687163707138487568439147199358059598822710718780264024172095441102689017932956127622843382887615049871505219496472754601394047722692984880062522564466413910342491139919852066569240286435699036153593443443866791423039919513346859461223307635556868419105816197235488817174369566343738538571477966530734064227035746595656137539863558232235504199277085782774616196657648549009064474098809930703852338776295863760470121888418645440604446031772747940147744946038783537010476349826500542198758638286770662191513896733422643637214588684815803735719282961343352882484149133217197423834936054347834908144049614182139118028467009062592510367767197321751216293926622893218693102756897362848611808295088324164573449073723377523327681077846319197253623994147933699102335102761618308610117566764245345049789143324928995261471148746407466684704175462760506449358624362821153250847508569479899490374398206633760344004332509436485558895793621856322747782209304471478420556784790716039887995926336189226405116778918164879033458949427853270274756024215323848434386358350166403888187843004153773049748572205411290253374173867491340987371315612674144437955044301639355974833204689742731946673734111028132888261063952181244498839081256853402235068738215264653256751703099540932390866952519462748404723823991587681084437220742552489867559562049423169331813809127169341098808842058889062785936904313356026866285895450992476907173233950334587213634973318447237260297159428044722593268389518904058060167796130551750782320166225379751293128221560508699953439888576120818693477737802816521352733433607902008023431176505822752845226383333071493934551323121686961692387007372083698080945480093864053882061420726379346171211473512879254946968269477020762234372973918766798177291796194105316962302197667944172322563375146643087695070090135016120026469329507436162929445345000992571153258714936607700878832515633755841458124318124945629351988852870740384037497843228145149759701477024837750095425452115250950006875923927208369750497146843586172575759290851432322127610861313656375469412535277447410159929793558069201866407023502513760426853224125952803941002238087981170713852696955221940878613155824566350447585857303794649517022124847570815356184204298747956768858638503018161058229086215061150528269187396534693366775658215928913391953248222653332347295372508112143970635288507394659833724811473319763388627779839531877811191848131151954311211210710763410362067036657931276708933406333972380937599293477588549612576551823528978297592762978212275086914258145846308088294045857188676568506501854444665605310687282505159542690803295015101791986714475530767583052005030290909418673180612933853517061794578303469349707933152579979702108851349011187283211635729196267274497841728622144497914897557749768047367807198392144522674841838015350810553929428928957847954070736864084606155253505678183117480686949571058598131257884519896335977557412266381448291403822479430011542725298379184354647476015827575466097851881077184813145625927024462592897475583851915639826752058350667945576582087143306931385500573835718040096851446653661480841054112568802988163901199415997404689922209759755711323084512412044417398903229530453468132697147401956757360676779534618752147323582044262900816383772481043869258715414146218251864103470464736421761416099541626955277139764175184411904383561250656326426356792839530802911025999882224136947453008556997716627986543219072913040343740082647453822327386720320600181418092013210255460288355411719500338286429084737893217767794417025663028283704300583554451468209883325794693575415284664872702417196518904566781117205410902989957325753758282633959150880305429387745540557969131977753168288881090864053782573521031452152517578555431324682865296654583953523319985175833952186738174409947306480992192452978693126219757787442238211989312711002393900816987350290652550751497089845667147988718867980553297789398973110153170383541945596119985799127611394469354850876282152865297129245516104997822617188094632254197688849462358309606122025240844859017528912539044892978776614061405475789938475794974042365149913448293644931581877193614919085749930986925024896842621680254323553132229847426076900035844343601378309268948641496202026241551511975724907924596285318793572013960737158534684022071519186707106439297747842719362123303005071170532528766011795204766183328819008209939799300994556778604685041966947072149703584237612992090375248305550144594578163625041335147918039086605681147699676156742391502440800336345314623861416999445604683960585407191192621434658029361790745746351762068361812171229340772705930847680690746532186337990072790638543830037985792754343557235702563761509042372817341245031473270291710477503560567336484347271255677489418936007358256986629741564651237749474416652332075301005685277309884195668958901047326970166275145765242968644765914431942230963469588288300517123809938516492852767745785557599715084093893097474381393305958527624176954819992915017802589561885134857596330769524728312981370823041620777321971118810804064726073924155993721429832904306462012839871924122084318241494645507939458054086937387137203051469668873187956739367449518996265095519451872545492684363967770888217230220238372773280429883858296062519764997916229150569980897231347010543361503638613062814385357247609266199527086723809293944458420928043671219737682665242681651908567989451806072693375124264794722458370827751667131752991221307815152311885244217626230521857533842053333210727642757594817431992494573706592488843933044967852705548585373710586471309710237805757972366242637558169705486370120754506128890678007090749554499762135421632393150362321986270046292284424274173643353484279720148134693228717522420795352486608907355720546437666925391590178774914717904327293964205800180728182827769871667799060194873473518578003800047652676314644530136922096012334501022640715701767755802152223446419701094673084958346925393291855125238490486311875950972316959 : 793387853305370980202086651149582952608895475935274520721555013574311326104238378809547404156682126511951622587777371226833617676803267168488112952931881154627528374928618932316150891477153621497764304611089170321242818610521868241117258305451654006577836768223894084878219137230920371820524141313247560801942973476627176646299947559131531508207966063558134741992631465792182090459627475451109757584898104342543515267128705718370620437416838897838804033932762256025653541946929924795739714482768756093766660478507695841484146356802934524760113844199531386733093767292383133106597050601022722894885747806629666729770497776287003636835904390906930587595758980295320377594231088883853002519862446915342844335968734259253706706150039546501250065407216103579187280050249995701868214395524628039461556259455317244566571470183993791046044490939562756489160562843072915742388430456719934633607382196184828098111538075298978556114848198137462222175330968261123633074587618185197070954636302183233063507158000340532872319573626188587031105997104529257666071125092550867021834443356905025526934866474070082527299525326328923531343708893382223699341894100270330802250701615315790368262452471436196305185075139018675148908501701087200656531587047227332520150990617846129322544192746326177173410588454688234228321547568099335882267265739278130693835702711345075428157991352305389457169512526450844975879331940654298119749223174557964982622564809971422610595762867647938974190340011235958442591342252883722260988934293581835685738366126610325037260355551230965226065624116299000280969637004822607744422735489388277652375219731788518038385792294254525187448566891099960206266625501982560287814121019819257313021548718329430827482528746202665964691470722377413300576024616115827272388323323753837817967024607314231933480268179739328252727468294676988651750168283042233965341221981320868744114232129520981008620989650217987041420463668186053050570167968471032330533307185019047879654375576737644550134964029019952599001762474240798834261282335154125339464824881513837045997538215608577352627276080941165582429438889041249809409184213830225847588524864870780319901108444261128848795068051094166302363225835349298782939623091423227002667887211187289852555121063611076473957671013069028174796294049667653058327108828568832050653690574499193910342097395312504169528434219208527312105238358434360711781471133447724342886728386560617007709523871042395026333717592115672711362955588526594055530171143095985735949503200056898577025009310565879242495003861877334925847695601366884595192475567019881193021374866784541510669363806446789873064273236096682808559780737942266388982198527095631429099075004903949416672432751654444160203316380569839176679390728856723351638041850163560837914852099076657143250925017233926620224195733716383131170850729217773753573988220053288766407988092212300457878168318090445213803918826340194880634093874480311051399708599440289011168537955866838508794971027734753840468705591405662603994402585915905713448259108869945396287110353803759279516575160439503871240595029629285694341773745089051170058956709340610473671568337194738269108081405284628460001812145089456550083577288874670731891838610733361372952048803871478117822952559609753098238882945238175646333459901566205876584710838670661742175903011335094330242358892078983167765008141478445620378091882190496274370117439824679472716193309729030137136515489787376717659505411102429723493943051212615811910182399820972899858360561614668898970903834311472307674502144871431314927681321546187921089568961013157610321403591189330507169908057702685586026041016889521442821531416806776779280251333310209652980510989958572938691361626835428903188766376799004041609002984563931374263797122595321751424792829966374040230973618797805530030617032694612078602062809070131946945369774267046399068714875032949760956198833155142685787138748941513737356709252929316146157916014555731277086695024975659628083352288940371486055954613830135840942014381782335385349142755548229298477224897262526541475240891547121673320866821055106446423097904895346994927074587554064911903231129660138764363999076567428735023474862517961395019280619648290955640760521391706552484220361361359523865301559909777905320884146329070353434422279818101090106979022925947289146187483888639750801337025284195983202788710572865163977930269692300838908824641588192637519745011159457205298926670962526109754677723195428931345631481397957762438799639259587227251235355242458460336921343807374797226781311232558820243490294277282083907288559668911771222003067264074832088866743418349348499323824091748541513211044501526407912083219850821123053327029147478754420660471806818683838382281859730487736132056437177748782401156899841020430547121448533505113735408835103661124968161707654005904631431195937927263938852348068785984431613188078019684062965254172733926252594563218868531000558146839558825184702220182544959080517050407387054622990509272894119419391763468110240459850030838606063986893918398001773796236634886239025422715297339757839440754488467388802755729214160541128842819086100719025675820240286335655764415614081926323637311646106747444547396442243248801004573043338461445619746254340048279165594884462364569661733750478137166192402033364518988018913776250365557761929509069272266445956069167897226737918660378178287825811988555325887537809095989403659976338133920677355453636307003363906867435662709619498121867121304414560034264143776949298291051777884167573464235719225713762025455250528087276727150524451504845531587757102030537076909350303965472737459883704987893539500720591334590448670595153955371298633688854291607378198274193914071460205880186108139021340185144081866155420476231577783393651234523973676587364568154844396766126015630487457728156162634684757134664411765792397653947171589678258669934104289270879022383489161240934570930219532536037659482583075200453835576225946793087946247420628817624460032383588108827349385279287473137970993164857306430978114299929342791384694618899483026187943052193516612666818688767881369456988817376309286748866222655804346001999195588506393370697554174932122514327992351790840707667593243982999629148508148727481626103280773980725676843175864219271812748702569509153373674819191418768546867187731780399382962586211806840570471893922148493859759023301610502372544954084244906868134076882335100783595928819294180528474886675468738635178690648768300271787982175108290578804441830724325334569582827777333403318231547031686388878573769721765991764894202347751557268538535471842633881875599763396358185051793954045683664836262603230713258592002871754253035160084536625189052333424706256817808986799398044854151172509854663975677430856121978473114087126776760734131472946576843390264182823920974640856437278078577547539445498562156539328371967946430255245440296800167020467966355562884129210040926902375095771689675805540696320241126227856430526764513419742124378732318510220857783791777570408465557276236903813228696091716310537058852320120081794526904273335844866218408075121559302259981031921361982337822958215016885553752769520097780589940470048857931289974581027753274881214442524847832189497824297171673340973423766044494876735765819863682469357217689392045131394862176097828013536455271707591050532603393334247033725105335043408410703633643490858673834701906899511289459044204058897222550982728958276954938258525647426028148650904143984662408633418333364653563161987540988580444006140613826971849416659929404895045334685970968608401205534253996773019447984192044626892029237333903846196373376488707772875163656458166614952716939999264638034944312070262551449815891100771295032876130478251108327616382722811401074173881148860287836563685394229623850269162040102933220228631810229340771270863560068736193138253910563342632676359741238240164441495184218955402491499425131515349854373531764903197927248430065670175066087436340750301510442442108435572344947966646295173991107726075469156220709401987495270384354090023140333467331312262725502052040727573012628114170408679933956778496071812733843139281268116411336265231146871626465320894376890527562623624351884456288723917967849095884637975727528897397368387791194203315217342597734733899665470295079995919643034510558092937449090540239751208296754762239305230348191258291515140851246577071585011957920515335122059562081509508777068840807032920846911217556332403680057159770812957725637572230752713245106969467806862251306840733830822292737757932308140473972025018614701145485126910365121059484905242108581841789558909980328666879615373800340938307671137728073598760482509455119377947985529693521261698856683797380754297876350060153475924858316440918515927280667730692740270734595791634915258271387357914513731156168855479450775560279175621066433084056224635116311619371230874508745607059299819685880636614911425061278510741925825501438847712656668246882437636326124759379583210770578988061615540899742760009695393798868617765020072282247573790450310524709798985411950685521552931639780289735448096399719974895522457319373107748821896305222214824134544460731438750175643377056132553070077767696431287112666063833505634739224486836306612735571135762857241326420296487451906522156737562693167628452971225479089452634824424048369442770144195094661806747539447399344289106609774831208546457557130184589678745078037268151931298339204071616128530180732491449928734058603059938374862281651091147022857698013546584062396741285580861791830744642277505502912717419313425881989103712144446880101725639904182688277189679400694043342471969356340427048536240792299727076700725483331910470562409741365698199691354470030273122486986330641030531806689983580346249321297832246317348177137268294528586923072987515519275068296502215282584558571018196409781230504513841638387874486621074837086675393701433014449998267251018691571315703146351047506741119495347070519793156492084570661616231642143907087782890374209010771351694770068068137224869972690875802945967016261973992301490125985101369668386620782259245950467957493224596751087012430138782118323134502459152274382001157218552499603310373264559834368139942944133131 : 232284688356255974537638903726507285043717595749294798420352841266446305022018817515954785456616035193238342308529563541537229562773878836772483283732290368438336767139831029481631419356336776447176493353312940416675445600308596819383203931475171073727195752538696996449622279488546033043886150779480294954971946841077358928282879382570636914308594527141854290520630396088829034552733209805961381340093162964251637810054451480864636459880580159261740491085678406222054470562818371266651849595863965618872350716386516793518105605169064903817987907637212876725890224280784529283582633634732577788729214535460537065408465935368640725999881272024037012037676182581823822325726926672403524833590019995947106079714684363112291402881786901027887252279230570351002736561473501776702499020098428619492684656676359349890985078540052219074611846626191920603444066634440750458204207153293191004319822042552273001678870160642016292731300704356661672387154153487089576377231472239121997433111697333911923736779408010075955199456030368122354366919354682022009722098002091385834561818664062750412209349786622558832393529874148179420612010443559039838289795842629080630309326669725815083154081752558985231983692633384696929849849906613837055193854239514042218216641374188530683021077352579336895933812900430311633436802834794325577865952296265530142722670725795963693566339859083788774447365256652814334634615439123139775975882124785653443943650397154351371985459627360879175834578697624625954151546010065791129162159000622464018512775050244890575290336077958366195284593319429334299766901281825448999394606934436555302629951413039988454624208364080954760699358495766477379979013011896366608690399086808713061238885541419074084765147629221674580097575964242834363441646798734863711990585628679000601413716955354661925512599155320051268654635461005380580128705086066457001594104666339087445405009424534986830223269034913022687744016482594662584280327867772666858835462789898763071932493788466020598463983916573664142872002846044804740413640646033885680694299442128969775924251137190227819049608880957321775029916677939714022238017032175658160146296685980099138511281244174992391880936254281374997912825187025445989717577761616199342688724360071863499323730257053802447769548066038538859499581396832017810368192432696574629693162639315636976006409712113300363309371529266377740724302363190979045039289087726923310007726257441491135126864275745132076457910531558952013026192405854879987574768741617914454140341210607238754101040366651158885230801877656356970758084823875723445476313548313748292241599964556685466263851098281469277608838087020024307159976558438164537041153501472873475461280718921791665704786633467425025114591086774023301068874145970335760579727173289045217656709176412756452442735455221799298885891525840258077642455116474201345495566983295946495133558474692562242780236478538570871006198112576653265183407570122276847914110301467300188229949650165067951473108432520926549478928955367820120390841203926457190224883424337845152338204998962734187240424358047695478096166315025563566839824113843942865919642192705047805114540795583029188878434206607581127733535783473544547173604132895018099923527533229859797135280523993674344560602489066648772618049297183141823847739033566405277209518454170656026890803538415477909638214498115895461054129290145899021793861528660439305775986109822337849283430603605328744327939634429507202438336245614757384886346764389709206684846537028129101685406215699288541428526528646054993350602547070639586283161811659250051871921342386247756453051261612589404138968200042427399087408026934925904455041909907155883307706926410995893319221776703468195636611415211249302121668761247356233578935618647127053566803457830796186118650864892485999808363815642630038931487353656140925078955409031128244772222793038046099713257124934346147924450535458455009363200425179048515698702902960736814774527006447172874647151629092381827068427472872721533553232922411512348789618115048508906131516306894105792948135419291368179754010860626289797688584794869520961232926935579660636726118494206419258039017575577404826929080395721769967654801953832425253376603110637986037916189471866746976095072923976568451367386751797430575481701356750935952922732136866262003003010030895972993162570705394972538440412766872193637775652875561008768578900852741915462383394198653627007878741477998713250065157634231560707873124910590223282735046688851493124090453588598196074273679924260563314703354495847395675698307113111066080788474574659018737945110726933554072669404166371624083944824206643162046926418563011423978434894627538835028440600622986698373728922774505499645876145706725909075970709549581829450249192245453069996952714090701474834456857505762589397843952635007390180165341868508932278359032035345283232408619790459936262052912455083345594722313135753334669142892428440449501747870988354615213879513362832175109979584369397909031397463019938898296183593270139934527554171143635110184735609127313440787890573799394161871856376199939964423856722475028313388403800590819377946411145833214302428906731180807394885076590012530216949457167813218681831456212791390027180182417649944903010931399999327708692511706156704516738510276194976528878112541837553213234876110843537733600462304752391547717719968039148835964472827863922816860710889869523645832286970075325851798406505894853682316113388599231806301391635707740622348325704082676992425943478754202186374488919395351129157143121358443767889670190652705279669153568803078012076215252885328828708999261478445305497475697520412870610378075177775021647009719891782473869423547847455998198507312070821511644410667797479570188403766919097268338769264830906890999956871249250009538245352540535724440560868313837590410818972459929832391915241109140813773646492506636614426433414883062840138232442719798871750392125069477785936295600048708048628526301672579743902364635827359375492556667933615585741571869209159285871540510598230279940498014128928237141821428028245984153090833001459744571681753183363083928226901186115756288041185261048726150873787084921754905908212107661298752711476090260408797177497945347122214175867285442410452070613142027290589003445230330762860111865862877556986689755392954133030887850757435942744759957748179687807517042067643153940087244091284286922857841636142104128261554872829253856905039888601516307997657863880295373603159475941841939027608028726160107590235238028361607320227376421952041730096039616959123609429828804908985434908557969966181758828963122954016006631581029795609427308542735811134003892586138062516396955932625415275179626267305789673524241379169298821517549431731787278249383085368974992784337610495886540228167255668353006301524042121886182798481664437303178088169251256187831517278262472396187350322211819205080741774925776393157332814959008164194075817700230720924711554192087200047737618749240735735873891734903262602323768174100762598166802263180448731937933990074879079927230933066212930114904189252685913859582703879300684435295155630773511811846886757391870635649128989166804892691323341874335250199859180845253994988206671892214966466921147267880519252319119217932733056343257839509262516122153482238032448899485783521087357778889966665557952472058927546849952573350496247817967868728203299464448122915226752913633150850480751921240973048252376892195156781687906012422973933222262239584605881696106714712828836036310953552313152735440665207410242829741398621122724498732931737710111583606996467501301115770218145436809900807132059267013149768721820375487555985481780512551492086783805625970861668839260824358641545517748782250285984168029252704179850296604238319910359310079489717048042778279473252794707869517651040434064310592180335734157821580304140440955974170781869631799442846230932223546510448157577885306846477341743959380227577711529718753316258269391641601489953042543626090895661116511562819234452552069235696661298620099471116538666228674764828471311222844457467663148349860499303867488641319662020327383685369613443706795073047271083361260824023962622394334652116003767400496205760315450470327608127588473290731245090427922787810795510424114652025735660142612104624129354425394310351078055172795961685411517476955815491925002240126068852502840707147075903333176208907024597831099446675476486246614280949650014351322884269263039034871526495204950167516363645356514549214920928177602125359581259091778725350682059461926900111892322347513654641640239794626713410941726016454911149715759050158742451688558171487904773862904187946071030546681469563025639553119875725566656273578013759344311927009923248748445030918891737616893853310539894498543553991108854931045420741221935150278167280423360152952644002445208153478662786806371349814906891912678504383022581205735689988551167613705031779989585910144511612715900023125390744798136366988788491785895313877403744164473368192412503533713114766830018284638992670823616873870489339234542001828978846562892743536108051763271525075430435831509270211270622906873375328747270098889518522735094926306098610372618443242096377066971645090016506827282054162567186997422439633508045619958458670500390199932868146733702456478873920442106870157661835711377858955175872269520578180869205524417824664818322560553336137179864937568762428337909756456914769041549750865298143525050713389833548131907121344605832999256117983010573628374865027455663417095789489560386905945919423252560882645876824982476819736936127179072182792917553435330198817257567670328124373338540071647918770309761844563439040376817984762193054237913148429471237977765307827103796650379505973196317125033782933737107558718055702258887223464263818288185069486000673540543696667939734380321657254202806242030894971885846383792852511148130271387019381928825964493314355906972035380408324064380287630517666468089475769301655468246139653880353233176043122426764464324589314459693207008493875134562696758781961333847908947025984434051275149149252767959834237898523438890149698590293695954786887815021662229141048951679946482131582044064748880801373464984896196007325286339092675453818258324312491046964385904]