[815096506943276200417475819084864344229129608842310852048685037615034416540651375113489019084505545467677163292364343350190690716566708609877094954204781194487714080301511801502124521226348186585999323672064987987819515545902623653632309280432326297159296543307721576695861066230801501791219765268520671165768621568508241271198742863671299722091713076545905974738811650262495585092463059581088710512126726018982247224433764727117337225562841094727778508800469814041074476072942377960941015466433110733427283279300081636497214831789793082949373712794107414389373091138703400596330497575232710844271482686736478064173056482554822865977893815401416612256611934751347741854366395918134496294749720015053546363189221044202502449166019945194026588489636127336303968590217831626285610902699044048948022602386647594383338956225956193606797542358595516376555548846019875827959491927630617865639284070023214571112995627644386599284537423241708898777649165459711745448278113429738411462267470823817230394419797441839334954214187986192340301475981329176918650527371809405102874535287346477893160025041318848065031400417374615388396373087250868335592345028002317325762136589346158755424903112564758671105186051417217759637251271884584104008124407631321938175486463609062201080000539949427354567416716792428357839829954992795518600616698620764538843043472847433272946559379203310085004219736322151028936735980155622566585360032695150494304521929707674526677122238030205949470495597483761573321065442862975316023323019801361682491978509253315892038305684536667693790437835523911831111413988325202926381592614379507240407550257384824416031676142768684399736070841024209797563352375962916133799697669220223120608809672815006968343090934961754191062787600413582667511259191763451308878421250067571482320780044975649615401120952486651595802064354513777602784905031092260387241792417332512980715126757151196780388594447336013629415986705931836754817407745319174041576825474501321445271594400863945199387037145498533676719979238035372585427428188732894572606697141057215771885097178324670693113583589318089782676356003249367387501926849943747218246689906404223653158883260916428644437810691508884027750563341705750051695492512028659187790781079516308610965877219555141117646100863011074256356416837080770432336330146831277905592416941628451685032909677921448699830288032976518971111124861181631853223932969500857875501828080765319172004388979535132042655661895131910487852394640423123171737072308051858365987105985455534696879299056566041141921043704899112777220365443865086122109411910868726435874011855842031414205477154466019220515719209919968377472851361861134548919968176863836397251109623318808687713839727253460584161566267400612960766212698817572727459857726759017152921514414574449395399329002219433266306856814632574847857822542807406157806174085239733771701235117359405803527225694606034656186384161038702327701933769722625766693993674336154313193249766163190889997076266910887432883712135366090248797364313212412902676238640307961471099233415576542590366535233759377974653347148611553516736808378791082200133823175935999785542515998648328621764246586082638736971615047639082116784556182486568048073837027297658969991279249207262645618023979275657512491725405369777600765547729502047070143087570123264290774658000063252692095908514830889793212594705885827835694785106923793872046284713991049021026885559738901845598098115255819734191629407476392838073038001972910174169758838508473880844073609777867050865806964038122493039687311310496354856109620195551100034008338010546198667423985002001777480610357476786751167685658100288179501693238378376101104333474340748114123638273636642514728161279934856835457835925071805945346085608650376951729846664178309516744917062079536774304427823856736860684576273252760590039080146479031194180672926217681813207036951748683433395950494319309221729217385672990083404879384360256865975105511190461003146809801590781464236380737353488170945195765221744970811348920256771843594001059650735349095052706842141746960524710152261482364946216186514838991015823862706660217824144513446514231522414844200275815295646208067527542881912403832884578739416502334298844858067654237116571214048632736187752498761589441932372706348630874736097862189963704601778139349383576054660512216592968957868858597275038882366675380247052658901210905421048466267439899751109872376714802076022163683769069658174625794733486258654962154938683669104596593810434034708534588166975775399551198465245420272347620395358846338993278769834472409302054807472813995200112389673933414454222739190166195734191570931219283747458065148957765677438214923379022395866860374542616830412350628831826698284048308774535133887818126529733199038159172340244224227585246323621288913141755409197719128324043128182580448721541941433356042804249479588161866053807804486296373935074106985148521060009381263920687569672937434635711141769940919751942789348458413352026133058984942783594561670008825161701839384931293878865945067760266538117302670954401182583131930581738188136075172312637599410815302643020868752377015873027745631460914794622177493233409795972485825656804397197776450179014650626910363282513297104411380945079010764827319863906005296243783383170350725048972929914245747108638935323132246864989755234349624334152977834458161685000116157555108241784017820600566190265734185360050741489484524438064486658280862498067709917472193328960930695834488973295586356910226287367403247308217699206337438610675836063169487883047717040433034228070125214273737564106804604416178725327930136872159413558712441450045923287585412728125036122807940834731443666780954736477003916157900394598578867847257260577953123020022268831461936317746147455999352583353269622721809714163063258458796312356598186024941033220961554561548156528721414174626361234336237574069242309231027753366902795191361306389354716424479380758312029980327293515200762406720924727282254764483478678695851364722544379904284183504949133587455789962421697737271649571620624973674869430807579085609101976378260334661703662645841480285362010739313414757805082376513666643641780724895983340462816884183453419067896750527986316319180809919845376776756278584931958742224290899710837627002031128849150486019920325052565410165706765775551758484084688129335077833027652690497080957751485842179801647366098499025173764790265624309975310156821553617554860448551745322837387886619200359235371538733772234153220072410776475433484410160066716986984646100117799764377816642739389658040423554512824401987975352188408434900750946713519214478888430995355012688126703144727734017737488569158928476345784947988525181527479797494202080443413985070929216680844968174575643237973268673704679074549564232567388811047408806987106223183906886830349688586396375412743971475565854455213044237691983382355330915893100535928155537512142819323041384560244293620425099706749850793489114671865185933574876153584035626217778771181493636224654296047678252795524588499920123597699096689763587494077426669878397507630099176277543105521972509941638642887407677003725363291023717606164053871511410497775163892242463220612801382075805604326053106759638709956553113082520042842784295685520526683055216352828847056256339055816173359642453927158822375759180964957814500761847231090461805399510511706122674122994752106582564151707038183400708074050510642616933237478128873327235601002653556094600758145019327027077794766255456904699391500970669937197475562207542495582829729474847398674848886856375108859716109420384128977136847310839567737976042568556620989453000090886338437024290283921369827701770481312691819380196027463065448892931139333729201712393589683063376900437545760928413955286482086162138304450599581632470965134838863378199409702133038932645218063171718529876554919464369772339286036752722311933218134067166636124775334748351452843983572123755400646502195672546895202767416859745343624865893788173589360836973658827189456861075767524131914941028701237431482225020043464277579971439022411889974146460141027378497282647384960790803668832590323323020070999148150076798748227414460347767545651560766363508051010117405904009182109655124051527896543696473401845226750080583636633221143435684276191626834466301958433645607928528746768726633770213961904787706972676749123261562408108428761905684554507533829462629687465606342864557640508355155051693748004005731634438935018673171468364658330053138102627448630929990316679562090492480391827050575975282166834441874192997777031493657649083018831050269769138903710990158878146401883940172429478814211247852405979989221373683194729916051970736351218275616231681728513728298044297043796522807497769851513785008944019708717539129916877751748520790478021749765430161299622418585886994877540221835028749219518950804663257633282936563152479656338466102464763145016784985344436144986801109611094636890719961693139742051549126597829804124965446298797179189256519299750899501127313667360551069562819588661801248034421852334989403008440050234608442347639957225629121940471008745153156616903807555325463039445473679821866703670892337513019783956993947740221915880120915870653754376517500700510048277611341866023038936803056077349595571963835158329807796335394745408886203208007504162509343804277814384892916907697939132221908194074749968845280619121860843698831501795184262734090801635803851400186473863813891282560635813133389196868872388811118355491052398987857909416194794921092772154530130680394338567578121143279064903278800408687536031526468991888148251960259558723545058873788675993668180098828358709304117749324011564333850618434479670108313059235041586375021104674824110093951093599414107071952747826774025088890934957022765423712530942503817741685784808752339386558268115563665807259292040342512605689377009860454570169853837856180948681654399247270004639949211557148753010330138871348618053886151942753037266640290745706887538522805470581862101757644859388367152971298478133610922209462349422171567264178948857699950584138553319050309960094630816679476830294317659611239350973631804379508081758108057407606485160172480909082756770980756753249311777927857709721074908666800841401273113679207149400956622573152594628955329021946423473357459544432283539471724547703944573598422067509023487260466068337835791586857914509991319324233615054243274344987435517304024417504744910964508806275255903108734188417895190411432845867797234005890246757314894480589918154051707750745948447896543787115419940656479786951117701984444866332170811253986964622419594733249120501123928102819609627621254748485951696151011790771168815576341905725142719870038861077652327187117327732151670543159180015803253744784638511594722768535394564926237197818722155546375679404871301146027017710966284983248129256554602249724742351742006167858386129590915970304979869620050369858744286227167415183284482639026324063200050244100153352882299080903536636543379578573665679212359799696327370261749031682792859680321358477535397409333830742265942526095670245495118284739529758010702863913923515681491575366844067165582594581330113071880951679499477466643894541978323704344124305212092312612205210611129241927715053191062583825796010500365762978666262252503235070764522339225404057946853404493374180652239461738485155096643336412044028661589037535633164851914203307990793759430348267999572136751503704314361488625446087339134969427970067602489905586178957666652311957378843976520896746803571972370220420342292825930260153797195038853789683838251090513871607631399677403034943811531758599505560957045118187529510468517231795961436943191115415908845354272911568097479329498203072224878561698987790243860321274964666285153903285741663677369525707989134277591104119915414464426831983596028749271779533505888898453592145063218736644132566522712166372486649897387074072403796171919882653944926533075236677932915824411837985300979033924045659653125607135882243704597703543775903335608436095414698607793223740442462270380329514304226012891446169723342987409193430632311097730405663684088395390768201715537539226352775320821033214170961059837232452464652644631463051090064498495354264492495377857681325969610031988366759831591563186289886175988182839039521118581863914541826954702086635265303515972781125051615490257601746652178666129522977271906412316485844885418018859627474358915312855796307880605659525800844941402033984879633612379073278028376083229020302824857105505587958027102232663476164042519094381898586186394841616130705596756806336581099690757033274549209120322545011542771251495170658565733242156886124395001214002780704802402284924628544476429342113334718335695042703333689003442425514135740768140180142997718301231046193446434822416766746466260889220979074650933894919825630498280035341183924476741973031616874101426222051547990507127366778089929210022949739566986557504123990001500324924308972017497655853247690319077559299385600515276610808088130423305866273499509107090578104516561768056593895801576973545129086424533220630918162544340093845513368704769179066022462127957858252412357398820826328961996215275647343039625792464737225509864843767338174982914635202796606787844889008244531536806141697253062056441269097530343992790768706300619206089519969396354757414283413510896217128234316717788164951065999798761825084899256528176690739517032957775220666082825784124948556800983700416776085072767925185494329934992900691892680029372754765770296096914094147433999321413381122378183094809182324623199082074431746614570220943033274173827178979662597758454762458846148785754431178942524692371817282987760286933853443682632397135709825048875208589320729561831364650282369706214914508167928761958936357500539066557692394437038378483411470518139426902139665909350861025875289257664323695725366112811243718805013083219958233003700124394012663143177001420716528195157526006562304265838203263966719743018358873632190469826551295702441910123402892673512822485189340393946192911649244561112365104026708582410357964709460635273064967405059470763527723743467060573332657208554722199210249322429032616835541538978879642901254297596214728265201103325906940553112940207567277974404723116426093537106746445527525261187397757825053234644490452734640541450179483038169332958912856912412791398851302853565343120388190627599195683341115313261797828386945753348468730287627582462319308641825734795897637370294193670742587229410095955037409062099492001704803289530949130118634471859069252571505924575600607923184727312776530799913939810987902101828389197321329873117096518638036188816755906099057716774073017619128543906023085524773544701645850759547816278149560185330863577252590176630076983951453118545595287152341994740103957146463834430838412311729792319288436779327985902430152730651378583455295396972593059779809684727900160545898743784600679356805779700233237085471347587381108754870401551137769955142365672950097505930186105144855379810463477214950928162797229509652214568142347153091625274719365598703330570089919043819316518938245154376101204819715219634211530751502478854873663437941301466505204788413049432696222530246402819558271973540636252003869402627902252275374084222504401584710815771989263344754426947285341787754100355842190329162580705663048266243631182942229602224828900677781191479685667336501293712689614406338792267814004561553291668866786570095381174489923483275355502671972719355210007291909085719070699310227230904540217212121945479052720883142077534663576175119691556709402097708325939636656271545678984336208557605241367690783431767784229557811311409468379368557349928875370344115712645637083068730461904680072805532279619370861287172227375360003725184299761957278770055697079206692033748807670801784364007048334280511578408910112328246641669114179497297787405247755015844120722082235051108187590517893341206185078226290019085437210002121409906432166758245415058567042490290500957954027779185001123822194962476255069945780708771171450976329185918885901207803820215602858914182362514318207307109464508504324587173664655569408288034124723731246992387302856942528796161786729955550601111347149560483869269459205998770865995931683294048600187964029430450990182648012578926739460537223201390651816432516356610691982190101945942572870676167646252243037428484990313587725209654795993533547999013820014365869736712128932143515254862118100984216614085189878457861210504383752419992630331773397771146850546081492131513765326646268674681490097539809824731834276658157421106515293567757643887922691523767354883078624631261575679677297891492165657974992794552934572448543097768499021870294364440883814589705054904224903812564854674483833493147318460960181920504018987911548918723716672953603543508746656915404685926723707870875249404448189447379103883252574387276567982196731245029932189083621875273504136549782614789823431877534882878575173718738954338186572207205792603943633301973672832941563152076294399390996594085454328394010791062444611005480160613119188411035196160115905795544894908203593668861415447216526364840242322774858968394743054667763390144580813159235162479253840836721410403104980013945237327322830504223358752358456521607261991357948428611870875946735688754160061282158107618123553567942314572744880255698963623255658274753684675984002471669307011391771230294388311706108856287086040981706378116212577325751260674618021121757340261726193863223601818629551326114004942710789063435753369914612037966688566675930395171464178978493240592698092263714425959840735568716764464875861180192805487846541435292285955647190616085794422417310666885881387438880363186095440685977758624115299413710504364817653374839713625029800570318404925404759464875519499108482512174746733508689114015536586525346442783000223810709710239353291856502446779890614103964898057563815082594971781510548033232452873413757008487330125782543669364012209089853635158979678147995825620783953581690476795141924907765391725126025198826007724452638444028014825382937220309215312017468855065369758229301856662579398132808423387579193121996878884124683165508310765761603054592249386608726831696624139875815158054867051764355206550639400394568720544128774929422962450363159627324625650939103336596958017109621031697824013748336044144378394335747363399169145261029154171216506241174458471565133821965708900741869205830709290847768862521695890452702585371520170524156159515430286858899248908507187453936310004936811913999397333430733941865557533344354017151198121250114517409205558594297572392234620666287253936596822664393002400697848139474382388614567207221804841264604131788545233618076694792320531826666304274096139137174276451876314382076422432071649569946107826816423755569062403319653522519777672058110810926171599234554678431060359550930441860560972513071723100745652766855073065308479436963582576025002534181971152823601116262604238241444562020601376698754964784088153320562847985053513554725900460995881729560926896218412088727988349173592377982277029550178254626280449596417509640348189001236323168805120369588850695089403845509973105107052721278895820693953536710815397902195878951183923098671386295950870083082111904134327606266871806896412871665298254589360371285722132226659187489316233374316303257520675012515797608803998372270997871001718429358106698451010905302074423265338606560098846449626540956573046102057657666198222008079295523538295295092979792869326581290251780807202661409956479337952636060738143336681427749603799884230245078576209025403640599922706877458683387411794608679142787295123303404431292451042010803118106277394602631237173391977884818401873727401732612158780369525190759630901579705797485587625022621206523759544322972172874603910500224465332153687334785465740898185683111028125007753699175515889242484272034270010441233185088759205821207518378258751512369071324357338402230709632786536155210844651114098426225284978355629460824382768444092403752501637956445817189821775469541975827504076530620294301362103634867913275640813349346592077854787804628545341819838550116846857484933663382024220910220643942597484897792069889650827877553321054173133065947788053692221302315199445165441831669872553175383863920308326822153739197376034744244673465644531667860861561211383636697154213264087310069456654220245201809231197636330994994535313503695951582680673359091214961665311728604512411059453904186105355878491398144426226047690060220344864737058154975862026796479181721683640393586679659128663191337149114094246902664116388446922320877298560592403948278306979986931832225515420613994919847979479031958138302297622031384053138724082319667023283929846406088815701248535674109109060704901950964784863083864615027806660787638365545637801224837743734562031172005240633051097346987722432652279330246678351867060667384510714048942262439662471165561777274032632575097766257434794724451528807433340834560605446685220769923338348492631338507004407842758857353571066921218691436850309469950304729708758477082073163465812754425715193676420079731802838182477507559029478001194880985971267967319444528405729751247571705674450817440448739211426715817404385003462990713195925069916760313741200604659880046740185380723944618609704842069372268876303490947750354595565651460678317351589061405584821824401675137482434850542472232614150193933751820193899457411133771878265952124522122598195742197173073303120297016423187924111616493512213818062556240491663444117942879823013479535799068893518257273087567711139974386289725627790089259022570790206321380422462997474593671646690520565461507600761483205845985910658020622659359503547921570462148632309126085344060453648280761362613182359805426307352487879369864971897893309947365798471136493184682800273874428851129830147653533276534091328577042833118023567098898421936919670640102435137139096569413055064964606115212141347271792697250090112458001677246131321274520159589011744695032994400960909047479823284562627102808331001882573108678478631026495544892657186851412739986068510171506013521546366002897415383426638436221407280289841743560832519618101120241873874673909691528393464959535474584389492240016522109131429271260055927377886693790782263211659616793664001782155686731686544963272169032323127474679729405668903116117042931774879940214213156163177197205805938676537395574820407205924954056030297974926935010716652566638343218467593128967334126367421725852457786416707368618805055870399980336429219500179599209176692620260660241848379816328901099171199846463726865732937748250166276892059066198139322281017066945406843534623433162352976312285052773636571083066141528234495147037142207596781435740017530813878915004259660835278412219825809758247459591741776927688297048533062317175529793191885384014384543102862990230709917229554815268912763504727017932306042470824675432928511373426308159213962257911171022201307767160561194144796548365941673548153725148870778668278642791339134938211568201150705021925315480003384978656853982696671897666031221584354508989219725372236799111038931575309492966860178022253055623998910888614098418263082435420092703052288994900582504122342531317393354297080450466067692620976851098703586881078925275132081025546980596807284362431642176265789498684291539157208044351128543629934696268347787971687017247335071574565227954976947922420550674459969897857640222077483554768662135229525861249128547018690442306805769167098946422059547955353944926088812167963243500707574888624519917791350246166878007022959790199213599189770233032442606058504240720010528993041318380089622910385741792587094979365046845466871650382449719090088732430157255779736593855424585467244055633779842702293327888989440996547718902100597949353313530557461198563462403735365460988758903520038470764102056345015268295096698455180406776391035600754407297044272168678602175077599573254653040258311060491801463076707534030420914507187155809387044522149004840376800998311393298859422017861273273504291427655043255183481105375804383403653833348243569330448704614290738469025279532089921351823641789753190345515965523855552202012392306693222242144358647138300307376405313330982157857869154835747706122671439809538386561628358407100134005178093172142101383849624747222087856642031273697529984298133509309490157261075188474860987168109199685318606009433685648340433818425115880811024312450312027255901927899040508092944081001082486634046029657849539875356821000358282454945068546532318693693656915089671944116750518272943471581788181575328199346268549703855038283310921751854391629789766924109316178536692665703514147714258496379237702107256682737181670288324537919622559785305601147105865710888798058780131310433775788149916238831234444421747175611315831467570876153974706872807757906543692040845410747053268940802779812219044503333035162812337960186841770717949149030558388484582129316750136648737423193639834605159445079914719622587958214471136744482842081113841339207636796484595753455083783864489472419821941737706478933377069511667701719003244691729582988576044141447368217180428927959341854012521881560395673238268524917814816298308973557003530986468746619944702754968827044330192586923308319461221039907101839191377434569910266129448265392721722334238034344618276509576998433593753633903657092878025906453571484187233657339206028419440252053479850918352244994014887051520555482949623528503646119087387170934311420295198469735777223350286250157349061072377298786754888753643796269268982757798679332166057707603627681520320853795260578811119552713999025997237848791001137303127806391985219020299680561328828100498560137850715311401809333962519332452068344553803856207297080467596702071763051642452119876715454625181663352709359550314562028929079544084095864060152025386591195559108441587602533106154719735880395593219940104853754921126413028634208919436883397835415246508740242930615662006904483024044507338668348467410252442335337424233892983701297464768539009115866616250937199833578279296566116476146246182395282369019952108106628599664447184381675839243883627997324224097404559815569672301531944995026711441386112084077942423364358449923405785467307524251122415884077939978213946039821678981579952907559854027562432422148398048098908691278920307582187735206184347898480508751776573020632396275372015839703827948375473817248695189596262070575657963185151797172085699520650161967142693693140782812977225314505918321572794616885355628459454906652787724832334870320573106196350696160119470255710214062294371794453416384051861027882721193908329148214932620032047462360211593933098182370728018891397484388011230346370358434186583719213025362080467308944082709856243137496465161977944656938283364022068474356416953951355093070510047761612422704508661625022633745130758869437170053590497751995032399464419021633753384375870866446956898848471023031941132613142262494675734757107161035364142838340248687079204054318844898191477358026811106996535199419090170958021204697389670972698546015527341973033149329537489227232289257504162825600847485978054483056541918156822355117666350402356655126101035189830261841077435770928968038343123874190546047074492396445273458183842268520545350982923147588974216358753524887610003042261008630999629932893896230505147865924874792413128119316671451526349318379072290768924423930536150257678073121502363772082182432642807627929209279632458970818358638286065468801193128986586282351420927672221854481071825205393390993492954834403407264915834726704084459631918098225982149268921911872982183743096906462278732347470577430626081197541399702643852389626278223904449320995425211159793917347823286045444909371904489503971060381613101319412644689154811320602418249597842788634208745606196654988724656377242459481879209564244461229287987518528111289230666510004783053794643828408186888398706486191687333113875564331143228166263498073249433873828256774503512945701241964249266797249043570252925961432229819102349999937731642974146545836571389822614862239915048478687314550582606194460299481020483940434249510488072224447197822028601271100093279725457461336060853475570569796396875614822427784593263214138114770756229304543192737362788688176022407891618995782584495650987905104597258065645581235603712981688942644549557374613981979184183871061122778528594871907463528843901643961333782850493278367172584387025735046731293996501029000461901352009568080617057243137983677518553312716373790354992573721768302581203664920957940850443198706299354731301259364991720714223528906257356959705075472785477561345942452730458181864016891171161410209878226052934072953530516326156233599938098321628393933693693962750035757884795804683806443444105130391157098493077408393789601802937885859799678956626207939820964633281725218036825675558843036681042615730962873122308633750538102332452727759074454164598063792729348231065732713772699944790120045017448744614020193192500250578284808674789071681745139321801214367617045664766218073679982340097471035287609796421423298541540427412089253066991422010963980252271210844556899690360035899740097424077170913462483310531363558704065340311583200211633490675322844333219921170399739146681284319112376824851391704021443923208423228514632158667521053551360008155008864120477582699277661205349114728604105583963665470237976582163810285279524072330633540848432711978329159640350612955903431772300995075176890653545700075832284465765322472367833584332533248336904642780019575219045205872064225064241158120334856442588007848452661229745954382674145456680225934443073981583205403682296046664448497121376592760995641858464464692326393315642300884200695487883495971388113624959717337259983854837095990539221228840806778675710746881721006538670001823148355396271496084561417077616298010590014671460107008398926586704637272416549472241602405599360766373912751595561902531979842745402323092087209364772490498803562659393801040429043678223440656556179622551447744406300914657564811378474892994827361278310189077288507311739415363278001079668464308859272273266770544488447972165593049706296670381750102131276174082844599439540469104823492614594314904228647729606808479138549761975031273672127625478043247682896978298353092813521293554068166354177782350759581626024245618679545897999386247240305022358598971720594561893986598485461661319135931946670456002338414609506816507041119343907786423838572989539036901109775682446014644090922585433068727413837190841312255749628892854521134638450729742804482623611805961160374047124412481940768021643683078183785705763000270988378477850055219025257209224125711940332064432644458716025651647032302369754545673817001639725651912649678078131854445295554888478504771460287621321938385577616972666908157830545272595740493502701020695677255738095400762912955536096560570168654971723439912431903869201231793743425265559760771277563324835016267847530517083958186313136261956349942354328485080106057322696788214803751932001250620189439181242399372521845992380054221760926336866585788943643612166414272571793739187239422349790340599311822407268764318476097486210169804351035876264809986564103009307216421074974475986622739262796996897743606754190348724715759460012452422480437304455507274703599966894028537121979793554312066829262111382950266642191992409486163285756781987536310737851331510076994910835350345235216936464869475235105750082793427773613252956848607682430706395659117907969838185920615105789272144568054907367732714856976922467461405638196446292002324453692268917016327694168558580114831443891414296128611337996654940108730473205366427270417563296723114451929058664103410844746332052955392601290340554595044105878326356314546661056467740171805186896149189125813426536308674576961689550641945767549551919738441538773230825939473545478677054682135887221243620038326877534430816194792145201695251276197061877490843695045611178332942091163468024839933574820880749498028191285633042713227434822828156042397159626232032024729051873546973411775977848984056646783367042790773099496522791486358090531397543558974395971193735169839816263224931793346432483105730861133899495612946771661352322866563785215215209373179976356493339686332467246145864499623902435090778638396580814535827225399026387323368029535031976261968965461182128454891087870682454883368413626902184827381776338741178038586084855164251408416991481962125968677238147289339816739087905672105365105311938910091520465330880191930150960699185143486508109278826165247454154626932451044160175714953172784572156969601379782720591422369248680441966267560797605356122665964308401171759362154957729572958929847901864052727073156207587512086606513036790658148269150634967084313981800743816772056788586529778813559582389508345461639785257110271981873529508379364104545056763683388996443055009734965182660947975325767259977940010555388169628088972805169231972394862688598966841759410730085446748161331610786310217339305521620235100511220115787262251775384305629474516197584164471933902779273755508878556341474564254630130815968638045906868487173961928956527452748289671198878695840994262270770873012814519146377737006940367899165895726927400238701092728056181610426846308353296122989726818302070385539586250221412787718667603506873573149719941524573696328871892785557637613232637969552034527860494537895514644542427316479148808385787007777083113051236526966588839233062203703758329832263431196172627327985539004511797106982136172331437478188812451251600821753513417698939010260163983868042321422491348127919824407975187425739115714935416666994111296876578244255745464750996107853600321869709820624695748266915880975170682974076491442661314452139287891811528981562444960687192246450075595439179677306640144995514606490427455548563682554128043409803581371195699839224478406312670995966532356729215062255210355944753818642702026948284671690819750237818938737289514386634395749675341006793868048355206169513879240730948579274983925253080449509531504152282212205129357704588312768381079393741929901673795084936152165366132632403466716818888183797863260114239299286819474942206092719355917826219272955611378927187097974176059383 : 10570108236164379166687939741855358702932714319600877910688413480205049423707980524998685487228829924392181053296367100541531468479935118116688277285180910211589120839865141680723619307446537938732927196278196197253029371340137335917230998144478588921802566324636075132476555474139473160638539359157135499699032988447187096007853623502255835804257049980945625159854780889205156589579373644643301386738126777726766133791185979449975440366875722254654553911692213568459516107603261356892624465045290663480368415882167776874755395189616561481246151162585678899607895424359893102574291740211339037734917454731708670801820079384095638001953316945350819237948624310889672506142194822580426644227316733878500477693358876190610159793777496442307470625094097388255265027680434815735164510231207480495165292673035237994808908980708753861747091816006287443690506382219884403642213695719286275294840575660226775991058720412407124232312952911288821789053471580512698912644135493336266904061837426154357756546385290681180163704325324375324259947262838912901659601799245304206067871336701137244224616272907653811213247988372861982753500856469858832751259696070490948730873156117118863203829604560330699377703690122231496851092623905384130314569185471090669555941317637390775883950417388531151217849361255910414453903388558065671518307726681429268382735066852411071081806742052485867964424525517800450753630801257364643509948531231952650612277242470485677011034564824628264808388340511761915664745606150961158130496869225304835605399351732498903749354352694908131604169376306307287585882958177402047182809844507101369842646546687135365021644453829513084935619186105966469529792570524694573640249588491112484023454100726870061183936680204349118281308776434838197493288457817759024021421572864637626069450116697926643939550420312566858461274144912137471248983033954405586770070157139200553545581654480318007249003253114595973118425854270632169170634489976841071983209975883807913380414450009068831051498147495353210694278612115664556893220385682258071333717302196329148978934465923470946523531228269306076123417164861673854733001449773774546273582757733990728060994459842094355239406264564463645397955780124857368444709087480915162934911085283944658439983390495103948624003630941774896839324512423801602447768122069140339356061000265391098685736294491087605412968855618883502268871306647275005071296961232931913722675442645242101990155101829323527967258427444853084484162931247865029304946824497722145003741284230708691376657716117532796283117199945615545951598126903599827726812800235057693872492598192637248717577035649858286379601470171239536171955236700394714758862473113324085461309280784539562213025680236536588411937348594520461730619339665815650512202580868742027342407330596927745007345233512935110460361784764404816551547221862180054793671327033167860409684549413407889708574723437540236714908402101551500659477929216865736412037750210846190154595963374352730436188806124870669601609994809840435588231657436907289011008014282568776059555603878376586146671548598390856974860639795626277028849729566593323202129684341957087641070332218650371418035715788568256415439291061293603894399990048675804525855545186596129541384524667764448863529323556132315638194663251287131508758524314758808843933994727471077801351874512918521709058843000043156275753976472658317853099505337498959777343045107964189300575583304564406430906500545577119165460365018983748785752954846912032437191905373459235189258907144722264389152410929148266759839892129524500964380508556402056085493058510329147496229112411828650569344393708916461630140328589948171186293693844230529976662312731087151940087830431919650798219468219738683695252098587620512293856038074180069974679174275796407695963825999855533958093211879848545873649997683277857352694661014765052139286312913746951181433843587303008169928028494365211219628064693416738267731632012643294158406114475149232350067711915297128810280806816267890004738934775852767547986715871423687272258881642599650579329213684999107576281040005137286545299179797935797253235172609401668617630388321599376759287803453999098929193500151228602711543760510470908168461261308808500629449975948461828769817905851130419605086815141479830354918782335429160409353177299613803661246839779831724191459870987111466974008299126679111768302894708937570335973714941346328163825105741950761451838872449054060022638410315511468349282724784396407334800152994110233273937428281275111241473406802340652081632188206392540731583315414529935464074035861766417089874468679088528855460889008100102147770770028011420283071240465789997065888877814139842901152253336915137313782118706919864369621449607548589354380600509176342608393212048265886803648337050141805780451811402019395655115349883330057715444914114714065972085443705521601946796480345706912350791215871598683000646349799753201092457268548559839176087403411109599478894671788897700880578212820669664346649363861050144477086452098372351788797299183406111657020861782291834132260355358934896441864936090541263439740344171389337003147887550137004241622417755791026636804004501067790779747542347108805478431246015006452728061549793388575837802062886095839162227678525756492881696872314401200439506174943222735530901818023644138975229705298397795460258194708320112665869674010216917750073858774080952473656050849843930984921993908396083325762854558174679875071737507188049871643613187895070991464528968427971371768373387837540150127290253993401905889557002371785922349100693341164159822767635154629155527067293004578835916064870672761149829140429496264306294068653827538201307355418371967789603817273879093447953709075765849909401187328733419596003638286447763862991122175300758302766746147558211361912935089802682743796893152935544625703911075610720596768559314845161420068163071928379630679610110989301273610650198604558053976449037952088346020448491144924466586768606471704201075051839431217124794433170427091009836775326300227027494321842141352108520821207175391129032033816895344517970678761454671005385700147276814144063410005604744526566030256698614471720179943741059522899378937682537335564123924751295720669910631744389385202994326889323500139568641753709698647391063032075914413924605895236043373972358840515507460498515493236906721255666549845804700942589333687745934019416607398482496684704122305641637247235350353835125716016351426566420806574326046497570322137500422310873815343778373479745008108131789823926906020308764455943879579662039766005173572685951456318481653433088925300233653679153979674616030505894024050607271165677948076642770517303310447607911534994625192700591852189491908899747618681035578556968163032168017770219585526055728305840901748817144693332615186972010105951715179860810034096930969936239815347607761401523649967898899739883481997965479006235794542076539520092865987127646581614830323529299530587642498945199148692623049557577685464045827522221970885721356750033931053698381634330072653217149270085699122320981071862927636139643078876463509950025016087937731766428774423570918362553974180573960391538670906334523712383819436889030478257230524976234150099576008496746251995057755790321377489601785890573389265946530437010255622204693189473278093252260497363273637642740771182958923479086737629292717416872149081734156926867372935962364567687186636089658864698349890893990746006564394406686369517676813810747934310996658286172281672092026796442999873665333929745611313034682755739837035408701884088401954787167045999295225956311813464885384360249466939397291813220892042126001772301176203507564530171800538034949267683797104749421120227338825396708756802858064842012151046154245431825103136729198942482980012333333557362066742506555554917721418929040927384557051474969671016803129073326554133693471079291652155231283258022160286539125063816091683638201872833032878722340794872040762605963388335255160723350526844698863294759596882124950771617674162542227681987451636145992054830161703848161834662125274421251182983137074901342252668178850035740961660226441001328900639986515201353423243031186938004511872800374837452107509876287944103579809988558079423986309511198669837630775031098450006385189059404391917866911945792085343810532743681265768642335209942086226761286062079305957226565127769405480436905006583987308887995380484846996746102279549929894435334909898737236477838418076036899447157259055339186172311056827638734843801597581906053041575367358941051479326186659316503860164933061570009738463474863901285753459024317125498892980431882141488609362895330763856885293307169859933849992214267616048193327255870790448735890865485576437552801857396747731240630356237815973182056254847176282521065830094650634984523383789794942062245086270988711726949002970715875969824855859208598958402875965879258317550267258887486594737775270550290421993839670983931641445618252379912127155485163660989437178412335698555337600120173394995486987591171620265256413570402559042148581553832355434656733598999011729543849275622009381072851394698751449178848897724069667902880206688400245037940068498166071559805088574899571939695410943287583764317654151342034058623614203277163874263607603645437803970950968676562718446842036723340045559019282187794030566219335099754240863834662210597685954634352192920479937690367639969298396910702710404963998234024269209238117296499980067763994197509355054031322856506644909142999553998628669168611156089750162464725088330277350983311760236820469375918875491868833940548293480598504468960276346703451351479916279118613025963768957766554917510612825847900538050979684523996768504943697812206859570023931941254293919442306905750442348427802227614467891030823485892601613690404459045878491315127393546238156750959426906792143253727315610279520971169138876752912415778121717418204509698173780878760028781214413065389390802362747002987709416300877890110652400158196606490403304939909894728399619393116950196599516155529513104010328766036165183344608657039149612478151026496874163577915348526578616702537150208553199502049110135052499672959035130384265624979115458895579323577557461414763557470449939353089023032839507674642344740328132716748861547770639149244853463862983876975431344952841430291334913305149847296746026950177436206647562970110412750403910574533815820778720969198106175097639319805254747348102814492963389103009253498678433737126075198604288725263178752060220901969301146239020581860208006489080952174154748650213179791832439729225945209389860921159461607850676767455309102771364143573394815166860491414586628151809746329883283099073932568200613427904023574021434922083530519540140275124693029049286005842913268709447849558800861729150210064787677716945747884512630559480293360054017958873324441805849436747972555131374230276296517859174123779848559649830557059916122456842701291154556971851751483484710731608899496861125170338634948121863741233960633996651801582268347407152034865481457483727343145286654648776916154607108251827753496085856502621875131550382341245484486563984272641633587441403079196950683014480310781027345935552873975511554900303681493885224423131904113361358624578198828325680895138022881051925029533706603474371303597009850616705243425864697178965039325773482295644748528948462187680913345175422867864757845881548299857713389749000164307211269835939647698418651996328762598856725909082228229254067759799107350085880687603981759800929233415319896443358036601169846355969258418553122244245450478747317287711621548742698355517017242370672370650706543592852578918457228130275589382722523831511913291066620023133479930966199034978028196118757968571624780946921843940094200630916499921989931671725698020470089215829799610328266280331905355645551714172752551518175391272975778625706422682227301835789312668414226522163781666743050543016538153683073439546703253540228990736531930390422318446603149633615285202475391952288298763830119351703200028503485151891491295841375694157839154198133675678090114529461706424361719594652347818121749450094387391054991498366670053846694384379775878707951971129260967963929351418124350545652260715309889625776933733994765833338364491723041956592518909056866123135472956710489589396597532240952918030590283750134966841750977892053266692287255866762138972355400051453172532659543784337420086927915106616021514046228175027115934961107535366596349138132823015928784295836286485405249388084708980607554004334498255039778453394715971661610971780538706443252152628909185013473939384005115541799806579183266611266645371524778629844491937113825056700522199002348733247070382721140786288034841722026183721587111245883168663737032019375292917239987982293066125555094768556602967559588762921344192277219172955507710034619612452031173427186659828137898190070824253537354438693946168705088931979095589866892722115615945145357444969981466474289648371182353059997814575722958305560701258527276749754915889576439281903839548625104623205282928623395454202462447682084520647665725750673449168096861562948641939644840713371484242364199538805067070886771195254061129895268792436742980761975542981807394022944305949830276248505897794235147153531789496006286714503295024132670728750723982882653846656705076776859182553884466986242875810298101690205086658448832839254955999639509233709762960859375447718296134164684502630744591213014888896132889682716804279301052147857356698767357318865061058026329108328113331833151112144223185738806083799727063416889948558375221768584046678458137958865065788704030268387092901394575181631768399586133334281438396505466282442135329245671327406357285316341533600071108559278221924773451069085703049114599702715293649465194490619807437197529760882324800103492530220101310855418502505592996022862976790662244068376609453355103012337622767787864069507467472696917675314832227331980089478836182286299470988990252455647618326152666706696166792198929741889144072882561862963623657932999856231681171143739486086249884121324774639610189916754802671312220137276827838440325431422164639532766518773317865403710215156647538493397418007427309318481400865791313060167802485950233635256319317042837188924615738070953572236563766550142030071008070895494827039045759140223992341962642126951258684858312515756682220337231978337470376755533489059028771837778178256800198682835650310974612295819109335258150362838192541880131643465482840393976549674455604674524774211222237636072073370432727060697037876586667525520907172544392309636528513944002045102554902602291189659462467258254399343717903655041480753405250215525755093806849395822069703241228124199541803253154872671619444441127511738318759242498197626743034458615647539303752749844477627528359461117578443723640345668739874138815980855801726673023937147211231425622369828663297769904774876130626016805823864965138983557445944467577298055300047614689978949726268788101608574843830629792826915256845358995543150927620427354672032731145951896626628292110166711307901784802687092754385748254578360669534226780234278260304894329753223382476796615004978455673741407015068033129007738773936810630023764249092699440946020862224998141997802016523655291956901677088026717278086010127101121399787719839225686321501731275584589083428354184514255541161295838665888566097712885076197744121450597504821506581744417460735555688449461922946813179540886445168442455241752926887790174239398730231548684983920909875739574460328480316507495821213280647746861268235969863115003423175696147972958081737516870595693710809054556601287963787818402028839308437698531469931232701986436194709854346128642945465879680087061445405522548400189930446561505985706140608912362201225821754870078961659308961299567977975515534503540183396251992158782256782943659319151264063651944357552847264601909736707754031217332088367011516917999180989409465209223056803893345666090773013193280404229110356939531789595415112611223011241389814194268810480735773475320548899618876066629568560586687329143791718780017630513023137288939435036067820278608966115311189282539553338642466700890991691835244654537258891315656468232386636177924853140892001654834781321887413334199727916892823666953795370568497261116074182006135431246287439975443315591983260248750006042106855941690638392223944789724796062038133741878976389485144176931896178231620773824658550265585176306680287357117748416945816452592215886622152265081570189185946233632394677042663761360346795687689883265088786208598028823719875651581900022365432724855899329338511597951976014056337550182289354641942390676614339072890411807444444327722195761701025065540582292490950174861783870643105787587799699091259390592609894384209881139940626426837816904275758173624063267317868564901835296116947991003304786989149637757131496923195961522098165459846566929407364441177851182525252590041234184969225002009323662488163336884963819961995236318741876687903274015774471126817029327860171999875586563931857631927816399103729852810652635546259257191601519385378564348726316356629353288899520013269041861276533259836522652801643563087662052580647319762970688300376467633410516625072042950020105463377844909242179956867979991008511210938671036243351256379108851099043934440689340203288162036428047165979021997470601546991238832963496425798126530762931678020834131159645104613539932925170218398995542875638415779250650440841529298195014920136796880163193575244840952426184377145149527529424719589250066155289801867560012125086405966912684566744989703936982505148105416528537616937495533710383809043630390829231767638783381912693555724836127809087024750799919274711051262348669257176667660323981748754939004901265209540264519860281058980936954995415393920420393388656143128000780393848451820991832264556817485233853239657221942132629724909134381645221353854174796507698346079240992970670647355444447308450726832263037338830856770928145442800701366067624683374274781021961368062834464636959544769581914092086159312637786967599279996752927559492304340740202004150493461058284087838193084245190095310135591597602656351684855839691149221270292628445337732133570140735744063275487685581665894978801829318615333901804089962577226247264902159180053287104633354483567829496981014912196170817335831833258359079477562133414452879377085652252288171523279152113134389741632855465362535370016609614036340900308967977334322918222249219116417384546768740483551031623628283038281420875857781577127743563588548205073779533548722979174710174914148973509018494829854314046116983723346934270806738555023778574647407598778855620659417050687980838493599516318762388431507664588714617153536983753667707185252218630489380138115507410193143598922662084350139313201017900781599508120595266872295268117086760385768147464601248160236706075545874236291911476376006139805605752203612288973295219794952536027501672346555997728333781975933979130272790645904726496622024862838517235575565528494346554312800030245381366752244286196868583790758214034722207703080182126500999636678213270489993595535214322749598663558926971053248321685661773655633008199729130929925747032404476437669517296132891350693597062590165526230585228141780974464741903514914993813291935214043390711708250128296142204195404305472591763607907573354916250222308213619097757967341066224900383713590526920206149894213856099541436439672935268652275134402255476158301072460725130989660625443780657640230954835565344860343678068413360299214903549836680385566181241173447444431689403166783988754819821781522081928853917541511717146305575267901982344486722714876275551035488610125816851234212242488548042605776227924679099577802052076862035265049790831976242977261495321638902058067196685493141478450533808693884988715918697465538429431434885581994137992532538725003968866885831066362810062795628566115714117324112634383618945762036081895247780375649171777411175170131367193563801409824834445336649618634836209006035976502608619313806593734975849324742708296622158710124660230950555410178479067188440709415916551474264761178640568270751754805829814714511671665908189900890003819127968231523266248576321863298595570226699422935867886272430864081769646392104983659761479232013555953265963481428493444890116502220631577876195920959320541144858222796569158835547310955095159961262571573072628645473303334750781929179990496925426249626569638984649748970663437706725005996718863274394070667499595926389805220687042896694784527796851244242739316586538132779656902045254265569524464552196507564008650798596365340231152741205911394108657049017436903067161438897597371962919030522260555060624960436346735521533872786772270787223003862757341432956318928984798781502288427096897332385090962950952932798733216812718284392165562463233641718728856077618392010134572318175173365740373926402850107673442585228595551774944122805245078240938882506547650574643239098816749516977779224249783458137454790117459009934323101288855124854313618361356534489274161020467571117054484785991941216092051019853806761972593871444617942907294400835023524298631005078107667716699413479581411088963039167912709019747235864982003936797730448245368375062882220608903374579385898546466117826111362368533130390059633398898570106797001463156064488553744569032725319530297995086596227248783362506036460568573962108118058138999340828881849262478346330420162614548444656431454478887318464297026470150047625868265199042111904364097788594188701817950586058708782757687406819889958240492385433608761972359627037154800403386424319440389483034997160997044743300432591486319189879121767439567338463900937043755322403938271421009792869000723758389997924189509591551022860537774028933096722017455747880311941979159320058802707045735473909684018462255556075112053793300800528883369369098190859564446484931333060916207755077496205633537936931295765134441046278884872595665946393223633947136013074111837800278306981235856855089385109604753077842351460189566387858579351882607449717034125468094732415758571177323181439776007189663521401535810030177479811387124865983241131044697043360311421787754237897834433471777635217999788018007970792645445353302128737806248770112131483473515163735229777325906078154379488401043893192183677117279729811589912668226454401776551016616745302780207142727275157542362599053093937244384876953337745455249972383021263294733951963875670608423554468922585579402672537761281894785710012187034645720505687960573892359924789034054578813591891503601173046913015133825561471541634366233785944402439247260254873398623971284527991901702492427874148024056285692920743445247629687886418579223550631463415690714897453773072010935316042273151813187171324411412498804703308303156524780944750490255440054076820070458417209141020608471169823198042458398836268261528361656980188895765732220684640826845035339592375905078136099306089731706782054203039549806940873840229406094771069784227433275912595527075543043998331474175083532055352492645010505559027696469529477346440195810820050956520327570290712057918396362204025821831285805320312066073408520393178386005915992100245117422319613346024652140666363578688969597738009461828604370883461612058778556929533909615872737048409113714952373940949797796922158901326250500651553107156116104296080345815917291236340912101126628323613270237586508234449403658067620973959397854115280106433354219634529051627047223994258641668643689858525147245677117707040618738225001297920713430100149972033460719930941357919780401070765279947717340894939891502015752326042402648652058468796010015244064814998608882265851457673488539053688134683333583957679226910956233807769473015198313804769380324132231156598029169581191228815131725923265117715148275315456184734188220415353835553034490584605529739798761056629219501640732464316438173868869889990964278727721133642608735584168295897956509511244689928684893815970485171569598690522616389384401213697109328669644936600357979712353325873686749108469172711484551815929676417254461878908746410448003542496492570222475340036909854231222091199006196828139637597963043162242634556754727628683748851186241700188599701715736251682051785411197227636339175455104252902542834728131702333857947323569105657965695863548692280496210363347409236671347043939708247607901951033856732768191899148676463133554892346442403003952061760078200295427639997272858850638155892461982408114194882175978109843813768902031459940315071096879677475738073539992400182709516397338596370631879901391520102177300176513695785711128279443532337836986448092549858182754670988386790677627108581020295897744828310399169510406129609023135581328866324110154063458151254438970922892845494987722888933123754888017238191635353841114554583673607313444302394559101252225210720304982210911763134005161676537741168630539984677758917775868802520626714528089250615371838451334705914845664961007666940225878519888067222681008674337782342750430429345135185138883371855289024574124562814787105959914051343028607026089224487779538520082275202762546840923546242764770282199071679917192111811900442220690430275064959711635882717380291574253151659667118567235587976966213269982246381881363213445761955338803926736700620810260581820092725128201565292942800610097513250049767486463551861084658692640290146070279243710865297123205970577888507726778352472963632190855116896963601503734781305528808331658994573690406832464859185292101582983158112984623122452378037337519112583886126052209138775926880060740748533966817416549144843041389937399648659448003719695131345384751573646752180820969648165945344407015415619227054718834095314241358790959383149114273972743192992158319991995853265149732301881105195986304602121179823521815362602970297315834819614342498810608440944496727741234288991700957972513335863176723637823615735919353498043837515872396981939972973815783100848447110461716480284603136363060698050861363234168420290502258758791501439779853505762977420202705036628664321509176160067709603548320954587095793306375359322182352998492299156283420813850741066181360662150074075787057587251828303536492237645416718999864094432659746553102782330881320982326325833743424342301951731896481071431032102626002166500671615225128530715589196656422858051606392410030697180713868820157441160982353738741796950938646514343359346643384217188075779761521647278482663269499237557660401795053327988017257724125992864795893184778303021869320520223980087399897114536089879325375223505346335842119235487734883047611998489084270882092760216517438183046755128022180123073872183600520430233665691073874520424364401694111811970926262549849589809358015739584633186041019075562467700867450222907182555453740439782972199665212055740658579507905133543167624637689020888588655206921054399522200754298313608174861981101400028609775320526542786747533364665153461962634294331780223514597030745584390361337981164797073563077314537416586294070235906226009723077552572734693321698643179860249797159556395511791409128739508967983232695899804343361333962167177424110246862275525028571791618350863203866443975378369491985186208375492278381941554525749178568208776231142893141348871066660435479321212012999963935483567004408945000040727711712546795943629559129083000682533964828852266549092427732873098855473860374339164143666030732200731507037540461379781568392429026822940421364173654320467423740923737271225435549822168370387218721039710353729541581550791458975496120702805157140064474062762923929857205927631582457980985442028025244389536230563739995489140766672439777092976538035331383213355255235656957703978357355079826039358748652088263132527909474561237437226026573455063091932408957342439501702210907369423039771382290023170194754443286223608179272187630622179316622015987296043959422082132051921924263889676854122132474861358343934846255494385471228474051152362662132827560754022123949398090690783482904075794643901720790984486651714429987768367079145307642498675867688730061687881071669833118799963385479410194983732211230653979009070613931660191560280468312379110719530521696906927939786051131541311716825810637106678891308159472364982794394980528418928873429671275991756052262917566847351967425022879350147472121976213011442656899428385816839627991154541511196481416042649086242150571713437563998972949228079126374303779959142752045117932694898846105592043632914558850505433363621248180766031718619406617707899015589779578212714140258288771472477787990303250641795161058759085554547253016444501101661951287645311149192204715601313937445242487661759397019968649636881088779281990533621180346376016310555982829358684930353000521089352796897980601781382435986613585036039622640247738968151934203821929579084550608349528325281644453949420954151061382926123087907869301034500319923674972812762499415842388790335231349070103299305835086729872050983589804393888562842591470586913402707839336297032080450838853355135578181559663330690418195709175916158955345681783380907676972346822468358012830337131263289127790208279368653362048950417354228698014286724782508613398018995790073008444959169097167544477476522028072273358726612568590830297371263234174845499376267595624013906873148228500320606658121269903065748307646749168360262814062716276502913493775926009298578903375833194168368100175457239555251855756985108393706807827837848945090248693475028695098751318036801986515057834117903382772133475719304622996003794363653305959104271965826085432729792208344536754864162725943452820148381956187107286113317610319548341862883303700562807694795310844738312136082035475574958267809452333101213921044515864988104631057535262620201114014723002543245341526599406194273395831402027204994176896084982287167934522417635406193446412823067562281814124252708118481091504799139465480327109029363868666235762828313094209282896856294645885369425158813795727021020932388323289529642281217604696391373410467296170627006599268054738440905045664381396258926717695323952850739113466157694226562177883747200535646096542005666406350355365017220086183533100777040726429564519136086627902091782723947903197341693231646163082348678970059829643910631511347684010252991319684319073731593487846743814102146748262683085522670331445719153512722397729336429208502312938977906578746231348070019236375767511324378832552296426963594177557939070289989031299127375651544415164175646766449902781802782821111651436476596800703797227132736618389698202729500549005381670455730557149675302691245349364389330340204000470657289399116959741057158787526461296973413913170208272042003318144014753158092612533756943228295437477273294409260090417915138555494706137600616432387753641437362602316315459696326894182952756529883381651179234339427594011701074066136423906605727057091458483983837828288547148137838400156366959277303607529778953176209282334860821399062632676495210390112961706341116199034695901531834036583572124056215315493530924547680869559062286148395262427657510666733503876316442170070581170024982633183988949044921096339503531277074461356007711090794147082545429491966435444935683164734775119959352011421117970342602327660114097227741330320309107648923187249939993151086065413783728831973958739211966145641179318640488450225430082356109157025394738055237434791454241209586693424863881692331214336390080101489510101331314404657044009023707020608633959395559190378893802114866525699314299074545742406880942284177889211416065750507719472929581256739465489156175048424122158318196985507917311672813908701455956606628690833949665365608144963457835583926383910801717786618187728681721007314682644186349897224466755358075188585960757089713563354829512521816318657131786053949829579202580296114375585071074197092408383309968140597677957772986075602267675990043154826021439293149562560424505044249448483989593806893624230281569661801711616428269314784709286784159851951456590218969369993147080173769560430465645929556547655383929001455475593124343061822262780995432417256166523906175667350485995730859922675199603695853700219522523319810964913471170307560438000004255332490622223752400704674847886718112862892239843314267008734488477136717128181002987279355721572858839363962261716869864115550883611785889354672268476999348838701091690620987953981967003855182345146674798220291885684997892469494715245552724291343846533897488957876118119689824266065154904433156902220139181837545832521017902354283339038586807468289000357934483692156625447418704046845902250694050752797008698997371345292156668111662500640524348362181173148897251848070046211522460131519828233553210132203450943299351561798835407961990272270789189732791885569128053739930761202787778787944992501525419111850201080822342709622311173071425443613297062101181295809590476074838788420665093196102922054264739383812509283594423564039386861601735413071816197437438255722781581431107391889969162515041754292882817828189584819761984295560839434062691342354148983033801777716405076105616458901488973705284446221953968115099973871722936805888424748830956792679524433351046794721214926688838948047577112182574639899068416776841550740813845533115226982390267754051336925304838112963559071593157038588940721600527434517599233404505958072602770203581883305047928904574550896262179597569417490046217101607776382708281911069218256668975086225104337541862500718067159140050730352185408101299469062652605373421634370016215486141530162537665950681944250457749987023937692722592043373501032939163343478527493033342470759515425298038520724381750632145954086753258274670020308180731253443303271804091304129497606476269500332133975141530994021538208951132307238187066272109767289163523919690228778751851535173816919127578368878067189067070227028370072624473248092795036826758745439442569356007406388243610180588423767985411000482564897355123101323286026025544426309100704624426074793646496821264393731585872986198068196370530478870232202135795075145464617900412958655951507315343096438718656446159756644501613754443575270736102668892497963138887980375887070702444738466383202200012528066670875230457678008947962900554740708211415944787387220973296807478597612320193466272692976415404816503280926476755505588676640721120 : 14156758223523634848007874260812692188753487933407701362676269328447206724743880521244166707827258765237210575846297047039960873284531638125883166990503325235854738443542931877556951694916040814286118682497019578787971693882298002525535825177196669561199059166005675133283908585097753802118440471601354779329511646383298799903969204511657951785108733325262529906023048124276802916166995909653790045192386712193102135970421069900699405054355858269851561838742620358747571328374557820172368219417734181902568618329989072221635140076046411702504776564024825479445655588554712524808660123891879274453215838668917383497573530599703248381120941880840625780855783071729054679144034484132368467159016394779562929373945212654668477046246745695262480274514553714020273710358455067727454451752347536992361432455248205823245767748737430904558160477460716657530004097195664049216739617958248748202328812018722327932681059307225281129681405957602284944447018096213136072159814935729512586306791557281365624479398893913427151712770499264789609024580150193117138930606973162038624069295699331818747222714308238740865484095892079279201624484267837469899179128978315351281926288011789460141074847816080758926069952553458759328881692118681482424737892755197564836064221698660482667485661781693513605640904201229143384431999140016593849216601260863847142666257135606212640983007282098572054291252241354719669744051127994932754783323338925944065560946553034231409429114162018508826174521696822168864809491804472039251150214951204582108552932249712518895706841340771581366900646641362401323378169816752524873741669970499864617130800547521305301611916134193920405260083779098662580098900836446695429829395323549909590433067672493454129005167273837916609640206156856453304983583714038391872136714867366806435972750756037191542431958677665078863530286743294581088391739909397019356366037150669604197117247725101711461358606063802849908303099376136358649342682910695800268082932575386095965514705417654237604851289807883781682310144378345567573814951096878084794776399231561250639455819890275457262412644975136637017493781427230765786134633281973364256841595354319289910361504708449119517694810846435062606907784825128947981612569619436407694614119754457996933989214140577622562148174815152013584253405156127022207668635615888429299301119388957873578058016948477129382147881845844467130091882019255760103461950713472686950694528904976000491891990276378264738897828470704908310617923536029869624227291092984876984772997690554384646512666513016811083936486825504875004625306727468151875305812917991168270632793249206159788322392109735195280026494668671840788454505331177169890184909744870019710688380890764235193430003392114201978600297498848414429700026779891370097977115349815000796720868706573443662005031272192609785101797604501090099303047265977664302137592375436636979104977670638745198549639706743417756884306078739342518353024175962087101936936395960576631084697831093046257992974520039038339680236213263702946226832759527374589127191377532071028763573439245906656582380009537357763320999295767446116417647396702055418974450985567869761692912106617222173801460187760784834805740998953329545213396571322282908246054306626509218454763563867321243311572316601098056950764785334419126329881675393076877186733760190303597700941020013762502759261670657896754445313835603962869423699807796127995747942545079440347237671418880247676445145934549063866842825702824563135999355110489335879157223780196972432903388587598002170470908066815324687826612447552088642209520097822556575067094191559064055760218475556314658605378685061357705410927145861554197439595917428063364262102675034599497149346846237164029419372747132425090137186927788227048608369500155221376973403641201398364451829360966304270868818329874991816428461020745124918532021897996921601438062816919699764853728916995284525961105236251533781358109111764711734456761048152535126628640224024957801420414316802999227688527999554330309742205750670421276291113579760655994510614088146780577921447580385691924229006567749524677872337720962199632753676120762024970103871914589243196363318758553649997250626068080509666101986893741786444667207154353923606792016607201532373142613998860969680672011999734777252137882897606064384060195666636875367381782535456285660982577828430365840321823953245604765075311039885910733975203727065774206473517259086157743924892264559497846268409644384355878994689843533201833936294152807998187805045645735911414128456215225436190587067853186536284079775062424997195204778247299943433032476876638263778637454639088597732091138100791631318774071176673947805322687410840616215260761336920034821856004780854822791323018134078478542099633839058386038275282273625775888471897233315577673501029585328140236011707721577280998498485536581738631289306982364525405698849745504080412520649350801529173484023839998675871363486089947063363956993973289221286034761576728866171544851156553901795682174521290392970432317179586607000065656869676429744612036307095543120246919451634235303967783333005707639838516110672499929161295137756405567392601065609358606519387127115420017107331444345756056592840743767056405128233352226464222598825449638318581229063764404581579531590831080715990831698009229134292893117993552278476945791063209315617416506808436470016388224633449648471498408768656923614996580357917270721870259520727908524760783423353027872794153845281265253478425696115642169846200428041329794754616135215694532445692748340109819631377681318777115939077775431651222794952114248761529149718249980376801185910061082313339326254777346145210686232515439143290547335799148958674796401803836764221458545147879039740386518695618037144817980062240919063004845451240778162964894767359239080071546252235566425200460080884487538115129804442240118403315625396213989263710604407195316199593589884967864232863922699080768235724841572352445567752367707837251970168767067046403676646765557589692927869376936190531503183697852273742966781937924157359733614160355033059268892617964986236463154224913699699673031049860431689841172554477319334981133983030135568919193467295530258863654749164377819777808816987439140498563104048266939213988503707142521717452645339500599258039077849500519315941315399864146176181773332437793807255508194201377103642601168021905423508492013221945862723154691087655744296935258859095131358246439689137520147337918223826758982580942376478197457016233538992814074136632357986019923514439300420060104787957358937289355399258736547457255522019404252999114495703629016430211228591988957044472716861624914416487807558826061152269703762886235791647016936230456463452497943716825574472857763452817844098877233286863394095658246581205272855098269097363024743063823201988457787448686313108687972114414660149194622860228105131548787476322140903217358537812166727202409377529829694755591066484586705743643477788307229987456293227995377622570317793471796067236145018538447199671403451509696325432563422748902208298578853157631774586704956700384179264378039026213366754481628620380922630003395011280498787209542630658405285811352472362407215055697785000438150685445836015996954951617803714419185487212947689631746282800987589379024813536407256121132464271598327156863528665287599943908469223085527769436825586375971210829406388086553960562829887160193577497610303929658677796197051985404750658000803193661288757576939945355201007095330525001242159540202162952630982686917051142435542026371612655306878531886719479536951193171124384920440176440299545566324525824442405224187575830237181896995671207581485425069067966861837082802112074070913348710068889047718640335842418493471124913945353395948872805126533173300534530911165416596328294645168497128338650810051250606908830310150668862997513656547055273346687931764865278823492280723953360867673242546710786744757950959859980347515029210951372127132533346344293672483517385171158224965128525177023061332476633786666488003906798192016849424128611141212882452275689555614733037232572932500946060179003187115952619264596906790530781247295649247389787283348681399883540378898420743871787955521443816040988778702711734307805005904779024219391086200679012011729033609283482235359850966953733843446797770809978511941449765233806254400711230823182608507250400172412747217448693875997421156686137147958898580227327235272070653254832844960246628042708014357307804586974329444462472035925571573390155555401599466514396657592922657000388717384034346001761152621818514314238792714864452297274650709457172227148970488818780124032565579394164288268961529245396854600536890450647622272049092929628913417115229199296032472932716039335755689624598122050627492079164434375934416038379887574086219988812358891930616566904578368317206870869783225169497161805293864070498394804007719090952305634094179557848255359624690022809773901707158534176732855362147579546883835450476931790122621153808151594866936465494234173903211092970978282407695792378608965403561754766885156073517912926177379067051266099671524275553480162567959480196018538387690636920418284966389127621905270331597334494582233496168838841618983805768593478241500872515958300104170143814439127650856624888720534736955412271465451369631919130372779768977285558944907110088231416387962389380797905337627774610893867744033464408495596110946193990683401684591746986415340775236264283255713873352676553786655644182473992738741472656505634242765499286003246997143568406994705827430108731165030573703779647907933937153185135885481148612604741525702610677413488800176791667879761949317178884901818228439418396768581826545805475601790067705905340349182210005476982035343823054532402786166826287256905650026398057729414589291750937844372683016162173735332251825220625504786227837009931704098585638583021546808071354397114916873728327117524582559697667396563150720635991610327160327958278718349359956586183685394672871455721388329762752542047997444615821395186576037122515455343362291917044674408796024531590714163269105339887526408303062891551706592563723523098670272790335304760679978755770469848072004180581265649077822338476791623220657596764814287593526289320068307817993502020954239393566051003135175103977610039389330782712841189863408004262541127893457622619618821383234350364043879209260239264920131243692105401688886339748068488327752612973393527030760412908037551383843636673804619362931841687560596873483169755602331909124118211487409059342301480525062082440003765290003775132351360344194303010122704657988299864984903847056502084809552113337378540725399381377678215632731695974574134915302698283350601706998608962244737687193444764854984424987180318388315094292436413086069150317768196809888297989666074934267367815510506211381324517504949331759603797055586842549701223265248185972125352985816804437969601005304614864740076532964080139700460715177793279618881902303173897475363521117033440135077662767673986861383727272517594088643057430250928183415070273391059414625883536655318411770531631049382725988920702716281129824366439688273894124792408420071918198011307867094732863662623654727680208708437310217587142730843442993021891764497880501655015833290440785860308107222723939143847573597095068875682028836010672851263866272461316423678916871368031710086380454800102030155960413085706466498561765074786478883699855786201767950728406592606396572921799595819146826144447815066974547241683242021875255864588727183408350794610150210568174053157768555729553781263788748071963460802657090175924342194647697122361152963696465753599219076365050301403644989722620496347670702714627732302998414137238641536417747107567133400884240677926110024878170229514701385352692398151528420042866936243516434971804861536838116488522920430609700453307645053720123549867688382396054194841368769432785151210505713200353084680757080944980000705545951867264439916374947436633483835195353139523765035560963375363692731592489718485533864407122385304073556004911346036278350329337413480258154741855105714213375035086310712878054986683819874417431396810721340408188074029655214115813932106873342054448282812118948433146167531060496139282799651632667028407269298989935105827987291365105399183596282454197977305738304999424623719329062148053592795771950913809670632744606212334084329066636018836814794630612095633636984401218672330861934951828014399440894410396260408106486297687210656443925185974260174035660138528391648509405403116909336516321013168670847831470203808656022712284753656586436606189715934088818887633136950030854535293651700941968935500447717983512021629417006462838934821290922088719730082878114885160404295821869558704891933679624785415755963333585002401396850662304963973342125825082408140653419179369147559879144531644028747099425525806488265427408131472294155332761358754635628299315222926566578595630494833557498971673810687540357646977879061950022966578386355713621458699305681055350823826396501760241597914468768842033839831371366682350337663576245679287969506070468814589318113617084461188016174082430897110879910193949989296715484798278686047422439502952588718383743409882975088811972208420534076700458997348702120750533378762106507786304004240495107715352529963615688737996408650018429022004260562102289387699473991913755439046439387889023104705692941256264481065073894264673808035463694010035275133142857469423927051272370221366290714509099560447733805560029541022721360758230771792478701919452751773369143727344015843171552377267300789163072190492445350373515100683921526194290057955889329782139541156522935463147143505483043832758578730266217854480776202453429120892119961200260714957111516159576864943106089432325859282471961000343897405540179765470497468262903677439313065355741364900545240535184058640746677100292843712666024523616085094981076580191422978121197818629538350319601562307360771599213875412212497449350329840783258107688280523105651184083605334066991522918487742115944294592858250302213933620061249974110587418906299257914219325998608925074266961068440157728364302390322049145996935970673820699689895252082772665952975065931236856584694751048285490826463016514392526828675173246505202045882287536133416741578967322883047666658040979167075514708160460007497895579581845773148893631495991690794693111217033020867861236960338714166019589396079836485831606205505360158613462656358366094781136048877272595621233082399871228494165333285631248948126195233333309963367849166017458614807067198511870243451124588634083747195921170312569633364918323783416374652516819402913242041681890737017533943238916298204820747679243725924204390609528560399579483091544664961262718888717466728633081913460813094890335984223006986334538106029968349678901877762088050352220004316021296255756883670086473518178502053030881653780681572501646934334184492297089162367383118997626889683648756223233059346964476381727661247955001437937040230400368987836995231163108783739070333562765190809545665751416111844033298020375996301902273974318092708694221942238562862865388261745438327220541242464804629070748533025450876699607562357397575408546156288501185208072612426165037909189641347126349760877781780374245406109070690561670265474792217050199083689975614828775900456651730203592621008893331365906323673435674655891721955538718692375018465051103920138258714396275393344935328777271257220178481225071396008803997242135286944180960873257460888889895583144245316658977720991651377886537717177626136826520642197551662225710334743612149273986056910025761797658988013174163881696137973222847090097582011593097953194362626834835249413480143524688425044884414740853971296402743717421738615018570118406801662241523896485281525244470560894178700911718929685093815339615168007354723186835848795177123594619055268202962676424316999296784152554295111222835328798959945272856928276249901567486086023835542307642899421337607498710786932843526710112138619098629633052892669628233264780980517007731789571628896579988534704019735654241396689010991611204411549223047723863101325496751070955528245424010086166814049009179472612216968346797131685491635007948598558719855920093007875562497367573713372552491774954462033295712455471567277501773380330307203061167945132842226452114943567211219085581194657089855704099934314363431341696915883665454485219432983212191527469964902307582108435404691860799399413663701577784529422718983662204757117097853182477792594969851129778918708262849488085517136381301119505151945605614678002988176837969476946939801717387512949844543726767905069401948531444168266470367523872845775220029778881809599225371172459802161804092169650030027981927631254509956134631279170102447489148813906689578320009481420371777204451849486579549156214853034039048500599907780691657679319674158476432882793406339410248120628816858726732875168106288333693196284569601379835471881847055297562377622302692489979515851318148533178220615722404510896735796278299311772423088502702634213392511079594619702192894304264089990434786885573746426798052341824920675226301481529380172193976171760736432585886181227951201856315198989142202144900554446998164830652403484602480675419243347116950948863266571328835307853727332553617304707370830820218985668889815591025652278035430830942407299414663722637680503182832209615149438999533663873567782564488295256463569561194875282970955164811316439782609205575101545621824697631315589471804449588942544418494060902755296415463713488547818646765074384526465575885773807458423446232359176739753255029618346606357952298846756359409276100362221024799746105259701747142295860098554290867330260292994491000821244399449164889337926768059476511392256652444285597213117313935535029835847103262384940724774007935290354361593360692611730767599537712873502541458679072809380600626473410730764116674928690028856967051608126216769849116458750091564129118002199012505332954937422262089874149292853192821634584256808012578207193219652040953309760406265991182034485146309013236647879355750420045951874914671951556415158209553700294489529831040160619803577920301095958538595584770369571640779353068423397261142993530190591382801538244336829006436770887074851512679976422276881211679395883882262814510649965761291655333693755271924129182386844179215757098663326835979740999708028507314739678597630277673917731725804052218418310338047819783955040845433279398385231698168963380867351501688272813284501645736736243711920173702256707489491870926974290491957720125392280861608993256729060176438941133396786885575050899229444094882678250912670647349148469810388131868322091036993930281252480513443194892839574841182851884898580097485163073235227182512827736744051086163257504705230037654344516423181080406779373526858397594089606950211393190530762852414083847528246391692524066749760810915563689044789578875101671695992673904280755622009916779481583155734957834804116635268672702341069192083641309733101617591313575926451589756384025544941038719926643375324528879235584636995100915844270247931378072627573194306695336624701455445709284698506955700995408524569727575012941391224006558287212805805361452602522637657533218623269679738303317134998631178623803591516993636093137629357679946676590179447511572068391597743910942530763764632872446369926016504835198523636403924999715614395819862239792367488515616711477065278131515460200327795194815814930355943563862631517365865642756974721076319480777956140372756974450433172795672768561204955350662756826592201145134398478304597317328314308699834958826663561207861260308158824192762046831498985574299731150190518058381412571321519014548500758342282040746586981397188670807374789146923612381600474638833159645363567169715209611350254521967036480777668641859147772579619188444942170888522673977126029674699283476490498064466008428242134025915181468810773082576196399568469676958694865036901210607908033410099562899034563985470509616164537141389563795011890571448313698676312231450542862606619585060614295728092091914993989883161395027650969530435922519004231031462459029768598806096894553889428093057412902352630250531864028199318387366390327851970496639073560426010714578373521885793194162671857402528414530363729908896211151845094392090504740885678792891983336557378665223739079197694574941683124149043424456162758153323084076762012720672094176477520727732064995411189039235161228699709049243681174238022342170939160476216076577538950029214051179362389748236453769057021601074444241122107073670559978000146648602492592573758676925546540356389953760769507907562000787177222619326411897459985681752208322518907263946806021270732076646110131765390013390993303249296038104045783553787356101193683199518799850185877636400912298112903272424090356308738046287243931410521493606971597009953767567986542162510850810951892996919656991299016153635755162444640372216163750181881639944578088711050603989994745926764255460796719070738140280464386887644837765567298369570512751390274125810167280709483458613847175382559551101717388268338197090535116229408687809021754380989589589109779113914978495432040530180214914311241044236991948114820669570794235127379965341082463603409319064123844271630448711416777331022801456708890222629916075530347777210780092940870991838141370658064992411429701332884195603429692097270071305018928684418482554994823360095918601377755975782898762532253108755823130473745312793398141069003909008055045960606236848307436888772527944134531160656183340291829482486920646661798550442946420241194768607719636345914436689176479553615968300314756064615544589864474900931362015110129287581508912582681268471169032436104433739512156183363823131696553031022876722784515725408087791404105612874710828059538667595001262772541989661130021632902788762364028704677917240657434505508251333027241328296119364254905572637738882956162671993277130751094926651486026087604514640404583891889088702712746979928287659988407755404037174732654625835608301755360895774968898464903282175093742715185381639045292519095555376736215816790832361035953824046347719665424267070385945614626754010401774826854796978397753005817376689706317494671982186314467103184216809576348393188444455633941934917362998169843185981109226156797839347151458122784040287047453768045337576992287590291556690824892578788791219703707706089974756613915648327146630076208274998849447378952327702145222433861393953736481475553164818080774650358680836161793886352417992218596306316349269182518803692470982854876370383762631562120867744329245328139950190351969365743051520277637765074489878395275099499331433430878917779372885628886769561324757839869081486786719683706467535357681443810002302198850889859127005674133959692594973787450476635100335572926868846430707548776165074985453092440326708473561855355206851594724248402581710980627305558920221044388477378621441547188463010573015602093813449856906950101527857364669744966715862458670073249618466245122824188436621271329297084902947370586639145857664372569164959556483383530708088611083384787942541054502626845290366320857822087562672830879160918141456481444681491163181876509843352883403799445210422724125922387690530992872989188852380017046290855213617867482866489511260705455689852031395923842013361831424839395999280128654306175579953134986495219362418968613939914580103736162966003096677136894056270289660773386917770451641422467556959494083158518874327970892147178913498900127664592065059195628750760920552822369362317177331218777454800797250102879862563817463307993219135696003251046103836913269492611966310924882467222884461008453337971313794649580484021255968681726492528278375751328295295723858487267995233394834438739054895021147972824747514988076334985272607302684544601743876911925541020894278248603119784357742335217131798732576631584713994706884194890451862541336714281342915994544121079716094556859739720750831509580674304486485518114171095014520797973538638423408946293716979509666101307293657497455487544931265580673971586670523576705671843025469036875781201175515466387315446567953513031709093911529381703152836142411613030084955407770805053346481025067210352708714292142703632163645915365575676163555873390046920014799731715994577976247251421330808384693458545471576674195100272084686253206027315804260863153043445601640507268195264814797427327881518971459273138720959040780117689865008433379699100000661835922937280252183187669863685011281529662721622928533825576691478601151576285581905295893752913610521204357913700461999227113394303489039678532152968823077128796839430526500636677702788111220013507903102054508112766854442519715251735048416192364836331633395801346655535632208125298312504276921372170323620063159525672483509187113933149878025100182881212718727592479075553058049205182400504672670192272605230641268602425496222567161119496464618442001847312342032065562078547275403194707147365273881552942193949394012418572429343892734278605081793908663915921575884554107957741027538811392590826160339207001804863926556040645208038952900566396047362730863583700039066037817577296993435033987303346279235925125620058005087429364970401531898016679942605901320113612055229721513875937294515534820160661156985845972624053559448287543208966640885109668209010850819365631655965172708583488450350520109409959901300685420430806320038449871303371107530858126480552965412096687307609971207480917681114151727095882185147720316612659968528240859968022373679821107105682275633088416498484115298345199315054477324186573308419495495606714348418090262251001082651282404941522866532426889985337329318892751669085878807415389135760865168867423038363684059395597497301032367989752890695387639307777451272308275231738465850449984940101955626084405225817525359961684128345592870754595520499628305509634135323386210371608955325152199733547659201614325756428622839776150928952808394952722957605632070421303590832577792331558672676079655413061233076475556633600463720040614405496649178854119429599103124775149574525617449452115500976103952080354107655310536389567741470118808995217494343801767693629761388979355953468171610384378961963744339768510201392018196175513109809831272447409303310231916742517749195580965452977533893050581973964608908996656245218586725555025845059076511204482645743397616837408037726794533906260941976855239372358834785096175960472911377582295461638604334877349790354000607997873454813358339579159210022140689339032009051962816438870602480882251841401925625116909511846085967508121988142775028014593730526397147570381680120067372359077216066486147008457723771616153772060052598428148275772253521552148978875605156345565402761658665137868719780142159151772670286533551845140858817606238414011649366976027254313348068182511941603346615022695461802544409416060408069396084406668969986059177124293251197875790637807667297857840331681785077891984820261226793577784815982160496825321018889068410209145260142349063880505601322373298420271735951827928414030282840686360472631665984999903781512447091663311200099078092592863432155649803769605148003386883507622500524368428004579873728336742813582763307237371758200902317675414564400593587795813877057378516529721918149274530633204489202188872196989620437970437260533400905461394190512871639792195572048497151406457083538266662575445207793913478202121020579208045511114282676151508556676454143932112756183060270125436433861601349565157533222283668560532390845581771081286586031519568886795023301770496546498221169057516564763615598108055405080405798004147596503960911267171037499260125121514690336486279295533420700229998542002636129664020311228004960261230690752921747916546580805954043443924818154065038546990274800502371025097771435065695035143189180174051421381681298640557429508715937988390310953825103374460459520670096195854237370146677378005282401548443612858409173878743239675773763253121439619239662351208045982014458029434754842581676805821878308273401805279743505426715302984539442546394968906941165048351011176364214515413012616726098488715129487973978598013202285995569293119339596894667717432420906053953358418826947916746186603569909739038490457446036614275607055187474056222994648045015509867197343058878147022752672205970506706616554138055501568124256902109938446097459677934214848824817013842784624888701438952771429111815844985948983500571439454070029247771022104919370012526039563343238991280595985803501164088726755905362388798888635841066268203448096421675732028661206747370675640134952099999519380309565392116252980503525768297812427281675332834874206671776177148638269381867989109784032115357477325312205468771870155272608071573291797690328692815767042588171236938917761872789946811214346751973865679465191062143404614488946200267477059801780384085048824459448337293632792296508194420302394412596784150252723024684870122487185527982160787510936079128779490757593893496552516436459828593569095648956375344985525827833032783190313493217785295172519741203577398845781324186134801423216199130855097774015810507940424470649395140694268644881500880670053303157251763296824840599321481788108690304567908388189264508465526863756204065619377514458836810792057888601255760491552563318232240144845323508866963798685778928502005559915898737139981586563503155974156897790720922172433959331972879537374896890323676287532096823469679268859205263104790615214495424977422739957637937058117200453287970573334093344946450617148716741912583308667392838246994627085467259409581338140454297846819391282936750359815318843773751460384256301805793226569201437874049010660518822695243022117172686283093046668421738337710550264014388060950899735881906794945232568851509276640049139852492035490809607496767961479521419167903254618470883708852913679350240538114344154028673300221301738180045616428219426156326914219128573377537626294963859224702066500932708881618207537326632592447926725648445985093981344098935383710110938365909769598961115020488187655931291339212092441521486053390109176462928459965463827534451048475713703629992444109054762191888339982888737117896620402434313207526011821134475216910553995823318338569795795624800213018084553934013512353617413641547317518433942295290511230815707434803522043292213976602948254188143540147121424312101633596014107456020483084228035100850641864875797409700051520361917222428779868539428055610443720230568508227567056371971070445514378237730478985941391922959398758629574623533966309715791823844720420062203699334991591602428924455150789170059478484626741423592280682912291771402399685945047275110531835561908973643788995963063294123710547147655024730325186274677845248330654291901640743390040145109555107474560930412112080403174833466123260157141821965352027236481643336357177114996957856253152015709756449657486993592380732382679759320548697253186714128220672318373464486491710998077979602562473356190603930868140036560555884314122128783545318738118917139172419938292980492033143815087896905146075661971674420193208618638114491046425272882676737070871044461765099391414138108481072994794362119519181313014770997094391762921126306359979464627937372767340567277268052019143541201488264005929703664880522012212548378459940206784190477295957735863560580092170399823830874621581117572930312611110847379230247282490639462654115460599611962289940418962561727974729259756360268372482619470658922105462023078817602993568320312836407748411505059821517783674677135740664578482197733138363736245532727173535959333713303265525472586975673947886196275846544475189884393111124248568249088041114278048053152221208230464079988270212524511287920945128505270856341949583412363649489396914313837080128253708653098799982548642544839651256122371291787843435063805911962970823994665567081344280027275459620778761568608183810828852375660488590876487759710488978595261522471856029575738734887958007250460081164204647903004406051721787442385363659577059211848592597942717634607089870946340716148102515428430116745981517377508885183322906783592192387183792708058029103668403414578191462473608587874195538849506583781747492587545889726361195058189789735823111586695471896368374007729744222632370148565562971369516154127748969599907387022645258716981785777891447945369766132598268675516002518687016126633190661449525461014680958795881703680473960236763497532908527078584256728253217486022612565176110955403731417076003429601870128016414429425350219651309098393635467928778627389809576070442722492262975839425558454776581067306837630147912385691437591679635876580503918852287805633224865640606125482341780447275371956158001924283143934452715080761025619833796733581380960120164288223303882208578111669963184174486657264981446414371334094762130111839377409664170946964723855813680315463682685589705516165031941440739920547635535363429048439462696468772533182991518581662242214704585081869962764651673427437582853320392595489315919472969929549351074620925456777057323803028753059442676568808368911182973632621193125006151735865487064884042595299176405409127246721332960324051138351175238871340264167857150529232420095570957473941663902218571967925538217742676938206168446088178901660842378253709583802188064782698611110982713741383231716164441838353808165841340525302262205695193783103334182456571777844558258790534517049417371012179995198184600354053590696596203308081383421276602910829398147048128540059657419156172741440274597187202534838723693231660534994796362799345542451209017222204651217071562164840545357182989311951086364005951022144479247589330329680066920937611497955011580382184701302052535964036972583930381549149991730810404766716909469392280069143245613623712429201285324078244117175796420659688739163100598877035397438958822886811395744539444323128607380744799248525494001737072084729999425517044892369697559042527939254379763848618259202957435459042091332654644141223895859832440288272483783573833250063890944528903485934740598624887330695038494156004767145980438612177341328647678550465046305892239834924915680938557329782115719489844436724055700870565127293006456910346809040596773156578187467636351649773714398520309545481702728500842685621016574774562938930534602315064456614327563267108977353876866692905277507]