[112194766929976019064092851158554739211928964534910297141234461766722391991529245574628951816883543835557604561067063287005810881619639553551408386239426560626895449716105159188941790284894444201558212232045485028897179762263020147729448750234245341689739421918314291162500291542614253299951495688157585146621615957669621389068591752066213071680537689379027531604049601496004185264602646498464608802815205179777503063308036062808911534103412577542739812164941297802747684754466702953432289536515230169039640575968148669510369120569982171451415018302637293881200753146432399668138639397472764367998301306356311909063472564046605482243787076937252648785089112801091583322921076478383663749366256006774076756635177857656043508849393270814419011105948341162338212887971491886247892608120405592816370699093205399900459527417031459411887170170307907503080746812032542379890272644358389708676242658216749355837737815717767356486106753208044511475918367668906387910750274733294024282372535729548581126231530014876496185596323834284136081078666790102855128012158017870439161553641987423932708530838117590525826774565708262905647477810015125524758865517672437879742701594295342545869120111869980943943158010565415942891203520341465118787444683925183098023163433618358174394126676395683482122812370284217796551878597171220949125118494516687309367857030494117142909779547803552177579918099057486758012771419533877514378394364714926243218459422240857309244445934946356070339619773258920621402461110262425396211183509593622560213618340928732490915949876904083962758713713790814298316053456214766447089708794407885559071305788988887683839012136138353446239509483258612287575146974398480935093274757495444471150517118696201578229633939738119830901167271489290652985874497260727575800738792997387835535707332926466190479879595147502124028838249829245869541891719820214697494487941312810179912586790525463948084554964649525167430913866187116352418163637182444543235104919212715906306261072978875726250387375986878156697354980945178976010488099005079987491937133818707387965078888304000839284687689166854524889773861920239064357602869524528140651878524175546909984620116286198448257331514410081693276046759115988355305698386209517211883362730657429662489485520240305443953706641733220027474798502966288348304027870289905658575485493783972261382986138150138993009180424144633299365843588198692276532853856797663052783171041973268497423070960024734097290758666548994323335434059160728744171354315346382450755964757003525497200123795211082723499576157789199264711661356263236371388941512775162219255833455547800842198723017871736060619771456023629802714728841749366442896330708211514718341137231683928024221905100868238575703397808510717847833955499096913145480999357292927643076724896733024847428481522472133263129159028777455768606537200218496475629189393854101038363691967093723297449289717268143748712143401037848074089482260544449536853973547749676107648338301836582381840729935805344914194114536132107414010019147891253627741151666533954897171804229473112893646780972272075861304794719192775104253475081970472969208672224373038874583615586716457422972962378335174037067804569826036740657704119275691659197245352163815243975629666240761974624617812583630942725796223333247336257766826464320429753063577271630526517532653750128710632597582903589593897060162736684914950337048437228362259780638902803608386673777967380274971868718213298029811092126063255257383532228192050892631248760221035259573206900599634362169354776415567460575340873396298663698011251274831683308583567239065357979184245082686195946377902354872877621700175012628245427012642001988000709132545380960218523655491205645693795766434103805958964621937301871287908718495873714452966837584142603643676189979773085150476768757827911941260821886483792845537711451579113602853216589293699782272178842106545932851730838894156688589203927138058201728441155307041740908535455386003088267762893671073931572463905568699140087123273203084142009181988884919873491097846455880408372748050051286233836318320116719145661736113465584433021594143427348155636104672883152539799841631979710414685194053244496905533466628420218136083332473009195778067166330320623728299816629861876595524969473250279126177480023626244113421746479488088713406745767091098721120302750239297415017545852842391075239192917346061052841044362746160824197846891788203314943107356549566838912550266838968288823166646469813053902110597765533964908527148675488616683551026655983113793661646965380162727918200819600740182874750300710366736853148695627999854560354960392519691714062198628974670870769037181143886249374026491911271141930580821044774758069856836570443268296396096167412125450459404133831524472461064447690395027155351063671184867465209471227822843972406633081653783937650193218231733237351647562662696591651237354148523969436560622585686740412847858121821373127982510294585770365578754252130970919198090401196657540179509807212968455311311679284470651639952899736880283010397197629106105191860349546888941259728982048514535387292401149484852931793409203440256939958521550601358959991296086372502345274888146587821629082091679983007833999615931565314415611703755749921448443963795979188366756541521638389087393474770216388394277013398660224472602568308785340645527847097693559104140260821660008784502344209737229794396750894349029495172603514961054545139402079916240697691797899853137907086114108274203445543387818902227943930055226326071832117378441843688489733183347469102649357334802531079047751976680673689984094122914140952803941750488311908318881338828381650535217861936207707694618091168326643538040341365490580655548183065141058566880042013026513180697432312089902150410376382230242684146039663209630734536071695172118290660591970422509732031671080679986753544402385409228776354771842460152308926686060292080175272003380917112162138477967477902146906316874043363743224347441103404082316968847440109648409486941284386811196629265744186675109836109950508992022472828865196060745103383237813848559942988550555366888366862001107631495575116011020136686608127085471567757207925259516169144971416117861992578926207923971768985176206973302225549703689269568556362483997129966171895057694795054536932986668024614185507455840683824992576871998707585741126594528108031127273222803609355990439943349265447305583683466381491843071776595713555572721547243571930772090646660326866606034172074209980989474881522498471988709632497390610508275700088056581334478220113834388491076604432559788808552444052848229976082020309787044057582452391419421984895500268643022379826418597606869183220094437145788328905005392588908700840437918286040817688367068820444453622464693408985486255755432297425014069314376831244667909966753715429473269042259662395541623279769948837404708950844691242834291922737012999089422025892014224750593672795342118244997831425656502879595414522845227788735736020496141297815503081000402457006663279931973818012087640970881153420651583163120487217113228630551309953049789604548924307473203206974262341224816978090828277832995110690378435213770768393016576382572726257689630629293193622035650027759378735376124052458239445337867506150436631786479602558463881807372851819573279969903699692663777971616508748148443431029078964441057831662130111046285100413977454304907760532980931214543550908160728815129941268617677274219516505978672728935452585410739497513868270786037515685969405651887959538477791147275502111155234700585258593485207677929056446096834727408114716475136723012998287998601981116014726608574782794361154881010925148121698986667586041692051309239443689633590092739381346502646508318406446966573744683740181086561998572820887283787844668557177238788626480849403458868375243518942881286661609775923399526010201690161710981148691394284942798230522943679840115145826625728806324274874438974711453685435271403219270583033664951739228638003401109938341222338823547261364668153828970058778312447289657897879973640979295194967901473540154697911885657520001544472519720077585392656161721990123825984682918333398557333388028845243033974290318684767016928590219483326688671050918588340473166464642469295895406333511391698535913343461425495667391005017413555708012595198855546688965668084673086810988786262034750028010047666735597381763582104921748068198589646661401973182884607410435941391942106639807465991798513015281508825205881363636117933910344187994883434309442416291281597083776985446039777916247710316560365305165176414944336847512072196636202160109930844800970583881234911273192588945051448702930622410552628820567474699097561124059392131055194387271765890114691837761490733272931440953803916816789915827080769084678211602859541600264860353856987418998420336606911146914689900406941432169265265922421481711845387810769737023856415534186426225274070753563816143735576572242923991788171591710857275880773512625216423756511928108534609570695570584140034162822656917633401157954549008314149816452427792734755255238031441021943803640518010923420906045991844295600765139817012233265176585439920714635455490295709734086051808926367503569918371806235609056999854790118007190624282703206152013291329845804211829041871768498498642004132104723291574317547263528708927680017619112853072850292014630467611243671039693685398342778217286173291478749624892132784291104866211959912569793719010180690767810258516265854072835735922718444269238282848980191909333532166307338215129503010918853854468336572136546537805563181079268678245371826331507647030303892579589259431804791556157131718409057030113516847304309335974151820372912315539658870191972370169293185738884610867434691521466737811507254461292018654063608741249831076832330993785638292645707068713387608594675048433751684516881328750218034550915741105658960698348419465333678518850440732547279133955198194305353060400705032418465848926628009236746291142332914086264620349686422610092753924209760994856896785540075033888105532239570903733502472631875630244865930186004776456233823536870398355652717695620137171836854689061617598506141734333609703411973316084770590783342845890473562442480736254309206401148501354884529271053917527736518789164419488867371496646475984186421023218865001284460928709490161596272943192150251420687408009216903233053528648996305090764236145680077750800896093283668787994517563008289140011545238956091666477458594519095524721332257727366469660427544066688513200815635845642725764892735821209303296842727661268066690950201610089603844463780830806310548733170850320530984668188102307274508507902104584365125322731602033785302428712215674379834707300976378915287820372872859752243282673969286544070314452866829033786408434016331198058283334468611990463040174357855328737599698827048419852557371846144451577794082408884983946033123798585910415138962575387365248376976052573129208332717476780815784924958946011656772796556592750027249235483481753901201017403989134813708946016999898264102460411505759150245058771253341350066873537229788417079360026356082551894138395141759363313188875033402467062838317789438382303017243605949723348101998198147506605758634908124523981911528057200867445693180507446117865227810489877822333279492430724897377655242360716314535977375183160833558467688377036586729787996349471865699794308995036452544982908222063690094950466840688826985646678289607160437276104627536755167292524868972981808287231581682353824655436936957113180238533302658974148333646519223438695266800629463265639982379894148807388279244444183280502115170858804000579384906486385576311510943611375226315491271012261051355801524262974538904485969593891798851532348363853799246600350120695531237551934478438110509887881170921727842536221833377983961487601005809303641285421530510369386632574374774834307852277075649430478766532401835062077288857987433372370337400220346654433380432793553901777848579535466583703746903795406693005332244517715895552391914720980076017263608423193406132267806381810239198326414842807604707503012550904135367784223419936758126494865632982859018911445695968221214122581424442853443440010439547853705841723253507741905651281765423456434112416373742952552726882060754136587819852196625945067109810674671911809220210626547469215607080005708032662900155105129095341038735094023036681351580003932741531758370028705086226567234530366311516585140221565590173600748310710038535953081747685332280721739829166986907360551529067482244960565409165453686811991729642238229009908115822577342159210705512753917839765041934652147652429884022485743912209771475596196985900753411825389115122323179675611057930513680963395458346009896326533699261951587770211740668291439109847057075787147628777615918764230960538810315226597017832292134850463838656591788176674029563577798906769986137925522858621305727797933402995653577947156591750813938521145894085771054664759842383348678667203798898298064978781430992931249508579019556980395265112184021301210071395212240012961095618215421137961017450920620454246335732918096442397181199656516650366399781292570554827796482728936996120175064556731516182461999625893451429326439367627441926821496722052671953311916689448911645280803671703756793902208379737200971889681566118946314869178286599132009773071172809013898000748179590746474621555705294663209490756829584188574590559196385153442492351492065797741662532320872429417202509108278279501073800733636236255158237566526465967838749928909385549742185001423194306744123694722573049431192247967848748047395761773722041820008111861817305538240175798625739541110202988957092666427108651318020626507693787836260738914932060476283054797752844213146153775297408669451428873990848520579003045618468001454891468881195430132961696092610537888739172491980557482322000411475603310511148416495537290694649920667730933073130239899901143811558398763638036785722305619851480046945341110604341189689469129866395162793753846928326803035810895673290686372718363097193216142887035730796622712456497606455402929202689305800401358708208737639143409218444090831397443484980988930571759462862278674896243131975772612906308729618651771019217097823940703081123345158171474016194879020615412306503667195943848556343548743672249589866405774478225405526213712561485700084714912112091294590860814708752297522385632928428838815249817711839629377778892240495870878239702377297444220863925864515957737455628082571943132637647255706114118110695024573887100019415784551626913179261416940468538741087725780972055251143912513319847397231693293951685907505009525827203584248348668842990503405475060356153436070638985125941589918072721431216592915565284988739684382022575346108922091754468373762356438048844064656832061566974224387296039051016032838985241604168307979804413122975768155886709641298448711465304395277267756616000557194628881421947898500210850779261210276692044865485489694254393549063091329497754391885952014223322353457151276562541635342623596180928537755340092182061373258166736669828213011474343790408066755538581773351268378542957372225313373869308348174388419900619667204417104021536248346494541472350933256559087114551211984260065316497115467822683761889703317671248984920980571771360202917958560330664450146962970197169077388808317307449295355991050497778117341139638274602834315498794352201786548333696369036682472929840105465221853929358583037381840012531180078565492398028571442105180768194845747203703573182003709243883350398508482563262301866182147589255386651740979083421804879149030086756471031530261757857380101166945129853181545604388609612471092702844052142406374067654403081407654244937680046358690354061069567827445440284199770850728716681302638040273912967800997866699734831022721033870151916299437548719844320130339279252043716097958389643249593504862842330224756723320267909909078167130341403440242902115066432958693392563530331387678358521934974717352515851352808889300276158148432942079457753315537529116774717453957415741935610455198524437372180363268861624720384226342438292473400913731111778958413871818206919347689800372274347358583869136932556986548489782656434748914386433985279072499503107814108418900764227634001559427873873569726260455271588020135045523190789655275394843192387216902693351410938988241500964623672946027166538362783116158812651842917502045410643735106240358891787493680720544047914911909683935061811596242877241567587882362499032428131025713316793228466950212789688651072762757872636360002208767623857986924540543464058917413100584314457861396501153562212939532057516069857736306614119108110059145003763979572113731109887092720523123714385316327113413551561795641279766972665412539193314974755394426816666545861315147435076898682220599227468505079670313078376527110663607201242277311464369836463994285470455212110119878996799713015855239063546002447566993834852452092242239149134520170674481901036385567365592265747091166812062236969679713412037205993519489557622759631133616666494650447569120958398932874723077016851768219611466769164821367787401957024629550506455915437857192331480137282474024403555715154748604196316879687732153878949260105752832439497161369854253492551527343405419107872611973920171214235725872924923566361849727971185542001806435565731918417581584635191307267436018315158891432931984888989454831146486458545801980658532340106606097931331858839935262298355726124148821719556108059991770143634269093786997776828255800824519139156328274833715568351920588827814341467223511232076499392268388200301041802948214477568712557202884496461639127867045618738838216014067825711221098620553864760143711285287602904993862425609712054383943706648093141978418641398735211970006744886014432317859806290456438317485659098603484659019052603554877043648161019513664082003707228103700131126563416009395045423564634719352620391018608544132978534172843587213809426225844453675739859051517037243767624655367414324646146613883988893325844419680957328613389837146694345593530600042426760523799003270375223187207320608500215593994547756223733512361338542754608408794601941029920744433573527611958884249400146650460924103669161518630490300052104991514962668340538316311540759625269105872953900752077746850967257397897274847228305691080786591264003885924961265452074884772489169569377675617320431799412319850077163707153179291449798249333796883834821827581365961913832435785969220745377832452464970612441332239349957634779820695092693060947488775268226673716430507309342100439886719327282996689648223591996480219470259287813414752340230404259023550599695427348686886370267940822769448873325266735194086783154379511038390217817335982365452357053284563974592731520069707037695770912212861822560721705404336098723172660640901960307493109877259943775058670511835955298371513267282476870688656665419135304664725414029064434023051995976411569166116053060575924179666188731782602504857689431921066188332142194402117179841378805932307665574192491583650546455890443293075481426933182132884793344095898786442597394726950486610812445958812133605319743591436193720076060372669490473834033120952356353681061650679645077056930486641276220991733028012017244202620291617719876307292804540072393370480970028140634368093434291087489681770416656990125637386025342314922571769744033929179475731090934199016081399193204773539259109859579859425433386781776349431490732637700741569167383236327410036600291521702179980776350973681694644557331362748653310451094505289339041300186020319326143858415575780522801054778375898943944728591565681673867511299561678770487843817251080316361216629364330166946301706552655662739607330905499437882611615192841421829473756056639984060037520329791380558841470408931583206634025749289627599047526383927683835462422324996003876726409162652066566819924483523642337285190689621122963322783655518458790999973442688877749082929076398365103619311582407479624712642391578611236790464643941323680739047453672069489283316108311628490786531352591574117349163015737389457807138380109504584486350094411649888899377595128905645362059777430794362247628468645144450635203036970232659515782511018341137965973831349477253932376972334731253029788121663126801514238499592295771586221766932502699617353933213258757701127437142503009428620935006832825743193845942615960162732064959453674293958243095313745810886249086794262530185251386754939208534067738307854056846689343309880296868412887324787795303692782436271487777713348014594707816567681347773593033286522442116121616613457767501335818001418170003746920152028171919632130654014815898622188816415282440852774568689088355607893307508822589853065997424905022981604544663238037743481572059703420892882437743760792474871690543185718937312425297710632702861647019042138491646001091944698499626478115972776788974601350655844103928644449852438874123347489789520628624189186437766599490703959291131480761787652329869666732934802800279332777152457045802255535674954526618395554431945812893369804810048128404548643525314195587039816865060274613448302940986832611404281520870433928660502614734300684740625276739200533947784932565327727540823037563724716538566583229634897924774490817710053815174855392765860355941377843817117895834420863125785328087544262928710115166042629367993764738776268239040625619981037754632064736034926285836571092786055157655261414436434690473248328881017211908757974050564199921506044614526597811579688210625616129341357412554563431993511320929500118031873744601115528121893542530993066463429799993996119891598243077686660377376956350224189055267600247052320145088702586094450653856101625508861905294445780485029763055619064325177983953437791931226800204024311642866804625694068370057279899092679463800491769880222309219827229727682915069211654696913425888295768571337476949193336789314710155516837528823516352643524729149151040102063865456803849490393033000921323246124794386907985169705699599912750721869638529354368807447382125681950597255529778760467355724757207616832741209917188800284385240250135994007326320037667438738008213119991251925550962283081294525874466862483413055443490843064899915162531465813448289033172895344750217587876033336717890634255913716585919290035553214706006712639156502898675814128978824647508833713427372569819256558661118191417944161654378450681636080788060964974356620731493474236723911102000219856689278303558680247118406519115781336939970436376719603374380905506523446051413782916137442355906296965571904860087014695391243813214106339619540101544790859492277785176350772527282430977586324800966580580088702896460160635279001912778488332223116401510232110050071821250288270749892112066176896609173160970828829505036316756992237566957803879834865968102968524221458797605900055741855388939820740204941389190689998405884401743605167517990425252442120416025167089486949233246268846189307826750548472048514641061915154336127731415837079979478349356594466407149975257677671361148864962522362538965928018374497789131632869658548761512496108026393201772154994422345313976547761009313627749403852847772523082487550171766711350092380857514438521290546657204606389428116269307840447216868084844376155292586661677952561467961300670923750468588143110867054032695973876836080468358433141407205567616105730182836781271167965299540057793773997770742472180666432655338331921748251419481885014029571894949789800922899966556494036936486831131110754425365050686419840188661937543846333801007858529387641345109821157075522124544099711858019298598901935052757116246814352859325066491443119790008244499171681041164964674181472823003850377455319040474431994660079133306055732779954887818154655929195315321135211391658407129917469037619407365643080672005256717776911065649089922478125247323269963950039626822483918619734092472324688660114764048116766138897830779455125239026315084144155761977590597250914598501441181770699935464798775433225262421188256294605850113075414836206297560973500724771402013004811063378058491229142423241282951404657303416442928239943306729335344439600105888228164050466993653135952375668068800806527809602078822249779318415025219014891565425061972667856503615077297343491119147534452822813175950298737754969874397008594866071964002639414630494566180235244333710302829098902951683011629262593004864294696548959775744705843468683912357572899387968964070645772039058108520477741447990484238787867129908656091955901033407582655436945267968616787194841505698062347745842417223590666774133452719697102437182075616216791547786548114770018655941384612110218336701860196189282348697028057257849228593627503449694613234123822984361022598936737715638441598215170411947234532964825691040071403670445450497674137460276403817180109664017643317877778756622404614907950108100684436355779986836569661404884698804312340912437700334417782764819363194426106404747177606257753715212392550337012495283977879992932349357370727730614420290614953252250923990425706072905154699326241840893361722604556741601387795765831844942722221011805045692330135368895060871100164315936403913522767006137790384532280273894644873554543736943407863928363146230992607687453110946898603888789806063461088619982532181676944018756749822408740719065930738312211142746397339664522941072895638694070238313343316148025450708938389781121787799387115370681051465844615849384940789770653457990575863551420576367570118082557993909227254680053890708144861885586803916852257940148941741434787757636706328679371671974044249820120722380028200410370342295794721608405768277813533517419515135518895009589668579094524589965582842457290154293852895855867409430715164875078642704786656640920052684897575319133795518795456021149708466745991840052606506343291538563151485835165961796332971596809200347112062117565324564720433639216931266294544812480382219437345813936141051994574872424376376629772839531645221645743367579536243650349093888730642195401630829749015062606159407422263024835904290042680074196669141076708316958540154286316547245681659974236287324456014492960881808308481813796611296985242264628731831442506163873093718164042888489680104928446796362905177260297305398544846670143880972779623396433867202722737463601540362645901138902257960241692340419497994826355530609625673387466302349195201756787595534232368825436160807903022388241236087640107971614122971623084858726139899920312188757001057515141491097467998606835749423538924363858372546610136310734185440237001634915758115571079872678000145866391249322474243599431978741773714882806574093096789409678055534976943308507320398524144382353152230854750884858206409144134306658323671650135085136848154939942190349385486324642138176208912603039185458201153307309365295359635875297705282398201139956700635737873646150636687062638767594922972405391024379417994300080127588710091000043017110540561385591641316793817662608519022713869476140490480602084601227504015214251735225417453705235545583369638559608611411677759629260249614274098193120543529414447649143447680437867171691516052289117677070209558736520508211650562197484308729830581139225041006488537455361938178576550962527906541005440983617670038917674942584927761184768311160433430733549187622245492029791276501984721351343164083713968425581430418208475840548884677856364150817682267868 : 314859993518956742337111459358196812879104583953626699150165263099847984787211492032826831404323289481403570342226878062010230657815596155392675535178100664645476445517665603132657073338524344180648670992247647918001129484856310468136224244940261528034583896816525634474556879583095957602295968867914103197185017846256591663975253562175939100838497952551097340674527415885015077451904301872787761467191760476039573537060698076330771031604879896977117228809991502499708051812988933099438037421129882998065665893343559347791916082813035262992731655167981990789298322020737936605795720304002456859426550089298712510304710426613828316513370645337139350494735533595279213041010983358883513223244654905351121437845890377428307267032720231899513022937982089325907877290765600597466737253312675441331179977558283820416647650594475305366087939596606461528803701198465163397651318215907930168473404923263374552572280738512515591545165064100688978086006531541309794614571267129331084060782632874686399898102517202435510324973243548284568665277991861291657255857128726994805128925752560797420197865080246769440266637594221505064096260128212779290159174051169077178988881059542473112889262379790620611809956490864665018163053792945185251380616829019404440301080933400405462131728330850550187926882109357222996043686163725799898401004105065980695287496753891070136464940164718443642538562573741587038705746066763167451331156499038758001333072369252954974753600816025945042676989864045067517600873133382243086163165421860516797699902148291449264661308714816176466096459650097831165315394859709450253481906078357276964855164939828140055539504125197280644117529384295862506839948625352267130666866997166722395521814011311589821701495921930461958586322244069021453320403989610590291165999409281180497017277813271349761994077885426921297866724497044221997878885512626572597607691729667286439417152326596893232916624091746895359394576763128786888887688149926569598116733611103425859986484299029106013411778045473329615230331083024869551081113928014160796246711566105237476263167906830612934598678528029963505068336901107608024160686793958290881715311716575317757557818032185101331250375832356978973965863966250426304698447159922282952197144275252472407671899642982578834250328585541115771975657388245690017073523172115645485606819574195078397980277509232406396664661109179729188659706703592623255083000705285856141036949136422655301934044221111374381681027875911312462989428878131356973330201639558921863032871193604686779618130772942142214493900129531938732054125847547919888357253943812900556368348602155361134925617893866088674526646497077590511943345685741814021828850661821686333769887138494962105812923850851457616478130681382018905455036142049159338207129541163515654987668126677783574181861424686743438354206470161987137002571484283554119277683424117692445807482574915982675159807383166335582189953750461438636795465944535257540777195922374485150823266980401913050409372535442728967262914672606068639018188219565603926016842282937655566635492711905065342185191987510606897098595471479649679735586891568978130896206781982320056471374142049796835828111143566492537980677367125418218255452319084992661402670162202316155490402384473163947249656715171015404019955939417343271480671892497748043591420563716719894103239827117766080201783057371981490864983348700159004158506314373425431947599190294168801943482581777149529906601662219662519087503412945506010835075056636523362343667004613229538914047458695175675530774063182839989883215418057427401479816987237245355536242476036517004565052333488919322749064132342016336763794141597144754300985249751321876812993172103836698174103264667119978827402432690665532639534011010253395954727737647751311499327592272138501980995073300184731525129600318371756252028508790700074631596625129569562661418409987638037925764525865469525507335074786896635122085614907278779588928853118449200312094963876619190752854988718167104760439916458723755849481557188869934067498863844564392508549865765493418106421132860359813456061214075642815142578312392593010271518332782264201304568874078868067773706231302185216161214883351525257223992762193169262552486827798721544630526638491954870586501050287950345053890567329022572089071610059565995709103865367047066434292032248063274928348352684581454430744803329661686638147832535397234453311561019898027495674778691905599739887218976058725124172116396032387672202603087140315801126204139646576953666640715330845664227363325892410751741989702003663817944900270836457441892219564268243308275663768196310814888754737778175405298188414056901748421058632361949117890602230995254469861646445976040771359689558162797578565694812490584448015869098727757129495928728662029426835690038782510008858821490264415603997622292343512559938574199361665139281725073174002354355644451046610418297362432612350808378421531472891331716352048335205976433141233735151394927858442461849019513564003251113046472424689192319090467103209584614894058375442381575332033514426527566173706581284160542746118941792660313888220796339202192152357581614224178967045227834875421175713766913265191831532473696494675429662624872695990502323337228017066638555552564660828836608818662189596563932712437450445581717246246979567903896933424578111908226605873663637164173859255780609511286170674659497401978212509662510962295923151013056771896051748467721241597865389865347363369824462208415201514009116419864226609293846776028833032749129586965307222809058166580604246123712148594371049218835969308522610083912433747339094283920052682409221302569950081616383677769044662699915575769308467815825013597091115159684392962379922034324808182885689473971797971004545477331993033484873276310676754168459138751415833029704243308044910310674933770250636429130621709815819042990025222144696826557942454516112773625760568234489856014605578062343049859225995054180818541818197094871906622734587243930468927937398918292218749671655796826319712190185876092675010925920651854589918743519023479521748639478243599324420726728344831951704738717934490827396542108523331621920968423486559310123827011368499636454862211266738669856928914653994254646101835139091492768472165848980478559957963719362801214801208476910489453399124499104176008017913161209703632991405564372026181513025585968462385219395043813164510806894677599089287967996147742493194531091887462694826049317875233918292756199152853694777796213342775449805005621378546756752057928758305641419696868273585205163874309264102820694994763143826665158606486671077829848417742386571123087037820351026507681524954017132180579402974115409667803370397821021738787159179021389152968952076174595885289694329992933739151868704167414155502580727067327582906512584770374023023493227755424987791903610105583724039695997728241642757553348405738490820624616225354316822094469185643105840018101452754815499336899849762148269628361579123050563962973174563969646324028007849886306295628298624114707312379627023428556237466508805560564805086016401964693692514413129489410324914263400549218120896332559152455586414181510370827188869450123457933657177373883582882945573365059387163098911428929973684186301237320911010153141073014939439975477120732783586428079096913282180388920315945075559461978589208878462679616189881555211323552973671943919807493270971923120780088886118504453382538387650126539030461855316039242930645811557948225834613935921433554317192151523015965498495277140135051200859541095323971540938479525883131840171429937069350799337408952648369436895401753445888056124675572044089613750114539636070581533576192516238697259953832169594964703760896912100990005550906030488361404904316699206417529903536455659015611962276465427828661647751075350497414560673677642813153252840121328402268860681481703364229983333772475565327359339825767688870103281505395935757909715261516472650726054958758478555167787341547813399034467058905001217492469051122965906254377384905276692737937172513743435668991592854838221974248878926129468996758942227662243929746041992392658708484191974253648765791365138869426240677054778880549556568235032266770431730523994144319571206277575194420333349101231017079343311551499403733385912378896756243831198570004561378330242857621440012801993609292572073402577253812791762034505363217744127278087537543211039989130126114817047573825562537132590800687597449014898489085089554335336308136644815422354381832822927750789660554882916418527628335543433018452856259674677364222750734097527089680851549815658104080467290826709240095492937561572025949984573015824256876961954008894719225450293591045872955041708453457678462304488784719190894549262253603611452380596067099299665420250703328428558548938019397361022111549363369514133860362029493716905667212287843460877718192026117821755664467752319691403581349580217044421735313543464027703513863036955685901658169914529875612968801367763312241855374606252632865709851423511128470529686261865438852222970482349221313302931237206687045974317727273743909189055933111537844893342774559171328203127943106081871385664673987520559667744425835391179904433684152079214363856521709906148946373554119825258131990377740686538200930660131692448365726211781706125506348566421383954989310488877511069226447539484437714066045008901044204644747624867645782087784993587935949165599233738646157283110471363435957690650499170306479786452899429109369134776184130155927001090369391390054996997139387032210449122889795213951459995971322814579327464277003829232302889799812758241295745508210675644220329862417652419807278363786707251405391831274587064591689507121692929082392198165636925834066098739009759820270477320538006206310350309248700954481144924761190624246981718203279548687135206758041179525102917320529887532806556522123577105461684188901249538465498042233109164083489902965487282146061965361362084574790815594381846620897853541245857160017574807155452987432289889705465652324822260928946362293021720479569432968971477179304168888993663386089189660877668293985639464615064618212707572746660469296296629820130505659731496070778533968629810491742555656935925516933329473520651044572472040268318142974225912224759965986422127809229541212444403276119989251262711586739502265923047713182458534056625893055614881558005302422602408879065489872650795653636033760382068850139801263403551983987030508375312134991209378084006921874667294854715523513099210281397158983849190165695653869153296794005249293014189532355281639621526554001152576555564041947233965906538285837355947476877355142337533403348271713494346040097332481518643259890194798876902600871315932449092134993801877655054067797451562380934110335705081609997595560119960530429617708461862269066375446207333547268304507577752738586917523344864666647019367904963547490538251499427087321043170678558150477413693622402004328687471151386653451058127951556700533050935330812050046566858013895878811699841723058641016271424189610875892270705387209299719896500794048391950181567115196102928442908943691352907327412956586475628645547103513579890848127175451582411813911383950981904390271253245541607984221012071956008375195842124960671397919040700342777885442636931066350018051027122174529068940349756297717901275448805510660649583549587158590716139019268769875832886869617878936539753540722220383972031518583192560259069023359956771911580793548724211844734917591023500287427273282352658603418167803764910617617592946047818875149394280883260284311306358775047346371349763605534967859384725192802288707940004164367715591676009201922521170559267183119301756829523849852088635868476978166208082479325795877335130362643290338734682158278970219462263815690709424164817302167978506201655985398868351647210583363751054027599847666402579352180655117710637966070450094080439431324396674618034244000187121485318192379716995476851520143135112983323164327358161068289683588878253833979758731960441131935418640995205421559199459392417848674996171607460788550779326856894152263237804507938862060279159868975213349678610791370012466294415254804280582001524968668744486399195337526397223187563177503792407673297957159951880935580070343809546401021943100246268030339852359409044501450092587147866873899316133563663975875178535304702148295150654896507335694669624130109346788146442972540505507954241019153976501424190445746377559244713178528836518296433791548087079237120817359447975823442897554342677544432312700151094504326848604650879973847583736420767363155862099078251611293692183246700767998071362188450866270414737686669145548647790172834863318875201683239416926290600479174685627413729648037795682614896200371516054872088768109994087046024035389494426066654935044661013688737533805952242595835368974768363384581698285987911858758030022295190653938730055781151864680885641840701465562794995802426681215895531339159755679630541668358505534650501223773704979842391061540496354280834940913138494196235641109807556101482611436428512363659801098497541912332782680618823261191793038022593537106962174396689278951245211965781765384495034024901505460646723495116073755761695271942641714259805070278857204362276736529997954320719585819646834006917271240147978771859463397860552764136405100971424104212074938823466419389117129701310498247177767032625603822968370491983976344121106621349444470089238313966543510005220652112536024839370244267776054485052370796934992885479823128987112963785093224478303452104126019818487863892714303339101282072510671727275420047997502001038942578268234413828530781637022136431274820146548371575391307613150949247770965670978534611667076533498567399570397567881231320297441586539098121008956099047224045790498335142913098237020923027771127019156932185604951111366328019841706801630964730643365463708793267711000357074817572866810000930910480685475965634958616930775732329984663564818427231658312149410999129085527001386494981090546482342743107843518097174336048946402577602153054084770134180280698584512259683455190846020694045614864440562725530153327792396493944828659641184593820882127479239647213275192448748099275185217839547945270201381388382599006678140556816389569452267720733035966568821480230250212351476808460276194491719794110553675475419670472695298136112203624177059962116100561232903875594933717496317866330906277862208643182392096294155252719957256022372556381796670526569608932095737383802288804332043633418455177135453044161823622032100602089109963790233183022390742387343961900050567583709152867286935820786422755150220745703361974511146401731817494167417099650423336864769002059951097361614420854145946900319711630914411529694479599175400011876488749328925863608426628964656870966602342876210206327055522268528247678081755539755054479690984537803595209722062199420537861957720690930842556950810048962592406669019025313399095521443239208055938558030651674028512958630574139605113420336518724535851813330771940106858796191663594519223221292915316363102587762753438082656183931959009261433814614637631469610891666790470969315528529427239331568266052127264509483098763459377673639218861944834076014861656023392820422390003825798826945372313492011048339883952714719136252533192660530490755905055727387710164675251128078328930689291446009710629606990099239641972318919633575175499354452470383172653544243058646759812238063431904337545751963577398585795960424077302857606611086611079632990460639601982688570085549622753535319855292783479392069928894741837676215687475248253575169056385971557999987038582314703606511500266479061709698635233648482848037729773006162084440539589188477995631003803422883323045831601459323193986500175936870066282426126261373434996049092754942545574203363654423152412911080038094143934928203425572722575425128870140092220200498282477039795121906623945550778115118927383273550678287634667770333046076519979828118046442332130863101654917497881319017161858986483142397130927678901665978751724792420200832103260188623495818646717369174996438500974106334693342371313750905719737650846989269779057127261726176597238998609193670804515622717932924720410477519674003245064654042393215742741135315109075931548814010010540168544779050438458599613189560771117683284282271723547336692574476452365097084771636516646512647325303335785843155080681104202973254172089643248639940802465185149849114749111355617165833467358135547692450795116717086252616572791621931426212117017728633977061152374392385735256869365581376012214139116790296549190467221269630154949276363010352277074745262341578525519984848633602042229773165984582058909516199351046851090663718354869374909481748288558522108486393389230669059182612158514332419596013319898873856735574605534823815062663117540390397010664986906523042700712115553747964809412421448035395119333053956814507786967369137362997635745252534532050913359189754335309946263605283229099934025708538988664061553237928495886498580967154817800953396801764405957567431744754510008103477974624886535225336403605690174058118125917621044211564810958241696497919759245090887275286947659967667097289131384070492297017983392963845792685711101044965001200663014659959587543283014215629118625891627329863434544598260972569859727675725163201772991853407559928234966987198096257131664420323852546985254467540711559519342871022125049123911111623492049380261409503832549439798829712580555064646246198949762229365100013700961651022002843456403964263885266468055693159232293940555497669048365642633458182404579881604669788986142224785420130720478077662888522304605786825760543614633090442779770261980017747025176473435115685355215729912698950209407232467604630808818469721044493833546378071289039717236800056541945033174074639081957404841374894546726637070557311574827162393568144519315720583458488759212166955480871423957113952074357532857278925375253379304149830274700910062010609010236533208553510318623291015177834138181544832623489082695026075282924276648655977927048539932369639808739347696288071980512789129987841192887493884277014426644464812991156111140598524426219271513720278542629023851130658637961884807802284237963375456067727751311051993468369528957531393788286161451518641926230157243705264127026561649713551128321263413529286504580103799331008315744546590965899881160888676283334159409769964279605662715329425629006319221507482544367509716244591410454780685395560557622127205203253024361308611066091001543279970756175951855586461042936174489817904950384911604295766290081403117596350131797448705346815673133657390992192437443732356442447245918268058227097728942128870300896294288890950741142954235790001178940418030748314665061792997576544619089165754230688576322665002278370968645332632858029626127127720675090797065077674240840303793321307206945312201281001042932298821905906522984413990480201431543481537801926530270062584156667314563830422554397660792873237043174006678905736610763237405790015363750799052019053674684926906078759079647849710085506232326514511498928820480579003502905513805514428035628013729008928060288110441598876443829849376420936263842023271073863631938684399015819349483383517702646036137236710444133514540910214495613888105449305773833678841387017525939694726091963345532198911890066477577075218048983075878660474074790521565169068837023744680769988660861318266256081943165157786596408402569080895080514542550272541876536927254999777447118616084720983229631165812084781542246918903094861744751835787738402644464727769113392152049780679398626574216633624466624656375627873483824614542764301612154758955175566035613681239787430687137554903345140749105106407336462195279189276398968665951857613211366048326964995137284009327560259436158384929115026350580857220820599677687208482408727672865709844028152767850286350956485426817903858500772058183354151692176177423216430494894782837031960830083788246735816379656343696962550801690234326228001607461092780822381981567549387315502293004206973175559463991468154115005348863609206538558503545833692278256730163600975246763400747405601425244749738171404595940200319589635698163967658316073001977458645452435238239300972081294778958617277781447015089400026840602337646531526789097073321502572798297466358406968281484792732800889562507175079154229637544624011743958519514860147295320537179920786194568967201728635826866035414373190731792980732342934751238087197474847425536449776624543032525842850263749998321131714214406769434829136092030681791385287499277436277016197026865546563189733676944414158461029934239899928089293099142970494052203488488728398035781824194548291926677395729506490886053383637936405457813027178796296460544905403460439190471897649109788686244727880862852876751169378455024634012050813751138214459763916989811193166599930920184683822139569185298911701712060991319950039794885900428856247202575067825141778563636154611283138089094034803842618698312072764044186278070170331101674625517698121350126318532704686616216487727878048679467478199641048294018204796792828517618681235378682453364133219781771218793508238924478709844275805486659752701423721367683719464839232306371713042477124599314573532511059188084048868374819815823862275735033098169018452403106200557994800200710038451750126894536702982240680176056682362732463769868582246053072303641281795917002520006820956904787727668269893376952564732899266324444831064423438453085069746122838247467509654702700986348804742765099456641788012957147724040717359906292662146753180515234775114301524693226155647594844429212457336912990840118030393592971918689923741312292114021645597843440600611338174867956049895506712416473156950043478109466221032955211469378270502490292162598935155402708197394453149996031418012204100023656765734351457095336693777590526235354328633704332740095166028277051489198154350753177244012662431097035324458548166125331484828474700274639429455122540532146300035470997654378664372613856363972268611794069892790135632639216387554079415315585597580581906952458281207064940710000494117790105319726301034790818424657444860679135853612793123967763864024759300915195685267683835970197356763111729680060161145245447951783918503471464933279254234982306536933815215375592164245468827801603439281629830762051163450585675049633104664553058648714795045506591274758283630602813660548438027741240593930383130919475651858550869471671959990121278223243387616807901303187679390093318744584258715092198258237972846598226898886842299785982354571601846859729976453531308728318760054100962072034940141632017201453424231078747903021677604372756836964871979294312435511794950166799121569809800282703536234008561975910836847675708312029128903934391343037524003492151773826094419196647476822438790439520889023979342963070847328402846629429210676333596056858997463070666498356771196859088107690836533852135507767275052956224858614504130088111439783700277491594267951565431860274074619303827555627327813418479620944468230140274917173585054140016054524440973702962137076409053080420961084146099032195359849816754773023507462300060187729606031367803258323243976275908358546248259893912596091085108867324801829024796762204209858070711475503820043379287865314613104246203697194357481627156383847457773738704169435954881729584239474065404013029318838605337365000765789098917363055722263924290847130867582676614799065807201317140967040164493223320210627450106814250576783204966404327772793834289139203837030829398974074590161155696919731400206089402970472230816673515634744747657731275581318587116897223896334621610221811391183268914379146460090334685086905070436369108256846425738390444835153527951317328211245964851703375274811220440354852037737349917557602217826552744264414464088478697224426367496383732164923254916974082109198117547677764147485581170126428314109437890800804351898735621942127994039412965493981736303708736104072964712540852123907025375301569478832650821649455766223934147501756797795098231205088394081836491519818633199814876988405982699294420856534437133818417713021543650790626604999175452279594156741293838543738849296104740114455441252792821522338919209263467288068386040568496665615251965678158389714576091684440285019283851430909600732788401729821398850728836491041985466848523691412454335525062000988507187760228432950649011548614831959107488629672315878070475927004263039759380796515794514513222226583700250022909310563538777337629312729143259680536842804672321392410158195770889946293779908414617549313653232184234442116168025367641671285417711930243628045362178214947616568352192591210663041493910705770881637550468252485251880659567599111933387115419672056359650184245734758882697349935437961578152116274798780021400229292424759164360187463393251160805491712629642740400166480603382610427760821800832614892136620960803010308557358712880513653652021659862526928991094506611461210133195030182094496081663333649577986989596509375293207191460908824405153900930021410952432115287255012787105873335224228057599045435377971118926321173734595094864518704686429880770148579466068344456470086929794783367416346718434760614795206087535106827846286831406763071172222334628572691101302908005487197241433830632820231713239054612000918146773879516502073123360141314201262297049929702257849820885976389308951915328440618174198418053069040160713925357332799199356523863709231599777818401182904316316010114302438587250243390385214682936743677266209877414327637867047090670559998851327178778381025114788022202394911003784488015719320216078335648322866890237021132659195353409621819892863934547099235315987729720986433354801183391556534524966175304972160395885475565192934050615476130234208462646858741090037137528503091617054017599371141132351934330062042129903254625420969906681319596808989885864214024810275021467141239236817938798362983248687526077587098948609587416691880152366184861614524150466668674582549299942747580579702056749432889897165749626321170632763003233865211607995437504978275214777901742430936726364983392720241190839641404102251517338884541099468069636262956385622469834228410747932484168463267950283582117677248397228333437276999853774122545110473064119482919727066759945056338967236964018646473250782313884174905615084859264842473717011031665528864301915291474888760187000713856363415105300264961848282739523318272881697413562932731484926761395781575955785152701641040459517440314915396135136777815701742378214789737361284946906490670212346439876233075234199484404188667247940151020654367581661533518964782059730779259810506387243152115520045829359667618059910857783018873267537657162072095822506908096380731421591656320591816416525775675214966428824665547699653294457230746526756185463805922953833877769851728559338209585754370650568148081232516870259268183784885652311228215374399090354342709476005887696644997174736368182492119827469358434204587278956979519351473965267560660066527407306880553034981836204615202135430659272284289140810328738629724067832649712105576586235688827045050889849607887118026533321173945171187669433045426463069022907672012374783128005057377187298888354709557523258979883455474468263256279006086911967339511638142621300131573979279510904065473193635754058476507883041738672267993486230557784318303299055827337274593321265278979989932094133010145236863928175 : 58076316055989797665665945110633808138227501648569187113374592236060295765725420821202190390360446130913411293061720561434619065438607221285700704801578547255105175432854314864257579789240979737068123174551350692147521316295139617065385010684969476450526521955156810666598536999517944956169188776777237697936208784127808747877771926514792687277666943333761312728947118579469631900002305404661828258616499815182599190773731974948796823769535806418089395129248488266021313958980640044606227988035346146838132754910358336601887370612071364160647400723261087890964880140403645455157828978429950832828154531295179004448439673403547650876971419184214978663362672211557529733623748315562688950243056094289955165366347050629368036477764823989110313942128571153766066712146304678700286301798924587213074367770201785769776977011254433979953757586160999064461359738419295716315201315678714874481803534642540453674367815603249620358097722926013775770232002590634169368609827063120497137757856688179743238389735061643840360826146358195275233434563088815218114025889864150352912135286954054850089338016469569840215837697230900507590568327063704924286812446328747630367397379464625283917434218285706484232878826432603763978756019729651614400179581914469363125628414379005068335056199812029763702919237913590719831426765536325671544175672953488084158898545700893312601006373472648559533301321726247962280325918630555377527347608109137657817953441283581719013096935768473891255876932230780156259806991788468752395714153423844606549251987999988180964197298631673550375191986257878105830892509477396730463902672329647837439809839978383265734492856126157313996769248742848714746939547058215113173962173219316231989696860522184484253100486361770032763586928219344838758214032483282776118130073510222009317537673024767549472451794034300084566504321277654818342676457700548849737535350720062591395874933776713815660144623673948352170675593283865080775362263947388140666793176565503069956096233842199773850232427635790926871318204933175453472414605185501964190764342564032663390379208472509673915777972718903192027086630580261235866921824183692896344024144408906820702926518048116032414818059620072381682015219868794733862057761533706258501327731058640808083534792733679140323599722458805136249260487686644018126210565933290985619361269502585794885931547879366210633070576622935307233332768309325416860914451039981344224652545540592662216017247681256954811537429540305512081660350305276658531454111330283709024526449058133701021006747904310572247898783859499693222842892793599853178619009666514896599967594496468298479628056183221824476383599799807299831202460420996852767888421956177081453557293049683926352060987929567089693997284684211399289963837915169690753373837201321651736072402806569999060294073542197920414329904415590172078668456743095197729262252234809609863796686262696189403186936952366398257870017946004571820175465399973774163297945708103077921836250993602025078386132277797840029028481435665710192636399166148149845003998052370553356789319651902438061321026340108358624804800743497890733256775577284067973989937499811026645645892773958918594524724064141824045041439506864867381510105810737215582660832183552842358866879193583231398881956559969278549591969110900522276025881626468899808829610089449316731674565326209822459060122617527494493942773123063994298805736863460234559023150391712244394053043160208683252524253628877498716296257410992186901131714795267598017821129002203266855560754812818032342192716485922798893825146154144736761902827559385008035827324283811241391943090779587225361497078189991585910222269393635859309132821247901920483746940423624202636228092061968117903139353961826537328352317152591707506908384816880829240587243829859045998892116133287855896512322344422276335265480272070657384415770379275550103740668264688766308347115272234028042143023702091277494198145853814261776596482875895626770053551248794021024178979925509903358415420160432615249615550568897568748284283209479667824766957171686667319929764232389714574775744083366980197631684213408471331616354762881110439915486939958001429266250920375484216520096030071170420411535746825781771285803057199971030889051074287666542215524635720471425923250571972129122170871289047922580234671282869334668920995838971278350499338575302264557294623849267664179824880969284141112416176838175256462797782325568134010339015001993058822817273473954578110643050120971005665174166301939092109291598280497227913735124852615377836295190772650462575761077325974660809918454965616833701772632928030161299308324550097555115773648562954004321785452255879146297354878346677509787437817662325121672620018836723736476719227412992926820856765975949043320612748183908663563210432606293590293664646704343387077148762693537510093580213731005767654293636887323463621667984021997233675650733049839047802660312769331912943189343895630209708271207043155258795919341866212404002561791483263235227007012128393281486188780911451009455554153274076691561160645477928113122402627469546446539986771539394938934167883006994547282242493205079968017558232525139787090842097072584440309125051156130572394901694140963593540124210219699488417744843140796796979225777774583436317631307402842493152661708293026788337795193159605321299401959374385173704787908599764248195935151094788728447968697226320723104925574779884031348389006902727916529209777183793798819533021443905465785621786038242218444377037959041601506538994477204360951575225436591738354456591379359420133361641038237920265224233399743237886207501480763441953172763372030085157419341476639056900502492825313787282205457183042806613564682991018095287643051100476749402302515850522130948437415690956000514657379421282060966740344750282429305971707489594575268045508555267307108445912613211752523611959701157892710520139879321847447496918031175481906786788386189673881683624592918513526511203684742206167054628997275349287562220973514831164053347880302764608371747443692499296509212989769331226392869826620064973281793400880974720673839738660415132503739791644395477696354357855942080127364866873953826845399236538958369270468755252197699624228367522144715072284154496924391214804824825157127601396106890382105997555288814772345306910809169963459711195303968471529283471807676152855995921540815168061601721151961265723396474015785448137524429694598076875586847938640889398876271253767856820095568558493712379387195742221922854381841976829331924948312401155992758792171457617468606609658156630256041504985841010936145985791665513101925399471469306757862799534173877585092056250865383972825549837838933881058296209917576705977853858558873609712944208997848488085299821053179827400141097104880216646330989657426232890599175397615580777018808227925308784354678910269945650041791570685524891050257771589665850886190929543291962522406768915580569487390459840035538917143648446281892273311573126108378365574483638909055714516916017425349799353752873279479751459101040889504913199970525365639407196090881150106734733325369008171519941670748703563112470832644682154154039224063318489535865315346231312823608433366804642943557485724096294920859085808896017187215045583555542289714524397352947637109195692103279647249586412242242808275175076324612406139029979289685907281529258105843073507433625191970714595601624516600803944774354127123237013059399888864447546927045149245442790844863287757952670061426267678461327331241947724212948862183010683375733939720965703070182912723357946053350803652254305299523544825249157880104384329680250011030385345575151644912261606003409059615597699587009686970186941999410341483946743213484127420395769031070170887011978622801876191382897167848629728189594402386642226874634268084075919327845456622096737648242164922441638933553178289320649979175454671690365641373593852604929025846433312956919215604341208397621822184796520112945267652257986378446067829209624581691999562093107968703440068605916398283583449912018737686404465367555051556282354508670619328884936562649724235774842874190818638064637337757842794946121381241005556841383077997358157666048947748971208352526948023539380953115689412315384688269587819511599935430711492056754366621463895829012361195898945265171949970083852676484275075840775589565265274986788850838313565904770612568723513889841017508746143501363729630565657070260937882210042373790954049327090850364818309342951589556438305734903250443202676981537709987947148763847629460065638302134768084069514612448627671374972560697801827403669660441321570366717033428437786696929551164882823571061134568666176445856140643010580370653472675301827546905483128450302145949054225924235523597384344984398238128180682181748220775114072967181106381896591302809866966417959944316219138543381454529774527719131804803572919681192923691761616632168708401230898400321365883277125071457452844612261009690986708517224769775075478216273988313590174017263066105416496352923307508215180518310865890118341991677094604861215839674595088429761174777226552665683942877861351313437080745502813553137427022607490712223066259142027079279021411184399341791413929605942948353499078038473812288615057195074391517308636736984009297671457480668611512170891718596486852687278756078819675531438941859198611689567532161576028515526005556236945447177251933074356781619831845517748940926282058508809914831323039223920906065166663364665303013809837734243045388928979924922033030946492123957268432134773576478683305223263218114944215247526882553432835207071717254856529620396448222514825419507568853076640647448789338113604470169390119890894134944869842379878509108873750232833454995472710919693040567116285918775753169847781557062510662170217630149303593444015748038614876659524462121671478088197720222439209157688527453342661374093414277759470785323331325799913517214654244996577535124392239721815590020826751537139769830514199555078231884673594587784682334418561645746905689148784075348480491332611154617419720834503390748125898905038272342507143418605032664698147111814826431302586795782507021466932576819930303376550596053666795495048180064265389889619738939185212682948189467074335959717267977666781441961997381338321181045586811979417226233704078036589389695267433093373127495196579885080075340893624958026465194532169856422896125735640227411731672262235059166576262153951977641021986503464944336300195541713254397408096679647184542476455639952243797819497602474178586726280263976197435013120990501678093041526868068128968642949175396284684487028648323462844810295661906900368082183926854975499618127342357224929053818084142041437223983312172292274064791498841743922836180496430729757786421683631489304025627823939152950231817604919593240865285391420964472832074752988659042280202949239894511191882101493477606414817860834488405712943390246414388883578158404516130689713321497056019400152243833397197115768157744813759444519819590238427835540946314455966832891764881067537990673355536964818138793176939374983438066863061183627438743776541802003786652175789423211575138731103926818038772430063809200493033275574619988878340732935175199715716218973588691219385871437611675436721783570186994562253710122851410029472210078120401696410060553676423731804959745672803998220099275847479300021347676888888250881363352561624682763783584894287059470832898246316858615289836323806558506043133027245299752776105583762425058064365198441601467612773950679289479401877325169518656878481369011358885466819286125454919358560726463901298663430062251987448690051354798471454300969408955910897867545283088200905243160806667733928620545353951861594410416111545874030933414362398626819472152251923826385719526033321080177010157623631921360562945884678959741219399860460767210345404308975863577871892060203459111175026683313150053828927080948204465554425359269605802131549643512441623482793220068261514846939010200420261608602621875980554170191045338239253275152301982741891805298433372754488051017544434503791515201124414887934784287835187555676479289823901430050765830712386740666334013774210046209604246749774469333424668748220559840242036488345996729803806064260918198818613583669341625187772848338044933767667736676949256718867058740172113685025943983580472161451787581520700208294534306955607707402208631750539964686237547364327331035186860584787528903901991644645131200966900563665166755642519342716247517210428259586551830722362217448048779883524736024885829302633051637578662819357092041368133778440780074519862114095703975347820376732420249320495382171544518460181338952051781725643637185875660931142252151533590241035277556773661372681505608678527736061949218346449482788620661267836443685618183046887722213195916378630459743239231656178652570081619594937370404024362123061275637077095247264291982416660257951895847566453515264045834655456897853141359221562406589468219149868478206577506861268288063185123383558671220828070085501647637929167055158595039923975722996097490445980069336022923373988134079741361226678901222269487687228443429194527701196643997988063710875939802519606400793004004446547759264451599226732137587748172594002726316295594296761031586769030742858146028670811863342816213876556578035787742747384074316476784218181535269466482820491262063988390829757273615706665978371517893425685267524394291678268005820842428161499725654927845823775982621191939553391622090431672598091096562132197764602284359287976152679817961156543401031725372724927060641263742522477975476283623270327765525786326519110492095590538719195562972883803793697729213699547285420968676769889728477388639735667474412731582578806695378615114498215468573331513653946974046208910951719153010037196095854991457492121198950403865478049042503517512779923785108667455153491603741816773762221865571069832396288540133834777159644786786585977898971658946349318694436002010837245823214196555707890882060761147914754919902797485874292164539637692718950548633126809768243386578430633730396071357749792376571651420007397927037936081063100436784537011711207001568103908296499766107983065893636337660243883673109499423845555209550122832013680519117973469226688982639738506810740696642371515211661557676774705756674044823183788077541352012624777268695575510166798100921226582828237021787166893821280700499888453194501050904903027947020497053606626250334011539151364691703000850146489975398372398932406475797762777580178470698577469818799511707686149076163315888420599608109640198172960986378169002611938131970586616683542512734111536461605974043469785162992424454394630014463846207768787852110530575847648765131649464000557988917942821364535313272070005216305544445635848415929808715015686248157006331325453081180940755201694555599684792994301463126792419498285634126195033288844973676389938402778090011089918168777669089894609294736720150508392584832791686072832441659777470069968496450784081598769901298730563616835168688181913120544392418674799196349411415835406293789149515676599580733609207758592255030005760336401663801332819166483509288406149986140290806545311368566753786105953630422846238411745025793286579052824260863692641256682478810416768667996566691501102306112777163752742680812188482305305340949738826215523220417432985995386231221173268557651674004982733996079558221345790916761940095834402610529199494947070383774907564413760147941641072795140093210939429081161877661537116685532059350311380756742990094336037583530628697051475373250364923713995942441642306366028492170072816014679883678465029563496109306581667896933403186690138196841466483625113317084329462307248322594892023751459593372518890509948481179617299111331453224246267195851541628030940027258079926475498838855369199128197572873427333083693310725291892018361699839727388092424931036138960475195758027921260699307571067069429059770564245182161193398181960954072776024904665395410843195118471558203564972733924749052278523244836809830485811918084193409035249185835585052161445105675136746201448683378414825283961528431565332376808421008348825365575753580867750027294059037032296078518860527952246767586981416562675125004091159620786982172549109871170093924693722165312663843586179499001833412541854842895627853936065295974148477209816577416356376107926731734519605725532871665120430689434275978547236572931075607265810947908093455628803224538301758243342258824192367978855172705049672090444627712173165682513468351771438151531989536868170320492333488716669332510838229333568566634419401753955764730563184013494704588816158194318391130764766164903479328144313865295098262462378638473818475721108049466983918363034792333985939463345581166880712188486482541432115213261977687094921193613412703702900211549171060024442527719034254022297648858856042709678011230087965397402240700727938253895043527409186574341711511937728857280870701468128164933516088346438117581389476457628094523312411755062894557842697123135982490938647770463699704020726090817811978253936568730839742096794347203181330559661750698105819698355466359746556177336272792406143658791824024380242201179760863928642703963707612788107335574916332415319563884949301280527056576157609837026927224874117494248607916681802504792486896339058852791263790393718587907918074891331146129579418160809785484772578809404909825943002614545911212474144294304763468922125561413050841032655304841670119998351425794029125590965686091301834441411505487221343368829826039834660663255857283413438623301924262300718907351835822888771525534879238157427193008603373591654338512028474906490764511178244349616132792950493979583115672733931655361545041605895486312494445161403861366598193624606047877159458597099400716282643972317695419792368080554568707261347262068002521135987809772207703515269564811612190995254655812731165269505202228821449346527727671433023479375284283019891779363233726031572616468878598862907458155753734595017323339534727998412528304867022951460390994055009234041378082051582590178070471221195219411394951865369090680348715995515475562839688118085923939882339885562935330896797136907271812379177159107696885735522151610039724422309753564558440909117426687950679462296236766575778883498039331491057178089647267494392694399086972567587662892692554445057297482313780900931691214895278967937655842928275778038686799811708313278133461860227998943816569482636880095600513923312645400281224810341645546956732452483116752309296827952849478361663329418705267489520468428472658691779601430027562706770420031704554044736663952671522352096094601713198926526110834129374078546240212906063605528562899647743197657311178930657371504034117962127115523146530083084481098381654726192488273786886253760489745745889708088801762373637216816073861245473351745319666836233979497845975456996499525592949975320121501019020774663500676749658666460001228558460212618835770890978418050794331454747601047064057476415498200236842896512816834765920407413662015716017119018731192414731273906275168461266412176316995415067886735824050024403170117324557346425993510822784706611891073254226699214021508395757524229993440175795644434542108533868367796279142135657805488546524235002337044952855410452168062466647892726874975041297085014934041938055838729534785720148872751498782137198093142091834532236649718370495478392983344138312656673767311801116918454191600730429257028183835511370648808714342569689528233507763935019707768172750440962593686677919115718428510939172944984503268803750205809065387238257976030550008318620898715643417307050855757851569223368281246307381084489830838132579753396095970810174800024509399520071892301055256313490283254516801906005691814435215616932045280236084772492132785753645317249028789110884214281719744630932483651859881672705360353189205139928045347152737591719408518023586328016604689360779072863726833391879382287406784916478964700753518279280790839360972612402747908788067376274791077865567993051825731732323082012869059509891911929472231933816296468136870672825813325613377479020201215188647358779845250803645186297075804096872370913436634933825082546015583079919599019865594947459878785425167671607917543404531460891629558043266719374826087035482217045074653773012402608317804285091849395541564336750076645543477401466581944571346869363052791716280245128126089312023185343039934073025955757193479660805288869129766103520477637138633665689400284313067861483485077766509494977377853770422822654974499655716781827113531821953492015070935862906860952324334436749755322310287568718054213784035248367663176928443525740643917359944706827137499429208117750661571255138257748003297233175425423500251475671551469680105354479743532830790880462411606764366044811545598907053912009835602588184006390210562589226040930071439327556641356649874651616053798211584758374268177297154659802288959361492221423177883570185860549806247596470998040464257605351095709043008686377457853422627015512838669847061185070463615654301146082014098388552324096722276369656716310340745181644970181028346810146881684255118778529692314863052815853175276906948323867198163328472344836918533916104916843947737578240965875641607008366418981294481666303026122226971292981503670061078561790781471207186174530141620402708439923520177215343913336041908564164250251097206114203051510066944134464835196327945634912306357492713047231103116061008828982537246922840628396825864815574061421870191981643130201361358312246359149343327072802314068705729923568041490199286669638120168835859799018896538628751858017600253727765569861477021251802119188109454214667604033715688485117326155663818786582006897049183707981181026836028960703933144744952578069278053912220415982835547962053133032797033005901790236409883175568787858325950925748271755202127821733878455732010107083341299966538991349540416891272176283470158835042009883630257073555098239975085612812878957586839301391745462836045342275064381818829514095500409768152011022894590270576839106281354088756919205804392471166278732284476254240947935059223155321334223942073295808221360137956870630257062228857335096445049790123822409591719170403548049112497863111133887497984109454682012734748706442836954856382923400251021155322016222949477432715265921049081629658909991503249739439174924981299386884152978933766253446817212753260511374763218093677260636056613331584510642648098610674815162857376246556192441102780081168270883934928310611941029213173104049766089181775497880224321433268710612645692632953583257036929349245273686766174943728396335532976459259853389551171737858103155163233369436171451465738683503864619308666802038144787228687109248391724813157179281008719899446675988298618493357372115587202520005105059532004575166071526171070786333202801739668089652428856146847964527821868504644643312738350103349743924484721759875484106766534838282227263782257909404841275922068413922268693718447563406471016413405892080446728424704637881476153971515874990751219246085038490023751444177599497718872129043032840805044634360428426556378276464659370262281260903292764276826375661628510360651369326841511850285541314726688863704262004810529959507298031588367718945636864984084898972007699410056980119377434105932381371346701648231342911136373784877235805070658402201813649517839882891226122420416670601268266034594305606852025467018923019285878136572578049956132832302776945471662823889602473339835433438001436996129907431991960089301858257091879545137921123261965380478917719903316714153681615605275629309505173220036176207930864685557620057417696550204810626950150901061680423163152638898469192662199081788705648123335981887987473623862986199852227462612461887765687567113551850213292828081090693671999959481094437372281212011940706082266202077422091209702676413063709505026884004382996997564421370492693365379010989681122832256440978226322184519363316449438100232262281933072965073280407262288525249335805539402705232237313962148683538018055747248860472498027015005698804948237256701494852742413713178368775105710449212651265825951841928403781571385798615915072378725619845259143965828695171053369459919589996901369799983422268266013023761722224089574383569045534125290030217895650486458635015117919222547358936783466240127065543495239694202751764959448122866174949199011461082850390525164591206203260257538035889162988666029700884585940662434967532639498338906592460953097930199564511629105208936829564014682704907948287244980908209505898251373146826725663684239923794307823921887620120114908531872465664526052541861853534020294849773326959829082719356794061110411005540427108588016792675003208728028081286201045645441510525798630138720841501988628866398200910090446312680601800243981563479335213586137589396762398805212782062282290170373905025490468474134503444651757531181146850867950276500070172063228389011787426293283699835976158126866475984024847404956904032276950637480947814314381488610839342304429767925240303079261165443481382644376546370656510052721130808124309056579991035743570058311825215718413895855776826582429443606731583894266472875455693785859946373696222886451707590185407994477517318028090687337355404900175822319587435052891186948042026371761796992164804297593385361775953260059115108499213509408082662849126083073707480165404359285713752351687994982650031099836158200808968511775959190691668633987279414643861414856698128402985473474789211484572522949922636068930168605060130956666251280587755417715198684698277773058631004361479219606554005940483734407985629562652259761336430952483334346713863520665187090141277717566642480518426138626249682322719876822664807292879069521997466500545246052202005328627463270983582291261589787211291465554533915933965678803516482327024214958968419839552422344485164353505865487185172044897604999302348737859197329773128019619343903062213561374958488504508009352326518084235036089370651742115436547468876790262476853429636462805555675660400124488750407610122791290576570638462764169195648425226526510251484807690011739458613699028703765080292602841552957647462003438218995145360663877199083639680458776787380610242484322568648982979267119459165827054582490199146223126175393774725300579464005475656879543113901635798139957344605669298634176742048245131579331286674616610015685340928282121121047083677415746475946506268560279037043192077636635724404123951484755108561567462497188199434764739937818866701738013845651756961384152617784784564858066345609141028577215440046073411689642475604004068584298347759377944990084858099148875136435480474919353319998436450133976514734364211506063870993269450825993556001901689806373004429616467954239399626784665977228673952215635274966531925245649038575415542961395702241129345452962130095937044294450853109858343563111617394225024303388674928879252334988763968982411436300948153827733458650492533995941149397823410388952281423204549562717115865586197047889873472344707191582520107502790520497829925284261484700666468458641094248640327744989278944187140554435301216321771180537770305600786326199767756890631601127680911434558290636942133218042405121062808065289163088404257127557458524358434003828190467172522832105621478970420274512268950492205868419066739684125087520362953035143902245364119828029257947409192953611012028951374249299386361136263889107]