9
269549856155462771473192833436155291296723569658995394716959776597637439677743654174646363461112765697784569945363938687933253441811518256241698192971865292636827997915822183992422619149223814725746448758941482544569414914698264927993889859313871821231781728123822433337261667742174375457569963425861618885681781418973941139461157439228796994137946439545494791544677567266792786339515364646712479226154954425979141666959831969192738434767386491578394378687597882937325364915252213649518268177261823652962599829195346174193949352828916277389228645575814411445726749659477518593362772413448142725892732594554181279411865871264954358538274794921973172779898315641683523193496686293361572392876146488819168929568997264415812626376356283397245266182743223616434371821441387835444631264625369886298354585587133425651125574682394449999458374535391534112472891457359526553836476621131477577825562624281575332194238378145927595969587554389429134951985578448946884761288252375861881538683418388664795839177866164239998568588477879574512489398832133891849998895953425764715787883484499318298815346824414285974415946897938938563276617236745197784465189183939566129142817646546173891811134291734831244999773481889263366617899583619991187427416642261931641688262183192136888673189194467758765985224539148917217347785771756367899453466478221955645242418334134199547397329436913456897633357777943863624667259515314198334121915394665341287151683283135557759319888422659664842263465913811831849893967845539945213924497581786766272288731637377689339999379967585893888972891671716827154163833344823749122199372284881396592727238794796828155366655794673967689788251962769587274664233649491588695892999151888567282445417475555947138365473439149384946614251955681546174546563423917898426521912955875231197561862741615456557864454188128975953239411257123928385984716815613845118325128511668179759531112327138189682764723839934979281632337167148414116399282892929975411326151884594123354643835955416459354563814348664939432938688234282839423846695219172294155298628932964247929433331779415925198993189625636899155424565367989178318263936535749294671398296126956183387169736767355676497339846747277193377164891558229965178743472172511317626674617833431596763261523645327116696498852114799228472737381211772534429832522645585879527638898352715928163536176573726598517545647439355598327195568231112958542486413975927938585499529925789137871289672686446116179962553685364594584843518329248237595763512261641934597321334469129697968387361665314948984521652813529549496454986572589864839131695858781656964643784972566589879356457415321814495923271142258395959893344625354858385422738667275364689171698375296957333288238666225144414251971666598739844619333969492747946394855928133585749336485569455975482895928497281235774422679179739948553593413646113777855164949955921369792155788257962661966172673621721847635651348724723629778261334538322977124825588773743588812284137535358869311487772951853273896658195972932963753257432971351118819626732959555769635722868279182144929144389778931713128956864181682616956133948912446331128647617181615429916826161616929194787796976728721333252442235235634623229114177232667733258773545929353454953788875877193881236937172448936215124721533931254746674917893445166759892125232728485916817473882676568789422694755365176113694772439228383772248865385296657944379311349526852748489221785619248182436419286482541655654214349358514344482152226574148481135262333659919415556415819669982611835382383544992732334493481871156585735172781885338679831237533183877587657965488557562595341878376357934629481245114365822828948863578161392435145463266377464363739846878914627486994552599946248223992923396346156513863856689524915436968513417289565762641724125679567447681518756445619871214872821774455415492346798818258568862839575947477811613585512677484876845548518281551912575744673182686239389128296588766459829147325861781993134683581126219113157543841852467735396427247351878522997313541443265726559416783657959989455518127598166326927595222412377829942683721653266245867199356251155245627674123756534235472987324758522488122386141474233332973677422571572633438597811435553919873121378751996175777813451661751182312498691397995775213299597525957317279221229617221442591353769791419452483453387452513859146215458486545182621357629894839461115966721241592558413493977946256964536772822298149419899823439236511377579999736986865167523735315663333523525133641459321596147815348512776519784931883932666546162825323863852254244767843728627929453759944372827383989561625429584852765414795535954921284647585272361922391166663175385678439946384478537636484691342919844961588236991973612993327729626212283197826823494623247138999533852264166679919581127739541724119447846623525484796661845946648714787369823482172639914637484355636682866424522816899382139657241931436961422735416344766734569774716593646938569325783687253221711463846431298331131411125657837285468292243198393633767345937867514446769191139485661687111119862436922244256487973244866278177219931255783334921546153662588299485729418743164331945493571412553926167132459173176717986937313694332944492399728381378982622174529825554675556596645654127436197988465133799552218793395941753564539154634578822612931745112378832947492771682172276361963221325622383652741947456193329553885547695963238453181782214389689234195813358283613814126654713757377771195243494784328993376853791597829343873574297917346244423492494337647184515436352988332693932485141978642184822311165427711971697695669887278532537371974261321991668647377439794744741276591529886662699354456729225253195378356133384432176641882437836383121945476139238125193456132969593787256859885786218773586894145414451945223624256254594486791354981915639213757474124455156314825936691541715772276843361211513926777733824594933718165277558759529592816488971352481829865669832874376144963121451463459847149449989594181484739796163276873836825775493644918917715922831114715414864431744554527142524646239979668321386942626339694259893911178991259865927862932359351852861779987863686663765112967144452538637436896673851664189916452796668524395863478456864955682982547618951548977943648244925113469232327581681384667593195626163997241199359411968948249722359752486597634885171866713877223329578139724294814222813282814356394318592144526147348578761426256778639956399916659617516648483163147133665657223485165742782287592224571965699139647332729841892923483698478581466218393487466689149428268218364897937387236814111152297211966646361912636346869876315138334981738129214857656645466292926636638543653959924571128959154827512375733958169549774668896281151287963389126382469747839567573783712232253992249334128987934435995129455655191924655744458992483214259646445467122617253344613926331414179735449723767183755946691854571456229494699528985589161475823288712944423364463814942999713121121337678124453965358751641265278322291123661276622798775882318262574695884191763135232621773711261521322832921535968433699999928189442526948213918962433423636465521893596637841947382643198956618697978854837152972166567375247919826921396193421626475132845557462153383125356611257682166823558876234657113964271968287968246326861525435742461579619317341185681653498275323681763814639858449725355365826396582872437423578469187644147879628717959813153129139814438235399189897988515129922924567392131959269877839642555967325266478786692819725771155744495224783651343644617314339113475186654842985551132774219339896396962578786433537815547461649272189347337181346346792567822951269413158957183827618786567965993935451456176658521588245253852267713758385241284353269874361796469766516339559984523632277359295383844479554644227593611665596325611361215792223264445413183747527745878458689197532384893398961946426373132964727866557988885178632568864989473389136936814423496754631151218536658252845498958535987214355199765799913654449212633646191522419189191667193214586753572844995916226292121334775572758234734344167698711145635172278281665919617477369574938465775623972784845614453429915761441225434893289972518869172568834246812382732628192189987265258685466517882374274574492438855933682543242378918558899353169674243588833252362327338256582669195454268714133374218334895282391856594484989316959793473113242328288838346469374275542955278622561545582231258865332736275337515779538971917786549634471896866366342338629381954839577668365293926258931961976662529497345974376984886115292981244384231738256177657478189388432172695799535354911777786736592998361732615341754733514317256365293588678434499185567817625254883454221354825146592482446273582137451798181884454794251867226541487557385583938539155132166821981738488937442525732346643537755721751674631912676822418954648449617796352452722423864771165818199161796133335598975444551263372278577183438187975641916124341681437467831631648124424248595665991667459634791723274881841336828896853726387461697396482414226235711993854782972894452615338862664785269851149438886177792678845433971255252126214133733983188731248255981325865569832153572447651797226571178734929445724958745817651537755628142278961377152844629684668229346663759789415728272361626469614279767937897378318566729486479988284899579538672457229251927818726436386251328473296412515428311143973728742788238871344175936953552123829919152849285593317823377591774897812327236818438133369318618311993434269879814827165228391242433675314381584877894427458482547817547168437746427979636776921621576385128922756555648515199381631361785716982759523585197255511548839319899385448697427262815888782812823874411399244172355145943336631227679622847444599996513165631662532595891535986918772177732728274345924197597419586784659153962396189529581232272863458563882133844195244357696895151116617739934443856394265144872173936618634167375225763289866973478131193591551164731168957747184219221792158355749748763749468178923213437364938225921486333143256579742671183896621759584819337896769248259669323518668369384283882196123181234585573511658978577676511911934695342592557676724413373594589158695954431318872435973342993839819497962183192547957582893195388548246464864229137875286696446291236783182613827527356117742583798467875968462223968772467736115172752559486531126185254237757364742126955627852453297522227264639931637312386654895858181118492696652612833691219794825125884146933183586858189961562166754279983394663549358466522648426865864396672148995142683179122728534955535649568265323843856157892517253746612731284668174778778848865332924488426913822519378483488222534864735358839991239281548463715314978733538458683814871938211962351426988935926396885877629615952126614699491941741221992884472773364726867953236351469751417677933515393111336273248443475243856299851453415245568392869675289922837164425248786748944212723914126852584929911884611133526739442148586111121119783825378961917333172984988221229492151249349265592981471495537498723137973191561951219359194766567163981513688886817954866532118116436577936136636534949594937939873449464969855728124396911614683159286612788361384625515597178473492272553471429783556127734892133561625255216217752554357736162419492118639261957115759635552884853954116153348371776741486777272599192737254394461254395184793272192594222861227443984492164393525964517784927863361832351981553168429411913621846232366486434839794835937488495331669527271764853348951711873696682736544539126671477661767147617181657231243822161947125749633453418232467868186111115519584129372214553251362292395975243647576799377813841969211617322816556447474355569557698771615825689235983419177355924914176558936272762235462287681381818555578425514858394533423561543521188122885471392776217476732915114247346175127316136184659159683298952759582235937846323428678219936214472725219894645986966889982622958453163173456157964764664725243377586785349876863449725129733173122622146953852187972793876496797872217725319628647737116876448446568361711774739793426313948973858675975265669832194824331241435515214721418482523926541785759591923425768597971282148126621683914357945897584723838652524594914639435924684378563658892462765238364777367914751127126355422944973342297988465688591227779183713956476387325114975298988117487893532361984596214855766577435424886244253634567953542128784427728642969552198825182383382945629594822786298372711168418793586538849148969189271288359438779545438652477677525636681525614668112168536385346922589864325712812239182833358972339436869369743156176559987795859193879837193397136772863554248268557659362512524123522996422548514368485668919543887916658824874221372967778932523234891894572925275363169153516848449459898223839586712949292996839895997948343282985479618718383585394997742182581959111881841492822533317646117114916326331682873227568445345267781412966135232645413556993411481442631465897273944281199563513656139177786514827448468516887374897924795355859685722594475124514435195542336226781169719242684937756213635559248446326559811235899749925772817842495341224468159144337924116881342167318955782786332133765475499728558455123424347452859686248421265329844485712667874942686448465918283542325584482887967812769459381665126767337618634416513561699777498265829889844317267434425584344262874964841591219274725496721156554952568619853871254913587712669154432385279579716216484165541548111331771827991531271719483739561713189184985148478548688853828819449661289785845611661577769873836915923222897551647715583682887689112445725772757727467856135925857212795263641322151845661474968619778327774825232537195443741831938182788161716251881526823116398326596634824532549892694826658589332286678942227226588189955733977195655771182726494435421815313934722488589963525277611822462867459697658566148557238522778284849832788645378325968122312139746828127873529342849742993197261854675364726773176153244673492679937685157954251968412799131488493363878565281489322691823863623251539617126484336796779356641166431381195743487956736973637965598526858444873691595193478366747622496351649221481892458277971734874629985829958249314444241416815577667272497224264737364614417885744782923664293595321783426324121499723192621871535625276791493465566165347456618182528498461829375283817662424535776538696978835366556435776228818563553249925764348274651285366434781995128885221138585834561396964156689568282214265767136385171597365324152493811617633281898151897631155496719889743972361477479164482133796714791228556885755772122234596198668711755636313871292344916535394284481164885274216549931715546875435543222662272837943243788487139895229695723127144467836684629798321399873495319747552111782664728777776316947844888922113571153959847561466361741742175545672966179128386223419575815478845154863185825536996146658185199836423623335791429926571592134316849421656436667888468629834274761693869592381169195169364772367647155927255372493938255634772747443244971419742165999654342427472695382654631738258435159522359441169534118272326181886869287341467333843983116847825733843677746789276664886782494168453742717576615264762433563292948442833692252767144599958387494449654114458855671259356176836389456887235119787924258965679298446154168591468383797796553494541145762721878836236295753983466492188252459343275795589111368137546551728953363962732832251983756514886771928246519993319418693555865534746671353243795637627275661215879458614949419894666513981311981158938535585677136986215357657854877832371167863463116551545243639412742847736192494279245959442493868955929658919428642159983435631647149226127288144558477912485749563715419157154521487187357834993573236131957419448459315119791969282917913763936183916646718826864365978276678596899684467261177525323159729868678638276823923894427643836735692656575389811182745418884576237313273713694824388751841518153194614194475987417583598642676987548851528916879641199284554362128296277961877862883112678114415537164763163778279579849869233977883582988385392362465344586794684863153113555992148794143635385791298618976566862861367752271763993885872441228415751428667936246624313777782854328583671365998571113471361646988146594552944821243589748892621457397662168471715975241953215472192888286356326914731745157794934333353298739553225222846628131673819248914288422163247131855125536651563194246342868761966799342118385625331884283161387968813325254645369668987415545452364786391886635891812753236972328718368676559931312487821529973844779868514736869199984367274778157364217799695537628956785253289936578458318181145162841477687811458285345375679116482428419219545585119766326556296561423453517957571657581167898556618166426344192477338456446511281299731484125253288243787339468687562821332169378393663528574543311725947244493253621883643128649633237163794148592881377698465641963692162785837115444394449814292473618917683323159478925937548898278399951212738678799214159959799828936957351229988239546734633614437924858182183195978844238489852766174173373513212318731772778167884292642923445566451537826752541983347768294652527583576363518836173949972468519581938655138933861256374419281459453531145238416442372635675811877331566291334998327582968462769515553392424726847697713879147387755284346927794573356763967697483823577198169427964569956637687999347956953916695161367151818698652348265456148565781597788669645171186652585354933212972761944444655349788434828348638124128575149684774526128952127929333499815184664945559364777488524776878477935329176933593351294761378337331884712416866213422711159183726996487859557387532932259268562383824718776425487572927833871328513815873446184852263978467589663963653127727124341738886647523139496619672386749834823579343856715668536976569653256513659934716383337827784951575147613626298846491293872468426942713266818894433473981429261784976593395174739976397531447648367919469998562582441195469444272195162971739298352583128955563774582688874193841398699714383762411581697998583532521584233421763731992722682145396666971433511794126388667893524191999165515697338978947826281791912937489279114892997881529691682716765694814216697387369321391783479149422162724554381434465756183217352588653127547519167543163483411858826158093965892857373542114282986621623131541627456931343653872555718911164346913896929496716171542345463727549128642782474982366692351542595497481688928446583144478554696248296364378214172318847882374899619457884827235675652633971459543591271683625172869222442498652192142239584324699533976126992493717159321642933886494117826276569474695662174482334654348277854792474969169638151515161981985486523939158121136279887298288826498713827949952781879811649524263255447253358658747627911853488924471296643619576269961267518599247478165525573112397343286167282932157599978519632586116613441845969832139892187235947691964248756969265355573598122873882317313229246693373725536833434576337759665444961333917512847495147724899664162327819689984736449431823199628759742621648314877811224424486472368732915138445148379724274722278263385881644469287461779364711729957757721167117744943992464635543419282421123826443632969432116359367799934237171564953895326952118899922545264529117428241957261969863316855399413264178166192181396658534976946255783812422833854529564973597414883485627912217871738248597459869227799782935812185928989737713826626894289761891483512686378761454933652549738889153421359138395717175442524695531992129344363734763597669928694693127971497693368519386419379839243849299868316269318148197371426712622829852798631665786424756548732214312571565633492143539384366598151228576268511634217235764335339474422169812975585431298752574644187483394513974626658533693366666414636386594967835699159396262722417937717125119588586545354437877683663395927875854428246511299278446986679457954696612283332249215823689627513282955183315752884366654718582799186795148733123569337919777168197767294367791157382994961879798675614253233239257676185375365144516222445889797655575114551264546471636314386354991424899117583421493354794521811955554756416768921355824296378584948514476155256292875225944813439519259156583423712354969471844816931958627852434678287254431131655661724439784143964898444448594361355791889495812383336691773211456957256185677926352143221651797312137836525317253366619865856687113718569193817366248135832522324715562563966712528454148389634114651728225718959125449369553865323515428198826839694743788294725197749642633548597893262294596325981265331674646437863185444285976323747937682446133662297547155778273885654989693968391256982672481899476964926244365381999457527718645452865618237787976934896776552399495277191998618511911517365784753463283284265927311472437818296742953493138631684622876867696482617158372436615979358955846785878775733867738456513498115774571358933231935969739172272872249384388722746345518547877154479328968841314847481454143861411463259943266662529667263569512647173296624273354512321787667844761989741481645287631719597594869887164492675326982974233192591418414865224945544851275796146186958545356753326814253823737367153938584451615518845157422378976588347714976727522958881117935676712692128783656962853883678367148391432522976673971268748594597449582953171851258276273942493437317595192187425454961265414868598469979119141775293529172657539675562793626895524865984252225194651822394884557944745471524324699974226814272995662222273896386275727399937136824336465855575113816545568484975527256661311934534181656687995756784379423628962492656537357934725243416861988327414357975869341184547233242265935453351749694824368974528837659415642938827418767685258964838881374769542284379949755772166165294799746186414439425185311947679978244743685941912613265459438555589986246863853144579127972848487595339125412635385486385589549219765877519993641282919479536576763272123134597635728868143693569996219413984747338347361649898917621573971445189945862956257257919289576643342367154278185711633653511487621979784121132825887265417765437745625247562743431466829728351245938453321485959286189151298243935192344484279229938966275119515224471938658581775581117848182515244267324393663243366379178531165783437166534967386213141116245814248877639928978781195436242752386195857172188867988433267434753582989617726894683657993858336774875856759538819177187374497976575181857993884123722679111929679197395395515818483579782784943974934454115517658826784284788997419156458132188871679189581582443549214349549339696727785755299476416149916269121725784589191247711614836443556857328876178125125286788444899574336325923857388116616751251319754588192418346169751527653875179529339489315224318461337717214486331589643454717664898561272812464513697844415264763528568942217771339234896615972245394327459337452594184946546859692923979912669949659254827625886998596599975199266273554548228718688459348158984812288833666549327362227324143624732836393969812749181115541112616912663268169236466579223246598499556884892144873549474918779629787386897911681966113524591554635374884876145151963337816274738367875453189795712337937764147276853421929891482736422398735742539982185294455728681842834331775873994733277772742745241893869359878242682578854157764943359496376291671738814331337634951199937568757849933576598581197137122971955768853293774722134836758157163832828231727229322897595312128692915739724535787279828468592553663437439712579386489356425572868493256156415434285229971738934996511338978633372715613817699311152287294189316777351541212455562891522121373841886149372737216386557982212597796533452845857416284192523674676328776969667421238641984562938779849435623655697673772138443429494368149397977745134466593746795343167328326993626162913498987724941892724435826543865296285958375366761123617573758488318126156612299411792641936186227141848421861712113476492919823746721583669653163321252362553827781969537623821262487536771382273269444115618735283866556776213652785227818773313599464264774238439151141831351633782297586132965892297591758131311621682284613124553215392194454427776817587721466986446567993664433246885788825516472247959427171386286887791464291347263296893254982663352327739956692143745951351737275436421518198412796394551844761225176139969113312854331516975227626559568671891397859813793234828773929776787137722922293518129898281361251953755856397868671672791958966263538236187864633829282488594129494329121896482885813253993627766219432414364652154469981245141984926389836283497756944289723111695355437248499195792332414935396942474491451461152597767173792426765426481729956398184982384425223756325686894433354853291645386554415895775131666963483668296964316715384187165862422888629518161642499721427935167245336399315472511772725731238275817457677227387557851624649776266814782795443421326418974842577359757138585156171832628114473411375399251675515697752784451682621461477665425894862262596685768114164139764373952367529317175886522827195453861918971111711511152556266793212292129322622665992247173875295337748672954249832965765353794456121199596839123218917533724158981219162765978221322966568886786999235324911755876394869958758668513355658953461912428615612568341766324118476667838812362511564649284526674342246126273646792178328681347884119734651916796235266947972962694567222435137849456251979398457135769294897581546163353292258964639569959629963788315554679787143329246327325624647284874172888122155817639413896747135632833846174684448589789653487853355752468748313273274341872576933518847932764211528162261321243513688374652972146153499753766136597445191299424141581655154769611474174125368685753931748344297266664295924794381884258993515533111541334834463763491219761416628683838531998465996947935366129811495258469328911634359896691812843679625679671655381399872263378638513379338513144363563681837912883122967737342689137427411432612224532335161448554285258381661894459572991354229761587318695896332412633851383578737561349939874125419794734292175123176391488813543633127646853557887718758858325687182776653911818582676483315993994181956269551538688436789298791218324152197152233275775915886128949555776684727936735436136758744618396976471385188643457352127511649449396347845839177794236996952225146991694479696377712591426659354963254822772531592674715689627246583974361424765934527385549455933542888251736541993653496344158494615429693348658825274139637766348711769216171174522144127796541423619831437756298512244915789943334218474348971932265757457554877418345871788983229817652618917648684263352352683774451811732697486192649994253759126427589871528341597496134411533264135313686611783654257817981296839653811673972238673376365394899154367535124258937565211633343248796568272697421298638983436663642328336597452493485516742638994345471922987339587147832197816433279384413437388124197438118973389411171514544367669392314211452693722973528254942192335868923284676894357275788987442127849478848448975782282371134448253299376339357837267495621165899328367193137912858689354372972914151162385197582463699956146548863162292832899356518433256713718337478653943868739794919812382314171958245753546627939141361423123439273741294957773786914966561923843239458176943313113529498489976418355373878499612284125184171913947785274133926344978416935226522591929525839663273113816438282332655718312279717211793556576692978552314733724667838274921883911157417772364652345252556736956973733793928516769297664449146665258439822774679789475122145923548393286686343324471285318911276296635323947281658868619492648389845378863513568576437598855815189549427888267236769648526336737813746745683596194369134866659349746429199349178796729117662628794555567711648628381483379754535289757431716798646886234311884414579534826595372152884545534984563637118867615732823567922532211464395273235637138476399655865122453179525179912969681865354985123552513333333728819986443931565923296728963337321538162387644465675248365619544686615163839287944461488968224794385991495343149795946853867339788497549384827786592397686542512551526465766666315767637491774821264733499965718574368191377782929623952871651691246348497386581752968345422414538355315144814991196833667817371327758555848458759662157849888133817954661625593479885691771885186994452724285553733413612692221922587752193857341674134223657642999796196393138385611152618695797686588328741582352387767637426174755678653722849299976851882622386766633224521441459265345416537415991432176223278295822562234196698851168873229359743881234854715591526636848173969569582269752313575467944161378425475894769922389925942367524468196887486489737731547793544299922792669229295181234113379819833235482633763371316918358342446758229493771229459362197243376842965824413425682618149153391914492114564138596979983989542532184594171583554472581782955199331871319569935484643923138749782872123181186744438722135132912411822142361944597462886318618169143577713928678536717367241346451737639222188143734689493457115399162974294229523171222576579219435535266698669198111487337369294776495956135234154393237974186583345939654179675116322238767317862366442162131553497521488442147495131567662736166729178914148187883948697191926598735747272279159643435257459138193777514843951917572917753875876273146439927911859171868357937674178821834857843862278295288876274287273878564971227356867646586195944322191697611438335292169789286627147138181454279722128996237721727649448493122913115136761533826582546388689911223937734899382142285945796716938443225827746262581174756457162116459133838665713913419245143355212345649595995598768772488843455688373425844484479379731514172553699132525986536773645898397572733846991711573143537126168836328715614696744361523546255257999873565924721268411766592238931239685199671619752849422744856872139652628992877374325429795614718993374486684511834465567949543332782421178459435183639544417943243575574638594394557534174981496774232885664386762636235853895562196474863513278542376761962431842479187368598664782687884147143381481437518464955233223539564714953327967726423946358834799281698139728729582887534518987238597301595588537815871452343287237979321998864657357492748286818736651949146423459128315133745827412598693547773
